1 /* SPDX-License-Identifier: MIT */ 2 #ifndef __NVBIOS_EXTDEV_H__ 3 #define __NVBIOS_EXTDEV_H__ 4 enum 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 17 struct nvbios_extdev_func { 18 u8 type; 19 u8 addr; 20 u8 bus; 21 }; 22 23 int 24 nvbios_extdev_parse(struct nvkm_bios *, int, struct nvbios_extdev_func *); 25 26 int 27 nvbios_extdev_find(struct nvkm_bios *, enum nvbios_extdev_type, 28 struct nvbios_extdev_func *); 29 30 bool nvbios_extdev_skip_probe(struct nvkm_bios *); 31 #endif 32