Lines Matching refs:minfo
41 static int matroxfb_read_gpio(struct matrox_fb_info* minfo) {
46 v = matroxfb_DAC_in(minfo, DAC_XGENIODATA);
51 static void matroxfb_set_gpio(struct matrox_fb_info* minfo, int mask, int val) {
56 v = (matroxfb_DAC_in(minfo, DAC_XGENIOCTRL) & mask) | val;
57 matroxfb_DAC_out(minfo, DAC_XGENIOCTRL, v);
59 matroxfb_DAC_out(minfo, DAC_XGENIODATA, 0x00);
64 static inline void matroxfb_i2c_set(struct matrox_fb_info* minfo, int mask, int state) {
69 matroxfb_set_gpio(minfo, ~mask, state);
74 matroxfb_i2c_set(b->minfo, b->mask.data, state);
79 matroxfb_i2c_set(b->minfo, b->mask.clock, state);
84 return (matroxfb_read_gpio(b->minfo) & b->mask.data) ? 1 : 0;
89 return (matroxfb_read_gpio(b->minfo) & b->mask.clock) ? 1 : 0;
102 static int i2c_bus_reg(struct i2c_bit_adapter* b, struct matrox_fb_info* minfo,
107 b->minfo = minfo;
112 minfo->fbcon.node);
115 b->adapter.dev.parent = &minfo->pcidev->dev;
142 static void* i2c_matroxfb_probe(struct matrox_fb_info* minfo) {
152 matroxfb_DAC_out(minfo, DAC_XGENIODATA, 0xFF);
153 matroxfb_DAC_out(minfo, DAC_XGENIOCTRL, 0x00);
156 switch (minfo->chip) {
159 err = i2c_bus_reg(&m2info->ddc1, minfo,
164 err = i2c_bus_reg(&m2info->ddc1, minfo,
171 if (minfo->devflags.dualhead) {
172 err = i2c_bus_reg(&m2info->ddc2, minfo, DDC2_DATA, DDC2_CLK, "DDC:fb%u #1");
178 err = i2c_bus_reg(&m2info->maven, minfo, MAT_DATA, MAT_CLK, "MAVEN:fb%u");
200 static void i2c_matroxfb_remove(struct matrox_fb_info* minfo, void* data) {