aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/spi-gpio-custom/Makefile
diff options
context:
space:
mode:
authorGabor Juhos <juhosg@openwrt.org>2013-09-02 08:45:29 +0000
committerGabor Juhos <juhosg@openwrt.org>2013-09-02 08:45:29 +0000
commit6bb50e4df15653864a4ee274f0bdad76b196f1e5 (patch)
treedc78a0bc45c2a5fd8d004c6b8fd63fff560c3b42 /package/kernel/spi-gpio-custom/Makefile
parente7a5947576831bfdc9751b7d8bafc55b28b47f9e (diff)
downloadupstream-6bb50e4df15653864a4ee274f0bdad76b196f1e5.tar.gz
upstream-6bb50e4df15653864a4ee274f0bdad76b196f1e5.tar.bz2
upstream-6bb50e4df15653864a4ee274f0bdad76b196f1e5.zip
package/kernel: add spi-gpio-custom module
The package makes it possible to create custom SPI buses via GPIO lines. This module is based on i2c-gpio-custom and allows to configure an SPI bus via GPIO lines and expose it to userspace without rebuilding the kernel. This is maily intended to connect microcontrollers and other simple SPI devices without making an ad-hoc kernel driver. Signed-off-by: Marco Burato <zmaster.adsl@gmail.com> [juhosg: - change subject, - extend and reformat commit message, - cleanup checkpatch errors/warnings in module source] Signed-off-by: Gabor Juhos <juhosg@openwrt.org> SVN-Revision: 37872
Diffstat (limited to 'package/kernel/spi-gpio-custom/Makefile')
-rw-r--r--package/kernel/spi-gpio-custom/Makefile53
1 files changed, 53 insertions, 0 deletions
diff --git a/package/kernel/spi-gpio-custom/Makefile b/package/kernel/spi-gpio-custom/Makefile
new file mode 100644
index 0000000000..3282f0638c
--- /dev/null
+++ b/package/kernel/spi-gpio-custom/Makefile
@@ -0,0 +1,53 @@
+#
+# 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:=spi-gpio-custom
+PKG_RELEASE:=1
+
+include $(INCLUDE_DIR)/package.mk
+
+define KernelPackage/spi-gpio-custom
+ SUBMENU:=SPI Support
+ TITLE:=Custom GPIO-based SPI device
+ DEPENDS:=@GPIO_SUPPORT +kmod-spi-bitbang +kmod-spi-gpio +kmod-spi-dev
+ FILES:=$(PKG_BUILD_DIR)/spi-gpio-custom.ko
+ KCONFIG:=
+endef
+
+define KernelPackage/spi-gpio-custom/description
+ Kernel module for register a custom spi-gpio platform device.
+endef
+
+EXTRA_KCONFIG:= \
+ CONFIG_SPI_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)" \
+ $(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,spi-gpio-custom))