]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
viafb: Introduce viafb_find_i2c_adapter()
authorJonathan Corbet <corbet@lwn.net>
Fri, 23 Apr 2010 14:56:55 +0000 (08:56 -0600)
committerJonathan Corbet <corbet@lwn.net>
Fri, 7 May 2010 23:17:37 +0000 (17:17 -0600)
The camera driver will need this to look up a specific adapter.

Cc: ScottFang@viatech.com.cn
Cc: JosephChan@via.com.tw
Cc: Harald Welte <laforge@gnumonks.org>
Acked-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
drivers/video/via/via_i2c.c
drivers/video/via/via_i2c.h

index c88450ee62baf821a9320207b36ff46955f06251..febc1dda69c1fd96ba10de99990e346dcc8ce026 100644 (file)
@@ -157,6 +157,19 @@ int viafb_i2c_readbytes(u8 adap, u8 slave_addr, u8 index, u8 *buff, int buff_len
        return i2c_transfer(&via_i2c_par[adap].adapter, msgs, 2);
 }
 
+/*
+ * Allow other viafb subdevices to look up a specific adapter
+ * by port name.
+ */
+struct i2c_adapter *viafb_find_i2c_adapter(enum viafb_i2c_adap which)
+{
+       struct via_i2c_stuff *stuff = &via_i2c_par[which];
+
+       return &stuff->adapter;
+}
+EXPORT_SYMBOL_GPL(viafb_find_i2c_adapter);
+
+
 static int create_i2c_bus(struct i2c_adapter *adapter,
                          struct i2c_algo_bit_data *algo,
                          struct via_port_cfg *adap_cfg,
index 1d18e7d57b7f7fcdec98f60b30c768377fb3d6a6..44532e468c05db9ee19ae2deca0829593eca1b23 100644 (file)
@@ -35,6 +35,7 @@ struct via_i2c_stuff {
 int viafb_i2c_readbyte(u8 adap, u8 slave_addr, u8 index, u8 *pdata);
 int viafb_i2c_writebyte(u8 adap, u8 slave_addr, u8 index, u8 data);
 int viafb_i2c_readbytes(u8 adap, u8 slave_addr, u8 index, u8 *buff, int buff_len);
+struct i2c_adapter *viafb_find_i2c_adapter(enum viafb_i2c_adap which);
 
 extern int viafb_i2c_init(void);
 extern void viafb_i2c_exit(void);