<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/gpu/nova-core/regs.rs, branch linux-7.0.y</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=linux-7.0.y</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=linux-7.0.y'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2026-01-23T23:45:13+00:00</updated>
<entry>
<title>gpu: nova-core: add NV_PFALCON_FALCON_ENGINE::reset_engine()</title>
<updated>2026-01-23T23:45:13+00:00</updated>
<author>
<name>Timur Tabi</name>
<email>ttabi@nvidia.com</email>
</author>
<published>2026-01-22T22:28:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=a75718afc9a5c61d9266d5d0010228a6a3bb7233'/>
<id>urn:sha1:a75718afc9a5c61d9266d5d0010228a6a3bb7233</id>
<content type='text'>
Add a method for the NV_PFALCON_FALCON_ENGINE register that reset the
Falcon, and update the reset_eng() HAL functions to use it.

Signed-off-by: Timur Tabi &lt;ttabi@nvidia.com&gt;
Reviewed-by: Gary Guo &lt;gary@garyguo.net&gt;
Acked-by: Danilo Krummrich &lt;dakr@kernel.org&gt;
Link: https://patch.msgid.link/20260122222848.2555890-9-ttabi@nvidia.com
Signed-off-by: Alexandre Courbot &lt;acourbot@nvidia.com&gt;
</content>
</entry>
<entry>
<title>gpu: nova-core: Add basic Turing HAL</title>
<updated>2026-01-23T23:45:13+00:00</updated>
<author>
<name>Timur Tabi</name>
<email>ttabi@nvidia.com</email>
</author>
<published>2026-01-22T22:28:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=954b38fd0a8f5feaa44a9c5c05ed771815949d95'/>
<id>urn:sha1:954b38fd0a8f5feaa44a9c5c05ed771815949d95</id>
<content type='text'>
Add the basic HAL for recognizing Turing GPUs.  This isn't enough
to support booting GSP-RM on Turing, but it's a start.

Note that GA100, which boots using the same method as Turing, is not
supported yet.

Signed-off-by: Timur Tabi &lt;ttabi@nvidia.com&gt;
Reviewed-by: John Hubbard &lt;jhubbard@nvidia.com&gt;
Reviewed-by: Gary Guo &lt;gary@garyguo.net&gt;
Acked-by: Danilo Krummrich &lt;dakr@kernel.org&gt;
Link: https://patch.msgid.link/20260122222848.2555890-8-ttabi@nvidia.com
Signed-off-by: Alexandre Courbot &lt;acourbot@nvidia.com&gt;
</content>
</entry>
<entry>
<title>gpu: nova-core: add NV_PFALCON_FALCON_DMATRFCMD::with_falcon_mem()</title>
<updated>2026-01-23T23:45:13+00:00</updated>
<author>
<name>Timur Tabi</name>
<email>ttabi@nvidia.com</email>
</author>
<published>2026-01-22T22:28:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=f6507640b0cddfd90d398e3996321b1a735f98be'/>
<id>urn:sha1:f6507640b0cddfd90d398e3996321b1a735f98be</id>
<content type='text'>
The with_falcon_mem() method initializes the 'imem' and 'sec' fields of
the NV_PFALCON_FALCON_DMATRFCMD register based on the value of
the FalconMem type.

Signed-off-by: Timur Tabi &lt;ttabi@nvidia.com&gt;
Reviewed-by: John Hubbard &lt;jhubbard@nvidia.com&gt;
Reviewed-by: Gary Guo &lt;gary@garyguo.net&gt;
Acked-by: Danilo Krummrich &lt;dakr@kernel.org&gt;
Link: https://patch.msgid.link/20260122222848.2555890-6-ttabi@nvidia.com
Signed-off-by: Alexandre Courbot &lt;acourbot@nvidia.com&gt;
</content>
</entry>
<entry>
<title>gpu: nova-core: provide a clear error report for unsupported GPUs</title>
<updated>2025-11-15T14:11:28+00:00</updated>
<author>
<name>John Hubbard</name>
<email>jhubbard@nvidia.com</email>
</author>
<published>2025-11-15T01:09:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=ce89e3e019f1ec4b11356f35feb8bd8c0f2c6bf7'/>
<id>urn:sha1:ce89e3e019f1ec4b11356f35feb8bd8c0f2c6bf7</id>
<content type='text'>
Pass in a PCI device to Spec::new(), and provide a Display
implementation for boot42, in order to provide a clear, concise report
of what happened: the driver read NV_PMC_BOOT42, and found that the GPU
is not supported.

