Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/drivers/gpu/drm/nouveau/nvkm/subdev/fsp/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 1 kB image not shown  

Quelle  base.c   Sprache: C

 
/* SPDX-License-Identifier: MIT
 *
 * Copyright (c) 2025, NVIDIA CORPORATION. All rights reserved.
 */

#include "priv.h"

int
nvkm_fsp_boot_gsp_fmc(struct nvkm_fsp *fsp, u64 args_addr, u32 rsvd_size, bool resume,
        u64 img_addr, const u8 *hash, const u8 *pkey, const u8 *sig)
{
 return fsp->func->cot.boot_gsp_fmc(fsp, args_addr, rsvd_size, resume,
        img_addr, hash, pkey, sig);
}

bool
nvkm_fsp_verify_gsp_fmc(struct nvkm_fsp *fsp, u32 hash_size, u32 pkey_size, u32 sig_size)
{
 return hash_size == fsp->func->cot.size_hash &&
        pkey_size == fsp->func->cot.size_pkey &&
         sig_size == fsp->func->cot.size_sig;
}

static int
nvkm_fsp_preinit(struct nvkm_subdev *subdev)
{
 struct nvkm_fsp *fsp = nvkm_fsp(subdev);

 return fsp->func->wait_secure_boot(fsp);
}

static void *
nvkm_fsp_dtor(struct nvkm_subdev *subdev)
{
 struct nvkm_fsp *fsp = nvkm_fsp(subdev);

 nvkm_falcon_dtor(&fsp->falcon);
 return fsp;
}

static const struct nvkm_falcon_func
nvkm_fsp_flcn = {
 .emem_pio = &gp102_flcn_emem_pio,
};

static const struct nvkm_subdev_func
nvkm_fsp = {
 .dtor = nvkm_fsp_dtor,
 .preinit = nvkm_fsp_preinit,
};

int
nvkm_fsp_new_(const struct nvkm_fsp_func *func,
       struct nvkm_device *device, enum nvkm_subdev_type type, int inst,
       struct nvkm_fsp **pfsp)
{
 struct nvkm_fsp *fsp;

 fsp = *pfsp = kzalloc(sizeof(*fsp), GFP_KERNEL);
 if (!fsp)
  return -ENOMEM;

 fsp->func = func;
 nvkm_subdev_ctor(&nvkm_fsp, device, type, inst, &fsp->subdev);

 return nvkm_falcon_ctor(&nvkm_fsp_flcn, &fsp->subdev, "fsp", 0x8f2000, &fsp->falcon);
}

Messung V0.5
C=94 H=95 G=94

¤ Dauer der Verarbeitung: 0.3 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.