]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
gpu: nova-core: convert PBUS registers to kernel register macro
authorAlexandre Courbot <acourbot@nvidia.com>
Wed, 25 Mar 2026 02:46:16 +0000 (11:46 +0900)
committerAlexandre Courbot <acourbot@nvidia.com>
Thu, 26 Mar 2026 06:08:27 +0000 (15:08 +0900)
Convert all PBUS registers to use the kernel's register macro and update
the code accordingly.

Reviewed-by: Eliot Courtney <ecourtney@nvidia.com>
Reviewed-by: Gary Guo <gary@garyguo.net>
Acked-by: Danilo Krummrich <dakr@kernel.org>
Link: https://patch.msgid.link/20260325-b4-nova-register-v4-3-bdf172f0f6ca@nvidia.com
Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
drivers/gpu/nova-core/gsp/boot.rs
drivers/gpu/nova-core/regs.rs

index e55210ebb6d10fb050490297581a8863252c6d7a..3a0124818956593c6e17b27bdc309fc0ca63e695 100644 (file)
@@ -4,6 +4,7 @@ use kernel::{
     device,
     dma::Coherent,
     io::poll::read_poll_timeout,
+    io::Io,
     pci,
     prelude::*,
     time::Delta, //
@@ -86,7 +87,9 @@ impl super::Gsp {
         }
 
         // SCRATCH_E contains the error code for FWSEC-FRTS.
-        let frts_status = regs::NV_PBUS_SW_SCRATCH_0E_FRTS_ERR::read(bar).frts_err_code();
+        let frts_status = bar
+            .read(regs::NV_PBUS_SW_SCRATCH_0E_FRTS_ERR)
+            .frts_err_code();
         if frts_status != 0 {
             dev_err!(
                 dev,
index 58fb807605dd5f4604064472f21b4a4df7f32ddd..533d912659ba56d858debb280bc1acf1a56240a6 100644 (file)
@@ -109,12 +109,14 @@ impl kernel::fmt::Display for NV_PMC_BOOT_42 {
 
 // PBUS
 
-register!(NV_PBUS_SW_SCRATCH @ 0x00001400[64]  {});
+io::register! {
+    pub(crate) NV_PBUS_SW_SCRATCH(u32)[64] @ 0x00001400 {}
 
-register!(NV_PBUS_SW_SCRATCH_0E_FRTS_ERR => NV_PBUS_SW_SCRATCH[0xe],
-    "scratch register 0xe used as FRTS firmware error code" {
-    31:16   frts_err_code as u16;
-});
+    /// Scratch register 0xe used as FRTS firmware error code.
+    pub(crate) NV_PBUS_SW_SCRATCH_0E_FRTS_ERR(u32) => NV_PBUS_SW_SCRATCH[0xe] {
+        31:16   frts_err_code;
+    }
+}
 
 // PFB