Add the rt linux 4.1.3-rt3 as base
[kvmfornfv.git] / kernel / drivers / gpu / drm / nouveau / nvkm / subdev / i2c / nv50.h
1 #ifndef __NV50_I2C_H__
2 #define __NV50_I2C_H__
3 #include "priv.h"
4
5 struct nv50_i2c_priv {
6         struct nvkm_i2c base;
7 };
8
9 struct nv50_i2c_port {
10         struct nvkm_i2c_port base;
11         u32 addr;
12         u32 state;
13 };
14
15 extern const u32 nv50_i2c_addr[];
16 extern const int nv50_i2c_addr_nr;
17 int  nv50_i2c_port_init(struct nvkm_object *);
18 int  nv50_i2c_sense_scl(struct nvkm_i2c_port *);
19 int  nv50_i2c_sense_sda(struct nvkm_i2c_port *);
20 void nv50_i2c_drive_scl(struct nvkm_i2c_port *, int state);
21 void nv50_i2c_drive_sda(struct nvkm_i2c_port *, int state);
22
23 int  g94_aux_port_ctor(struct nvkm_object *, struct nvkm_object *,
24                         struct nvkm_oclass *, void *, u32,
25                         struct nvkm_object **);
26 void g94_i2c_acquire(struct nvkm_i2c_port *);
27 void g94_i2c_release(struct nvkm_i2c_port *);
28
29 int  gf110_i2c_port_ctor(struct nvkm_object *, struct nvkm_object *,
30                         struct nvkm_oclass *, void *, u32,
31                         struct nvkm_object **);
32 #endif