remove the i2c-gpio-custom driver from adm5120, and make it available on all platforms

SVN-Revision: 10979
owl
Gabor Juhos 2008-04-29 17:18:21 +00:00
parent b54ef5ac71
commit 363c6e196a
6 changed files with 67 additions and 51 deletions

View File

@ -0,0 +1,55 @@
#
# Copyright (C) 2008 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=i2c-gpio-custom
PKG_RELEASE:=1
include $(INCLUDE_DIR)/package.mk
define KernelPackage/i2c-gpio-custom
SUBMENU:=I2C support
TITLE:=Custom GPIO-based I2C device
DEPENDS:=@GPIO_SUPPORT kmod-i2c-core +kmod-i2c-gpio
FILES:=$(PKG_BUILD_DIR)/i2c-gpio-custom.$(LINUX_KMOD_SUFFIX)
AUTOLOAD:=$(call AutoLoad,58,i2c-gpio-custom)
KCONFIG:=
endef
define KernelPackage/i2c-gpio-custom/description
Kernel module for register a custom i2c-gpio platform device.
endef
EXTRA_KCONFIG:= \
CONFIG_I2C_GPIO_CUSTOM=m
EXTRA_CFLAGS:= \
$(patsubst CONFIG_%, -DCONFIG_%=1, $(patsubst %=m,%,$(filter %=m,$(EXTRA_KCONFIG)))) \
$(patsubst CONFIG_%, -DCONFIG_%=1, $(patsubst %=y,%,$(filter %=y,$(EXTRA_KCONFIG)))) \
MAKE_OPTS:= \
ARCH="$(LINUX_KARCH)" \
CROSS_COMPILE="$(TARGET_CROSS)" \
SUBDIRS="$(PKG_BUILD_DIR)" \
EXTRA_CFLAGS="$(EXTRA_CFLAGS)" \
LINUXINCLUDE="-I$(LINUX_DIR)/include -include linux/autoconf.h" \
$(EXTRA_KCONFIG)
define Build/Prepare
mkdir -p $(PKG_BUILD_DIR)
$(CP) ./src/* $(PKG_BUILD_DIR)/
endef
define Build/Compile
$(MAKE) -C "$(LINUX_DIR)" \
$(MAKE_OPTS) \
modules
endef
$(eval $(call KernelPackage,i2c-gpio-custom))

View File

@ -0,0 +1,10 @@
config I2C_GPIO_CUSTOM
tristate "Custom GPIO-based I2C driver"
depends on GENERIC_GPIO
select I2C_GPIO
help
This is an I2C driver to register 1 to 4 custom I2C buses using
GPIO lines.
This support is also available as a module. If so, the module
will be called i2c-gpio-custom.

View File

@ -0,0 +1 @@
obj-${CONFIG_I2C_GPIO_CUSTOM} += i2c-gpio-custom.o

View File

@ -93,22 +93,6 @@ endef
$(eval $(call KernelPackage,i2c-gpio)) $(eval $(call KernelPackage,i2c-gpio))
define KernelPackage/i2c-gpio-custom
SUBMENU:=$(I2C_MENU)
TITLE:=Custom GPIO-based I2C device
DEPENDS:=@TARGET_adm5120 kmod-i2c-core +kmod-i2c-gpio
KCONFIG:=CONFIG_I2C_GPIO_CUSTOM
FILES:=$(LINUX_DIR)/drivers/i2c/busses/i2c-gpio-custom.$(LINUX_KMOD_SUFFIX)
AUTOLOAD:=$(call AutoLoad,58,i2c-gpio-custom)
endef
define KernelPackage/i2c-gpio-custom/description
Kernel module for register a custom i2c-gpio platform device.
endef
$(eval $(call KernelPackage,i2c-gpio-custom))
define KernelPackage/i2c-scx200 define KernelPackage/i2c-scx200
SUBMENU:=$(I2C_MENU) SUBMENU:=$(I2C_MENU)
TITLE:=Geode SCx200 I2C using GPIO pins TITLE:=Geode SCx200 I2C using GPIO pins
@ -135,7 +119,7 @@ define KernelPackage/i2c-scx200-acb
endef endef
define KernelPackage/i2c-scx200-acb/description define KernelPackage/i2c-scx200-acb/description
Kernel module for I2C using the ACCESS.bus controllers on the Geode SCx200 Kernel module for I2C using the ACCESS.bus controllers on the Geode SCx200
and SC1100 processors and the CS5535 and CS5536 Geode companion devices. and SC1100 processors and the CS5535 and CS5536 Geode companion devices.
endef endef

View File

@ -1,34 +0,0 @@
Index: linux-2.6.24.2/drivers/i2c/busses/Kconfig
===================================================================
--- linux-2.6.24.2.orig/drivers/i2c/busses/Kconfig
+++ linux-2.6.24.2/drivers/i2c/busses/Kconfig
@@ -146,6 +146,17 @@ config I2C_GPIO
This is a very simple bitbanging I2C driver utilizing the
arch-neutral GPIO API to control the SCL and SDA lines.
+config I2C_GPIO_CUSTOM
+ tristate "Custom GPIO-based I2C driver"
+ depends on GENERIC_GPIO
+ select I2C_GPIO
+ help
+ This is an I2C driver to register 1 to 4 custom I2C buses using
+ GPIO lines.
+
+ This support is also available as a module. If so, the module
+ will be called i2c-gpio-custom.
+
config I2C_HYDRA
tristate "CHRP Apple Hydra Mac I/O I2C interface"
depends on PCI && PPC_CHRP && EXPERIMENTAL
Index: linux-2.6.24.2/drivers/i2c/busses/Makefile
===================================================================
--- linux-2.6.24.2.orig/drivers/i2c/busses/Makefile
+++ linux-2.6.24.2/drivers/i2c/busses/Makefile
@@ -14,6 +14,7 @@ obj-$(CONFIG_I2C_BLACKFIN_TWI) += i2c-bf
obj-$(CONFIG_I2C_DAVINCI) += i2c-davinci.o
obj-$(CONFIG_I2C_ELEKTOR) += i2c-elektor.o
obj-$(CONFIG_I2C_GPIO) += i2c-gpio.o
+obj-$(CONFIG_I2C_GPIO_CUSTOM) += i2c-gpio-custom.o
obj-$(CONFIG_I2C_HYDRA) += i2c-hydra.o
obj-$(CONFIG_I2C_I801) += i2c-i801.o
obj-$(CONFIG_I2C_I810) += i2c-i810.o