On Mon Feb 2, 2026 at 3:49 PM CET, Gary Guo wrote:
> On Sat Jan 31, 2026 at 12:55 AM GMT, John Hubbard wrote:
>> Hopper and Blackwell GPUs use FSP-based secure boot and do not require
>> waiting for GFW_BOOT completion. Skip this step for these architectures.
>>
>> Signed-off-by: John Hubbard <[email protected]>
>> ---
>>  drivers/gpu/nova-core/gpu.rs | 15 ++++++++++++---
>>  1 file changed, 12 insertions(+), 3 deletions(-)
>>
>> diff --git a/drivers/gpu/nova-core/gpu.rs b/drivers/gpu/nova-core/gpu.rs
>> index 2e7b90b80877..2ed0f6d8d19d 100644
>> --- a/drivers/gpu/nova-core/gpu.rs
>> +++ b/drivers/gpu/nova-core/gpu.rs
>> @@ -304,10 +304,19 @@ pub(crate) fn new<'a>(
>>          let chipset = spec.chipset();
>>  
>>          try_pin_init!(Self {
>> -            // We must wait for GFW_BOOT completion before doing any 
>> significant setup on the GPU.
>> +            // Turing, Ampere, Ada: we must wait for GFW_BOOT completion 
>> before doing any
>> +            // significant setup on the GPU.
>> +            //
>> +            // Hopper/Blackwell: skip GFW_BOOT completion waiting entirely, 
>> and use the simpler FSP
>> +            // Chain of Trust boot path (elsewhere) instead.
>>              _: {
>> -                gfw::wait_gfw_boot_completion(bar)
>> -                    .inspect_err(|_| dev_err!(pdev.as_ref(), "GFW boot did 
>> not complete\n"))?;
>> +                if matches!(
>> +                    chipset.arch(),
>> +                    Architecture::Turing | Architecture::Ampere | 
>> Architecture::Ada
>> +                ) {
>> +                    gfw::wait_gfw_boot_completion(bar)
>> +                        .inspect_err(|_| dev_err!(pdev.as_ref(), "GFW boot 
>> did not complete\n"))?;
>
> I think the `as_ref()` here is no longer necessary?

Current drm-rust-next does not have the required changes yet, but it will after
-rc1 is out. I'd recommend basing patch series on linux-next if they do not
target the current cycle.

Reply via email to