]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/gpu/drm/nouveau/nouveau_i2c.h
drm/nouveau/i2c: do parsing of i2c-related vbios info in nouveau_i2c.c
[mv-sheeva.git] / drivers / gpu / drm / nouveau / nouveau_i2c.h
index 422b62fd8272487dd78bb3d276dbfe70dd8e80fe..cf5f67d51fbac2e21bd4bc31e49c8b5b50420c28 100644 (file)
 #include <linux/i2c-algo-bit.h>
 #include "drm_dp_helper.h"
 
-struct dcb_i2c_entry;
+#define NV_I2C_PORT(n)    (0x00 + (n))
+#define NV_I2C_PORT_NUM    0x10
+#define NV_I2C_DEFAULT(n) (0x80 + (n))
 
 struct nouveau_i2c_chan {
        struct i2c_adapter adapter;
        struct drm_device *dev;
        struct i2c_algo_bit_data bit;
+       struct list_head head;
+       u8  index;
+       u8  type;
+       u32 dcb;
        unsigned rd;
        unsigned wr;
        unsigned data;
 };
 
-int nouveau_i2c_init(struct drm_device *, struct dcb_i2c_entry *, int index);
-void nouveau_i2c_fini(struct drm_device *, struct dcb_i2c_entry *);
-struct nouveau_i2c_chan *nouveau_i2c_find(struct drm_device *, int index);
+int  nouveau_i2c_init(struct drm_device *);
+void nouveau_i2c_fini(struct drm_device *);
+struct nouveau_i2c_chan *nouveau_i2c_find(struct drm_device *, u8 index);
 bool nouveau_probe_i2c_addr(struct nouveau_i2c_chan *i2c, int addr);
 int nouveau_i2c_identify(struct drm_device *dev, const char *what,
                         struct i2c_board_info *info,