Nova: Move register definition into module using it
Subsystems (4)
PATCH 1/1 Nova: Move register definition into module using it
First babystep to split the register definitions grouped in nova root register file to the module which actually use them.
--- drivers/gpu/nova-core/gsp.rs | 1 + drivers/gpu/nova-core/gsp/cmdq.rs | 3 ++- drivers/gpu/nova-core/gsp/regs.rs | 11 +++++++++++ drivers/gpu/nova-core/regs.rs | 8 -------- 4 files changed, 14 insertions(+), 9 deletions(-) create mode 100644 drivers/gpu/nova-core/gsp/regs.rs
drivers/gpu/nova-core/gsp.rs +1 -0
@@ -21,6 +21,7 @@pub (crate )mod cmdq;pub (crate )mod commands;mod fw; +mod regs;mod sequencer;pub (crate )use fw::{
drivers/gpu/nova-core/gsp/cmdq.rs +0 -0
i
ndex 275da9b1ee0e..4d54350e8095 100644
drivers/gpu/nova-core/gsp/cmdq.rs +2 -1
@@ -51,10 +51,11 @@ GSP_PAGE_SIZE, // }, num, - regs, sbuffer::SBufferIter, // }; +use super ::regs; +/// Marker type representing the absence of a reply for a command. Commands using this as their /// reply type are sent using [`Cmdq::send_command_no_wait`]. pub (crate )struct NoReply ;
drivers/gpu/nova-core/gsp/regs.rs new file +11 -0
@@ -0,0 +1,11 @@ +// SPDX-License-Identifier: GPL-2.0 + +use kernel::io::register; + +// PGSP + +register! { +pub (super )NV_PGSP_QUEUE_HEAD (u32 ) @0x00110c00 { +31 :0 address; + } +}
drivers/gpu/nova-core/regs.rs +0 -0
--- a/drivers/gpu/nova-core/regs.rs
+++ b/drivers/gpu/nova-core/regs.rs
@@ -177,14 +177,6 @@ pub(crate) fn higher_bound(self) -> u64 {
}}
-// PGSP
-
-register! {
- pub(crate) NV_PGSP_QUEUE_HEAD(u32) @ 0x00110c00 {
- 31:0 address;
- }
-}
-
// PGC6 register space.
//
// GC6 is a GPU low-power state where VRAM is in self-refresh and the GPU is powered down (except
--
2.54.0
Alexandre Courbot
maintainerHi Antonin, thanks for this first patch!
Note about the subject: if you look at patches under drivers/gpu/nova-core, you will notice that they all use the same prefix (gpu: nova-core:). Here since you touch the gsp module, you'll want to refine it further to gpu: nova-core: gsp:.
Quoted 2 lines · Antonin Malzieu Ridolfi
First babystep to split the register definitions grouped in nova root register file to the module which actually use them.
nit: "first babystep" is irrelevant for the git history, we prefer to keep the log strictly factual. If you want to add side-comments, you can do so after the --- marker - these won't be picked up when the patch is applied.
Quoted 11 lines
Suggested-by Alexandre Courbot <[email protected]>Suggested-by Danilo Krummrich <[email protected]>Signed-off-by Antonin Malzieu Ridolfi <[email protected]>--- drivers/gpu/nova-core/gsp.rs | 1 + drivers/gpu/nova-core/gsp/cmdq.rs | 3 ++- drivers/gpu/nova-core/gsp/regs.rs | 11 +++++++++++ drivers/gpu/nova-core/regs.rs | 8 -------- 4 files changed, 14 insertions(+), 9 deletions(-) create mode 100644 drivers/gpu/nova-core/gsp/regs.rs
The patch in itself looks exactly like expected. The reduced visibility is definitely nice.
I suppose you will want to send a v2 addressing this feedback; feel free to include one or more extra obvious modules as additional patches if you feel like it. This is the kind of rework that can be merged quickly.