Re: [PATCH v11 06/22] gpu: nova-core: Blackwell: use correct sysmem flush registers
From: John Hubbard
Date: Mon Jun 01 2026 - 14:26:57 EST
On 6/1/26 12:01 AM, Alexandre Courbot wrote:
> On Sat May 30, 2026 at 12:09 PM JST, John Hubbard wrote:
> <snip>
...
>> + pub(crate) NV_PFB_HSHUB0_EG_PCIE_FLUSH_SYSMEM_ADDR_HI(u32) @ 0x008916c4 {
>> + 19:0 adr;
>> + }
>
> I am still a bit uncertain about the addresses of these registers.
> OpenRM seems to use `0x00870000` as the base [1][2] and use relative
> offsets from it; that would make the address of e.g. `SYSMEM_ADDR_LO` be
> `0x00870e500`. I cannot find any reference to a `0x00891000` base. Can
> you double-check where it comes from?
>
> Ideally these should also be relative registers with the same names as
> OpenRM (e.g. `NV_PFB_HSHUB_PCIE_FLUSH_SYSMEM_ADDR_LO`) for easy lookup.
> The `Hshub0` base can be declared in the `gb100` HAL since it's the only
> place that uses it for now.
>
> As I mentioned in my v10 review [3], there is more complexity to the
> HSHUB module that involves runtime-detected values, but for boot it
> looks like it also does rely on HSHUB0 as a stable base, so thankfully
> we don't have to worry about this for now.
>
OK, yes, Let me get to the bottom of this.
> [1] https://github.com/NVIDIA/open-gpu-kernel-modules/blob/570.148/src/nvidia/src/kernel/gpu/mem_sys/arch/blackwell/kern_mem_sys_gb100.c#L54
> [2] https://github.com/NVIDIA/open-gpu-kernel-modules/blob/570.148/src/common/inc/swref/published/blackwell/gb100/dev_hshub_base.h
> [3] https://lore.kernel.org/all/DHY1D4IOXGRF.UQMCOXYG78CZ@xxxxxxxxxx/
thanks,
--
John Hubbard