video.mk 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. #
  3. # Copyright (C) 2019 OpenWrt.org
  4. define KernelPackage/camera-bcm2835
  5. TITLE:=BCM2835 Camera
  6. KCONFIG:= \
  7. CONFIG_VIDEO_BCM2835 \
  8. CONFIG_VIDEO_BCM2835_MMAL \
  9. CONFIG_VIDEO_BCM2835_UNICAM=n \
  10. CONFIG_VIDEO_ISP_BCM2835=n
  11. FILES:= \
  12. $(LINUX_DIR)/drivers/staging/vc04_services/bcm2835-camera/bcm2835-v4l2.ko
  13. AUTOLOAD:=$(call AutoLoad,65,bcm2835-v4l2)
  14. $(call AddDepends/video,@TARGET_bcm27xx +kmod-vchiq-mmal-bcm2835 +kmod-video-videobuf2)
  15. endef
  16. define KernelPackage/camera-bcm2835/description
  17. Camera host interface devices for Broadcom BCM2835 SoC.
  18. This operates over the VCHIQ interface to a service running on VideoCore.
  19. endef
  20. $(eval $(call KernelPackage,camera-bcm2835))
  21. define KernelPackage/drm-vc4
  22. SUBMENU:=$(VIDEO_MENU)
  23. TITLE:=Broadcom VC4 Graphics
  24. DEPENDS:= \
  25. @TARGET_bcm27xx +kmod-drm \
  26. +kmod-sound-core \
  27. +kmod-sound-soc-core
  28. KCONFIG:= \
  29. CONFIG_DRM_VC4 \
  30. CONFIG_DRM_VC4_HDMI_CEC=y \
  31. CONFIG_DRM_GUD=n \
  32. CONFIG_DRM_V3D=n \
  33. CONFIG_DRM_TVE200=n
  34. FILES:= \
  35. $(LINUX_DIR)/drivers/gpu/drm/vc4/vc4.ko \
  36. $(LINUX_DIR)/drivers/gpu/drm/drm_kms_helper.ko \
  37. $(LINUX_DIR)/drivers/media/cec/[email protected] \
  38. $(LINUX_DIR)/drivers/media/cec/core/cec.ko
  39. AUTOLOAD:=$(call AutoProbe,vc4)
  40. endef
  41. define KernelPackage/drm-vc4/description
  42. Direct Rendering Manager (DRM) support for Broadcom VideoCore IV GPU
  43. used in BCM2835, BCM2836 and BCM2837 SoCs (e.g. Raspberry Pi).
  44. endef
  45. $(eval $(call KernelPackage,drm-vc4))
  46. define KernelPackage/vc-sm-cma
  47. TITLE:=VideoCore Shared Memory (CMA) driver
  48. KCONFIG:= \
  49. CONFIG_BCM_VC_SM_CMA
  50. FILES:= \
  51. $(LINUX_DIR)/drivers/staging/vc04_services/vc-sm-cma/vc-sm-cma.ko
  52. $(call AddDepends/video,@TARGET_bcm27xx)
  53. endef
  54. define KernelPackage/vc-sm-cma/description
  55. Shared memory interface that supports sharing dmabufs with VideoCore.
  56. This operates over the VCHIQ interface to a service running on VideoCore.
  57. endef
  58. $(eval $(call KernelPackage,vc-sm-cma))
  59. define KernelPackage/vchiq-mmal-bcm2835
  60. TITLE:=BCM2835 MMAL VCHIQ service
  61. KCONFIG:= \
  62. CONFIG_BCM2835_VCHIQ_MMAL \
  63. CONFIG_VIDEO_CODEC_BCM2835=n
  64. FILES:= \
  65. $(LINUX_DIR)/drivers/staging/vc04_services/vchiq-mmal/bcm2835-mmal-vchiq.ko
  66. $(call AddDepends/video,@TARGET_bcm27xx +kmod-vc-sm-cma)
  67. endef
  68. define KernelPackage/vchiq-mmal-bcm2835/description
  69. Enables the MMAL API over VCHIQ as used for the
  70. majority of the multimedia services on VideoCore.
  71. endef
  72. $(eval $(call KernelPackage,vchiq-mmal-bcm2835))