27 lines · c
1/* SPDX-License-Identifier: MIT */2#ifndef __NVBIOS_I2C_H__3#define __NVBIOS_I2C_H__4enum dcb_i2c_type {5 /* matches bios type field prior to ccb 4.1 */6 DCB_I2C_NV04_BIT = 0x00,7 DCB_I2C_NV4E_BIT = 0x04,8 DCB_I2C_NVIO_BIT = 0x05,9 DCB_I2C_NVIO_AUX = 0x06,10 /* made up - mostly */11 DCB_I2C_PMGR = 0x80,12 DCB_I2C_UNUSED = 0xff13};14 15struct dcb_i2c_entry {16 enum dcb_i2c_type type;17 u8 drive;18 u8 sense;19 u8 share;20 u8 auxch;21};22 23u16 dcb_i2c_table(struct nvkm_bios *, u8 *ver, u8 *hdr, u8 *cnt, u8 *len);24u16 dcb_i2c_entry(struct nvkm_bios *, u8 index, u8 *ver, u8 *len);25int dcb_i2c_parse(struct nvkm_bios *, u8 index, struct dcb_i2c_entry *);26#endif27