2011-09-30T14:55:26+02:00 (5 years ago)

[package] add support for more i2c muxes

This patch should bring support for several kernel modules related to
I2C to openwrt, which are existing for several years now. Namely there
is the i2c-tiny-usb bus driver, to hook up an I2C bus on any device with
usb support (prevent voiding warranty when opening and soldering).
Second, there is support for the i2c-mux driver and pca954x as a I2C
switch driver.
Finally there is support for common I2C gpio expander driver modules
pca953x and pcf857x. They work without providing platform data recently
(can be instantiated at runtime).

Signed-off-by: Hartmut Knaack <knaack.h@…>

1 edited


  • trunk/package/kernel/modules/i2c.mk

    r26373 r28334  
     217I2C_TINY_USB_MODULES:= \ 
     218  CONFIG_I2C_TINY_USB:drivers/i2c/busses/i2c-tiny-usb 
     220define KernelPackage/i2c-tiny-usb 
     221  $(call i2c_defaults,$(I2C_TINY_USB_MODULES),59) 
     222  TITLE:=I2C Tiny USB adaptor 
     223  DEPENDS:=@USB_SUPPORT kmod-i2c-core 
     226define KernelPackage/i2c-tiny-usb/description 
     227 Kernel module for the I2C Tiny USB adaptor developed 
     228 by Till Harbaum (http://www.harbaum.org/till/i2c_tiny_usb). 
     231$(eval $(call KernelPackage,i2c-tiny-usb)) 
     233I2C_MUX_MODULES:= \ 
     234  CONFIG_I2C_MUX:drivers/i2c/i2c-mux 
     236define KernelPackage/i2c-mux 
     237  $(call i2c_defaults,$(I2C_MUX_MODULES),51) 
     238  TITLE:=I2C bus multiplexing support 
     239  DEPENDS:=kmod-i2c-core 
     242define KernelPackage/i2c-mux/description 
     243 Kernel modules for I2C bus multiplexing support. 
     246$(eval $(call KernelPackage,i2c-mux)) 
     248I2C_MUX_PCA954x_MODULES:= \ 
     249  CONFIG_I2C_MUX_PCA954x:drivers/i2c/muxes/pca954x 
     251define KernelPackage/i2c-mux-pca954x 
     252  $(call i2c_defaults,$(I2C_MUX_PCA954x_MODULES),51) 
     253  TITLE:=Philips PCA954x I2C mux/switches 
     254  DEPENDS:=kmod-i2c-mux 
     257define KernelPackage/i2c-mux-pca954x/description 
     258 Kernel modules for PCA954x I2C bus mux/switching devices. 
     261$(eval $(call KernelPackage,i2c-mux-pca954x)) 
     262## Support for pca954x seems to be in kernel since 2.6.36 
     264I2C_MUX_PCA9541_MODULES:= \ 
     265  CONFIG_I2C_MUX_PCA9541:drivers/i2c/muxes/pca9541 
     267define KernelPackage/i2c-mux-pca9541 
     268  $(call i2c_defaults,$(I2C_MUX_PCA9541_MODULES),51) 
     269  TITLE:=Philips PCA9541 I2C mux/switches 
     270  DEPENDS:=kmod-i2c-mux 
     273define KernelPackage/i2c-mux-pca9541/description 
     274 Kernel modules for PCA9541 I2C bus mux/switching devices. 
     277$(eval $(call KernelPackage,i2c-mux-pca9541)) 
     279GPIO_PCA953X_MODULES:= \ 
     280  CONFIG_GPIO_PCA953X:drivers/gpio/pca953x 
     282define KernelPackage/pca953x 
     283  $(call i2c_defaults,$(GPIO_PCA953X_MODULES),51) 
     284  TITLE:=Philips PCA953x I2C GPIO extenders 
     285  DEPENDS:=kmod-i2c-core 
     288define KernelPackage/pca953x/description 
     289 Kernel modules for PCA953x I2C GPIO extenders. 
     292$(eval $(call KernelPackage,pca953x)) 
     294GPIO_PCF857X_MODULES:= \ 
     295  CONFIG_GPIO_PCF857X:drivers/gpio/pcf857x 
     297define KernelPackage/pcf857x 
     298  $(call i2c_defaults,$(GPIO_PCF857X_MODULES),51) 
     299  TITLE:=Philips PCF857x I2C GPIO extenders 
     300  DEPENDS:=kmod-i2c-core 
     303define KernelPackage/pcf857x/description 
     304 Kernel modules for PCF857x I2C GPIO extenders. 
     307$(eval $(call KernelPackage,pcf857x)) 
    216308$(eval $(call KernelPackage,octeon-i2c)) 
Note: See TracChangeset for help on using the changeset viewer.