On Wed, 2025-04-30 at 09:39 +1000, Ben Skeggs wrote:
> +static const struct nvkm_fsp_func
> +gb100_fsp = {
> + .wait_secure_boot = gh100_fsp_wait_secure_boot,
> + .cot = {
> + .version = 2,
> + .size_hash = 48,
> + .size_pkey = 97,
> + .size_sig = 96,
> + .boot_gsp_fmc = gh100_fsp_boot_gsp_fmc,
> + },
> +};
I wonder if this is a useful. The RM code that tests for these sizes is
auto-generated, so it
automatically matches. Contrast that with the ELF image that is provided to
Nouveau, where the
sizes are specified in the section header.
Let's say we update the firmware again, and the newer firmware works as-is, but
some of the metadata
sizes are different (e.g. size_pkey is 113). We would need to create a new
version-specific struct,
despite the fact that the ELF image already tells you everything you need to
know.