pub struct PciBus { /* private fields */ }Expand description
PCI bus implementation
Implementations§
Source§impl PciBus
impl PciBus
Sourcepub fn enumerate_devices(&self) -> Result<(), KernelError>
pub fn enumerate_devices(&self) -> Result<(), KernelError>
Enumerate all PCI devices
Sourcepub fn get_device(&self, location: PciLocation) -> Option<PciDevice>
pub fn get_device(&self, location: PciLocation) -> Option<PciDevice>
Get device by location
Sourcepub fn get_all_devices(&self) -> Vec<PciDevice>
pub fn get_all_devices(&self) -> Vec<PciDevice>
Get all devices
Sourcepub fn find_devices_by_class(&self, class_code: u8) -> Vec<PciDevice>
pub fn find_devices_by_class(&self, class_code: u8) -> Vec<PciDevice>
Find devices by class
Sourcepub fn find_devices_by_id(
&self,
vendor_id: u16,
device_id: u16,
) -> Vec<PciDevice>
pub fn find_devices_by_id( &self, vendor_id: u16, device_id: u16, ) -> Vec<PciDevice>
Find devices by vendor and device ID
Trait Implementations§
Source§impl Bus for PciBus
impl Bus for PciBus
Source§fn scan(&mut self) -> Vec<DeviceInfo>
fn scan(&mut self) -> Vec<DeviceInfo>
Scan for devices
Source§fn read_config(
&self,
device: &DeviceInfo,
offset: u16,
size: u8,
) -> Result<u32, KernelError>
fn read_config( &self, device: &DeviceInfo, offset: u16, size: u8, ) -> Result<u32, KernelError>
Read configuration space
Source§fn write_config(
&mut self,
device: &DeviceInfo,
offset: u16,
value: u32,
size: u8,
) -> Result<(), KernelError>
fn write_config( &mut self, device: &DeviceInfo, offset: u16, value: u32, size: u8, ) -> Result<(), KernelError>
Write configuration space
Source§fn enable_device(&mut self, device: &DeviceInfo) -> Result<(), KernelError>
fn enable_device(&mut self, device: &DeviceInfo) -> Result<(), KernelError>
Enable device
Source§fn disable_device(&mut self, device: &DeviceInfo) -> Result<(), KernelError>
fn disable_device(&mut self, device: &DeviceInfo) -> Result<(), KernelError>
Disable device