[PATCH] rust: make `clk::Hertz` methods const

Onur Özkan posted 1 patch 3 months, 3 weeks ago
rust/kernel/clk.rs | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
[PATCH] rust: make `clk::Hertz` methods const
Posted by Onur Özkan 3 months, 3 weeks ago
Marks `Hertz` methods as `const` to make them available
for `const` contexts. This can be useful when defining
static/compile-time frequency parameters in drivers/subsystems.

Signed-off-by: Onur Özkan <work@onurozkan.dev>
---
 rust/kernel/clk.rs | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/rust/kernel/clk.rs b/rust/kernel/clk.rs
index 6041c6d07527..ef0a2edd52c3 100644
--- a/rust/kernel/clk.rs
+++ b/rust/kernel/clk.rs
@@ -31,37 +31,37 @@

 impl Hertz {
     /// Create a new instance from kilohertz (kHz)
-    pub fn from_khz(khz: c_ulong) -> Self {
+    pub const fn from_khz(khz: c_ulong) -> Self {
         Self(khz * 1_000)
     }

     /// Create a new instance from megahertz (MHz)
-    pub fn from_mhz(mhz: c_ulong) -> Self {
+    pub const fn from_mhz(mhz: c_ulong) -> Self {
         Self(mhz * 1_000_000)
     }

     /// Create a new instance from gigahertz (GHz)
-    pub fn from_ghz(ghz: c_ulong) -> Self {
+    pub const fn from_ghz(ghz: c_ulong) -> Self {
         Self(ghz * 1_000_000_000)
     }

     /// Get the frequency in hertz
-    pub fn as_hz(&self) -> c_ulong {
+    pub const fn as_hz(&self) -> c_ulong {
         self.0
     }

     /// Get the frequency in kilohertz
-    pub fn as_khz(&self) -> c_ulong {
+    pub const fn as_khz(&self) -> c_ulong {
         self.0 / 1_000
     }

     /// Get the frequency in megahertz
-    pub fn as_mhz(&self) -> c_ulong {
+    pub const fn as_mhz(&self) -> c_ulong {
         self.0 / 1_000_000
     }

     /// Get the frequency in gigahertz
-    pub fn as_ghz(&self) -> c_ulong {
+    pub const fn as_ghz(&self) -> c_ulong {
         self.0 / 1_000_000_000
     }
 }
2.49.0

Re: [PATCH] rust: make `clk::Hertz` methods const
Posted by Stephen Boyd 3 months, 3 weeks ago
Quoting Onur Özkan (2025-06-18 02:14:42)
> Marks `Hertz` methods as `const` to make them available
> for `const` contexts. This can be useful when defining
> static/compile-time frequency parameters in drivers/subsystems.
> 
> Signed-off-by: Onur Özkan <work@onurozkan.dev>
> ---

Applied to clk-next
Re: [PATCH] rust: make `clk::Hertz` methods const
Posted by Alexandre Courbot 3 months, 3 weeks ago
On Wed Jun 18, 2025 at 6:14 PM JST, Onur Özkan wrote:
> Marks `Hertz` methods as `const` to make them available
> for `const` contexts. This can be useful when defining
> static/compile-time frequency parameters in drivers/subsystems.
>
> Signed-off-by: Onur Özkan <work@onurozkan.dev>

FWIW,

Reviewed-by: Alexandre Courbot <acourbot@nvidia.com>
Re: [PATCH] rust: make `clk::Hertz` methods const
Posted by Viresh Kumar 3 months, 3 weeks ago
On Wed, Jun 18, 2025 at 2:46 PM Onur Özkan <work@onurozkan.dev> wrote:
>
> Marks `Hertz` methods as `const` to make them available
> for `const` contexts. This can be useful when defining
> static/compile-time frequency parameters in drivers/subsystems.
>
> Signed-off-by: Onur Özkan <work@onurozkan.dev>
> ---
>  rust/kernel/clk.rs | 14 +++++++-------
>  1 file changed, 7 insertions(+), 7 deletions(-)

Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Re: [PATCH] rust: make `clk::Hertz` methods const
Posted by Alice Ryhl 3 months, 3 weeks ago
On Wed, Jun 18, 2025 at 11:16 AM Onur Özkan <work@onurozkan.dev> wrote:
>
> Marks `Hertz` methods as `const` to make them available
> for `const` contexts. This can be useful when defining
> static/compile-time frequency parameters in drivers/subsystems.
>
> Signed-off-by: Onur Özkan <work@onurozkan.dev>

Reviewed-by: Alice Ryhl <aliceryhl@google.com>