From 8647ce080037e5e71571292574c6770190212dd3 Mon Sep 17 00:00:00 2001 From: Hauke Mehrtens Date: Sat, 1 Jun 2024 12:46:49 +0200 Subject: [PATCH] kernel: Split kmod-video-dma into two kmods Split the kmod-video-dma into kmod-video-dma-sg and kmod-video-dma-contig. The old one contained two kmods, but sometimes only one of them is build which caused problems. The configuration options are not manually selectable in the kernel and hidden in OpenWrt. Currently this causes build failures on some targets. Fixes: 4d7cbe0a5590 ("kernel: video-dma: explicitly state packaged modules") Signed-off-by: Hauke Mehrtens --- package/kernel/linux/modules/video.mk | 42 ++++++++++++++++++--------- target/linux/bcm27xx/modules/video.mk | 4 +-- 2 files changed, 30 insertions(+), 16 deletions(-) diff --git a/package/kernel/linux/modules/video.mk b/package/kernel/linux/modules/video.mk index ff04e3b5de..e242a06c42 100644 --- a/package/kernel/linux/modules/video.mk +++ b/package/kernel/linux/modules/video.mk @@ -1173,30 +1173,44 @@ endef $(eval $(call KernelPackage,video-mem2mem)) -define KernelPackage/video-dma +define KernelPackage/video-dma-contig SUBMENU:=$(VIDEO_MENU) TITLE:=Video DMA support HIDDEN:=1 DEPENDS:=+kmod-video-videobuf2 - KCONFIG:= \ - CONFIG_VIDEOBUF2_DMA_CONTIG \ - CONFIG_VIDEOBUF2_DMA_SG - FILES:= \ - $(LINUX_DIR)/drivers/media/common/videobuf2/videobuf2-dma-contig.ko \ - $(LINUX_DIR)/drivers/media/common/videobuf2/videobuf2-dma-sg.ko - AUTOLOAD:=$(call AutoLoad,66,videobuf2-dma-contig videobuf2-dma-sg) + KCONFIG:=CONFIG_VIDEOBUF2_DMA_CONTIG + FILES:=$(LINUX_DIR)/drivers/media/common/videobuf2/videobuf2-dma-contig.ko + AUTOLOAD:=$(call AutoLoad,66,videobuf2-dma-contig) + $(call AddDepends/video) +endef + +define KernelPackage/video-dma-contig/description + Video DMA support Contig +endef + + +$(eval $(call KernelPackage,video-dma-contig)) + +define KernelPackage/video-dma-sg + SUBMENU:=$(VIDEO_MENU) + TITLE:=Video DMA support + HIDDEN:=1 + DEPENDS:=+kmod-video-videobuf2 + KCONFIG:=CONFIG_VIDEOBUF2_DMA_SG + FILES:=$(LINUX_DIR)/drivers/media/common/videobuf2/videobuf2-dma-sg.ko + AUTOLOAD:=$(call AutoLoad,66,videobuf2-dma-sg) $(call AddDepends/video) endef -define KernelPackage/video-dma/description - Video DMA support +define KernelPackage/video-dma-sg/description + Video DMA support SG endef -$(eval $(call KernelPackage,video-dma)) +$(eval $(call KernelPackage,video-dma-sg)) define KernelPackage/video-coda TITLE:=i.MX VPU support - DEPENDS:=@(TARGET_imx&&TARGET_imx_cortexa9) +kmod-video-mem2mem +kmod-video-dma + DEPENDS:=@(TARGET_imx&&TARGET_imx_cortexa9) +kmod-video-mem2mem +kmod-video-dma-contig KCONFIG:= \ CONFIG_VIDEO_CODA \ CONFIG_VIDEO_IMX_VDOA @@ -1218,7 +1232,7 @@ $(eval $(call KernelPackage,video-coda)) define KernelPackage/video-pxp TITLE:=i.MX PXP support - DEPENDS:=@TARGET_imx +kmod-video-mem2mem +kmod-video-dma + DEPENDS:=@TARGET_imx +kmod-video-mem2mem +kmod-video-dma-contig KCONFIG:= CONFIG_VIDEO_IMX_PXP FILES:= $(LINUX_DIR)/drivers/media/$(V4L2_MEM2MEM_DIR)/imx-pxp.ko@lt6.1 \ $(LINUX_DIR)/drivers/media/platform/nxp/imx-pxp.ko@ge6.1 @@ -1236,7 +1250,7 @@ $(eval $(call KernelPackage,video-pxp)) define KernelPackage/video-tw686x TITLE:=TW686x support - DEPENDS:=@PCIE_SUPPORT +kmod-video-dma +kmod-sound-core + DEPENDS:=@PCIE_SUPPORT +kmod-video-dma-contig +kmod-video-dma-sg +kmod-sound-core KCONFIG:= CONFIG_VIDEO_TW686X FILES:= $(LINUX_DIR)/drivers/media/pci/tw686x/tw686x.ko AUTOLOAD:=$(call AutoProbe,tw686x) diff --git a/target/linux/bcm27xx/modules/video.mk b/target/linux/bcm27xx/modules/video.mk index c9b9555b04..b9af0b3e0f 100644 --- a/target/linux/bcm27xx/modules/video.mk +++ b/target/linux/bcm27xx/modules/video.mk @@ -27,7 +27,7 @@ define KernelPackage/codec-bcm2835 FILES:= \ $(LINUX_DIR)/drivers/staging/vc04_services/bcm2835-codec/bcm2835-codec.ko AUTOLOAD:=$(call AutoLoad,67,bcm2835-codec) - $(call AddDepends/video,@TARGET_bcm27xx +kmod-vchiq-mmal-bcm2835 +kmod-video-dma +kmod-video-mem2mem) + $(call AddDepends/video,@TARGET_bcm27xx +kmod-vchiq-mmal-bcm2835 +kmod-video-dma-contig +kmod-video-mem2mem) endef define KernelPackage/codec-bcm2835/description @@ -72,7 +72,7 @@ define KernelPackage/isp-bcm2835 FILES:= \ $(LINUX_DIR)/drivers/staging/vc04_services/bcm2835-isp/bcm2835-isp.ko AUTOLOAD:=$(call AutoLoad,67,bcm2835-isp) - $(call AddDepends/video,@TARGET_bcm27xx +kmod-vchiq-mmal-bcm2835 +kmod-video-dma) + $(call AddDepends/video,@TARGET_bcm27xx +kmod-vchiq-mmal-bcm2835 +kmod-video-dma-contig) endef define KernelPackage/isp-bcm2835/description -- 2.30.2