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

SVN-Revision: 10979
This commit is contained in:
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))
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
SUBMENU:=$(I2C_MENU)
TITLE:=Geode SCx200 I2C using GPIO pins

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