struct DeviceInfo

Defined at line 26 of file ../../src/devices/block/drivers/zxcrypt/device-info.h

|zxcrypt::DeviceInfo| bundles block device configuration details passed from the controller to

the device. It is used as a `const struct` in |zxcrypt::Device| to allow rapid, lock-free

access.

Public Members

BlockProtocolClient block_protocol
BlockPartitionProtocolClient partition_protocol
BlockVolumeProtocolClient volume_protocol
zx_device_t * block_device
uint32_t block_size
size_t op_size
uint64_t reserved_blocks
uint64_t reserved_slices
vmo vmo
uint8_t * base

Public Methods

void DeviceInfo (zx_device_t * device, const DdkVolume & volume)

Defined at line 22 of file ../../src/devices/block/drivers/zxcrypt/device-info.cc

void DeviceInfo (DeviceInfo && other)

Defined at line 38 of file ../../src/devices/block/drivers/zxcrypt/device-info.cc

void DeviceInfo (const DeviceInfo & )

Defined at line 50 of file ../../src/devices/block/drivers/zxcrypt/device-info.h

DeviceInfo & operator= (const DeviceInfo & )

Defined at line 50 of file ../../src/devices/block/drivers/zxcrypt/device-info.h

void ~DeviceInfo ()

Defined at line 60 of file ../../src/devices/block/drivers/zxcrypt/device-info.cc

bool IsValid ()

Returns true if the block device can be used by zxcrypt. This may fail, for example, if

the constructor was unable to get a valid block protocol.

Defined at line 73 of file ../../src/devices/block/drivers/zxcrypt/device-info.cc

zx_status_t Reserve (size_t size)

Reserves a memory region to be used for encrypting and decrypting I/O transactions. The

region will be backed by |vmo| and mapped to |base|. It will be automatically unmapped when

upon this object's destruction.

Defined at line 75 of file ../../src/devices/block/drivers/zxcrypt/device-info.cc