brcm2708: add kmod-video-bcm2835 support
[openwrt/openwrt.git] / target / linux / brcm2708 / modules.mk
index 8f009903936d5218f0d12fa8fa71794b531efb04..cad1a64c3bffad020a6b287f7a3173993970c450 100644 (file)
@@ -6,7 +6,7 @@
 #
 
 define KernelPackage/sound-arm-bcm2835
-  TITLE:=Broadcom 2708,2835 SoC sound support
+  TITLE:=BCM2835 ALSA driver
   KCONFIG:= \
        CONFIG_SND_ARM=y \
        CONFIG_SND_BCM2835 \
@@ -19,14 +19,15 @@ define KernelPackage/sound-arm-bcm2835
 endef
 
 define KernelPackage/sound-arm-bcm2835/description
-  This package contains the Broadcom 2708/2835 sound driver
+  This package contains the BCM2835 ALSA pcm card driver
 endef
 
 $(eval $(call KernelPackage,sound-arm-bcm2835))
 
+
 define KernelPackage/random-bcm2708
   SUBMENU:=$(OTHER_MENU)
-  TITLE:=BCM2708 H/W Random Number Generator
+  TITLE:=BCM2708 HW Random Number Generator
   KCONFIG:=CONFIG_HW_RANDOM_BCM2708
   FILES:=$(LINUX_DIR)/drivers/char/hw_random/bcm2708-rng.ko
   AUTOLOAD:=$(call AutoLoad,11,bcm2708-rng)
@@ -39,14 +40,30 @@ endef
 
 $(eval $(call KernelPackage,random-bcm2708))
 
+define KernelPackage/random-bcm2835
+  SUBMENU:=$(OTHER_MENU)
+  TITLE:=BCM2835 HW Random Number Generator
+  KCONFIG:=CONFIG_HW_RANDOM_BCM2835
+  FILES:=$(LINUX_DIR)/drivers/char/hw_random/bcm2835-rng.ko
+  AUTOLOAD:=$(call AutoLoad,11,bcm2835-rng)
+  DEPENDS:=@TARGET_brcm2708 +kmod-random-core
+endef
+
+define KernelPackage/random-bcm2835/description
+  This package contains the Broadcom 2835 HW random number generator driver
+endef
+
+$(eval $(call KernelPackage,random-bcm2835))
+
 
 define KernelPackage/spi-bcm2708
   SUBMENU:=$(SPI_MENU)
-  TITLE:=BCM2708 SPI controller driver (SPI0)
-  KCONFIG:=CONFIG_SPI_BCM2708 \
-          CONFIG_SPI=y \
-          CONFIG_SPI_MASTER=y \
-          CONFIG_BCM2708_SPIDEV=y
+  TITLE:=BCM2708 SPI controller driver
+  KCONFIG:= \
+    CONFIG_BCM2708_SPIDEV=n \
+    CONFIG_SPI=y \
+    CONFIG_SPI_BCM2708 \
+    CONFIG_SPI_MASTER=y
   FILES:=$(LINUX_DIR)/drivers/spi/spi-bcm2708.ko
   AUTOLOAD:=$(call AutoLoad,89,spi-bcm2708)
   DEPENDS:=@TARGET_brcm2708
@@ -58,15 +75,48 @@ endef
 
 $(eval $(call KernelPackage,spi-bcm2708))
 
+define KernelPackage/spi-bcm2835
+  SUBMENU:=$(SPI_MENU)
+  TITLE:=BCM2835 SPI controller driver
+  KCONFIG:=\
+    CONFIG_BCM2708_SPIDEV=n \
+    CONFIG_SPI=y \
+    CONFIG_SPI_BCM2835 \
+    CONFIG_SPI_MASTER=y
+  FILES:=$(LINUX_DIR)/drivers/spi/spi-bcm2835.ko
+  AUTOLOAD:=$(call AutoLoad,89,spi-bcm2835)
+  DEPENDS:=@TARGET_brcm2708
+endef
+
+define KernelPackage/spi-bcm2835/description
+  This package contains the Broadcom 2835 SPI master controller driver
+endef
+
+$(eval $(call KernelPackage,spi-bcm2835))
+
+
+define KernelPackage/hwmon-bcm2835
+  TITLE:=BCM2835 HWMON driver
+  KCONFIG:=CONFIG_SENSORS_BCM2835
+  FILES:=$(LINUX_DIR)/drivers/hwmon/bcm2835-hwmon.ko
+  AUTOLOAD:=$(call AutoLoad,60,bcm2835-hwmon)
+  $(call AddDepends/hwmon,@TARGET_brcm2708)
+endef
+
+define KernelPackage/hwmon-bcm2835/description
+  Kernel module for BCM2835 thermal monitor chip
+endef
+
+$(eval $(call KernelPackage,hwmon-bcm2835))
+
 
 I2C_BCM2708_MODULES:=\
   CONFIG_I2C_BCM2708:drivers/i2c/busses/i2c-bcm2708
 
 define KernelPackage/i2c-bcm2708
   $(call i2c_defaults,$(I2C_BCM2708_MODULES),59)
-  KCONFIG+= \
-          CONFIG_I2C_BCM2708_BAUDRATE=100000
   TITLE:=Broadcom BCM2708 I2C master controller driver
+  KCONFIG+= CONFIG_I2C_BCM2708_BAUDRATE=100000
   DEPENDS:=@TARGET_brcm2708 +kmod-i2c-core
 endef
 
@@ -75,3 +125,35 @@ define KernelPackage/i2c-bcm2708/description
 endef
 
 $(eval $(call KernelPackage,i2c-bcm2708))
+
+I2C_BCM2835_MODULES:=\
+  CONFIG_I2C_BCM2835:drivers/i2c/busses/i2c-bcm2835
+
+define KernelPackage/i2c-bcm2835
+  $(call i2c_defaults,$(I2C_BCM2835_MODULES),59)
+  TITLE:=Broadcom BCM2835 I2C master controller driver
+  DEPENDS:=@TARGET_brcm2708 +kmod-i2c-core
+endef
+
+define KernelPackage/i2c-bcm2835/description
+  This package contains the Broadcom 2835 I2C master controller driver
+endef
+
+$(eval $(call KernelPackage,i2c-bcm2835))
+
+
+define KernelPackage/video-bcm2835
+  TITLE:=Broadcom BCM2835 camera interface driver
+  KCONFIG:= \
+       CONFIG_VIDEO_BCM2835=y \
+       CONFIG_VIDEO_BCM2835_MMAL
+  FILES:= $(LINUX_DIR)/drivers/media/platform/bcm2835/bcm2835-v4l2.ko
+  AUTOLOAD:=$(call AutoLoad,65,bcm2835-v4l2)
+  $(call AddDepends/video,@TARGET_brcm2708 +kmod-video-videobuf2)
+endef
+
+define KernelPackage/video-bcm2835/description
+  This is a V4L2 driver for the Broadcom 2835 MMAL camera host interface
+endef
+
+$(eval $(call KernelPackage,video-bcm2835))