1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
| /* SPDX-License-Identifier: GPL-2.0 */
| #ifndef __NVBIOS_INIT_H__
| #define __NVBIOS_INIT_H__
|
| struct nvbios_init {
| struct nvkm_subdev *subdev;
| u32 offset;
|
| struct dcb_output *outp;
| int or;
| int link;
| int head;
|
| /* internal state used during parsing */
| u8 execute;
| u32 nested;
| u32 repeat;
| u32 repend;
| u32 ramcfg;
| };
|
| #define nvbios_init(s,o,ARGS...) ({ \
| struct nvbios_init init = { \
| .subdev = (s), \
| .offset = (o), \
| .or = -1, \
| .link = 0, \
| .head = -1, \
| .execute = 1, \
| }; \
| ARGS \
| nvbios_exec(&init); \
| })
| int nvbios_exec(struct nvbios_init *);
|
| int nvbios_post(struct nvkm_subdev *, bool execute);
| #endif
|
|