[PATCH v2 0/4] Auxiliary bus Rust abstractions

Danilo Krummrich posted 4 patches 9 months, 1 week ago
There is a newer version of this series
MAINTAINERS                           |   2 +
rust/bindings/bindings_helper.h       |   1 +
rust/helpers/auxiliary.c              |  23 ++
rust/helpers/helpers.c                |   1 +
rust/kernel/auxiliary.rs              | 345 ++++++++++++++++++++++++++
rust/kernel/lib.rs                    |   2 +
rust/kernel/types.rs                  |   8 +
samples/rust/Kconfig                  |  12 +
samples/rust/Makefile                 |   1 +
samples/rust/rust_driver_auxiliary.rs |  99 ++++++++
10 files changed, 494 insertions(+)
create mode 100644 rust/helpers/auxiliary.c
create mode 100644 rust/kernel/auxiliary.rs
create mode 100644 samples/rust/rust_driver_auxiliary.rs
[PATCH v2 0/4] Auxiliary bus Rust abstractions
Posted by Danilo Krummrich 9 months, 1 week ago
This series adds Rust abstractions for the auxiliary bus.

It implements the required abstractions to write auxiliary drivers and create
auxiliary device registrations. A driver sample illustrates how the
corresponding abstractions work.

The auxiliary abstractions are required for the Nova driver project, in order to
connect nova-core with the nova-drm driver.

This patch series depends on [1] (taken through the nova tree for v6.15) and
[2]; a branch containing the patches, including the dependency can be found in
[3].

[1] https://lore.kernel.org/rust-for-linux/20250306222336.23482-2-dakr@kernel.org/
[2] https://lore.kernel.org/lkml/20250313021550.133041-1-dakr@kernel.org/
[3] https://web.git.kernel.org/pub/scm/linux/kernel/git/dakr/linux.git/log/?h=rust/auxiliary

Changes in v2:
  - implement bus device soundness improvements from [2]

Danilo Krummrich (4):
  rust: types: add `Opaque::zeroed`
  rust: auxiliary: add auxiliary device / driver abstractions
  rust: auxiliary: add auxiliary registration
  samples: rust: add Rust auxiliary driver sample

 MAINTAINERS                           |   2 +
 rust/bindings/bindings_helper.h       |   1 +
 rust/helpers/auxiliary.c              |  23 ++
 rust/helpers/helpers.c                |   1 +
 rust/kernel/auxiliary.rs              | 345 ++++++++++++++++++++++++++
 rust/kernel/lib.rs                    |   2 +
 rust/kernel/types.rs                  |   8 +
 samples/rust/Kconfig                  |  12 +
 samples/rust/Makefile                 |   1 +
 samples/rust/rust_driver_auxiliary.rs |  99 ++++++++
 10 files changed, 494 insertions(+)
 create mode 100644 rust/helpers/auxiliary.c
 create mode 100644 rust/kernel/auxiliary.rs
 create mode 100644 samples/rust/rust_driver_auxiliary.rs


base-commit: 31cc40e864273b384f4e640ba3f11add432b78e0
-- 
2.48.1
Re: [PATCH v2 0/4] Auxiliary bus Rust abstractions
Posted by Greg KH 9 months ago
On Thu, Mar 13, 2025 at 03:23:49AM +0100, Danilo Krummrich wrote:
> This series adds Rust abstractions for the auxiliary bus.
> 
> It implements the required abstractions to write auxiliary drivers and create
> auxiliary device registrations. A driver sample illustrates how the
> corresponding abstractions work.
> 
> The auxiliary abstractions are required for the Nova driver project, in order to
> connect nova-core with the nova-drm driver.
> 
> This patch series depends on [1] (taken through the nova tree for v6.15) and
> [2]; a branch containing the patches, including the dependency can be found in
> [3].
> 
> [1] https://lore.kernel.org/rust-for-linux/20250306222336.23482-2-dakr@kernel.org/
> [2] https://lore.kernel.org/lkml/20250313021550.133041-1-dakr@kernel.org/
> [3] https://web.git.kernel.org/pub/scm/linux/kernel/git/dakr/linux.git/log/?h=rust/auxiliary

As this seems to depend on different branches in different trees, I'll
hold off on applying these to my tree now.  But if you want to take
them sooner (i.e. before 6.15-rc1), that's fine with me:

Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Re: [PATCH v2 0/4] Auxiliary bus Rust abstractions
Posted by Danilo Krummrich 9 months ago
On Mon, Mar 17, 2025 at 08:05:46AM +0100, Greg KH wrote:
> On Thu, Mar 13, 2025 at 03:23:49AM +0100, Danilo Krummrich wrote:
> > This series adds Rust abstractions for the auxiliary bus.
> > 
> > It implements the required abstractions to write auxiliary drivers and create
> > auxiliary device registrations. A driver sample illustrates how the
> > corresponding abstractions work.
> > 
> > The auxiliary abstractions are required for the Nova driver project, in order to
> > connect nova-core with the nova-drm driver.
> > 
> > This patch series depends on [1] (taken through the nova tree for v6.15) and
> > [2]; a branch containing the patches, including the dependency can be found in
> > [3].
> > 
> > [1] https://lore.kernel.org/rust-for-linux/20250306222336.23482-2-dakr@kernel.org/
> > [2] https://lore.kernel.org/lkml/20250313021550.133041-1-dakr@kernel.org/
> > [3] https://web.git.kernel.org/pub/scm/linux/kernel/git/dakr/linux.git/log/?h=rust/auxiliary
> 
> As this seems to depend on different branches in different trees, I'll
> hold off on applying these to my tree now.  But if you want to take
> them sooner (i.e. before 6.15-rc1), that's fine with me:
> 
> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Thanks! I wouldn't take them for the upcoming merge window, but maybe for the
next one through the nova tree.