Struct kernel::devices::ide::CommandIdentifyDataRaw
source · #[repr(C, packed(2))]struct CommandIdentifyDataRaw {Show 87 fields
general_config: u16,
obsolete1: u16,
specific_config: u16,
obsolete2: [u16; 4],
reserved_cfa1: [u16; 2],
obsolete3: u16,
serial_number: [u8; 20],
obsolete4: [u16; 3],
firmware_revision: [u8; 8],
model_number: [u8; 40],
max_sectors_per_multiple_commands: u16,
trusted_computing_features: u16,
capabilities: [u16; 2],
obsolete6: [u16; 2],
unk_53: u16,
obsolete7: [u16; 5],
unk_59: u16,
user_addressable_sectors_28_mode: u32,
obsolete8: u16,
unk_63: u16,
unk_64: u16,
min_multiword_dma_transfer_cycle_time: u16,
recommended_multiword_dma_transfer_cycle_time: u16,
min_pio_transfer_cycle_time_no_flow_control: u16,
min_pio_transfer_cycle_time_with_ioready: u16,
additional_supported: u16,
reserved: u16,
reserved2: [u16; 4],
queue_depth: u16,
serial_ata_capabilities: [u16; 2],
serial_ata_features_supported: u16,
serial_ata_features_enabled: u16,
major_version: u16,
minor_version: u16,
command_set_supported_or_enabled: [u16; 6],
ultra_dma_modes: u16,
unk_89: u16,
unk_90: u16,
current_apm_level: u16,
master_password_id: u16,
hardware_reset_result: u16,
obsolete9: u16,
stream_min_request_size: u16,
stream_dma_time: u16,
stream_access_latency: u16,
stream_performance_granularity: u32,
user_addressable_sectors: u64,
streaming_transfer_time: u16,
max_blocks_per_data_set_management: u16,
physical_logical_sector_size: u16,
interseek_delay_for_iso_7779: u16,
world_wide_name: [u16; 4],
reserved3: [u16; 4],
obsolete10: u16,
logical_sector_size: u32,
command_set_supported_or_enabled2: [u16; 2],
reserved4: [u16; 4],
atapi_byte_count_behavior: u16,
reserved5: u16,
obsolete11: u16,
security_status: u16,
vendor_specific: [u16; 31],
reserved_cfa2: [u16; 8],
device_nominal_form_factor: u16,
data_set_management_trim_support: u16,
additional_product_id: [u16; 4],
reserved6: [u16; 2],
current_media_serial_number: [u16; 30],
sct_command_transport: u16,
reserved7: [u16; 2],
logical_sectors_alignment: u16,
write_read_verify_sector_count_mode3: u32,
write_read_verify_sector_count_mode2: u32,
obsolete12: [u16; 3],
nominal_media_rotation_rate: u16,
reserved8: u16,
obsolete13: u16,
write_read_verify_feature_set_current_mode: u16,
reserved9: u16,
transport_major_version: u16,
transport_minor_version: u16,
reserved10: [u16; 6],
extended_user_addressable_sectors: u64,
min_blocks_per_download_microcode: u16,
max_blocks_per_download_microcode: u16,
reserved11: [u16; 19],
integrity_word: u16,
}
Fields§
§general_config: u16
§obsolete1: u16
§specific_config: u16
§obsolete2: [u16; 4]
§reserved_cfa1: [u16; 2]
§obsolete3: u16
§serial_number: [u8; 20]
§obsolete4: [u16; 3]
§firmware_revision: [u8; 8]
§model_number: [u8; 40]
§max_sectors_per_multiple_commands: u16
§trusted_computing_features: u16
§capabilities: [u16; 2]
§obsolete6: [u16; 2]
§unk_53: u16
§obsolete7: [u16; 5]
§unk_59: u16
§user_addressable_sectors_28_mode: u32
§obsolete8: u16
§unk_63: u16
§unk_64: u16
§min_multiword_dma_transfer_cycle_time: u16
§recommended_multiword_dma_transfer_cycle_time: u16
§min_pio_transfer_cycle_time_no_flow_control: u16
§min_pio_transfer_cycle_time_with_ioready: u16
§additional_supported: u16
§reserved: u16
§reserved2: [u16; 4]
§queue_depth: u16
§serial_ata_capabilities: [u16; 2]
§serial_ata_features_supported: u16
§serial_ata_features_enabled: u16
§major_version: u16
§minor_version: u16
§command_set_supported_or_enabled: [u16; 6]
§ultra_dma_modes: u16
§unk_89: u16
§unk_90: u16
§current_apm_level: u16
§master_password_id: u16
§hardware_reset_result: u16
§obsolete9: u16
§stream_min_request_size: u16
§stream_dma_time: u16
§stream_access_latency: u16
§stream_performance_granularity: u32
§user_addressable_sectors: u64
§streaming_transfer_time: u16
§max_blocks_per_data_set_management: u16
§physical_logical_sector_size: u16
§interseek_delay_for_iso_7779: u16
§world_wide_name: [u16; 4]
§reserved3: [u16; 4]
§obsolete10: u16
§logical_sector_size: u32
§command_set_supported_or_enabled2: [u16; 2]
§reserved4: [u16; 4]
§atapi_byte_count_behavior: u16
§reserved5: u16
§obsolete11: u16
§security_status: u16
§vendor_specific: [u16; 31]
§reserved_cfa2: [u16; 8]
§device_nominal_form_factor: u16
§data_set_management_trim_support: u16
§additional_product_id: [u16; 4]
§reserved6: [u16; 2]
§current_media_serial_number: [u16; 30]
§sct_command_transport: u16
§reserved7: [u16; 2]
§logical_sectors_alignment: u16
§write_read_verify_sector_count_mode3: u32
§write_read_verify_sector_count_mode2: u32
§obsolete12: [u16; 3]
§nominal_media_rotation_rate: u16
§reserved8: u16
§obsolete13: u16
§write_read_verify_feature_set_current_mode: u16
§reserved9: u16
§transport_major_version: u16
§transport_minor_version: u16
§reserved10: [u16; 6]
§extended_user_addressable_sectors: u64
§min_blocks_per_download_microcode: u16
§max_blocks_per_download_microcode: u16
§reserved11: [u16; 19]
§integrity_word: u16
Implementations§
source§impl CommandIdentifyDataRaw
impl CommandIdentifyDataRaw
fn is_valid(&self) -> bool
fn is_dma_supported(&self) -> bool
fn is_lba_supported(&self) -> bool
fn is_lba48_supported(&self) -> bool
fn user_addressable_sectors(&self) -> u64
fn sector_size(&self) -> u32
Trait Implementations§
Auto Trait Implementations§
impl RefUnwindSafe for CommandIdentifyDataRaw
impl Send for CommandIdentifyDataRaw
impl Sync for CommandIdentifyDataRaw
impl Unpin for CommandIdentifyDataRaw
impl UnwindSafe for CommandIdentifyDataRaw
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CheckedAs for T
impl<T> CheckedAs for T
source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
Casts the value.
source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
Casts the value.
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> OverflowingAs for T
impl<T> OverflowingAs for T
source§fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
Casts the value.
source§impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
source§fn overflowing_cast_from(src: Src) -> (Dst, bool)
fn overflowing_cast_from(src: Src) -> (Dst, bool)
Casts the value.
source§impl<T> SaturatingAs for T
impl<T> SaturatingAs for T
source§fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
Casts the value.
source§impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
source§fn saturating_cast_from(src: Src) -> Dst
fn saturating_cast_from(src: Src) -> Dst
Casts the value.
source§impl<T> UnwrappedAs for T
impl<T> UnwrappedAs for T
source§fn unwrapped_as<Dst>(self) -> Dstwhere
T: UnwrappedCast<Dst>,
fn unwrapped_as<Dst>(self) -> Dstwhere
T: UnwrappedCast<Dst>,
Casts the value.
source§impl<Src, Dst> UnwrappedCastFrom<Src> for Dstwhere
Src: UnwrappedCast<Dst>,
impl<Src, Dst> UnwrappedCastFrom<Src> for Dstwhere
Src: UnwrappedCast<Dst>,
source§fn unwrapped_cast_from(src: Src) -> Dst
fn unwrapped_cast_from(src: Src) -> Dst
Casts the value.
source§impl<T> WrappingAs for T
impl<T> WrappingAs for T
source§fn wrapping_as<Dst>(self) -> Dstwhere
T: WrappingCast<Dst>,
fn wrapping_as<Dst>(self) -> Dstwhere
T: WrappingCast<Dst>,
Casts the value.
source§impl<Src, Dst> WrappingCastFrom<Src> for Dstwhere
Src: WrappingCast<Dst>,
impl<Src, Dst> WrappingCastFrom<Src> for Dstwhere
Src: WrappingCast<Dst>,
source§fn wrapping_cast_from(src: Src) -> Dst
fn wrapping_cast_from(src: Src) -> Dst
Casts the value.