For very old GPUs (older than Fermi), the driver still returns ENODEV,
but it does so without a driver-specific dmesg report. That is exactly
appropriate, because if such a GPU is installed, it can only be
supported by Nouveau. And if so, the user is not helped by additional
error messages from Nova.

Here's the full dmesg output for a Blackwell (not yet supported) GPU:

NovaCore 0000:01:00.0: Probe Nova Core GPU driver.
NovaCore 0000:01:00.0: Unsupported chipset: boot42 = 0x1b2a1000 (architecture 0x1b, implementation 0x2)
NovaCore 0000:01:00.0: probe with driver NovaCore failed with error -524

Cc: Alexandre Courbot &lt;acourbot@nvidia.com&gt;
Cc: Danilo Krummrich &lt;dakr@kernel.org&gt;
Cc: Timur Tabi &lt;ttabi@nvidia.com&gt;
Cc: Joel Fernandes &lt;joelagnelf@nvidia.com&gt;
Signed-off-by: John Hubbard &lt;jhubbard@nvidia.com&gt;
[acourbot@nvidia.com: fix commit log with ENODEV (not ENOTSUPP) error
code for unsupported GPUs.]
Signed-off-by: Alexandre Courbot &lt;acourbot@nvidia.com&gt;
Message-ID: &lt;20251115010923.1192144-5-jhubbard@nvidia.com&gt;
</content>
</entry>
<entry>
<title>gpu: nova-core: add boot42 support for next-gen GPUs</title>
<updated>2025-11-15T14:11:27+00:00</updated>
<author>
<name>John Hubbard</name>
<email>jhubbard@nvidia.com</email>
</author>
<published>2025-11-15T01:09:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=0ecc08e2c450d9d3aebfc0c093db444d77557469'/>
<id>urn:sha1:0ecc08e2c450d9d3aebfc0c093db444d77557469</id>
<content type='text'>
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 &lt;acourbot@nvidia.com&gt;
Cc: Danilo Krummrich &lt;dakr@kernel.org&gt;
Cc: Timur Tabi &lt;ttabi@nvidia.com&gt;
Reviewed-by: Joel Fernandes &lt;joelagnelf@nvidia.com&gt;
Signed-off-by: John Hubbard &lt;jhubbard@nvidia.com&gt;
[acourbot@nvidia.com: remove unneeded `From&lt;BOOT_0&gt; for Revision`
implementation.]
Signed-off-by: Alexandre Courbot &lt;acourbot@nvidia.com&gt;
Message-ID: &lt;20251115010923.1192144-4-jhubbard@nvidia.com&gt;
</content>
</entry>
<entry>
<title>gpu: nova-core: gsp: Add support for checking if GSP reloaded</title>
<updated>2025-11-15T11:08:49+00:00</updated>
<author>
<name>Joel Fernandes</name>
<email>joelagnelf@nvidia.com</email>
</author>
<published>2025-11-14T19:55:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=f77be04d00d8ce403ecaf547f1515a844bbde060'/>
<id>urn:sha1:f77be04d00d8ce403ecaf547f1515a844bbde060</id>
<content type='text'>
During the sequencer process, we need to check if GSP was successfully
reloaded. Add functionality to check for the same.

Reviewed-by: Lyude Paul &lt;lyude@redhat.com&gt;
Signed-off-by: Joel Fernandes &lt;joelagnelf@nvidia.com&gt;
Signed-off-by: Alexandre Courbot &lt;acourbot@nvidia.com&gt;
Message-ID: &lt;20251114195552.739371-6-joelagnelf@nvidia.com&gt;
</content>
</entry>
<entry>
<title>gpu: nova-core: falcon: Add support to write firmware version</title>
<updated>2025-11-14T11:25:57+00:00</updated>
<author>
<name>Joel Fernandes</name>
<email>joelagnelf@nvidia.com</email>
</author>
<published>2025-11-10T13:34:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=945c1eee7dbeb0dcafc9d151eaa46a4273d386fa'/>
<id>urn:sha1:945c1eee7dbeb0dcafc9d151eaa46a4273d386fa</id>
<content type='text'>
This will be needed by both the GSP boot code as well as GSP resume code
in the sequencer.

