ucmb-kernel: Install the header file
[openwrt/svn-archive/archive.git] / utils / ucmb / Makefile
index 8bce64afd45e0e7c5e3514abb2ebd8fce05ae6a5..f3d3915f8788eebdec6f4f3e4e8a2a4756468e96 100644 (file)
@@ -15,10 +15,13 @@ include $(INCLUDE_DIR)/package.mk
 
 define KernelPackage/ucmb
   SUBMENU:=Other modules
-  DEPENDS:=@LINUX_2_6 +kmod-spi-gpio +kmod-crc16
+  DEPENDS:=@LINUX_2_6 \
+          @!LINUX_2_6_21 @!LINUX_2_6_22 @!LINUX_2_6_23 @!LINUX_2_6_24 \
+         @!LINUX_2_6_25 @!LINUX_2_6_26 @!LINUX_2_6_27 \
+         +kmod-spi-gpio +kmod-crc16
   KCONFIG:=CONFIG_SPI=y \
           CONFIG_SPI_MASTER=y
-  TITLE:=Microcontroller Message Bus (EXPERIMENTAL)
+  TITLE:=Microcontroller Message Bus
   FILES:=$(PKG_BUILD_DIR)/ucmb.$(LINUX_KMOD_SUFFIX)
   AUTOLOAD:=$(call AutoLoad,93,ucmb)
 endef
@@ -32,6 +35,8 @@ define KernelPackage/ucmb/description
        The device node considers every read/write to be one packet. The maximum packet
        size is either PAGE_SIZE (at least 4kb) or the microcontroller specific packet size
        limit, which is likely to be a lot smaller than PAGE_SIZE.
+       To register an ucmb device, simply create a struct ucmb_platform_data
+       and register it via ucmb_device_register() from another kernel module.
        Example implementations for the microcontroller-side code can be found in
        the utils/ucmb/microcontroller_examples subdirectory of the OpenWRT packages feed.
 endef
@@ -50,4 +55,11 @@ define Build/Compile
                modules
 endef
 
+define Build/InstallDev
+       $(INSTALL_DIR) $(1)/usr/include
+       $(CP) \
+               $(PKG_BUILD_DIR)/ucmb.h \
+               $(1)/usr/include
+endef
+
 $(eval $(call KernelPackage,ucmb))