rust-for-linux.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/2] rust: Add abstractions for applying devicetree overlays
@ 2025-08-16  5:57 Ayush Singh
  2025-08-16  5:57 ` [PATCH v2 1/2] rust: kernel: of: Add DeviceNode abstraction Ayush Singh
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Ayush Singh @ 2025-08-16  5:57 UTC (permalink / raw)
  To: Jason Kridner, Deepak Khatri, Robert Nelson, Miguel Ojeda,
	Dhruva Gole, Alex Gaynor, Boqun Feng, Gary Guo,
	Björn Roy Baron, Andreas Hindborg, Alice Ryhl, Trevor Gross,
	Danilo Krummrich, Greg Kroah-Hartman, Rafael J. Wysocki,
	Rob Herring, Saravana Kannan, Benno Lossin, Benno Lossin
  Cc: rust-for-linux, linux-kernel, devicetree, Ayush Singh

The following patch series adds abstractions required to apply
devicetree overlays from Rust code. To see how the bindings look in
usage, see my working tree [0] for a connector driver  I am working on.

Open Questions
***************

1. Removing overlay on drop

I my usecase (see [0]), I will only ever have 1 active overlay in the
driver, which I will be removing dynamically. So removing overlay on
drop works for it. But maybe there are some usecases I am missing.

2. Only enable bindings when CONFIG_OF_OVERLAY is set?

The kernel header currently seems to provide blank implementations of
these methods when `CONFIG_OF_OVERLAY` is not enabled. But I am not sure
what is rust-for-linux policy here.

Best Regards,
Ayush Singh

[0]: https://github.com/Ayush1325/linux/commits/beagle-cape-v2/

Changes in v2:
- Rebase on next-20250814
- Return error if buffer size too big instead of panic.
- Update the reference driver link.
- Use `to_of_node` on fwnode instead of getting of_node directly from
  struct device.
- Link to v1: https://lore.kernel.org/r/20250422-rust-overlay-abs-v1-0-85779c1b853d@beagleboard.org/

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
---
Ayush Singh (2):
      rust: kernel: of: Add DeviceNode abstraction
      rust: kernel: of: Add overlay id abstraction

 rust/bindings/bindings_helper.h |  1 +
 rust/helpers/of.c               |  5 +++++
 rust/kernel/device/property.rs  | 18 ++++++++++++++++
 rust/kernel/of.rs               | 46 +++++++++++++++++++++++++++++++++++++++++
 4 files changed, 70 insertions(+)
---
base-commit: 931e46dcbc7e6035a90e9c4a27a84b660e083f0a
change-id: 20250417-rust-overlay-abs-36aac8b9752a

Best regards,
-- 
Ayush Singh <ayush@beagleboard.org>


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2025-08-17  5:50 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-16  5:57 [PATCH v2 0/2] rust: Add abstractions for applying devicetree overlays Ayush Singh
2025-08-16  5:57 ` [PATCH v2 1/2] rust: kernel: of: Add DeviceNode abstraction Ayush Singh
2025-08-16  5:57 ` [PATCH v2 2/2] rust: kernel: of: Add overlay id abstraction Ayush Singh
2025-08-17  5:50   ` kernel test robot
2025-08-16 12:42 ` [PATCH v2 0/2] rust: Add abstractions for applying devicetree overlays Miguel Ojeda

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).