Reviewed-by: Lyude Paul &lt;lyude@redhat.com&gt;
Signed-off-by: Joel Fernandes &lt;joelagnelf@nvidia.com&gt;
Signed-off-by: Alexandre Courbot &lt;acourbot@nvidia.com&gt;
Message-ID: &lt;20251110-gsp_boot-v9-14-8ae4058e3c0e@nvidia.com&gt;
</content>
</entry>
<entry>
<title>gpu: nova-core: falcon: Add support to check if RISC-V is active</title>
<updated>2025-11-14T11:25:57+00:00</updated>
<author>
<name>Joel Fernandes</name>
<email>joelagnelf@nvidia.com</email>
</author>
<published>2025-11-10T13:34:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=bb58d1aee6081dba5f64eacf48993c077e99dd4a'/>
<id>urn:sha1:bb58d1aee6081dba5f64eacf48993c077e99dd4a</id>
<content type='text'>
Add definition for RISCV_CPUCTL register and use it in a new falcon API
to check if the RISC-V core of a Falcon is active. It is required by
the sequencer to know if the GSP's RISCV processor is active.

Reviewed-by: Lyude Paul &lt;lyude@redhat.com&gt;
Signed-off-by: Joel Fernandes &lt;joelagnelf@nvidia.com&gt;
Signed-off-by: Alexandre Courbot &lt;acourbot@nvidia.com&gt;
Message-ID: &lt;20251110-gsp_boot-v9-13-8ae4058e3c0e@nvidia.com&gt;
</content>
</entry>
<entry>
<title>gpu: nova-core: gsp: Add GSP command queue bindings and handling</title>
<updated>2025-11-14T11:25:57+00:00</updated>
<author>
<name>Alistair Popple</name>
<email>apopple@nvidia.com</email>
</author>
<published>2025-11-10T13:34:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=75f6b1de8133ea337b72901464989dc811d3305d'/>
<id>urn:sha1:75f6b1de8133ea337b72901464989dc811d3305d</id>
<content type='text'>
This commit introduces core infrastructure for handling GSP command and
message queues in the nova-core driver. The command queue system enables
bidirectional communication between the host driver and GSP firmware
through a remote message passing interface.

The interface is based on passing serialised data structures over a ring
buffer with separate transmit and receive queues. Commands are sent by
writing to the CPU transmit queue and waiting for completion via the
receive queue.

To ensure safety mutable or immutable (depending on whether it is a send
or receive operation) references are taken on the command queue when
allocating the message to write/read to. This ensures message memory
remains valid and the command queue can't be mutated whilst an operation
is in progress.

Currently this is only used by the probe() routine and therefore can
only used by a single thread of execution. Locking to enable safe access
from multiple threads will be introduced in a future series when that
becomes necessary.

Signed-off-by: Alistair Popple &lt;apopple@nvidia.com&gt;
Co-developed-by: Alexandre Courbot &lt;acourbot@nvidia.com&gt;
Signed-off-by: Alexandre Courbot &lt;acourbot@nvidia.com&gt;
Message-ID: &lt;20251110-gsp_boot-v9-9-8ae4058e3c0e@nvidia.com&gt;
</content>
</entry>
<entry>
<title>gpu: nova-core: replace use of `as` with functions from `num`</title>
<updated>2025-11-07T23:22:45+00:00</updated>
<author>
<name>Alexandre Courbot</name>
<email>acourbot@nvidia.com</email>
</author>
<published>2025-10-27T14:12:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=84e2b401bcc551e7c2e1a995f90cce421bce5bfd'/>
<id>urn:sha1:84e2b401bcc551e7c2e1a995f90cce421bce5bfd</id>
<content type='text'>
Use the newly-introduced `num` module to replace the use of `as`
wherever it is safe to do. This ensures that a given conversion cannot
lose data if its source or destination type ever changes.

Acked-by: Danilo Krummrich &lt;dakr@kernel.org&gt;
[acourbot@nvidia.com: fix merge conflicts after rebase.]
Signed-off-by: Alexandre Courbot &lt;acourbot@nvidia.com&gt;
Message-ID: &lt;20251029-nova-as-v3-5-6a30c7333ad9@nvidia.com&gt;
</content>
</entry>
</feed>
