class RequestList

Defined at line 74 of file ../../src/devices/block/drivers/ufs/request_list.h

Implements the UTP 'transfer/task management' request list.

Public Methods

zx::result<RequestList> Create (zx::unowned_bti bti, size_t entry_size, uint8_t entry_count)

Defined at line 11 of file ../../src/devices/block/drivers/ufs/request_list.cc

void ForEachSlot (RequestSlotCallback callback)

Defined at line 68 of file ../../src/devices/block/drivers/ufs/request_list.cc

template <typename T>
zx_paddr_t GetRequestDescriptorPhysicalAddress (uint8_t slot)

Get 'transfer/task management' request descriptor's physical address

Defined at line 81 of file ../../src/devices/block/drivers/ufs/request_list.h

template <typename T>
T * GetRequestDescriptor (uint8_t slot)

Get 'transfer/task management' request descriptor's virtual address

Defined at line 86 of file ../../src/devices/block/drivers/ufs/request_list.h

template <typename Self>
auto & GetSlot (Self && self, uint8_t entry_num)

Defined at line 91 of file ../../src/devices/block/drivers/ufs/request_list.h

uint8_t GetSlotCount ()

Defined at line 95 of file ../../src/devices/block/drivers/ufs/request_list.h

uint32_t GetSlotMask ()

Defined at line 96 of file ../../src/devices/block/drivers/ufs/request_list.h

uint8_t GetSlotNum (const RequestSlot & slot)

Defined at line 102 of file ../../src/devices/block/drivers/ufs/request_list.h

template <typename T = void>
T * GetDescriptorBuffer (uint8_t entry_num, uint16_t offset)

Defined at line 111 of file ../../src/devices/block/drivers/ufs/request_list.h

size_t GetDescriptorBufferSize (uint8_t entry_num)

Defined at line 118 of file ../../src/devices/block/drivers/ufs/request_list.h