/DragonOS/kernel/src/driver/base/platform/ |
H A D | platform_driver.rs | 5 driver::{driver_manager, Driver}, 20 pub trait PlatformDriver: Driver { 46 return driver_manager().register(driver as Arc<dyn Driver>); in register() 52 driver_manager().unregister(&(driver.clone() as Arc<dyn Driver>)); in unregister()
|
H A D | subsys.rs | 15 device::{bus::Bus, driver::Driver, Device}, 123 driver: &Arc<dyn Driver>, in match_device() argument
|
H A D | platform_device.rs | 13 driver::Driver, 296 fn driver(&self) -> Option<Arc<dyn Driver>> { in driver() argument 305 fn set_driver(&self, driver: Option<Weak<dyn Driver>>) { in set_driver() argument
|
/DragonOS/kernel/src/driver/input/serio/ |
H A D | serio_driver.rs | 6 driver::{driver_manager, Driver}, 15 pub trait SerioDriver: Driver { 69 return driver_manager().register(driver as Arc<dyn Driver>); in register() 82 driver_manager().unregister(&(driver.clone() as Arc<dyn Driver>)); in unregister()
|
H A D | subsys.rs | 13 device::{bus::Bus, driver::Driver, Device}, 100 driver: &Arc<dyn Driver>, in match_device() argument
|
/DragonOS/kernel/src/driver/base/device/ |
H A D | driver.rs | 56 pub trait Driver: Sync + Send + Debug + KObject { trait 135 impl dyn Driver { implementation 195 pub fn register(&self, driver: Arc<dyn Driver>) -> Result<(), SystemError> { in register() 228 pub fn unregister(&self, driver: &Arc<dyn Driver>) { in unregister() argument 270 driver: &Arc<dyn Driver>, in add_groups() argument 277 pub fn remove_groups(&self, driver: &Arc<dyn Driver>, groups: &'static [&dyn AttributeGroup]) { in remove_groups() argument 290 driver: &Arc<dyn Driver>, in create_attr_file() argument 305 pub fn remove_attr_file(&self, driver: &Arc<dyn Driver>, attr: &'static dyn Attribute) { in remove_attr_file() argument 320 fn match_driver(&self, driver: &Arc<dyn Driver>, data: T) -> bool; in match_driver() argument 329 fn match_driver(&self, driver: &Arc<dyn Driver>, data: &str) -> bool { in match_driver() argument
|
H A D | dd.rs | 22 driver::{driver_manager, Driver, DriverManager}, 149 driver: &Arc<dyn Driver>, in do_device_attach_driver() argument 288 pub fn driver_attach(&self, driver: &Arc<dyn Driver>) -> Result<(), SystemError> { in driver_attach() 302 fn do_driver_attach(&self, device: &Arc<dyn Device>, driver: &Arc<dyn Driver>) -> bool { in do_driver_attach() 326 driver: &Arc<dyn Driver>, in match_device() argument 348 driver: &Arc<dyn Driver>, in probe_device() argument 358 driver: &Arc<dyn Driver>, in do_probe_device() argument 378 driver: &Arc<dyn Driver>, in really_probe() argument 510 driver: &Arc<dyn Driver>, in call_driver_probe() argument
|
H A D | bus.rs | 2 driver::{Driver, DriverMatchName, DriverMatcher}, 167 _driver: &Arc<dyn Driver>, in match_device() argument 221 ) -> Option<Arc<dyn Driver>> { in find_driver() argument 233 pub fn find_driver_by_name(&self, name: &str) -> Option<Arc<dyn Driver>> { in find_driver_by_name() argument 295 pub fn add_driver(&self, driver: &Arc<dyn Driver>) -> Result<(), SystemError> { in add_driver() 478 pub fn remove_driver(&self, _driver: &Arc<dyn Driver>) { in remove_driver() argument 482 fn add_bind_files(&self, driver: &Arc<dyn Driver>) -> Result<(), SystemError> { in add_bind_files() 754 let driver = kobj.cast::<dyn Driver>().map_err(|kobj| { in store() 803 let driver = kobj.cast::<dyn Driver>().map_err(|kobj| { in store()
|
/DragonOS/kernel/src/driver/pci/ |
H A D | driver.rs | 6 driver::{driver_manager, Driver}, 16 pub trait PciDriver: Driver { 77 return driver_manager().register(driver as Arc<dyn Driver>); in register() 82 driver_manager().unregister(&(driver.clone() as Arc<dyn Driver>)); in unregister()
|
H A D | device.rs | 10 bus::Bus, device_manager, driver::Driver, Device, DeviceCommonData, DeviceType, IdTable, 208 fn driver(&self) -> Option<Arc<dyn Driver>> { in driver() argument 216 fn set_driver(&self, driver: Option<alloc::sync::Weak<dyn Driver>>) { in set_driver() argument
|
H A D | raw_device.rs | 11 device::{bus::Bus, driver::Driver, Device, DeviceCommonData, DeviceType, IdTable}, 128 fn driver(&self) -> Option<Arc<dyn Driver>> { in driver() argument 158 fn set_driver(&self, driver: Option<Weak<dyn Driver>>) { in set_driver() argument
|
H A D | subsys.rs | 14 driver::Driver, 130 driver: &Arc<dyn Driver>, in match_device() argument
|
/DragonOS/kernel/src/driver/acpi/ |
H A D | bus.rs | 4 driver::Driver, 23 _driver: &Arc<dyn Driver>, in driver_match_device() argument 90 _driver: &Arc<dyn Driver>, in match_device() argument 125 pub trait AcpiDriver: Driver {}
|
/DragonOS/kernel/src/driver/base/ |
H A D | subsys.rs | 22 driver::Driver, 43 drivers: RwLock<Vec<Arc<dyn Driver>>>, 124 pub fn drivers(&self) -> RwLockReadGuard<Vec<Arc<dyn Driver>>> { in drivers() argument 167 pub fn add_driver_to_vec(&self, driver: &Arc<dyn Driver>) -> Result<(), SystemError> { in add_driver_to_vec() 176 pub fn remove_driver_from_vec(&self, driver: &Arc<dyn Driver>) { in remove_driver_from_vec() argument
|
H A D | cpu.rs | 18 driver::Driver, 102 driver: &Arc<dyn Driver>, in match_device() argument 163 fn driver(&self) -> Option<Arc<dyn Driver>> { in driver() argument 167 fn set_driver(&self, _driver: Option<Weak<dyn Driver>>) { in set_driver() argument
|
/DragonOS/docs/kernel/filesystem/ |
H A D | sysfs.md | 47 pub trait Driver: Any + Send + Sync + Debug {} 56 drivers: BTreeMap<IdTable, Arc<dyn Driver>>, // 所有驱动 67 pub trait BusDriver: Driver {}
|
/DragonOS/kernel/src/driver/virtio/ |
H A D | mod.rs | 6 use super::base::device::{driver::Driver, Device, DeviceId}; 51 pub trait VirtIODriver: Driver {
|
H A D | sysfs.rs | 17 driver::{driver_manager, Driver}, 121 _driver: &Arc<dyn Driver>, in match_device() argument 174 return driver_manager().register(driver as Arc<dyn Driver>); in register() 179 driver_manager().unregister(&(driver.clone() as Arc<dyn Driver>)); in unregister()
|
/DragonOS/kernel/src/driver/input/serio/i8042/ |
H A D | i8042_ports.rs | 11 device::{bus::Bus, driver::Driver, Device, DeviceCommonData, DeviceType, IdTable}, 86 fn driver(&self) -> Option<Arc<dyn Driver>> { in driver() argument 90 fn set_driver(&self, driver: Option<Weak<dyn Driver>>) { in set_driver() argument
|
H A D | i8042_device.rs | 10 bus::Bus, driver::Driver, Device, DeviceCommonData, DeviceState, DeviceType, IdTable, 89 fn driver(&self) -> Option<Arc<dyn Driver>> { in driver() argument 93 fn set_driver(&self, driver: Option<Weak<dyn Driver>>) { in set_driver() argument
|
/DragonOS/kernel/src/driver/pci/test/ |
H A D | pt_device.rs | 13 device::{bus::Bus, driver::Driver, Device, DeviceCommonData, DeviceType, IdTable}, 120 fn driver(&self) -> Option<Arc<dyn Driver>> { in driver() argument 152 fn set_driver(&self, driver: Option<Weak<dyn Driver>>) { in set_driver() argument
|
H A D | pt_driver.rs | 12 driver::{Driver, DriverCommonData}, 82 impl Driver for TestDriver {
|
/DragonOS/kernel/src/driver/serial/serial8250/ |
H A D | mod.rs | 19 bus::Bus, device_manager, device_number::Major, driver::Driver, Device, 103 &(serial8250_isa_driver.clone() as Arc<dyn Driver>), in init() 270 fn driver(&self) -> Option<Arc<dyn Driver>> { in driver() argument 274 fn set_driver(&self, driver: Option<Weak<dyn Driver>>) { in set_driver() argument 409 #[cast_to([sync] Driver, PlatformDriver)] 474 impl Driver for Serial8250ISADriver {
|
/DragonOS/kernel/src/driver/rtc/ |
H A D | rtc_cmos.rs | 19 driver::{Driver, DriverCommonData}, 40 #[cast_to([sync] Driver, PlatformDriver)] 123 impl Driver for CmosPlatformDriver {
|
/DragonOS/kernel/src/driver/input/ps2_mouse/ |
H A D | ps_mouse_driver.rs | 14 device::{bus::Bus, driver::Driver, Device, DeviceId, IdTable}, 74 #[cast_to([sync] Driver)] 126 impl Driver for Ps2MouseDriver {
|