gpu: nova-core: update firmware module info for TLV images

Now that nova-core loads the TLV firmware images, update the firmware
module info to specify those files.

Also remove FIRMWARE_VERSION as it is no longer used.

Signed-off-by: Timur Tabi <ttabi@nvidia.com>
Reviewed-by: Alexandre Courbot <acourbot@nvidia.com>
Tested-by: Alexandre Courbot <acourbot@nvidia.com>
Link: https://patch.msgid.link/20260731201017.2580713-9-ttabi@nvidia.com
Signed-off-by: Danilo Krummrich <dakr@kernel.org>
This commit is contained in:
Timur Tabi
2026-07-31 15:10:17 -05:00
committed by Danilo Krummrich
parent 08994a0f29
commit 7923d0bc8e
2 changed files with 8 additions and 12 deletions

View File

@@ -29,8 +29,6 @@
pub(crate) mod riscv;
pub(crate) mod tlv;
pub(crate) const FIRMWARE_VERSION: &str = "570.144";
/// Structure used to describe some firmwares, notably FWSEC-FRTS.
#[repr(C)]
#[derive(Debug, Clone, FromBytes)]
@@ -338,10 +336,7 @@ const fn make_entry_file(self, chipset: &str, fw: &str) -> Self {
.push("nvidia/")
.push(chipset)
.push("/gsp/")
.push(fw)
.push("-")
.push(FIRMWARE_VERSION)
.push(".bin"),
.push(fw),
)
}
@@ -350,8 +345,9 @@ const fn make_entry_chipset(self, chipset: gpu::Chipset) -> Self {
// GSP firmware files are always present.
let mut this = self
.make_entry_file(name, "bootloader")
.make_entry_file(name, "gsp");
.make_entry_file(name, "gsp_bootloader.tlv")
.make_entry_file(name, "gsp.tlv")
.make_entry_file(name, "gsp.bin");
// Add the firmware files specific to the GSP boot method of `chipset`.
let boot_files = boot_firmware_files(chipset);

View File

@@ -61,16 +61,16 @@ fn post_boot(
pub(crate) const fn boot_firmware_files(chipset: Chipset) -> &'static [&'static str] {
match chipset.arch() {
// Turing chipsets boot the GSP via the SEC2 Booter, and require the FWSEC bootloader.
Architecture::Turing => &["booter_load", "booter_unload", "gen_bootloader"],
Architecture::Turing => &["booter_load.tlv", "booter_unload.tlv", "gen_bootloader.tlv"],
// GA100 also requires the FWSEC bootloader.
Architecture::Ampere if matches!(chipset, Chipset::GA100) => {
&["booter_load", "booter_unload", "gen_bootloader"]
&["booter_load.tlv", "booter_unload.tlv", "gen_bootloader.tlv"]
}
// Other Ampere chipsets, as well as Ada chipsets, run FWSEC directly.
Architecture::Ampere | Architecture::Ada => &["booter_load", "booter_unload"],
Architecture::Ampere | Architecture::Ada => &["booter_load.tlv", "booter_unload.tlv"],
// Hopper and later chipsets boot the GSP via the FMC image loaded by FSP.
Architecture::Hopper | Architecture::BlackwellGB10x | Architecture::BlackwellGB20x => {
&["fmc"]
&["fmc.tlv"]
}
}
}