]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
gpu: nova-core: only boot FRTS if its region is allocated
authorTimur Tabi <ttabi@nvidia.com>
Fri, 17 Apr 2026 19:13:56 +0000 (14:13 -0500)
committerAlexandre Courbot <acourbot@nvidia.com>
Tue, 28 Apr 2026 23:13:56 +0000 (08:13 +0900)
On some Nvidia GPUs (i.e. GA100), the FRTS region is not allocated
(its size is set to 0).  In such cases, FWSEC-FRTS should not be run.

Signed-off-by: Timur Tabi <ttabi@nvidia.com>
Reviewed-by: Eliot Courtney <ecourtney@nvidia.com>
Reviewed-by: Gary Guo <gary@garyguo.net>
Link: https://patch.msgid.link/20260417191359.1307434-4-ttabi@nvidia.com
Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
drivers/gpu/nova-core/gsp/boot.rs

index 18f356c9178eb67ba3aa6b6ad7df79ba73f40845..5c56f0539dd7fe72dc4e83eb5ab2f6addbbf1303 100644 (file)
@@ -155,7 +155,10 @@ impl super::Gsp {
         let fb_layout = FbLayout::new(chipset, bar, &gsp_fw)?;
         dev_dbg!(dev, "{:#x?}\n", fb_layout);
 
-        Self::run_fwsec_frts(dev, chipset, gsp_falcon, bar, &bios, &fb_layout)?;
+        // FWSEC-FRTS is not executed on chips where the FRTS region size is 0 (e.g. GA100).
+        if !fb_layout.frts.is_empty() {
+            Self::run_fwsec_frts(dev, chipset, gsp_falcon, bar, &bios, &fb_layout)?;
+        }
 
         let booter_loader = BooterFirmware::new(
             dev,