Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: MIT */
0002 #ifndef __NVBIOS_I2C_H__
0003 #define __NVBIOS_I2C_H__
0004 enum dcb_i2c_type {
0005     /* matches bios type field prior to ccb 4.1 */
0006     DCB_I2C_NV04_BIT = 0x00,
0007     DCB_I2C_NV4E_BIT = 0x04,
0008     DCB_I2C_NVIO_BIT = 0x05,
0009     DCB_I2C_NVIO_AUX = 0x06,
0010     /* made up - mostly */
0011     DCB_I2C_PMGR     = 0x80,
0012     DCB_I2C_UNUSED   = 0xff
0013 };
0014 
0015 struct dcb_i2c_entry {
0016     enum dcb_i2c_type type;
0017     u8 drive;
0018     u8 sense;
0019     u8 share;
0020     u8 auxch;
0021 };
0022 
0023 u16 dcb_i2c_table(struct nvkm_bios *, u8 *ver, u8 *hdr, u8 *cnt, u8 *len);
0024 u16 dcb_i2c_entry(struct nvkm_bios *, u8 index, u8 *ver, u8 *len);
0025 int dcb_i2c_parse(struct nvkm_bios *, u8 index, struct dcb_i2c_entry *);
0026 #endif