1#ifndef __NVKM_BIOS_H__
2#define __NVKM_BIOS_H__
3#include <core/subdev.h>
4
5struct nvkm_bios {
6	struct nvkm_subdev base;
7	u32 size;
8	u8 *data;
9
10	u32 bmp_offset;
11	u32 bit_offset;
12
13	struct {
14		u8 major;
15		u8 chip;
16		u8 minor;
17		u8 micro;
18		u8 patch;
19	} version;
20};
21
22static inline struct nvkm_bios *
23nvkm_bios(void *obj)
24{
25	return (void *)nvkm_subdev(obj, NVDEV_SUBDEV_VBIOS);
26}
27
28u8  nvbios_checksum(const u8 *data, int size);
29u16 nvbios_findstr(const u8 *data, int size, const char *str, int len);
30
31extern struct nvkm_oclass nvkm_bios_oclass;
32#endif
33