[PATCH] rust: opp: use c_* types via kernel prelude

Abhinav Ananthu posted 1 patch 3 months, 2 weeks ago
rust/kernel/opp.rs | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
[PATCH] rust: opp: use c_* types via kernel prelude
Posted by Abhinav Ananthu 3 months, 2 weeks ago
Update OPP FFI callback signatures to use `c_int` from the `kernel::prelude`,
instead of accessing it via `kernel::ffi::c_int`.

Although these types are defined in a crate named `ffi`, they are re-exported
via the `kernel::prelude` and should be used from there. This aligns with the
Rust-for-Linux coding guidelines and ensures ABI correctness when interfacing
with C code.

Signed-off-by: Abhinav Ananthu <abhinav.ogl@gmail.com>
Suggested-by: Viresh Kumar <viresh.kumar@linaro.org>
---
 rust/kernel/opp.rs | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/rust/kernel/opp.rs b/rust/kernel/opp.rs
index a566fc3e7dcb..846583da9a2f 100644
--- a/rust/kernel/opp.rs
+++ b/rust/kernel/opp.rs
@@ -514,9 +514,9 @@ extern "C" fn config_clks(
         dev: *mut bindings::device,
         opp_table: *mut bindings::opp_table,
         opp: *mut bindings::dev_pm_opp,
-        _data: *mut kernel::ffi::c_void,
+        _data: *mut c_void,
         scaling_down: bool,
-    ) -> kernel::ffi::c_int {
+    ) -> c_int {
         from_result(|| {
             // SAFETY: 'dev' is guaranteed by the C code to be valid.
             let dev = unsafe { Device::get_device(dev) };
@@ -540,8 +540,8 @@ extern "C" fn config_regulators(
         old_opp: *mut bindings::dev_pm_opp,
         new_opp: *mut bindings::dev_pm_opp,
         regulators: *mut *mut bindings::regulator,
-        count: kernel::ffi::c_uint,
-    ) -> kernel::ffi::c_int {
+        count: c_uint,
+    ) -> c_int {
         from_result(|| {
             // SAFETY: 'dev' is guaranteed by the C code to be valid.
             let dev = unsafe { Device::get_device(dev) };
-- 
2.34.1
Re: [PATCH] rust: opp: use c_* types via kernel prelude
Posted by Viresh Kumar 3 months, 2 weeks ago
On 20-06-25, 15:29, Abhinav Ananthu wrote:
> Update OPP FFI callback signatures to use `c_int` from the `kernel::prelude`,
> instead of accessing it via `kernel::ffi::c_int`.
> 
> Although these types are defined in a crate named `ffi`, they are re-exported
> via the `kernel::prelude` and should be used from there. This aligns with the
> Rust-for-Linux coding guidelines and ensures ABI correctness when interfacing
> with C code.
> 
> Signed-off-by: Abhinav Ananthu <abhinav.ogl@gmail.com>
> Suggested-by: Viresh Kumar <viresh.kumar@linaro.org>
> ---
>  rust/kernel/opp.rs | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)

Applied. Thanks.

-- 
viresh
Re: [PATCH] rust: opp: use c_* types via kernel prelude
Posted by Miguel Ojeda 3 months, 2 weeks ago
On Fri, Jun 20, 2025 at 12:00 PM Abhinav Ananthu <abhinav.ogl@gmail.com> wrote:
>
> Although these types are defined in a crate named `ffi`, they are re-exported
> via the `kernel::prelude` and should be used from there. This aligns with the
> Rust-for-Linux coding guidelines and ensures ABI correctness when interfacing
> with C code.

By the way, thanks for sending these, and please feel free to clean up
the rest -- we have a bunch of instances of this in the tree :)

Happy to create an issue about it.

Cheers,
Miguel