#[repr(C)]
#[derive(Default, Copy, Clone)]
pub(crate) struct ethtool_eeprom
{
cmd: u32,
pub(crate) magic: u32,
pub(crate) offset: u32,
pub(crate) len: u32,
data: __IncompleteArrayField<u8>,
}
impl EthtoolCommand for ethtool_eeprom
{
#[inline(always)]
fn command(&self) -> u32
{
self.cmd
}
}
impl VariablySizedEthtoolCommand for ethtool_eeprom
{
type ArrayElement = u8;
#[inline(always)]
fn array_length(&self) -> u32
{
self.len
}
}
impl ethtool_eeprom
{
#[inline(always)]
pub(crate) fn get_eeprom(length: u32) -> VariablySizedEthtoolCommandWrapper<Self>
{
Self::new_with_initialized_header_but_uninitialized_array
(
Self
{
cmd: ETHTOOL_GEEPROM,
magic: 0,
offset: 0,
len: length,
data: __IncompleteArrayField::default(),
}
)
}
#[inline(always)]
pub(crate) fn get_module_eeprom(length: u32) -> VariablySizedEthtoolCommandWrapper<Self>
{
Self::new_with_initialized_header_but_uninitialized_array
(
Self
{
cmd: ETHTOOL_GMODULEEEPROM,
magic: 0,
offset: 0,
len: length,
data: __IncompleteArrayField::default(),
}
)
}
}