From: "Alexandre Courbot" <acourbot@nvidia.com>
To: "John Hubbard" <jhubbard@nvidia.com>,
"Danilo Krummrich" <dakr@kernel.org>
Cc: "Alexandre Courbot" <acourbot@nvidia.com>,
"Joel Fernandes" <joelagnelf@nvidia.com>,
"Timur Tabi" <ttabi@nvidia.com>,
"Alistair Popple" <apopple@nvidia.com>,
"Edwin Peer" <epeer@nvidia.com>, "Zhi Wang" <zhiw@nvidia.com>,
"David Airlie" <airlied@gmail.com>,
"Simona Vetter" <simona@ffwll.ch>,
"Bjorn Helgaas" <bhelgaas@google.com>,
"Miguel Ojeda" <ojeda@kernel.org>,
"Alex Gaynor" <alex.gaynor@gmail.com>,
"Boqun Feng" <boqun.feng@gmail.com>,
"Gary Guo" <gary@garyguo.net>,
"Björn Roy Baron" <bjorn3_gh@protonmail.com>,
"Benno Lossin" <lossin@kernel.org>,
"Andreas Hindborg" <a.hindborg@kernel.org>,
"Alice Ryhl" <aliceryhl@google.com>,
"Trevor Gross" <tmgross@umich.edu>,
nouveau@lists.freedesktop.org, rust-for-linux@vger.kernel.org,
LKML <linux-kernel@vger.kernel.org>,
Nouveau <nouveau-bounces@lists.freedesktop.org>
Subject: Re: [PATCH v7 4/4] gpu: nova-core: add boot42 support for next-gen GPUs
Date: Thu, 13 Nov 2025 17:03:44 +0900 [thread overview]
Message-ID: <DE7ESLFYKP2I.MD5ABO05Q2O7@nvidia.com> (raw)
In-Reply-To: <20251112043000.83071-5-jhubbard@nvidia.com>
On Wed Nov 12, 2025 at 1:30 PM JST, John Hubbard wrote:
> NVIDIA GPUs are moving away from using NV_PMC_BOOT_0 to contain
> architecture and revision details, and will instead use NV_PMC_BOOT_42
> in the future. NV_PMC_BOOT_0 will contain a specific set of values
> that will mean "go read NV_PMC_BOOT_42 instead".
>
> Change the selection logic in Nova so that it will claim Turing and
> later GPUs. This will work for the foreseeable future, without any
> further code changes here, because all NVIDIA GPUs are considered, from
> the oldest supported on Linux (NV04), through the future GPUs.
>
> Add some comment documentation to explain, chronologically, how boot0
> and boot42 change with the GPU eras, and how that affects the selection
> logic.
>
> Cc: Alexandre Courbot <acourbot@nvidia.com>
> Cc: Danilo Krummrich <dakr@kernel.org>
> Cc: Timur Tabi <ttabi@nvidia.com>
> Signed-off-by: John Hubbard <jhubbard@nvidia.com>
Love it, it's super simple now. :)
<snip>
> diff --git a/drivers/gpu/nova-core/regs.rs b/drivers/gpu/nova-core/regs.rs
> index 8c9af3c59708..81097e83c276 100644
> --- a/drivers/gpu/nova-core/regs.rs
> +++ b/drivers/gpu/nova-core/regs.rs
> @@ -41,14 +41,24 @@
> });
>
> impl NV_PMC_BOOT_0 {
> - /// Combines `architecture_0` and `architecture_1` to obtain the architecture of the chip.
> - pub(crate) fn architecture(self) -> Result<Architecture> {
> - Architecture::try_from(
> - self.architecture_0() | (self.architecture_1() << Self::ARCHITECTURE_0_RANGE.len()),
> - )
> + pub(crate) fn is_older_than_fermi(self) -> bool {
> + // From https://github.com/NVIDIA/open-gpu-doc/tree/master/manuals :
> + const NV_PMC_BOOT_0_ARCHITECTURE_GF100: u8 = 0xc;
> +
> + // Older chips left arch1 zeroed out. That, combined with an arch0 value that is less than
> + // GF100, means "older than Fermi".
> + self.architecture_1() == 0 && self.architecture_0() < NV_PMC_BOOT_0_ARCHITECTURE_GF100
We could also keep `architecture` (making it private) and just test for
`self.architecture < NV_PMC_BOOT_0_ARCHITECTURE_GF100`. John, I can do
that when applying the series if you think that makes sense.
Considering that the series has been extensively reviewed during the
previous iterations, I think we can safely apply it for 6.19, so will
proceed once I have an answer.
next prev parent reply other threads:[~2025-11-13 8:05 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-11-12 4:29 [PATCH v7 0/4] gpu: nova: add boot42 support for next-gen GPUs John Hubbard
2025-11-12 4:29 ` [PATCH v7 1/4] gpu: nova-core: implement Display for Spec John Hubbard
2025-11-12 4:29 ` [PATCH v7 2/4] gpu: nova-core: prepare Spec and Revision types for boot0/boot42 John Hubbard
2025-11-13 20:00 ` Joel Fernandes
2025-11-13 20:17 ` John Hubbard
2025-11-12 4:29 ` [PATCH v7 3/4] gpu: nova-core: make Architecture behave as a u8 type John Hubbard
2025-11-12 4:30 ` [PATCH v7 4/4] gpu: nova-core: add boot42 support for next-gen GPUs John Hubbard
2025-11-13 8:03 ` Alexandre Courbot [this message]
2025-11-13 18:38 ` John Hubbard
2025-11-14 1:54 ` John Hubbard
2025-11-14 2:34 ` Alexandre Courbot
2025-11-13 19:59 ` Joel Fernandes
2025-11-13 20:16 ` John Hubbard
2025-11-14 1:21 ` Alexandre Courbot
2025-11-13 20:02 ` [PATCH v7 0/4] gpu: nova: " Joel Fernandes
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=DE7ESLFYKP2I.MD5ABO05Q2O7@nvidia.com \
--to=acourbot@nvidia.com \
--cc=a.hindborg@kernel.org \
--cc=airlied@gmail.com \
--cc=alex.gaynor@gmail.com \
--cc=aliceryhl@google.com \
--cc=apopple@nvidia.com \
--cc=bhelgaas@google.com \
--cc=bjorn3_gh@protonmail.com \
--cc=boqun.feng@gmail.com \
--cc=dakr@kernel.org \
--cc=epeer@nvidia.com \
--cc=gary@garyguo.net \
--cc=jhubbard@nvidia.com \
--cc=joelagnelf@nvidia.com \
--cc=linux-kernel@vger.kernel.org \
--cc=lossin@kernel.org \
--cc=nouveau-bounces@lists.freedesktop.org \
--cc=nouveau@lists.freedesktop.org \
--cc=ojeda@kernel.org \
--cc=rust-for-linux@vger.kernel.org \
--cc=simona@ffwll.ch \
--cc=tmgross@umich.edu \
--cc=ttabi@nvidia.com \
--cc=zhiw@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.