class UfsTest
Defined at line 318 of file ../../src/devices/block/drivers/ufs/test/unit-lib.h
Public Members
UfsMockDevice mock_device_
Protected Members
ForegroundDriverTest driver_test_
TestConfig::DriverType * dut_
bool driver_stopped_
Public Methods
void SetUp ()
Defined at line 89 of file ../../src/devices/block/drivers/ufs/test/unit-lib.cc
void TearDown ()
Defined at line 96 of file ../../src/devices/block/drivers/ufs/test/unit-lib.cc
void InitMockDevice ()
Defined at line 18 of file ../../src/devices/block/drivers/ufs/test/unit-lib.cc
void StartDriver (bool supply_power_framework)
Defined at line 28 of file ../../src/devices/block/drivers/ufs/test/unit-lib.cc
zx_status_t DisableController ()
Defined at line 112 of file ../../src/devices/block/drivers/ufs/test/unit-lib.cc
zx_status_t EnableController ()
Defined at line 114 of file ../../src/devices/block/drivers/ufs/test/unit-lib.cc
zx::result<> TransferFillDescriptorAndSendRequest (uint8_tslot,DataDirectionddir,uint16_tresp_offset,uint16_tresp_len,uint16_tprdt_offset,uint16_tprdt_entry_count)
Helper functions for accessing private functions.
Defined at line 116 of file ../../src/devices/block/drivers/ufs/test/unit-lib.cc
zx::result<> TaskManagementFillDescriptorAndSendRequest (uint8_t slot, TaskManagementRequestUpiu & request)
Defined at line 125 of file ../../src/devices/block/drivers/ufs/test/unit-lib.cc
zx::result<> MapVmo (zx::unowned_vmo &vmo,fzl::VmoMapper &mapper,uint64_toffset_vmo,uint64_tlength)
Map the data vmo to the address space and assign physical addresses. Currently, it only
supports 8KB vmo. So, we get two physical addresses. The return value is the physical address
of the pinned memory.
Defined at line 131 of file ../../src/devices/block/drivers/ufs/test/unit-lib.cc
uint8_t GetSlotStateCount (SlotState slot_state)
Defined at line 140 of file ../../src/devices/block/drivers/ufs/test/unit-lib.cc
zx::result<uint32_t> ReadAttribute (Attributes attribute, uint8_t index)
Defined at line 153 of file ../../src/devices/block/drivers/ufs/test/unit-lib.cc
zx::result<> WriteAttribute (Attributesattribute,uint32_tvalue,uint8_tindex)
Defined at line 157 of file ../../src/devices/block/drivers/ufs/test/unit-lib.cc
fdf_testing::ForegroundDriverTest<TestConfig> & driver_test ()
Defined at line 326 of file ../../src/devices/block/drivers/ufs/test/unit-lib.h
zx::result<fdf::MmioBuffer> GetMmioBuffer (zx::vmo vmo)
Defined at line 328 of file ../../src/devices/block/drivers/ufs/test/unit-lib.h
zx::result<> DisableBackgroundOp ()
Defined at line 354 of file ../../src/devices/block/drivers/ufs/test/unit-lib.h
zx::result<uint8_t> ReserveAdminSlot ()
This function is a wrapper to avoid the thread annotation of ReserveAdminSlot().
Defined at line 357 of file ../../src/devices/block/drivers/ufs/test/unit-lib.h
zx::result<> ClearSlot (uint8_t slot_num)
Releases a transfer request slot reserved with ReserveSlot
<TransferRequestProcessor
>().
Defined at line 363 of file ../../src/devices/block/drivers/ufs/test/unit-lib.h
void SetSlotTimedOut (uint8_t slot_num)
Marks a reserved transfer request slot as timed out, as RequestCompletion() does when a
command's deadline passes while the controller still owns the slot.
Defined at line 371 of file ../../src/devices/block/drivers/ufs/test/unit-lib.h
template <class T>
zx::result<uint8_t> ReserveSlot ()
Defined at line 380 of file ../../src/devices/block/drivers/ufs/test/unit-lib.h
template <>
zx::result<uint8_t> ReserveSlot<ufs::TransferRequestProcessor> ()
Defined at line 383 of file ../../src/devices/block/drivers/ufs/test/unit-lib.h
template <>
zx::result<uint8_t> ReserveSlot<ufs::TaskManagementRequestProcessor> ()
Defined at line 387 of file ../../src/devices/block/drivers/ufs/test/unit-lib.h
template <class T>
void RingRequestDoorbell (uint8_t slot_num)
Defined at line 393 of file ../../src/devices/block/drivers/ufs/test/unit-lib.h
template <>
void RingRequestDoorbell<ufs::TransferRequestProcessor> (uint8_t slot_num)
Defined at line 394 of file ../../src/devices/block/drivers/ufs/test/unit-lib.h
template <>
void RingRequestDoorbell<ufs::TaskManagementRequestProcessor> (uint8_t slot_num)
Defined at line 398 of file ../../src/devices/block/drivers/ufs/test/unit-lib.h