NVME_SUBMISSION_QUEUE_TAIL_DOORBELL union (nvme.h)
Определяет регистр дверного звонка, который обновляет указатель входа tail для очереди отправки y.
Значение y эквивалентно идентификатору очереди, 16-битовому значению идентификатора, присваиваемому очереди при ее создании. Это значение указывает контроллеру, что новые команды отправлены для обработки.
Смещение очереди отправки y Tail Doorbell (CQyHDBL) составляет: (1000h + ((2y) * (4 << CAP.DSTRD)))
Где CAP.DSTRD
— значение поля DSTRD в NVME_CONTROLLER_CAPABILITIES.
Синтаксис
typedef union {
struct {
ULONG SQT : 16;
ULONG Reserved0 : 16;
} DUMMYSTRUCTNAME;
ULONG AsUlong;
} NVME_SUBMISSION_QUEUE_TAIL_DOORBELL, *PNVME_SUBMISSION_QUEUE_TAIL_DOORBELL;
Члены
DUMMYSTRUCTNAME
DUMMYSTRUCTNAME.SQT
Поле для чтения и записи, указывающее новое значение указателя на ввод заключительного фрагмента очереди отправки.
Это значение перезапишет все ранее предоставленные значения заключительного фрагмента очереди отправки (SQT). Разница между последней записью SQT и текущей записью SQT указывает на количество команд, добавленных в очередь отправки.
Примечание
Необходимо учитывать смену очереди отправки.
DUMMYSTRUCTNAME.Reserved0
Зарезервированное поле только для чтения.
AsUlong
Комментарии
Хозяин не должен считывать регистры дверного звонка. Если считывается регистр дверного звонка, возвращаемое значение зависит от поставщика. Запись в несуществующий doorbell очереди отправки содержит неопределенные результаты.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 10 |
Верхняя часть | nvme.h |