5 Commits
Author SHA1 Message Date
Lyude Paul 6ad005ce69 rust/drm: Remove imports covered by prelude::*
This just removes any explicit imports of items in files that are already
being pulled in by `use prelude::*;`.

There should be no functional changes in this patch.

Signed-off-by: Lyude Paul <[email protected]>
Link: https://patch.msgid.link/[email protected]
Signed-off-by: Danilo Krummrich <[email protected]>
2026-02-24 16:11:41 +01:00
Lyude Paul b7a124928b rust/drm: Fixup import styles
This is to match
  https://docs.kernel.org/rust/coding-guidelines.html#imports

There should be no functional changes in this patch.

Signed-off-by: Lyude Paul <[email protected]>
Link: https://patch.msgid.link/[email protected]
[ Move trailing `//` at the end. - Danilo ]
Signed-off-by: Danilo Krummrich <[email protected]>
2026-02-24 16:10:09 +01:00
Miguel Ojeda c2783c7cfe rust: drm: fix srctree/ links
These `srctree/` links pointed inside `linux/`, but they are directly
under `drm/`.

Thus fix them.

This cleans a future warning that will check our `srctree/` links.

Cc: [email protected]
Fixes: a98a73be9e ("rust: drm: file: Add File abstraction")
Fixes: c284d3e423 ("rust: drm: gem: Add GEM object abstraction")
Fixes: 07c9016085 ("rust: drm: add driver abstractions")
Fixes: 1e4b8896c0 ("rust: drm: add device abstraction")
Fixes: 9a69570682 ("rust: drm: ioctl: Add DRM ioctl abstraction")
Acked-by: Danilo Krummrich <[email protected]>
Reviewed-by: Daniel Almeida <[email protected]>
Signed-off-by: Miguel Ojeda <[email protected]>
2025-09-08 00:11:19 +02:00
Alice Ryhl 917b10d909 drm: rust: rename as_ref() to from_raw() for drm constructors
The prefix as_* should not be used for a constructor. Constructors
usually use the prefix from_* instead.

Some prior art in the stdlib: Box::from_raw, CString::from_raw,
Rc::from_raw, Arc::from_raw, Waker::from_raw, File::from_raw_fd.

There is also prior art in the kernel crate: cpufreq::Policy::from_raw,
fs::File::from_raw_file, Kuid::from_raw, ARef::from_raw,
SeqFile::from_raw, VmaNew::from_raw, Io::from_raw.

Link: https://lore.kernel.org/r/aCd8D5IA0RXZvtcv@pollux
Signed-off-by: Alice Ryhl <[email protected]>
Signed-off-by: Danilo Krummrich <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
2025-07-11 16:30:30 +02:00
Asahi Lina a98a73be9e rust: drm: file: Add File abstraction
A DRM File is the DRM counterpart to a kernel file structure,
representing an open DRM file descriptor.

Add a Rust abstraction to allow drivers to implement their own File types
that implement the DriverFile trait.

Reviewed-by: Maxime Ripard <[email protected]>
Signed-off-by: Asahi Lina <[email protected]>
Reviewed-by: Alyssa Rosenzweig <[email protected]>
Reviewed-by: Lyude Paul <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
[ Rework of drm::File
    * switch to the Opaque<T> type
    * fix (mutable) references to struct drm_file (which in this context
      is UB)
    * restructure and rename functions to align with common kernel
      schemes
    * write and fix safety and invariant comments
    * remove necessity for and convert 'as' casts
    * original source archive: https://archive.is/GH8oy

  - Danilo ]
Signed-off-by: Danilo Krummrich <[email protected]>
2025-04-24 14:11:58 +02:00