From: Joel Fernandes <joelagnelf@nvidia.com>
To: Timur Tabi <ttabi@nvidia.com>, Gary Guo <gary@garyguo.net>,
Danilo Krummrich <dakr@kernel.org>,
Alexandre Courbot <acourbot@nvidia.com>,
John Hubbard <jhubbard@nvidia.com>,
rust-for-linux@vger.kernel.org, nouveau@lists.freedesktop.org
Subject: Re: [PATCH v7 00/12] gpu: nova-core: add Turing support
Date: Wed, 21 Jan 2026 19:14:49 -0500 [thread overview]
Message-ID: <e7dce72e-d0c9-416b-8bab-328b97fcdf30@nvidia.com> (raw)
In-Reply-To: <20260121235302.1962185-1-ttabi@nvidia.com>
On 1/21/2026 6:52 PM, Timur Tabi wrote:
> Note: This patchset requires "[PATCH v3 2/7] rust: io: always inline
> functions using build_assert with arguments" in order to compile
> with CLIPPY.
>
> Note 2: This patch set does not include the upcoming refactor for
> handling the Generic Bootloader.
>
> This patch set adds basic support for pre-booting GSP-RM
> on Turing.
>
> There is also partial support for GA100, but it's currently not
> fully implemented. GA100 is considered experimental in Nouveau,
> and so it hasn't been tested with NovaCore either.
>
> The latest linux-firmware.git is required because it contains the
> Generic Bootloader image that has not yet been propogated to
> distros.
>
> Summary of changes:
>
> 1. Introduce non-secure IMEM support. For GA102 and later, only secure IMEM
> is used.
> 2. Because of non-secure IMEM, Turing booter firmware images need some of
> the headers parsed differently for stuff like the load target address.
> 3. Add support the tu10x firmware signature section in the ELF image.
> 4. Add several new registers used only on Turing.
> 5. Some functions that were considered generic Falcon operations are
> actually different on Turing vs GA102+, so they are moved to the HAL.
> 6. The FRTS FWSEC firmware in VBIOS uses a different version of the
> descriptor header.
> 7. On Turing/GA100 LIBOS args struct needs to have its 'size' field
> aligned to 4KB. So pad the struct to make it 4K.
> 8. Turing Falcons do not support DMA, so PIO is used to copy images
> into IMEM/DMEM.
> 9. Load the Generic Bootloader from disk and use it to boot FWSEC on
> Turing and GA100.
>
> Changes from v6:
> 1. Miscellaneous refactoring to FalconUCodeDescV2 code, based on review
> feedback, to make the code more consistent.
> 2. Added NV_PFALCON_FALCON_ENGINE::reset_engine()
> 3. Removed `port` parameter from pio_wr_bytes and just hard-coded it to 0.
> 4. Removed supports_dma patch
> 5. Renamed pr_wr_bytes to pr_wr_slice
> 6. Simplified NV_PFALCON_FALCON_DMEMD loop
> 7. Misc minor code improvements based on review feedback.
>
> Alexandre Courbot (1):
> gpu: nova-core: align LibosMemoryRegionInitArgument size to page size
>
> Timur Tabi (11):
> gpu: nova-core: rename Imem to ImemSecure
> gpu: nova-core: add ImemNonSecure section infrastructure
> gpu: nova-core: support header parsing on Turing/GA100
> gpu: nova-core: add support for Turing/GA100 fwsignature
> gpu: nova-core: add NV_PFALCON_FALCON_DMATRFCMD::with_falcon_mem()
> gpu: nova-core: move some functions into the HAL
> gpu: nova-core: Add basic Turing HAL
> gpu: nova-core: add NV_PFALCON_FALCON_ENGINE::reset_engine()
> gpu: nova-core: add Falcon HAL method load_method()
> gpu: nova-core: add FalconUCodeDescV2 support
> gpu: nova-core: add PIO support for loading firmware images
>
> drivers/gpu/nova-core/falcon.rs | 252 ++++-
> drivers/gpu/nova-core/falcon/hal.rs | 26 +
> drivers/gpu/nova-core/falcon/hal/ga102.rs | 39 +
> drivers/gpu/nova-core/falcon/hal/tu102.rs | 77 ++
> drivers/gpu/nova-core/firmware.rs | 203 +++-
> drivers/gpu/nova-core/firmware/booter.rs | 43 +-
> drivers/gpu/nova-core/firmware/fwsec.rs | 178 +++-
> drivers/gpu/nova-core/firmware/gsp.rs | 6 +-
> drivers/gpu/nova-core/gsp.rs | 8 +-
> drivers/gpu/nova-core/gsp/boot.rs | 6 +-
> drivers/gpu/nova-core/gsp/fw.rs | 14 +-
> drivers/gpu/nova-core/regs.rs | 72 +-
> drivers/gpu/nova-core/vbios.rs | 64 +-
> drivers/gpu/nova-core/vbios.rs.orig | 1105 +++++++++++++++++++++
Extra file? :)
--
Joel Fernandes
prev parent reply other threads:[~2026-01-22 0:14 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-21 23:52 [PATCH v7 00/12] gpu: nova-core: add Turing support Timur Tabi
2026-01-21 23:52 ` [PATCH v7 01/12] gpu: nova-core: rename Imem to ImemSecure Timur Tabi
2026-01-21 23:52 ` [PATCH v7 02/12] gpu: nova-core: add ImemNonSecure section infrastructure Timur Tabi
2026-01-21 23:52 ` [PATCH v7 03/12] gpu: nova-core: support header parsing on Turing/GA100 Timur Tabi
2026-01-21 23:52 ` [PATCH v7 04/12] gpu: nova-core: add support for Turing/GA100 fwsignature Timur Tabi
2026-01-21 23:52 ` [PATCH v7 05/12] gpu: nova-core: add NV_PFALCON_FALCON_DMATRFCMD::with_falcon_mem() Timur Tabi
2026-01-21 23:52 ` [PATCH v7 06/12] gpu: nova-core: move some functions into the HAL Timur Tabi
2026-01-21 23:52 ` [PATCH v7 07/12] gpu: nova-core: Add basic Turing HAL Timur Tabi
2026-01-21 23:52 ` [PATCH v7 08/12] gpu: nova-core: add NV_PFALCON_FALCON_ENGINE::reset_engine() Timur Tabi
2026-01-21 23:52 ` [PATCH v7 09/12] gpu: nova-core: add Falcon HAL method load_method() Timur Tabi
2026-01-21 23:53 ` [PATCH v7 10/12] gpu: nova-core: add FalconUCodeDescV2 support Timur Tabi
2026-01-22 1:45 ` Joel Fernandes
2026-01-22 1:49 ` Joel Fernandes
2026-01-21 23:53 ` [PATCH v7 11/12] gpu: nova-core: align LibosMemoryRegionInitArgument size to page size Timur Tabi
2026-01-21 23:53 ` [PATCH v7 12/12] gpu: nova-core: add PIO support for loading firmware images Timur Tabi
2026-01-22 0:14 ` Joel Fernandes [this message]
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=e7dce72e-d0c9-416b-8bab-328b97fcdf30@nvidia.com \
--to=joelagnelf@nvidia.com \
--cc=acourbot@nvidia.com \
--cc=dakr@kernel.org \
--cc=gary@garyguo.net \
--cc=jhubbard@nvidia.com \
--cc=nouveau@lists.freedesktop.org \
--cc=rust-for-linux@vger.kernel.org \
--cc=ttabi@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox