rust: core abstractions for network PHY drivers
This patch adds abstractions to implement network PHY drivers; the driver registration and bindings for some of callback functions in struct phy_driver and many genphy_ functions. This feature is enabled with CONFIG_RUST_PHYLIB_ABSTRACTIONS=y. This patch enables unstable const_maybe_uninit_zeroed feature for kernel crate to enable unsafe code to handle a constant value with uninitialized data. With the feature, the abstractions can initialize a phy_driver structure with zero easily; instead of initializing all the members by hand. It's supposed to be stable in the not so distant future. Link: https://github.com/rust-lang/rust/pull/116218 Signed-off-by:FUJITA Tomonori <fujita.tomonori@gmail.com> Reviewed-by:
Andrew Lunn <andrew@lunn.ch> Reviewed-by:
Alice Ryhl <aliceryhl@google.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
Showing
- drivers/net/phy/Kconfig 8 additions, 0 deletionsdrivers/net/phy/Kconfig
- rust/bindings/bindings_helper.h 3 additions, 0 deletionsrust/bindings/bindings_helper.h
- rust/kernel/lib.rs 3 additions, 0 deletionsrust/kernel/lib.rs
- rust/kernel/net.rs 6 additions, 0 deletionsrust/kernel/net.rs
- rust/kernel/net/phy.rs 755 additions, 0 deletionsrust/kernel/net/phy.rs
Loading
Please register or sign in to comment