# See /LICENSE for more information.
#
+define KernelPackage/drm-vc4
+ SUBMENU:=$(VIDEO_MENU)
+ TITLE:=Broadcom VC4 Graphics
+ DEPENDS:= \
+ @TARGET_brcm2708 +kmod-drm \
+ +LINUX_4_14:kmod-sound-core \
+ +LINUX_4_14:kmod-sound-soc-core
+ KCONFIG:= \
+ CONFIG_DRM_VC4 \
+ CONFIG_DRM_VC4_HDMI_CEC=n
+ FILES:= \
+ $(LINUX_DIR)/drivers/gpu/drm/vc4/vc4.ko \
+ $(LINUX_DIR)/drivers/gpu/drm/drm_kms_helper.ko
+ AUTOLOAD:=$(call AutoProbe,vc4)
+endef
+
+define KernelPackage/drm-vc4/description
+ Direct Rendering Manager (DRM) support for Broadcom VideoCore IV GPU
+ used in BCM2835, BCM2836 and BCM2837 SoCs (e.g. Raspberry Pi).
+endef
+
+$(eval $(call KernelPackage,drm-vc4))
+
+
+define KernelPackage/hwmon-rpi-poe-fan
+ SUBMENU:=$(HWMON_MENU)
+ TITLE:=Raspberry Pi PoE HAT fan
+ DEPENDS:=@TARGET_brcm2708 @LINUX_4_14 +kmod-hwmon-core
+ KCONFIG:=CONFIG_SENSORS_RPI_POE_FAN
+ FILES:=$(LINUX_DIR)/drivers/hwmon/rpi-poe-fan.ko
+ AUTOLOAD:=$(call AutoProbe,rpi-poe-fan)
+endef
+
+define KernelPackage/hwmon-rpi-poe-fan/description
+ Raspberry Pi PoE HAT fan driver
+endef
+
+$(eval $(call KernelPackage,hwmon-rpi-poe-fan))
+
+
define KernelPackage/sound-arm-bcm2835
TITLE:=BCM2835 ALSA driver
KCONFIG:= \
CONFIG_SND_BCM2835 \
CONFIG_SND_ARMAACI=n
FILES:= \
- $(LINUX_DIR)/sound/arm/snd-bcm2835.ko
+ $(LINUX_DIR)/drivers/staging/vc04_services/bcm2835-audio/snd-bcm2835.ko@ge4.12 \
+ $(LINUX_DIR)/sound/arm/snd-bcm2835.ko@lt4.12
AUTOLOAD:=$(call AutoLoad,68,snd-bcm2835)
DEPENDS:=@TARGET_brcm2708
$(call AddDepends/sound)
$(eval $(call KernelPackage,sound-soc-adau1977-adc))
+
+define KernelPackage/sound-soc-allo-boss-dac
+ TITLE:=Support for Allo Boss DAC
+ KCONFIG:= \
+ CONFIG_SND_BCM2708_SOC_ALLO_BOSS_DAC \
+ CONFIG_SND_SOC_PCM512x \
+ CONFIG_SND_SOC_PCM512x_I2C
+ FILES:= \
+ $(LINUX_DIR)/sound/soc/bcm/snd-soc-allo-boss-dac.ko \
+ $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x.ko \
+ $(LINUX_DIR)/sound/soc/codecs/snd-soc-pcm512x-i2c.ko
+ AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x-i2c snd-soc-pcm512x \
+ snd-soc-allo-boss-dac)
+ DEPENDS:= \
+ @LINUX_4_14 \
+ +kmod-i2c-bcm2708 \
+ kmod-sound-soc-bcm2835-i2s
+ $(call AddDepends/sound)
+endef
+
+define KernelPackage/sound-soc-allo-boss-dac/description
+ This package contains support for Allo Boss DAC
+endef
+
+$(eval $(call KernelPackage,sound-soc-allo-boss-dac))
+
+
define KernelPackage/sound-soc-allo-piano-dac
TITLE:=Support for Allo Piano DAC
KCONFIG:= \
AUTOLOAD:=$(call AutoLoad,68,snd-soc-pcm512x snd-soc-pcm512x-i2c \
snd-soc-tpa6130a2 snd-soc-raspidac3)
DEPENDS:= \
+ @LINUX_4_9 \
kmod-sound-soc-bcm2835-i2s \
+kmod-i2c-bcm2708
$(call AddDepends/sound)
define KernelPackage/video-bcm2835
TITLE:=Broadcom BCM2835 camera interface driver
KCONFIG:= \
- CONFIG_VIDEO_BCM2835=y \
+ CONFIG_VIDEO_BCM2835$(if $(CONFIG_LINUX_4_9),=y) \
CONFIG_VIDEO_BCM2835_MMAL
- FILES:= $(LINUX_DIR)/drivers/media/platform/bcm2835/bcm2835-v4l2.ko
+ FILES:= \
+ $(LINUX_DIR)/drivers/media/platform/bcm2835/bcm2835-v4l2.ko@lt4.12 \
+ $(LINUX_DIR)/drivers/staging/vc04_services/bcm2835-camera/bcm2835-v4l2.ko@ge4.12
AUTOLOAD:=$(call AutoLoad,65,bcm2835-v4l2)
$(call AddDepends/video,@TARGET_brcm2708 +kmod-video-videobuf2)
endef