1 // SPDX-License-Identifier: GPL-2.0 2 // SPDX-FileCopyrightText: Copyright (c) 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved. 3 4 use kernel::{ 5 io::Io, 6 sizes::SizeConstants, // 7 }; 8 9 use crate::{ 10 driver::Bar0, 11 fsp::hal::FspHal, 12 regs, // 13 }; 14 15 struct Gb202; 16 17 impl FspHal for Gb202 { 18 fn fsp_boot_status(&self, bar: Bar0<'_>) -> u32 { 19 bar.read(regs::gb202::NV_THERM_I2CS_SCRATCH_FSP_BOOT_COMPLETE) 20 .fsp_boot_complete() 21 .into() 22 } 23 24 fn cot_version(&self) -> u16 { 25 2 26 } 27 28 fn fb_end_reserved_size(&self) -> u64 { 29 u64::SZ_2M + u64::SZ_128K 30 } 31 } 32 33 const GB202: Gb202 = Gb202; 34 pub(super) const GB202_HAL: &dyn FspHal = &GB202; 35