class Device
Defined at line 44 of file ../../src/devices/block/drivers/zxcrypt/device.h
See ddk::Device in ddktl/device.h
Public Methods
void Device (zx_device_t * parent, DeviceInfo && info, inspect::Node inspect)
Defined at line 30 of file ../../src/devices/block/drivers/zxcrypt/device.cc
void ~Device ()
Defined at line 43 of file ../../src/devices/block/drivers/zxcrypt/device.cc
zx_status_t Init (const DdkVolume & volume)
The body of the |Init| thread. This method uses the unsealed |volume| to start cryptographic
workers for normal operation.
Defined at line 45 of file ../../src/devices/block/drivers/zxcrypt/device.cc
uint32_t block_size ()
Publish some constants for the workers
Defined at line 53 of file ../../src/devices/block/drivers/zxcrypt/device.h
size_t op_size ()
Defined at line 54 of file ../../src/devices/block/drivers/zxcrypt/device.h
zx_status_t DdkGetProtocol (uint32_t proto_id, void * out)
ddk::Device methods; see ddktl/device.h
Defined at line 80 of file ../../src/devices/block/drivers/zxcrypt/device.cc
void DdkUnbind (ddk::UnbindTxn txn)
TODO(aarongreen): See https://fxbug.dev/42106016. Currently, there's no good way to trigger
this on demand.
Defined at line 100 of file ../../src/devices/block/drivers/zxcrypt/device.cc
void DdkRelease ()
Defined at line 107 of file ../../src/devices/block/drivers/zxcrypt/device.cc
void BlockImplQuery (block_info_t * out_info, size_t * out_op_size)
ddk::BlockProtocol methods; see fuchsia/hardware/block/driver/cpp/banjo.h
Defined at line 126 of file ../../src/devices/block/drivers/zxcrypt/device.cc
void BlockImplQueue (block_op_t * block, block_impl_queue_callback completion_cb, void * cookie)
Defined at line 136 of file ../../src/devices/block/drivers/zxcrypt/device.cc
zx_status_t BlockPartitionGetGuid (guidtype_t guidtype, guid_t * out_guid)
ddk::PartitionProtocol methods; see fuchsia/hardware/block/partition/cpp/banjo.h
Defined at line 171 of file ../../src/devices/block/drivers/zxcrypt/device.cc
zx_status_t BlockPartitionGetName (char * out_name, size_t capacity)
Defined at line 178 of file ../../src/devices/block/drivers/zxcrypt/device.cc
zx_status_t BlockPartitionGetMetadata (partition_metadata_t * out_metadata)
Defined at line 185 of file ../../src/devices/block/drivers/zxcrypt/device.cc
zx_status_t BlockVolumeExtend (const slice_extent_t * extent)
ddk:::VolumeProtocol methods; see fuchsia/hardware/block/volume/cpp/banjo.h
Defined at line 194 of file ../../src/devices/block/drivers/zxcrypt/device.cc
zx_status_t BlockVolumeShrink (const slice_extent_t * extent)
Defined at line 204 of file ../../src/devices/block/drivers/zxcrypt/device.cc
zx_status_t BlockVolumeGetInfo (volume_manager_info_t * out_manager, volume_info_t * out_volume)
Defined at line 214 of file ../../src/devices/block/drivers/zxcrypt/device.cc
zx_status_t BlockVolumeQuerySlices (const uint64_t * start_list, size_t start_count, slice_region_t * out_responses_list, size_t responses_count, size_t * out_responses_actual)
Defined at line 239 of file ../../src/devices/block/drivers/zxcrypt/device.cc
zx_status_t BlockVolumeDestroy ()
Defined at line 255 of file ../../src/devices/block/drivers/zxcrypt/device.cc
void BlockForward (block_op_t * block, zx_status_t status)
If |status| is |ZX_OK|, sends |block| to the parent block device; otherwise calls
|BlockComplete| on the |block|. Uses the extra space following the |block| to save fields
which may be modified, including the |completion_cb|, which it sets to |BlockCallback|.
Defined at line 262 of file ../../src/devices/block/drivers/zxcrypt/device.cc
void BlockComplete (block_op_t * block, zx_status_t status)
Returns a completed |block| request to the caller of |BlockQueue|.
Defined at line 285 of file ../../src/devices/block/drivers/zxcrypt/device.cc