forked from Minki/linux
46484438ab
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
32 lines
693 B
C
32 lines
693 B
C
#ifndef __NVKM_BIOS_H__
|
|
#define __NVKM_BIOS_H__
|
|
#include <core/subdev.h>
|
|
|
|
struct nvkm_bios {
|
|
struct nvkm_subdev subdev;
|
|
u32 size;
|
|
u8 *data;
|
|
|
|
u32 bmp_offset;
|
|
u32 bit_offset;
|
|
|
|
struct {
|
|
u8 major;
|
|
u8 chip;
|
|
u8 minor;
|
|
u8 micro;
|
|
u8 patch;
|
|
} version;
|
|
};
|
|
|
|
u8 nvbios_checksum(const u8 *data, int size);
|
|
u16 nvbios_findstr(const u8 *data, int size, const char *str, int len);
|
|
int nvbios_memcmp(struct nvkm_bios *, u32 addr, const char *, u32 len);
|
|
|
|
#define nvbios_rd08(b,o) (b)->data[(o)]
|
|
#define nvbios_rd16(b,o) get_unaligned_le16(&(b)->data[(o)])
|
|
#define nvbios_rd32(b,o) get_unaligned_le32(&(b)->data[(o)])
|
|
|
|
int nvkm_bios_new(struct nvkm_device *, int, struct nvkm_bios **);
|
|
#endif
|