[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240618154841.6716-1-dakr@redhat.com>
Date: Tue, 18 Jun 2024 17:48:33 +0200
From: Danilo Krummrich <dakr@...hat.com>
To: gregkh@...uxfoundation.org,
rafael@...nel.org,
mcgrof@...nel.org,
russ.weight@...ux.dev,
ojeda@...nel.org,
alex.gaynor@...il.com,
wedsonaf@...il.com,
boqun.feng@...il.com,
gary@...yguo.net,
bjorn3_gh@...tonmail.com,
benno.lossin@...ton.me,
a.hindborg@...sung.com,
aliceryhl@...gle.com,
airlied@...il.com,
fujita.tomonori@...il.com,
pstanner@...hat.com,
ajanulgu@...hat.com,
lyude@...hat.com
Cc: rust-for-linux@...r.kernel.org,
linux-kernel@...r.kernel.org,
Danilo Krummrich <dakr@...hat.com>
Subject: [PATCH v4 0/2] Rust abstractions for Device & Firmware
Hi,
as agreed in [1] this is the separate series for the device and firmware
abstractions to unblock the inclusion of Fujita's PHY driver.
Originally, those patches were part of the patch series [2][3].
Changes in v4
=============
- add invariant of unmodified backing buffer to `Firmware` (Boqun)
Changes in v3
=============
- fix safety comments for `Send` and `Sync` for `Device` (Boqun)
- add corresponding invariant and safety requirement for `Device::from_raw`
(Boqun)
- drop `Firmware::request_platform` and `Firmware::request_direct` (Greg)
- fix missing Kconfig entry for `Firmware` (Greg)
- fix doctest compilation for `Firmware`
Changes in v2
=============
- use the 'srctree/' notation
- expand the existing documentation and make it more unambiguous
- use `NonNull` in `Firmware`
- generalize the `Firmware` request functions
- add missing safety comments to `Firmware`
[1] https://lore.kernel.org/rust-for-linux/2024060745-palatable-dragging-32d1@gregkh/
[2] https://lore.kernel.org/rust-for-linux/20240520172554.182094-1-dakr@redhat.com/
[3] https://lore.kernel.org/rust-for-linux/20240520172059.181256-1-dakr@redhat.com/
Danilo Krummrich (2):
rust: add abstraction for struct device
rust: add firmware abstractions
drivers/base/firmware_loader/Kconfig | 7 ++
rust/bindings/bindings_helper.h | 1 +
rust/helpers.c | 1 +
rust/kernel/device.rs | 102 +++++++++++++++++++++++++++
rust/kernel/firmware.rs | 101 ++++++++++++++++++++++++++
rust/kernel/lib.rs | 3 +
6 files changed, 215 insertions(+)
create mode 100644 rust/kernel/device.rs
create mode 100644 rust/kernel/firmware.rs
base-commit: 1613e604df0cd359cf2a7fbd9be7a0bcfacfabd0
--
2.45.1
Powered by blists - more mailing lists