Lines Matching defs:Registration
79 //! # Driver Registration
85 //! [`Registration`] type.
88 //! creates a kernel module with exactly one [`Registration`] for the bus specific adapter.
174 /// A [`Registration`] is a generic type that represents the registration of some driver type (e.g.
175 /// `bindings::pci_driver`). Therefore a [`Registration`] must be initialized with a type that
179 ///Once the `Registration` structure is dropped, the driver is unregistered.
181 pub struct Registration<T: RegistrationOps> {
186 // SAFETY: `Registration` has no fields or methods accessible via `&Registration`, so it is safe to
188 unsafe impl<T: RegistrationOps> Sync for Registration<T> {}
191 // any thread, so `Registration` is `Send`.
192 unsafe impl<T: RegistrationOps> Send for Registration<T> {}
194 impl<T: RegistrationOps> Registration<T> {
251 impl<T: RegistrationOps> PinnedDrop for Registration<T> {
271 _driver: $crate::driver::Registration<Ops<$type>>,
279 _driver <- $crate::driver::Registration::new(