Lines Matching refs:Driver
18 /// A type alias for retrieving a [`Driver`]s [`DriverFile`] implementation from its
21 /// [`Driver`]: drm::Driver
23 pub type DriverFile<T> = drm::File<<<T as DriverObject>::Driver as drm::Driver>::File>;
27 /// Parent `Driver` for this object.
28 type Driver: drm::Driver;
31 fn new(dev: &drm::Device<Self::Driver>, size: usize) -> impl PinInit<Self, Error>;
34 fn open(_obj: &<Self::Driver as drm::Driver>::Object, _file: &DriverFile<Self>) -> Result {
39 fn close(_obj: &<Self::Driver as drm::Driver>::Object, _file: &DriverFile<Self>) {}
67 let obj = unsafe { <<T::Driver as drm::Driver>::Object as IntoGEMObject>::from_raw(raw_obj) };
84 let obj = unsafe { <<T::Driver as drm::Driver>::Object as IntoGEMObject>::from_raw(raw_obj) };
113 Self: AllocImpl<Driver = D>,
114 D: drm::Driver<Object = Self, File = F>,
115 F: drm::file::DriverFile<Driver = D>,
128 Self: AllocImpl<Driver = D>,
129 D: drm::Driver<Object = Self, File = F>,
130 F: drm::file::DriverFile<Driver = D>,
139 // - A `drm::Driver` can only have a single `File` implementation.
140 // - `file` uses the same `drm::Driver` as `Self`.
198 pub fn new(dev: &drm::Device<T::Driver>, size: usize) -> Result<ARef<Self>> {
224 pub fn dev(&self) -> &drm::Device<T::Driver> {
228 // - The device we used for creating the gem object is passed as &drm::Device<T::Driver> to
229 // Object::<T>::new(), so we know that `T::Driver` is the right generic parameter to use
282 type Driver = T::Driver;