On 11/25/25 5:39 PM, John Hubbard wrote:
> Hi,
>
> I'm posting this now, instead of with the upcoming full Hopper/Blackwell
> series, because this includes some HAL improvements here that will
> undoubtedly interact "a little bit" with Timur Tabi's Turing support
> patchset [1].
>
Thanks to everyone (Lyude, Alex C.) who looked at this so far. I'm
planning to merge it into the upcoming Hopper/Blackwell firmware
series, due to the timing of things: it no longer helps to have
these prerequisites all by themselves.
thanks,
--
John Hubbard
> Changes in v2:
>
> 0) Rebased on top of today's drm-rust-next.
>
> 1) Use a new FbRange newtype, in order to clean up the implementation of
> printing ranges with sizes. (Thanks to Alex Courbot's suggestion.)
>
> 2) Combined the Hopper and Blackwell HAL additions, into a single patch,
> as recommended by Timur Tabi.
>
> 3) Used a separate patch to change the "use" lines to vertical format.
> That patch is already a commit in drm-rust-next, so this series builds
> on top of that.
>
> 4) Dropped one patch entirely, because the boot0/boot42 commits fixed
> up everything already.
>
> As implied above, this is based on top of today's drm-rust-next. There
> is also a branch, for convenience in reviewing:
>
> https://github.com/johnhubbard/linux/tree/nova-core-blackwell-prereqs-v2
>
> [1] https://lore.kernel.org/20251114233045.2512853-1-ttabi@nvidia.com
>
> ************************************************************************
> Here's the original cover letter, edited slightly (removed the link
> to the v0 series, to avoid anyone going there by mistake):
>
> I've based these Hopper/Blackwell prerequisites on top of Joel's and
> Alex's changes, and also on top of my recent boot0/boot42 changes.
>
> This makes it easier for both Timur Tabi to post his Turing support
> (which he's about ready to do), and for me to post the actual
> Hopper/Blackwell support, without generating conflicts.
>
> Testing: This works as expected on Ampere and Blackwell (bare metal),
> on my local test machine.
>
> John Hubbard (5):
> gpu: nova-core: print FB sizes, along with ranges
> gpu: nova-core: add FbRange.len() and use it in boot.rs
> gpu: nova-core: Hopper/Blackwell: basic GPU identification
> nova-core: factor .fwsignature* selection into a new
> get_gsp_sigs_section()
> gpu: nova-core: use GPU Architecture to simplify HAL selections
>
> drivers/gpu/nova-core/falcon/hal.rs | 19 ++++---
> drivers/gpu/nova-core/fb.rs | 72 ++++++++++++++++++++-------
> drivers/gpu/nova-core/fb/hal.rs | 18 +++----
> drivers/gpu/nova-core/firmware/gsp.rs | 30 +++++++++--
> drivers/gpu/nova-core/gpu.rs | 22 ++++++++
> drivers/gpu/nova-core/gsp/boot.rs | 2 +-
> 6 files changed, 125 insertions(+), 38 deletions(-)
>
>
> base-commit: 57dc2ea0b7bdb828c5d966d9135c28fe854933a4