Lines Matching refs:Arc
1 use alloc::{sync::Arc, vec::Vec};
27 fn probe(&self, device: &Arc<dyn PciDevice>, id: &PciDeviceID) -> Result<(), SystemError>; in probe()
28 fn remove(&self, device: &Arc<dyn PciDevice>) -> Result<(), SystemError>; in remove()
29 fn shutdown(&self, device: &Arc<dyn PciDevice>) -> Result<(), SystemError>; in shutdown()
30 fn suspend(&self, device: &Arc<dyn PciDevice>) -> Result<(), SystemError>; in suspend()
31 fn resume(&self, device: &Arc<dyn PciDevice>) -> Result<(), SystemError>; in resume()
48 fn locked_dynid_list(&self) -> Option<Vec<Arc<PciDeviceID>>>; in locked_dynid_list()
58 fn match_dev(&self, dev: &Arc<dyn PciDevice>) -> Option<Arc<PciDeviceID>> { in match_dev()
75 pub fn register(&self, driver: Arc<dyn PciDriver>) -> Result<(), SystemError> { in register()
76 driver.set_bus(Some(Arc::downgrade(&(pci_bus() as Arc<dyn Bus>)))); in register()
77 return driver_manager().register(driver as Arc<dyn Driver>); in register()
81 pub fn unregister(&self, driver: &Arc<dyn PciDriver>) { in unregister()
82 driver_manager().unregister(&(driver.clone() as Arc<dyn Driver>)); in unregister()