Lines Matching refs:info

71 dcb_i2c_parse(struct nvkm_bios *bios, u8 idx, struct dcb_i2c_entry *info)  in dcb_i2c_parse()  argument
82 info->type = DCB_I2C_UNUSED; in dcb_i2c_parse()
84 info->type = DCB_I2C_PMGR; in dcb_i2c_parse()
87 info->type = nv_ro08(bios, ent + 0x03); in dcb_i2c_parse()
89 info->type = nv_ro08(bios, ent + 0x03) & 0x07; in dcb_i2c_parse()
90 if (info->type == 0x07) in dcb_i2c_parse()
91 info->type = DCB_I2C_UNUSED; in dcb_i2c_parse()
94 info->drive = DCB_I2C_UNUSED; in dcb_i2c_parse()
95 info->sense = DCB_I2C_UNUSED; in dcb_i2c_parse()
96 info->share = DCB_I2C_UNUSED; in dcb_i2c_parse()
97 info->auxch = DCB_I2C_UNUSED; in dcb_i2c_parse()
99 switch (info->type) { in dcb_i2c_parse()
101 info->drive = nv_ro08(bios, ent + 0); in dcb_i2c_parse()
102 info->sense = nv_ro08(bios, ent + 1); in dcb_i2c_parse()
105 info->drive = nv_ro08(bios, ent + 1); in dcb_i2c_parse()
108 info->drive = nv_ro08(bios, ent + 0) & 0x0f; in dcb_i2c_parse()
110 info->share = nv_ro08(bios, ent + 1) >> 1; in dcb_i2c_parse()
113 info->auxch = nv_ro08(bios, ent + 0) & 0x0f; in dcb_i2c_parse()
115 info->share = info->auxch; in dcb_i2c_parse()
118 info->drive = (nv_ro16(bios, ent + 0) & 0x01f) >> 0; in dcb_i2c_parse()
119 if (info->drive == 0x1f) in dcb_i2c_parse()
120 info->drive = DCB_I2C_UNUSED; in dcb_i2c_parse()
121 info->auxch = (nv_ro16(bios, ent + 0) & 0x3e0) >> 5; in dcb_i2c_parse()
122 if (info->auxch == 0x1f) in dcb_i2c_parse()
123 info->auxch = DCB_I2C_UNUSED; in dcb_i2c_parse()
124 info->share = info->auxch; in dcb_i2c_parse()
129 nv_warn(bios, "unknown i2c type %d\n", info->type); in dcb_i2c_parse()
130 info->type = DCB_I2C_UNUSED; in dcb_i2c_parse()
145 info->drive = nv_ro08(bios, ent + 4); in dcb_i2c_parse()
146 if (!info->drive) info->drive = 0x3f; in dcb_i2c_parse()
147 info->sense = nv_ro08(bios, ent + 5); in dcb_i2c_parse()
148 if (!info->sense) info->sense = 0x3e; in dcb_i2c_parse()
151 info->drive = nv_ro08(bios, ent + 6); in dcb_i2c_parse()
152 if (!info->drive) info->drive = 0x37; in dcb_i2c_parse()
153 info->sense = nv_ro08(bios, ent + 7); in dcb_i2c_parse()
154 if (!info->sense) info->sense = 0x36; in dcb_i2c_parse()
157 info->type = DCB_I2C_NV04_BIT; in dcb_i2c_parse()
158 info->share = DCB_I2C_UNUSED; in dcb_i2c_parse()