xref: /linux/drivers/gpu/drm/nouveau/nvkm/subdev/fsp/gb100.c (revision ab93e0dd72c37d378dd936f031ffb83ff2bd87ce)
1*32cb1cc3SBen Skeggs /* SPDX-License-Identifier: MIT
2*32cb1cc3SBen Skeggs  *
3*32cb1cc3SBen Skeggs  * Copyright (c) 2025, NVIDIA CORPORATION. All rights reserved.
4*32cb1cc3SBen Skeggs  */
5*32cb1cc3SBen Skeggs #include "priv.h"
6*32cb1cc3SBen Skeggs 
7*32cb1cc3SBen Skeggs static const struct nvkm_fsp_func
8*32cb1cc3SBen Skeggs gb100_fsp = {
9*32cb1cc3SBen Skeggs 	.wait_secure_boot = gh100_fsp_wait_secure_boot,
10*32cb1cc3SBen Skeggs 	.cot = {
11*32cb1cc3SBen Skeggs 		.version = 2,
12*32cb1cc3SBen Skeggs 		.size_hash = 48,
13*32cb1cc3SBen Skeggs 		.size_pkey = 97,
14*32cb1cc3SBen Skeggs 		.size_sig = 96,
15*32cb1cc3SBen Skeggs 		.boot_gsp_fmc = gh100_fsp_boot_gsp_fmc,
16*32cb1cc3SBen Skeggs 	},
17*32cb1cc3SBen Skeggs };
18*32cb1cc3SBen Skeggs 
19*32cb1cc3SBen Skeggs int
20*32cb1cc3SBen Skeggs gb100_fsp_new(struct nvkm_device *device,
21*32cb1cc3SBen Skeggs 	      enum nvkm_subdev_type type, int inst, struct nvkm_fsp **pfsp)
22*32cb1cc3SBen Skeggs {
23*32cb1cc3SBen Skeggs 	return nvkm_fsp_new_(&gb100_fsp, device, type, inst, pfsp);
24*32cb1cc3SBen Skeggs }
25