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: 4d7cbe0a55 ("kernel: video-dma: explicitly state packaged modules")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
This commit is contained in:
Hauke Mehrtens 2024-06-01 12:46:49 +02:00
parent 37ff0ea726
commit 8647ce0800
2 changed files with 30 additions and 16 deletions

View File

@ -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/description
Video DMA support
define KernelPackage/video-dma-contig/description
Video DMA support Contig
endef
$(eval $(call KernelPackage,video-dma))
$(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-sg/description
Video DMA support SG
endef
$(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)

View File

@ -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