Add i2c driver (to etrax) improved by Geert Vancompernolle
[openwrt-10.03/.git] / target / linux / etrax / patches-2.6.25 / 500-i2c_gvc.patch
1 Index: linux-2.6.25.20/arch/cris/arch-v10/drivers/Kconfig
2 ===================================================================
3 --- linux-2.6.25.20.orig/arch/cris/arch-v10/drivers/Kconfig     2009-02-09 09:30:40.000000000 +0100
4 +++ linux-2.6.25.20/arch/cris/arch-v10/drivers/Kconfig  2009-02-09 21:23:12.000000000 +0100
5 @@ -450,11 +450,18 @@
6           i2c_arg = I2C_READARG(STA013_READ_ADDR, reg);
7           val = ioctl(fd, _IO(ETRAXI2C_IOCTYPE, I2C_READREG), i2c_arg);
8  
9 +config ETRAX_I2C_GVC
10 +       bool "I2C GVC support"
11 +       depends on ETRAX_ARCH_V10 && !ETRAX_I2C
12 +       select ETRAX_I2C_USES_PB_NOT_PB_I2C
13 +       help
14 +         Enables an I2C driver with Geert Vancompernolle improvement.
15 +
16  # this is true for most products since PB-I2C seems to be somewhat
17  # flawed..
18  config ETRAX_I2C_USES_PB_NOT_PB_I2C
19         bool "I2C uses PB not PB-I2C"
20 -       depends on ETRAX_I2C
21 +       depends on ETRAX_I2C || ETRAX_I2C_GVC
22         help
23           Select whether to use the special I2C mode in the PB I/O register or
24           not.  This option needs to be selected in order to use some drivers
25 @@ -478,7 +485,7 @@
26  
27  config ETRAX_I2C_EEPROM
28         bool "I2C EEPROM (non-volatile RAM) support"
29 -       depends on ETRAX_I2C
30 +       depends on ETRAX_I2C || ETRAX_I2C_GVC
31         help
32           Enables I2C EEPROM (non-volatile RAM) on PB0 and PB1 using the I2C
33           driver.  Select size option: Probed, 2k, 8k, 16k.
34 Index: linux-2.6.25.20/arch/cris/arch-v10/drivers/Makefile
35 ===================================================================
36 --- linux-2.6.25.20.orig/arch/cris/arch-v10/drivers/Makefile    2009-02-09 09:30:41.000000000 +0100
37 +++ linux-2.6.25.20/arch/cris/arch-v10/drivers/Makefile 2009-02-09 09:35:39.000000000 +0100
38 @@ -4,6 +4,7 @@
39  
40  obj-$(CONFIG_ETRAX_AXISFLASHMAP)       += axisflashmap.o
41  obj-$(CONFIG_ETRAX_I2C)                        += i2c.o
42 +obj-$(CONFIG_ETRAX_I2C_GVC)            += i2c_gvc.o
43  obj-$(CONFIG_ETRAX_I2C_EEPROM)         += eeprom.o
44  obj-$(CONFIG_ETRAX_GPIO)               += gpio.o
45  obj-$(CONFIG_ETRAX_DS1302)             += ds1302.o