priv.h (909B)
1/* SPDX-License-Identifier: MIT */ 2#ifndef __NVKM_BIOS_PRIV_H__ 3#define __NVKM_BIOS_PRIV_H__ 4#define nvkm_bios(p) container_of((p), struct nvkm_bios, subdev) 5#include <subdev/bios.h> 6 7struct nvbios_source { 8 const char *name; 9 void *(*init)(struct nvkm_bios *, const char *); 10 void (*fini)(void *); 11 u32 (*read)(void *, u32 offset, u32 length, struct nvkm_bios *); 12 u32 (*size)(void *); 13 bool rw; 14 bool ignore_checksum; 15 bool no_pcir; 16 bool require_checksum; 17}; 18 19int nvbios_extend(struct nvkm_bios *, u32 length); 20int nvbios_shadow(struct nvkm_bios *); 21 22extern const struct nvbios_source nvbios_rom; 23extern const struct nvbios_source nvbios_ramin; 24extern const struct nvbios_source nvbios_acpi_fast; 25extern const struct nvbios_source nvbios_acpi_slow; 26extern const struct nvbios_source nvbios_pcirom; 27extern const struct nvbios_source nvbios_platform; 28extern const struct nvbios_source nvbios_of; 29#endif