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