Lines Matching refs:chan

25 	struct psb_intel_i2c_chan *chan = data;  in get_clock()  local
26 struct drm_device *dev = chan->drm_dev; in get_clock()
29 val = REG_READ(chan->reg); in get_clock()
35 struct psb_intel_i2c_chan *chan = data; in get_data() local
36 struct drm_device *dev = chan->drm_dev; in get_data()
39 val = REG_READ(chan->reg); in get_data()
45 struct psb_intel_i2c_chan *chan = data; in set_clock() local
46 struct drm_device *dev = chan->drm_dev; in set_clock()
51 REG_READ(chan->reg) & (GPIO_DATA_PULLUP_DISABLE | in set_clock()
59 REG_WRITE(chan->reg, reserved | clock_bits); in set_clock()
65 struct psb_intel_i2c_chan *chan = data; in set_data() local
66 struct drm_device *dev = chan->drm_dev; in set_data()
71 REG_READ(chan->reg) & (GPIO_DATA_PULLUP_DISABLE | in set_data()
81 REG_WRITE(chan->reg, reserved | data_bits); in set_data()
109 struct psb_intel_i2c_chan *chan; in psb_intel_i2c_create() local
111 chan = kzalloc(sizeof(struct psb_intel_i2c_chan), GFP_KERNEL); in psb_intel_i2c_create()
112 if (!chan) in psb_intel_i2c_create()
115 chan->drm_dev = dev; in psb_intel_i2c_create()
116 chan->reg = reg; in psb_intel_i2c_create()
117 snprintf(chan->adapter.name, I2C_NAME_SIZE, "intel drm %s", name); in psb_intel_i2c_create()
118 chan->adapter.owner = THIS_MODULE; in psb_intel_i2c_create()
119 chan->adapter.algo_data = &chan->algo; in psb_intel_i2c_create()
120 chan->adapter.dev.parent = &dev->pdev->dev; in psb_intel_i2c_create()
121 chan->algo.setsda = set_data; in psb_intel_i2c_create()
122 chan->algo.setscl = set_clock; in psb_intel_i2c_create()
123 chan->algo.getsda = get_data; in psb_intel_i2c_create()
124 chan->algo.getscl = get_clock; in psb_intel_i2c_create()
125 chan->algo.udelay = 20; in psb_intel_i2c_create()
126 chan->algo.timeout = usecs_to_jiffies(2200); in psb_intel_i2c_create()
127 chan->algo.data = chan; in psb_intel_i2c_create()
129 i2c_set_adapdata(&chan->adapter, chan); in psb_intel_i2c_create()
131 if (i2c_bit_add_bus(&chan->adapter)) in psb_intel_i2c_create()
135 set_data(chan, 1); in psb_intel_i2c_create()
136 set_clock(chan, 1); in psb_intel_i2c_create()
139 return chan; in psb_intel_i2c_create()
142 kfree(chan); in psb_intel_i2c_create()
152 void psb_intel_i2c_destroy(struct psb_intel_i2c_chan *chan) in psb_intel_i2c_destroy() argument
154 if (!chan) in psb_intel_i2c_destroy()
157 i2c_del_adapter(&chan->adapter); in psb_intel_i2c_destroy()
158 kfree(chan); in psb_intel_i2c_destroy()