/DragonOS/kernel/crates/intertrait/src/ |
H A D | lib.rs | 85 pub type BoxedCaster = Box<dyn Any + Send + Sync>; 166 fn cast_arc_panic<T: ?Sized + 'static>(_: Arc<dyn Any + Sync + Send>) -> Arc<T> { in cast_arc_panic() 180 pub cast_ref: fn(from: &dyn Any) -> &T, 184 pub cast_mut: fn(from: &mut dyn Any) -> &mut T, 188 pub cast_box: fn(from: Box<dyn Any>) -> Box<T>, 192 pub cast_rc: fn(from: Rc<dyn Any>) -> Rc<T>, 196 pub cast_arc: fn(from: Arc<dyn Any + Sync + Send + 'static>) -> Arc<T>, 201 cast_ref: fn(from: &dyn Any) -> &T, in new() 202 cast_mut: fn(from: &mut dyn Any) -> &mut T, in new() 203 cast_box: fn(from: Box<dyn Any>) -> Box<T>, in new() [all …]
|
/DragonOS/kernel/src/driver/base/device/ |
H A D | driver.rs | 57 fn coredump(&self, _device: &Arc<dyn Device>) -> Result<(), SystemError> { in coredump() 66 fn devices(&self) -> Vec<Arc<dyn Device>>; in devices() 69 fn add_device(&self, device: Arc<dyn Device>); in add_device() 72 fn delete_device(&self, device: &Arc<dyn Device>); in delete_device() 83 fn __find_device_by_name_fast(&self, _name: &str) -> Option<Arc<dyn Device>> { in __find_device_by_name_fast() 97 fn bus(&self) -> Option<Weak<dyn Bus>> { in bus() 101 fn set_bus(&self, bus: Option<Weak<dyn Bus>>); in set_bus() 103 fn groups(&self) -> &'static [&'static dyn AttributeGroup] { in groups() 107 fn dev_groups(&self) -> &'static [&'static dyn AttributeGroup] { in dev_groups() 119 pub devices: Vec<Arc<dyn Device>>, [all …]
|
H A D | mod.rs | 158 fn bus(&self) -> Option<Weak<dyn Bus>> { in bus() 167 fn set_bus(&self, bus: Option<Weak<dyn Bus>>); in set_bus() 170 fn class(&self) -> Option<Arc<dyn Class>> { in class() 177 fn set_class(&self, class: Option<Weak<dyn Class>>); in set_class() 180 fn driver(&self) -> Option<Arc<dyn Driver>>; in driver() 182 fn set_driver(&self, driver: Option<Weak<dyn Driver>>); in set_driver() 201 fn attribute_groups(&self) -> Option<&'static [&'static dyn AttributeGroup]> { in attribute_groups() 205 fn dev_parent(&self) -> Option<Weak<dyn Device>>; in dev_parent() 207 fn set_dev_parent(&self, parent: Option<Weak<dyn Device>>); in set_dev_parent() 210 impl dyn Device { impl [all …]
|
H A D | bus.rs | 108 fn root_device(&self) -> Option<Weak<dyn Device>> { in root_device() 112 fn set_root_device(&self, _dev: Option<Weak<dyn Device>>) {} in set_root_device() 115 fn dev_groups(&self) -> &'static [&'static dyn AttributeGroup] { in dev_groups() 120 fn bus_groups(&self) -> &'static [&'static dyn AttributeGroup] { in bus_groups() 125 fn drv_groups(&self) -> &'static [&'static dyn AttributeGroup] { in drv_groups() 139 fn probe(&self, _device: &Arc<dyn Device>) -> Result<(), SystemError> { in probe() 142 fn remove(&self, _device: &Arc<dyn Device>) -> Result<(), SystemError>; in remove() 143 fn sync_state(&self, _device: &Arc<dyn Device>) {} in sync_state() 144 fn shutdown(&self, _device: &Arc<dyn Device>); in shutdown() 145 fn suspend(&self, _device: &Arc<dyn Device>) { in suspend() [all …]
|
/DragonOS/kernel/src/driver/input/serio/ |
H A D | serio_driver.rs | 17 fn write_wakeup(&self, device: &Arc<dyn SerioDevice>) -> Result<(), SystemError>; in write_wakeup() 32 device: &Arc<dyn SerioDevice>, in interrupt() 37 fn connect(&self, device: &Arc<dyn SerioDevice>) -> Result<(), SystemError>; in connect() 39 fn reconnect(&self, device: &Arc<dyn SerioDevice>) -> Result<(), SystemError>; in reconnect() 41 fn fast_reconnect(&self, device: &Arc<dyn SerioDevice>) -> Result<(), SystemError>; in fast_reconnect() 43 fn disconnect(&self, device: &Arc<dyn SerioDevice>) -> Result<(), SystemError>; in disconnect() 45 fn cleanup(&self, device: &Arc<dyn SerioDevice>) -> Result<(), SystemError>; in cleanup() 68 pub fn register(&self, driver: Arc<dyn SerioDriver>) -> Result<(), SystemError> { in register() 69 driver.set_bus(Some(Arc::downgrade(&(serio_bus() as Arc<dyn Bus>)))); in register() 70 return driver_manager().register(driver as Arc<dyn Driver>); in register() [all …]
|
H A D | serio_device.rs | 24 fn write(&self, device: &Arc<dyn SerioDevice>, data: u8) -> Result<(), SystemError>; in write() 26 fn open(&self, device: &Arc<dyn SerioDevice>) -> Result<(), SystemError>; in open() 28 fn close(&self, device: &Arc<dyn SerioDevice>) -> Result<(), SystemError>; in close() 30 fn start(&self, device: &Arc<dyn SerioDevice>) -> Result<(), SystemError>; in start() 32 fn stop(&self, device: &Arc<dyn SerioDevice>) -> Result<(), SystemError>; in stop() 51 pub fn register_port(&self, device: Arc<dyn SerioDevice>) -> Result<(), SystemError> { in register_port() 65 pub fn init_port(&self, device: Arc<dyn SerioDevice>) -> Result<(), SystemError> { in init_port() 66 device.set_bus(Some(Arc::downgrade(&(serio_bus() as Arc<dyn Bus>)))); in init_port() 67 device_manager().add_device(device.clone() as Arc<dyn Device>)?; in init_port()
|
H A D | subsys.rs | 37 .set_bus(Some(Arc::downgrade(&(bus.clone() as Arc<dyn Bus>)))); in new() 52 fn dev_groups(&self) -> &'static [&'static dyn AttributeGroup] { in dev_groups() 60 fn probe(&self, device: &Arc<dyn Device>) -> Result<(), SystemError> { in probe() 62 let pdrv = drv.cast::<dyn SerioDriver>().map_err(|_| { in probe() 70 let pdev = device.clone().cast::<dyn SerioDevice>().map_err(|_| { in probe() 81 fn remove(&self, _device: &Arc<dyn Device>) -> Result<(), SystemError> { in remove() 85 fn sync_state(&self, _device: &Arc<dyn Device>) { in sync_state() 89 fn shutdown(&self, _device: &Arc<dyn Device>) { in shutdown() 93 fn resume(&self, _device: &Arc<dyn Device>) -> Result<(), SystemError> { in resume() 99 device: &Arc<dyn Device>, in match_device() [all …]
|
/DragonOS/kernel/src/driver/base/ |
H A D | class.rs | 49 fn dev_groups(&self) -> &'static [&'static dyn AttributeGroup] { in dev_groups() 54 fn class_groups(&self) -> &'static [&'static dyn AttributeGroup] { in class_groups() 61 fn dev_kobj(&self) -> Option<Arc<dyn KObject>>; in dev_kobj() 63 fn set_dev_kobj(&self, kobj: Arc<dyn KObject>); in set_dev_kobj() 72 impl dyn Class { impl 82 matcher: &dyn DeviceMatcher<T>, in find_device() 84 ) -> Option<Arc<dyn Device>> { in find_device() 101 pub fn find_device_by_name(&self, name: &str) -> Option<Arc<dyn Device>> { in find_device_by_name() 121 pub fn class_register(&self, class: &Arc<dyn Class>) -> Result<(), SystemError> { in class_register() 127 class.set_dev_kobj(sys_dev_char_kset() as Arc<dyn KObject>); in class_register() [all …]
|
H A D | kobject.rs | 27 fn as_any_ref(&self) -> &dyn core::any::Any; in as_any_ref() 35 fn parent(&self) -> Option<Weak<dyn KObject>>; in parent() 38 fn set_parent(&self, parent: Option<Weak<dyn KObject>>); in set_parent() 46 fn kobj_type(&self) -> Option<&'static dyn KObjType>; in kobj_type() 48 fn set_kobj_type(&self, ktype: Option<&'static dyn KObjType>); in set_kobj_type() 61 impl dyn KObject { impl 71 impl DowncastArc for dyn KObject { 72 fn as_any_arc(self: Arc<Self>) -> Arc<dyn Any> { in as_any_arc() 81 pub parent: Option<Weak<dyn KObject>>, 83 pub kobj_type: Option<&'static dyn KObjType>, [all …]
|
H A D | subsys.rs | 36 bus: SpinLock<Option<Weak<dyn Bus>>>, 38 class: SpinLock<Option<Weak<dyn Class>>>, 41 devices: RwLock<Vec<Arc<dyn Device>>>, 43 drivers: RwLock<Vec<Arc<dyn Driver>>>, 44 interfaces: &'static [&'static dyn SubSysInterface], 45 bus_notifier: AtomicNotifierChain<BusNotifyEvent, Arc<dyn Device>>, 68 bus: Option<Weak<dyn Bus>>, in new() 69 class: Option<Weak<dyn Class>>, in new() 70 interfaces: &'static [&'static dyn SubSysInterface], in new() 96 pub fn bus(&self) -> Option<Weak<dyn Bus>> { in bus() [all …]
|
H A D | cpu.rs | 47 &(cpu_subsys as Arc<dyn Bus>), in init() 48 &(root_device.clone() as Arc<dyn Device>), in init() 73 .set_bus(Some(Arc::downgrade(&(bus.clone() as Arc<dyn Bus>)))); in new() 87 fn remove(&self, _device: &Arc<dyn Device>) -> Result<(), SystemError> { in remove() 91 fn shutdown(&self, _device: &Arc<dyn Device>) { in shutdown() 95 fn resume(&self, _device: &Arc<dyn Device>) -> Result<(), SystemError> { in resume() 101 device: &Arc<dyn Device>, in match_device() 102 driver: &Arc<dyn Driver>, in match_device() 155 fn set_bus(&self, bus: Option<Weak<dyn Bus>>) { in set_bus() 159 fn bus(&self) -> Option<Weak<dyn Bus>> { in bus() [all …]
|
/DragonOS/kernel/src/driver/pci/ |
H A D | attr.rs | 25 fn attrs(&self) -> &[&'static dyn Attribute] { in attrs() 31 _kobj: Arc<dyn KObject>, in is_visible() 32 attr: &'static dyn Attribute, in is_visible() 50 fn show(&self, _kobj: Arc<dyn KObject>, _buf: &mut [u8]) -> Result<usize, SystemError> { in show() 52 .cast::<dyn PciDevice>() in show() 53 .map_err(|e: Arc<dyn KObject>| { in show() 60 fn store(&self, _kobj: Arc<dyn KObject>, _buf: &[u8]) -> Result<usize, SystemError> { in store() 81 fn show(&self, _kobj: Arc<dyn KObject>, _buf: &mut [u8]) -> Result<usize, SystemError> { in show() 83 .cast::<dyn PciDevice>() in show() 84 .map_err(|e: Arc<dyn KObject>| { in show() [all …]
|
H A D | driver.rs | 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() 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() [all …]
|
H A D | subsys.rs | 82 fn dev_groups(&self) -> &'static [&'static dyn AttributeGroup] { in dev_groups() 90 fn probe(&self, device: &Arc<dyn Device>) -> Result<(), SystemError> { in probe() 92 let pci_drv = drv.cast::<dyn PciDriver>().map_err(|_| { in probe() 99 let pci_dev = device.clone().cast::<dyn PciDevice>().map_err(|_| { in probe() 111 fn remove(&self, _device: &Arc<dyn Device>) -> Result<(), SystemError> { in remove() 115 fn sync_state(&self, _device: &Arc<dyn Device>) { in sync_state() 119 fn shutdown(&self, _device: &Arc<dyn Device>) { in shutdown() 123 fn resume(&self, _device: &Arc<dyn Device>) -> Result<(), SystemError> { in resume() 129 device: &Arc<dyn Device>, in match_device() 130 driver: &Arc<dyn Driver>, in match_device() [all …]
|
H A D | device.rs | 45 pub fn device_add(&self, pci_dev: Arc<dyn PciDevice>) -> Result<(), SystemError> { in device_add() 48 pci_dev.set_dev_parent(Some(Arc::downgrade(&(pci_bus_device() as Arc<dyn Device>)))); in device_add() 51 pci_dev.set_bus(Some(Arc::downgrade(&(pci_bus() as Arc<dyn Bus>)))); in device_add() 53 device_manager().device_default_initialize(&(pci_dev.clone() as Arc<dyn Device>)); in device_add() 55 let r = device_manager().add_device(pci_dev.clone() as Arc<dyn Device>); in device_add() 100 pub fn new(parent: Option<Weak<dyn KObject>>) -> Arc<Self> { in new() 125 fn as_any_ref(&self) -> &dyn core::any::Any { in as_any_ref() 129 fn parent(&self) -> Option<alloc::sync::Weak<dyn KObject>> { in parent() 141 fn kobj_type(&self) -> Option<&'static dyn KObjType> { in kobj_type() 145 fn set_kobj_type(&self, ktype: Option<&'static dyn KObjType>) { in set_kobj_type() [all …]
|
/DragonOS/kernel/src/driver/base/platform/ |
H A D | platform_driver.rs | 25 fn probe(&self, device: &Arc<dyn PlatformDevice>) -> Result<(), SystemError>; in probe() 26 fn remove(&self, device: &Arc<dyn PlatformDevice>) -> Result<(), SystemError>; in remove() 27 fn shutdown(&self, device: &Arc<dyn PlatformDevice>) -> Result<(), SystemError>; in shutdown() 28 fn suspend(&self, device: &Arc<dyn PlatformDevice>) -> Result<(), SystemError>; in suspend() 29 fn resume(&self, device: &Arc<dyn PlatformDevice>) -> Result<(), SystemError>; in resume() 44 pub fn register(&self, driver: Arc<dyn PlatformDriver>) -> Result<(), SystemError> { in register() 45 driver.set_bus(Some(Arc::downgrade(&(platform_bus() as Arc<dyn Bus>)))); in register() 46 return driver_manager().register(driver as Arc<dyn Driver>); in register() 51 pub fn unregister(&self, driver: &Arc<dyn PlatformDriver>) { in unregister() 52 driver_manager().unregister(&(driver.clone() as Arc<dyn Driver>)); in unregister()
|
H A D | subsys.rs | 38 .set_bus(Some(Arc::downgrade(&(bus.clone() as Arc<dyn Bus>)))); in new() 53 fn dev_groups(&self) -> &'static [&'static dyn AttributeGroup] { in dev_groups() 61 fn probe(&self, device: &Arc<dyn Device>) -> Result<(), SystemError> { in probe() 63 let pdrv = drv.cast::<dyn PlatformDriver>().map_err(|_|{ in probe() 68 let pdev = device.clone().cast::<dyn PlatformDevice>().map_err(|_| { in probe() 79 fn remove(&self, _device: &Arc<dyn Device>) -> Result<(), SystemError> { in remove() 83 fn sync_state(&self, _device: &Arc<dyn Device>) { in sync_state() 87 fn shutdown(&self, _device: &Arc<dyn Device>) { in shutdown() 91 fn resume(&self, _device: &Arc<dyn Device>) -> Result<(), SystemError> { in resume() 122 device: &Arc<dyn Device>, in match_device() [all …]
|
/DragonOS/kernel/src/driver/virtio/ |
H A D | sysfs.rs | 56 .set_bus(Some(Arc::downgrade(&(bus.clone() as Arc<dyn Bus>)))); in new() 71 fn dev_groups(&self) -> &'static [&'static dyn AttributeGroup] { in dev_groups() 80 fn probe(&self, device: &Arc<dyn Device>) -> Result<(), SystemError> { in probe() 82 let virtio_drv = drv.cast::<dyn VirtIODriver>().map_err(|_| { in probe() 90 let virtio_dev = device.clone().cast::<dyn VirtIODevice>().map_err(|_| { in probe() 101 fn remove(&self, _device: &Arc<dyn Device>) -> Result<(), SystemError> { in remove() 105 fn sync_state(&self, _device: &Arc<dyn Device>) { in sync_state() 109 fn shutdown(&self, _device: &Arc<dyn Device>) { in shutdown() 113 fn resume(&self, _device: &Arc<dyn Device>) -> Result<(), SystemError> { in resume() 120 _device: &Arc<dyn Device>, in match_device() [all …]
|
/DragonOS/kernel/crates/kprobe/src/arch/ |
H A D | mod.rs | 29 fn as_any(&self) -> &dyn Any; in as_any() 58 func: fn(&dyn ProbeArgs), 62 pub fn new(func: fn(&dyn ProbeArgs)) -> Self { in new() 66 pub fn call(&self, trap_frame: &dyn ProbeArgs) { in call() 78 event_callback: Option<Box<dyn CallBackFunc>>, 84 fn call(&self, trap_frame: &dyn ProbeArgs); in call() 92 pre_handler: fn(&dyn ProbeArgs), in new() 93 post_handler: fn(&dyn ProbeArgs), in new() 109 pub fn with_fault_handler(mut self, func: fn(&dyn ProbeArgs)) -> Self { in with_fault_handler() 119 pub fn with_event_callback(mut self, event_callback: Box<dyn CallBackFunc>) -> Self { in with_event_callback() [all …]
|
/DragonOS/kernel/src/driver/net/ |
H A D | sysfs.rs | 24 pub fn netdev_register_kobject(dev: Arc<dyn NetDevice>) -> Result<(), SystemError> { in netdev_register_kobject() 26 device_manager().device_default_initialize(&(dev.clone() as Arc<dyn Device>)); in netdev_register_kobject() 30 &(sys_class_net_instance().cloned().unwrap() as Arc<dyn Class>), in netdev_register_kobject() 36 device_manager().add_device(dev.clone() as Arc<dyn Device>)?; in netdev_register_kobject() 50 fn attrs(&self) -> &[&'static dyn Attribute] { in attrs() 77 _kobj: Arc<dyn KObject>, in is_visible() 78 attr: &'static dyn Attribute, in is_visible() 105 fn show(&self, kobj: Arc<dyn KObject>, buf: &mut [u8]) -> Result<usize, SystemError> { in show() 106 let net_device = kobj.cast::<dyn NetDevice>().map_err(|_| { in show() 132 fn show(&self, _kobj: Arc<dyn KObject>, _buf: &mut [u8]) -> Result<usize, SystemError> { in show() [all …]
|
/DragonOS/kernel/src/driver/input/serio/i8042/ |
H A D | i8042_ports.rs | 65 fn bus(&self) -> Option<Weak<dyn Bus>> { in bus() 69 fn set_bus(&self, bus: Option<Weak<dyn Bus>>) { in set_bus() 73 fn set_class(&self, class: Option<Weak<dyn Class>>) { in set_class() 77 fn class(&self) -> Option<Arc<dyn Class>> { in class() 86 fn driver(&self) -> Option<Arc<dyn Driver>> { in driver() 90 fn set_driver(&self, driver: Option<Weak<dyn Driver>>) { in set_driver() 108 fn dev_parent(&self) -> Option<Weak<dyn Device>> { in dev_parent() 112 fn set_dev_parent(&self, parent: Option<Weak<dyn Device>>) { in set_dev_parent() 118 fn as_any_ref(&self) -> &dyn core::any::Any { in as_any_ref() 130 fn parent(&self) -> Option<Weak<dyn KObject>> { in parent() [all …]
|
H A D | i8042_driver.rs | 55 ktype: Option<&'static dyn KObjType>, 57 parent: Option<Weak<dyn KObject>>, 59 devices: Vec<Arc<dyn Device>>, 60 bus: Option<Weak<dyn Bus>>, 67 fn probe(&self, device: &Arc<dyn PlatformDevice>) -> Result<(), SystemError> { in probe() 81 fn remove(&self, _device: &Arc<dyn PlatformDevice>) -> Result<(), SystemError> { in remove() 86 fn shutdown(&self, _device: &Arc<dyn PlatformDevice>) -> Result<(), SystemError> { in shutdown() 90 fn suspend(&self, _device: &Arc<dyn PlatformDevice>) -> Result<(), SystemError> { in suspend() 95 fn resume(&self, _device: &Arc<dyn PlatformDevice>) -> Result<(), SystemError> { in resume() 106 fn devices(&self) -> Vec<Arc<dyn Device>> { in devices() [all …]
|
/DragonOS/kernel/src/driver/acpi/ |
H A D | bus.rs | 23 _driver: &Arc<dyn Driver>, in driver_match_device() 24 _device: &Arc<dyn Device>, in driver_match_device() 37 .register(acpi_bus as Arc<dyn Bus>) in bus_init() 57 .set_bus(Some(Arc::downgrade(&(bus.clone() as Arc<dyn Bus>)))); in new() 72 fn remove(&self, _device: &Arc<dyn Device>) -> Result<(), SystemError> { in remove() 76 fn shutdown(&self, _device: &Arc<dyn Device>) { in shutdown() 80 fn resume(&self, _device: &Arc<dyn Device>) -> Result<(), SystemError> { in resume() 89 _device: &Arc<dyn Device>, in match_device() 90 _driver: &Arc<dyn Driver>, in match_device() 97 fn probe(&self, _device: &Arc<dyn Device>) -> Result<(), SystemError> { in probe()
|
/DragonOS/kernel/src/driver/rtc/ |
H A D | sysfs.rs | 57 class_ops: Option<&'static dyn RtcClassOps>, 87 pub fn set_class_ops(&self, class_ops: &'static dyn RtcClassOps) { in set_class_ops() 91 pub fn class_ops(&self) -> Option<&'static dyn RtcClassOps> { in class_ops() 115 fn class_ops(&self) -> &'static dyn super::RtcClassOps { in class_ops() 129 fn set_bus(&self, bus: Option<Weak<dyn Bus>>) { in set_bus() 133 fn bus(&self) -> Option<Weak<dyn Bus>> { in bus() 137 fn set_class(&self, class: Option<Weak<dyn Class>>) { in set_class() 141 fn class(&self) -> Option<Arc<dyn Class>> { in class() 148 fn driver(&self) -> Option<Arc<dyn Driver>> { in driver() 155 fn set_driver(&self, driver: Option<Weak<dyn Driver>>) { in set_driver() [all …]
|
/DragonOS/kernel/src/driver/video/fbdev/base/ |
H A D | fbmem.rs | 69 class_manager().class_register(&(graphics_class.clone() as Arc<dyn Class>))?; in fbmem_init() 93 .set_class(Some(Arc::downgrade(&r) as Weak<dyn Class>)); in new() 104 fn dev_kobj(&self) -> Option<Arc<dyn KObject>> { in dev_kobj() 105 Some(sys_dev_char_kset() as Arc<dyn KObject>) in dev_kobj() 108 fn set_dev_kobj(&self, _kobj: Arc<dyn KObject>) { in set_dev_kobj() 126 registered_fbs: [Option<Arc<dyn FrameBuffer>>; FrameBufferManager::FB_MAX], 144 pub fn register_fb(&self, fb: Arc<dyn FrameBuffer>) -> Result<FbId, SystemError> { in register_fb() 147 let fb_device = FbDevice::new(Arc::downgrade(&fb) as Weak<dyn FrameBuffer>, id); in register_fb() 148 device_manager().device_default_initialize(&(fb_device.clone() as Arc<dyn Device>)); in register_fb() 149 fb_device.set_dev_parent(Some(Arc::downgrade(&(fb.clone() as Arc<dyn Device>)))); in register_fb() [all …]
|