Loading...
1/* SPDX-License-Identifier: MIT */
2#ifndef __NVBIOS_EXTDEV_H__
3#define __NVBIOS_EXTDEV_H__
4enum nvbios_extdev_type {
5 NVBIOS_EXTDEV_LM89 = 0x02,
6 NVBIOS_EXTDEV_VT1103M = 0x40,
7 NVBIOS_EXTDEV_PX3540 = 0x41,
8 NVBIOS_EXTDEV_VT1105M = 0x42, /* or close enough... */
9 NVBIOS_EXTDEV_INA219 = 0x4c,
10 NVBIOS_EXTDEV_INA209 = 0x4d,
11 NVBIOS_EXTDEV_INA3221 = 0x4e,
12 NVBIOS_EXTDEV_ADT7473 = 0x70, /* can also be a LM64 */
13 NVBIOS_EXTDEV_HDCP_EEPROM = 0x90,
14 NVBIOS_EXTDEV_NONE = 0xff,
15};
16
17struct nvbios_extdev_func {
18 u8 type;
19 u8 addr;
20 u8 bus;
21};
22
23int
24nvbios_extdev_parse(struct nvkm_bios *, int, struct nvbios_extdev_func *);
25
26int
27nvbios_extdev_find(struct nvkm_bios *, enum nvbios_extdev_type,
28 struct nvbios_extdev_func *);
29
30bool nvbios_extdev_skip_probe(struct nvkm_bios *);
31#endif