Commit 1298330b authored by Daniel Vetter's avatar Daniel Vetter

drm/nouveau: do a better job at hiding the NIH i2c bit-banging algo

I'd like to export the corresponding functions from the i2c core
so that I can use them in fallback bit-banging in i915.ko

v2: Adapt to new i2c export patch.

Cc: nouveau@lists.freedesktop.org
Acked-by: default avatarDave Airlie <airlied@gmail.com>
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
parent c2b9152f
...@@ -277,7 +277,7 @@ i2c_bit_func(struct i2c_adapter *adap) ...@@ -277,7 +277,7 @@ i2c_bit_func(struct i2c_adapter *adap)
return I2C_FUNC_I2C | I2C_FUNC_SMBUS_EMUL; return I2C_FUNC_I2C | I2C_FUNC_SMBUS_EMUL;
} }
const struct i2c_algorithm i2c_bit_algo = { const struct i2c_algorithm nouveau_i2c_bit_algo = {
.master_xfer = i2c_bit_xfer, .master_xfer = i2c_bit_xfer,
.functionality = i2c_bit_func .functionality = i2c_bit_func
}; };
...@@ -384,12 +384,12 @@ nouveau_i2c_init(struct drm_device *dev) ...@@ -384,12 +384,12 @@ nouveau_i2c_init(struct drm_device *dev)
case 0: /* NV04:NV50 */ case 0: /* NV04:NV50 */
port->drive = entry[0]; port->drive = entry[0];
port->sense = entry[1]; port->sense = entry[1];
port->adapter.algo = &i2c_bit_algo; port->adapter.algo = &nouveau_i2c_bit_algo;
break; break;
case 4: /* NV4E */ case 4: /* NV4E */
port->drive = 0x600800 + entry[1]; port->drive = 0x600800 + entry[1];
port->sense = port->drive; port->sense = port->drive;
port->adapter.algo = &i2c_bit_algo; port->adapter.algo = &nouveau_i2c_bit_algo;
break; break;
case 5: /* NV50- */ case 5: /* NV50- */
port->drive = entry[0] & 0x0f; port->drive = entry[0] & 0x0f;
...@@ -402,7 +402,7 @@ nouveau_i2c_init(struct drm_device *dev) ...@@ -402,7 +402,7 @@ nouveau_i2c_init(struct drm_device *dev)
port->drive = 0x00d014 + (port->drive * 0x20); port->drive = 0x00d014 + (port->drive * 0x20);
port->sense = port->drive; port->sense = port->drive;
} }
port->adapter.algo = &i2c_bit_algo; port->adapter.algo = &nouveau_i2c_bit_algo;
break; break;
case 6: /* NV50- DP AUX */ case 6: /* NV50- DP AUX */
port->drive = entry[0]; port->drive = entry[0];
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment