pub struct Cdw11FeatureAsyncEventConfig(/* private fields */);Expand description
CDW11 layout for Set/Get Features - Asynchronous Event Configuration (Feature Identifier 0Bh).
Defined in the NVMe Base Specification, “Asynchronous Event Configuration” Feature section (Base 2.0c section 5.21.1.11 / Base 2.3 section 5.2.26.1.5). Each bit, when set to 1, enables the corresponding Asynchronous Event Notification class; when cleared to 0, the controller shall not report that notification.
Bits 0..13 inclusive (SMART/Health critical warnings byte plus the six notice classes defined through NVMe 1.4) are named here. Bits 14..31 cover newer-revision and transport-specific events; this type preserves them as opaque pass-through state so the controller can store and echo an arbitrary CDW11 value via Set/Get Features even without acting on every individual bit.
Implementations§
Source§impl Cdw11FeatureAsyncEventConfig
impl Cdw11FeatureAsyncEventConfig
Sourcepub const fn smart_health_critical_warnings(&self) -> u8
pub const fn smart_health_critical_warnings(&self) -> u8
SMART / Health Critical Warnings (SHCW) - one bit per critical warning class defined in the SMART/Health Information log page.
Bits: 0..8
Sourcepub const fn with_smart_health_critical_warnings_checked(
self,
value: u8,
) -> Result<Self, ()>
pub const fn with_smart_health_critical_warnings_checked( self, value: u8, ) -> Result<Self, ()>
SMART / Health Critical Warnings (SHCW) - one bit per critical warning class defined in the SMART/Health Information log page.
Bits: 0..8
Sourcepub const fn with_smart_health_critical_warnings(self, value: u8) -> Self
pub const fn with_smart_health_critical_warnings(self, value: u8) -> Self
SMART / Health Critical Warnings (SHCW) - one bit per critical warning class defined in the SMART/Health Information log page.
Bits: 0..8
Sourcepub const fn set_smart_health_critical_warnings(&mut self, value: u8)
pub const fn set_smart_health_critical_warnings(&mut self, value: u8)
SMART / Health Critical Warnings (SHCW) - one bit per critical warning class defined in the SMART/Health Information log page.
Bits: 0..8
Sourcepub const fn set_smart_health_critical_warnings_checked(
&mut self,
value: u8,
) -> Result<(), ()>
pub const fn set_smart_health_critical_warnings_checked( &mut self, value: u8, ) -> Result<(), ()>
SMART / Health Critical Warnings (SHCW) - one bit per critical warning class defined in the SMART/Health Information log page.
Bits: 0..8
Sourcepub const fn namespace_attribute_notices(&self) -> bool
pub const fn namespace_attribute_notices(&self) -> bool
Attached Namespace Attribute Notices (NAN) - notify on attached namespace attribute changes (e.g. namespace added or removed).
Bits: 8..9
Sourcepub const fn with_namespace_attribute_notices_checked(
self,
value: bool,
) -> Result<Self, ()>
pub const fn with_namespace_attribute_notices_checked( self, value: bool, ) -> Result<Self, ()>
Attached Namespace Attribute Notices (NAN) - notify on attached namespace attribute changes (e.g. namespace added or removed).
Bits: 8..9
Sourcepub const fn with_namespace_attribute_notices(self, value: bool) -> Self
pub const fn with_namespace_attribute_notices(self, value: bool) -> Self
Attached Namespace Attribute Notices (NAN) - notify on attached namespace attribute changes (e.g. namespace added or removed).
Bits: 8..9
Sourcepub const fn set_namespace_attribute_notices(&mut self, value: bool)
pub const fn set_namespace_attribute_notices(&mut self, value: bool)
Attached Namespace Attribute Notices (NAN) - notify on attached namespace attribute changes (e.g. namespace added or removed).
Bits: 8..9
Sourcepub const fn set_namespace_attribute_notices_checked(
&mut self,
value: bool,
) -> Result<(), ()>
pub const fn set_namespace_attribute_notices_checked( &mut self, value: bool, ) -> Result<(), ()>
Attached Namespace Attribute Notices (NAN) - notify on attached namespace attribute changes (e.g. namespace added or removed).
Bits: 8..9
Sourcepub const fn firmware_activation_notices(&self) -> bool
pub const fn firmware_activation_notices(&self) -> bool
Firmware Activation Notices (FAN).
Bits: 9..10
Sourcepub const fn with_firmware_activation_notices_checked(
self,
value: bool,
) -> Result<Self, ()>
pub const fn with_firmware_activation_notices_checked( self, value: bool, ) -> Result<Self, ()>
Firmware Activation Notices (FAN).
Bits: 9..10
Sourcepub const fn with_firmware_activation_notices(self, value: bool) -> Self
pub const fn with_firmware_activation_notices(self, value: bool) -> Self
Firmware Activation Notices (FAN).
Bits: 9..10
Sourcepub const fn set_firmware_activation_notices(&mut self, value: bool)
pub const fn set_firmware_activation_notices(&mut self, value: bool)
Firmware Activation Notices (FAN).
Bits: 9..10
Sourcepub const fn set_firmware_activation_notices_checked(
&mut self,
value: bool,
) -> Result<(), ()>
pub const fn set_firmware_activation_notices_checked( &mut self, value: bool, ) -> Result<(), ()>
Firmware Activation Notices (FAN).
Bits: 9..10
Sourcepub const fn telemetry_log_notices(&self) -> bool
pub const fn telemetry_log_notices(&self) -> bool
Telemetry Log Notices (TLN).
Bits: 10..11
Sourcepub const fn with_telemetry_log_notices_checked(
self,
value: bool,
) -> Result<Self, ()>
pub const fn with_telemetry_log_notices_checked( self, value: bool, ) -> Result<Self, ()>
Telemetry Log Notices (TLN).
Bits: 10..11
Sourcepub const fn with_telemetry_log_notices(self, value: bool) -> Self
pub const fn with_telemetry_log_notices(self, value: bool) -> Self
Telemetry Log Notices (TLN).
Bits: 10..11
Sourcepub const fn set_telemetry_log_notices(&mut self, value: bool)
pub const fn set_telemetry_log_notices(&mut self, value: bool)
Telemetry Log Notices (TLN).
Bits: 10..11
Sourcepub const fn set_telemetry_log_notices_checked(
&mut self,
value: bool,
) -> Result<(), ()>
pub const fn set_telemetry_log_notices_checked( &mut self, value: bool, ) -> Result<(), ()>
Telemetry Log Notices (TLN).
Bits: 10..11
Sourcepub const fn ana_change_notices(&self) -> bool
pub const fn ana_change_notices(&self) -> bool
Asymmetric Namespace Access Change Notices (ANACN).
Bits: 11..12
Sourcepub const fn with_ana_change_notices_checked(
self,
value: bool,
) -> Result<Self, ()>
pub const fn with_ana_change_notices_checked( self, value: bool, ) -> Result<Self, ()>
Asymmetric Namespace Access Change Notices (ANACN).
Bits: 11..12
Sourcepub const fn with_ana_change_notices(self, value: bool) -> Self
pub const fn with_ana_change_notices(self, value: bool) -> Self
Asymmetric Namespace Access Change Notices (ANACN).
Bits: 11..12
Sourcepub const fn set_ana_change_notices(&mut self, value: bool)
pub const fn set_ana_change_notices(&mut self, value: bool)
Asymmetric Namespace Access Change Notices (ANACN).
Bits: 11..12
Sourcepub const fn set_ana_change_notices_checked(
&mut self,
value: bool,
) -> Result<(), ()>
pub const fn set_ana_change_notices_checked( &mut self, value: bool, ) -> Result<(), ()>
Asymmetric Namespace Access Change Notices (ANACN).
Bits: 11..12
Sourcepub const fn predictable_latency_event_aggregate_log_change_notices(
&self,
) -> bool
pub const fn predictable_latency_event_aggregate_log_change_notices( &self, ) -> bool
Predictable Latency Event Aggregate Log Change Notices (PLEALCN).
Bits: 12..13
Sourcepub const fn with_predictable_latency_event_aggregate_log_change_notices_checked(
self,
value: bool,
) -> Result<Self, ()>
pub const fn with_predictable_latency_event_aggregate_log_change_notices_checked( self, value: bool, ) -> Result<Self, ()>
Predictable Latency Event Aggregate Log Change Notices (PLEALCN).
Bits: 12..13
Sourcepub const fn with_predictable_latency_event_aggregate_log_change_notices(
self,
value: bool,
) -> Self
pub const fn with_predictable_latency_event_aggregate_log_change_notices( self, value: bool, ) -> Self
Predictable Latency Event Aggregate Log Change Notices (PLEALCN).
Bits: 12..13
Sourcepub const fn set_predictable_latency_event_aggregate_log_change_notices(
&mut self,
value: bool,
)
pub const fn set_predictable_latency_event_aggregate_log_change_notices( &mut self, value: bool, )
Predictable Latency Event Aggregate Log Change Notices (PLEALCN).
Bits: 12..13
Sourcepub const fn set_predictable_latency_event_aggregate_log_change_notices_checked(
&mut self,
value: bool,
) -> Result<(), ()>
pub const fn set_predictable_latency_event_aggregate_log_change_notices_checked( &mut self, value: bool, ) -> Result<(), ()>
Predictable Latency Event Aggregate Log Change Notices (PLEALCN).
Bits: 12..13
Sourcepub const fn lba_status_info_alert_notices(&self) -> bool
pub const fn lba_status_info_alert_notices(&self) -> bool
LBA Status Information Alert Notices (LSIAN) - I/O Command Set specific (NVM).
Bits: 13..14
Sourcepub const fn with_lba_status_info_alert_notices_checked(
self,
value: bool,
) -> Result<Self, ()>
pub const fn with_lba_status_info_alert_notices_checked( self, value: bool, ) -> Result<Self, ()>
LBA Status Information Alert Notices (LSIAN) - I/O Command Set specific (NVM).
Bits: 13..14
Sourcepub const fn with_lba_status_info_alert_notices(self, value: bool) -> Self
pub const fn with_lba_status_info_alert_notices(self, value: bool) -> Self
LBA Status Information Alert Notices (LSIAN) - I/O Command Set specific (NVM).
Bits: 13..14
Sourcepub const fn set_lba_status_info_alert_notices(&mut self, value: bool)
pub const fn set_lba_status_info_alert_notices(&mut self, value: bool)
LBA Status Information Alert Notices (LSIAN) - I/O Command Set specific (NVM).
Bits: 13..14
Trait Implementations§
Source§impl Clone for Cdw11FeatureAsyncEventConfig
impl Clone for Cdw11FeatureAsyncEventConfig
Source§fn clone(&self) -> Cdw11FeatureAsyncEventConfig
fn clone(&self) -> Cdw11FeatureAsyncEventConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more