[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20250626175532.909732-1-igor.korotin.linux@gmail.com>
Date: Thu, 26 Jun 2025 18:55:32 +0100
From: Igor Korotin <igor.korotin.linux@...il.com>
To: Miguel Ojeda <ojeda@...nel.org>,
Alex Gaynor <alex.gaynor@...il.com>,
Wolfram Sang <wsa+renesas@...g-engineering.com>
Cc: Boqun Feng <boqun.feng@...il.com>,
Gary Guo <gary@...yguo.net>,
Björn Roy Baron <bjorn3_gh@...tonmail.com>,
Benno Lossin <lossin@...nel.org>,
Andreas Hindborg <a.hindborg@...nel.org>,
Alice Ryhl <aliceryhl@...gle.com>,
Trevor Gross <tmgross@...ch.edu>,
Danilo Krummrich <dakr@...nel.org>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Viresh Kumar <viresh.kumar@...aro.org>,
Asahi Lina <lina+kernel@...hilina.net>,
Wedson Almeida Filho <wedsonaf@...il.com>,
Alex Hung <alex.hung@....com>,
Tamir Duberstein <tamird@...il.com>,
Xiangfei Ding <dingxiangfei2009@...il.com>,
linux-kernel@...r.kernel.org,
rust-for-linux@...r.kernel.org,
linux-i2c@...r.kernel.org
Subject: [PATCH v1 4/4] samples: rust: show ACPI ID-table in I2C sample driver
Add an `acpi_device_table!` example and set
`SampleDriver::ACPI_ID_TABLE` to demonstrate ACPI usage.
Depends-on: <20250620152425.285683-1-igor.korotin.linux@...il.com>
Signed-off-by: Igor Korotin <igor.korotin.linux@...il.com>
---
samples/rust/rust_driver_i2c.rs | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/samples/rust/rust_driver_i2c.rs b/samples/rust/rust_driver_i2c.rs
index 7c5def930fe0..98bda18fd098 100644
--- a/samples/rust/rust_driver_i2c.rs
+++ b/samples/rust/rust_driver_i2c.rs
@@ -2,12 +2,19 @@
//! Rust I2C driver sample.
-use kernel::{c_str, device::Core, i2c, of, prelude::*, types::ARef};
+use kernel::{acpi, c_str, device::Core, i2c, of, prelude::*, types::ARef};
struct SampleDriver {
pdev: ARef<i2c::Device>,
}
+kernel::acpi_device_table! {
+ ACPI_TABLE,
+ MODULE_ACPI_TABLE,
+ <SampleDriver as i2c::Driver>::IdInfo,
+ [(acpi::DeviceId::new(b"TST0001"), 0)]
+}
+
kernel::i2c_device_table! {
I2C_TABLE,
MODULE_I2C_TABLE,
@@ -25,6 +32,7 @@ struct SampleDriver {
impl i2c::Driver for SampleDriver {
type IdInfo = u32;
+ const ACPI_ID_TABLE: Option<acpi::IdTable<Self::IdInfo>> = Some(&ACPI_TABLE);
const I2C_ID_TABLE: Option<i2c::IdTable<Self::IdInfo>> = Some(&I2C_TABLE);
const OF_ID_TABLE: Option<of::IdTable<Self::IdInfo>> = Some(&OF_TABLE);
--
2.43.0
Powered by blists - more mailing lists