]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blob - drivers/gpu/drm/nouveau/nouveau_compat.h
drm/nouveau/i2c: port to subdev interfaces
[mirror_ubuntu-bionic-kernel.git] / drivers / gpu / drm / nouveau / nouveau_compat.h
1 #ifndef __NOUVEAU_COMPAT_H__
2 #define __NOUVEAU_COMPAT_H__
3
4 u8 _nv_rd08(struct drm_device *, u32);
5 void _nv_wr08(struct drm_device *, u32, u8);
6 u32 _nv_rd32(struct drm_device *, u32);
7 void _nv_wr32(struct drm_device *, u32, u32);
8 u32 _nv_mask(struct drm_device *, u32, u32, u32);
9
10 bool _nv_bios(struct drm_device *, u8 **, u32 *);
11
12 struct dcb_gpio_func;
13 void nouveau_gpio_reset(struct drm_device *);
14 int nouveau_gpio_find(struct drm_device *, int, u8, u8, struct dcb_gpio_func *);
15 bool nouveau_gpio_func_valid(struct drm_device *, u8 tag);
16 int nouveau_gpio_func_set(struct drm_device *, u8 tag, int state);
17 int nouveau_gpio_func_get(struct drm_device *, u8 tag);
18 int nouveau_gpio_irq(struct drm_device *, int idx, u8 tag, u8 line, bool on);
19 int nouveau_gpio_isr_add(struct drm_device *, int idx, u8 tag, u8 line,
20 void (*)(void *, int state), void *data);
21 void nouveau_gpio_isr_del(struct drm_device *, int idx, u8 tag, u8 line,
22 void (*)(void *, int state), void *data);
23
24 struct nouveau_i2c_port *nouveau_i2c_find(struct drm_device *, u8);
25 bool nouveau_probe_i2c_addr(struct nouveau_i2c_port *, int addr);
26 struct i2c_adapter *nouveau_i2c_adapter(struct nouveau_i2c_port *);
27 int nouveau_i2c_identify(struct drm_device *dev, const char *what,
28 struct i2c_board_info *info,
29 bool (*match)(struct nouveau_i2c_port *,
30 struct i2c_board_info *), int index);
31
32 int auxch_rd(struct drm_device *, struct nouveau_i2c_port *, u32, u8 *, u8);
33 int auxch_wr(struct drm_device *, struct nouveau_i2c_port *, u32, u8 *, u8);
34
35
36 #endif