Lines Matching refs:i2c

63 	struct mga_i2c_chan *i2c = data;  in mga_gpio_setsda()  local
64 struct mga_device *mdev = to_mga_device(i2c->dev); in mga_gpio_setsda()
65 mga_i2c_set(mdev, i2c->data, state); in mga_gpio_setsda()
70 struct mga_i2c_chan *i2c = data; in mga_gpio_setscl() local
71 struct mga_device *mdev = to_mga_device(i2c->dev); in mga_gpio_setscl()
72 mga_i2c_set(mdev, i2c->clock, state); in mga_gpio_setscl()
77 struct mga_i2c_chan *i2c = data; in mga_gpio_getsda() local
78 struct mga_device *mdev = to_mga_device(i2c->dev); in mga_gpio_getsda()
79 return (mga_i2c_read_gpio(mdev) & i2c->data) ? 1 : 0; in mga_gpio_getsda()
84 struct mga_i2c_chan *i2c = data; in mga_gpio_getscl() local
85 struct mga_device *mdev = to_mga_device(i2c->dev); in mga_gpio_getscl()
86 return (mga_i2c_read_gpio(mdev) & i2c->clock) ? 1 : 0; in mga_gpio_getscl()
92 struct mga_i2c_chan *i2c; in mgag200_i2c_create() local
121 i2c = kzalloc(sizeof(struct mga_i2c_chan), GFP_KERNEL); in mgag200_i2c_create()
122 if (!i2c) in mgag200_i2c_create()
125 i2c->data = data; in mgag200_i2c_create()
126 i2c->clock = clock; in mgag200_i2c_create()
127 i2c->adapter.owner = THIS_MODULE; in mgag200_i2c_create()
128 i2c->adapter.class = I2C_CLASS_DDC; in mgag200_i2c_create()
129 i2c->adapter.dev.parent = dev->dev; in mgag200_i2c_create()
130 i2c->dev = dev; in mgag200_i2c_create()
131 i2c_set_adapdata(&i2c->adapter, i2c); in mgag200_i2c_create()
132 snprintf(i2c->adapter.name, sizeof(i2c->adapter.name), "mga i2c"); in mgag200_i2c_create()
134 i2c->adapter.algo_data = &i2c->bit; in mgag200_i2c_create()
136 i2c->bit.udelay = 10; in mgag200_i2c_create()
137 i2c->bit.timeout = 2; in mgag200_i2c_create()
138 i2c->bit.data = i2c; in mgag200_i2c_create()
139 i2c->bit.setsda = mga_gpio_setsda; in mgag200_i2c_create()
140 i2c->bit.setscl = mga_gpio_setscl; in mgag200_i2c_create()
141 i2c->bit.getsda = mga_gpio_getsda; in mgag200_i2c_create()
142 i2c->bit.getscl = mga_gpio_getscl; in mgag200_i2c_create()
144 ret = i2c_bit_add_bus(&i2c->adapter); in mgag200_i2c_create()
146 kfree(i2c); in mgag200_i2c_create()
147 i2c = NULL; in mgag200_i2c_create()
149 return i2c; in mgag200_i2c_create()
152 void mgag200_i2c_destroy(struct mga_i2c_chan *i2c) in mgag200_i2c_destroy() argument
154 if (!i2c) in mgag200_i2c_destroy()
156 i2c_del_adapter(&i2c->adapter); in mgag200_i2c_destroy()
157 kfree(i2c); in mgag200_i2c_destroy()