video.mk 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  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. FILES:= \
  9. $(LINUX_DIR)/drivers/staging/vc04_services/bcm2835-camera/bcm2835-v4l2.ko
  10. AUTOLOAD:=$(call AutoLoad,66,bcm2835-v4l2)
  11. $(call AddDepends/video,@TARGET_bcm27xx +kmod-vchiq-mmal-bcm2835 +kmod-video-videobuf2)
  12. endef
  13. define KernelPackage/camera-bcm2835/description
  14. Camera host interface devices for Broadcom BCM2835 SoC.
  15. This operates over the VCHIQ interface to a service running on VideoCore.
  16. endef
  17. $(eval $(call KernelPackage,camera-bcm2835))
  18. define KernelPackage/codec-bcm2835
  19. TITLE:=BCM2835 Video Codec
  20. KCONFIG:= \
  21. CONFIG_VIDEO_CODEC_BCM2835
  22. FILES:= \
  23. $(LINUX_DIR)/drivers/staging/vc04_services/bcm2835-codec/bcm2835-codec.ko
  24. AUTOLOAD:=$(call AutoLoad,67,bcm2835-codec)
  25. $(call AddDepends/video,@TARGET_bcm27xx +kmod-vchiq-mmal-bcm2835 +kmod-video-dma +kmod-video-mem2mem)
  26. endef
  27. define KernelPackage/codec-bcm2835/description
  28. V4L2 video codecs for Broadcom BCM2835 SoC.
  29. This operates over the VCHIQ interface to a service running on VideoCore.
  30. endef
  31. $(eval $(call KernelPackage,codec-bcm2835))
  32. define KernelPackage/drm-vc4
  33. SUBMENU:=$(VIDEO_MENU)
  34. TITLE:=Broadcom VC4 Graphics
  35. DEPENDS:= \
  36. @TARGET_bcm27xx +kmod-drm \
  37. +kmod-sound-core \
  38. +kmod-sound-soc-core
  39. KCONFIG:= \
  40. CONFIG_DRM_VC4 \
  41. CONFIG_DRM_VC4_HDMI_CEC=y
  42. FILES:= \
  43. $(LINUX_DIR)/drivers/gpu/drm/display/drm_display_helper.ko \
  44. $(LINUX_DIR)/drivers/gpu/drm/drm_dma_helper.ko \
  45. $(LINUX_DIR)/drivers/gpu/drm/vc4/vc4.ko \
  46. $(LINUX_DIR)/drivers/gpu/drm/drm_kms_helper.ko \
  47. $(LINUX_DIR)/drivers/media/cec/core/cec.ko
  48. AUTOLOAD:=$(call AutoProbe,vc4)
  49. endef
  50. define KernelPackage/drm-vc4/description
  51. Direct Rendering Manager (DRM) support for Broadcom VideoCore IV GPU
  52. used in BCM2835, BCM2836 and BCM2837 SoCs (e.g. Raspberry Pi).
  53. endef
  54. $(eval $(call KernelPackage,drm-vc4))
  55. define KernelPackage/isp-bcm2835
  56. TITLE:=BCM2835 ISP
  57. KCONFIG:= \
  58. CONFIG_VIDEO_ISP_BCM2835
  59. FILES:= \
  60. $(LINUX_DIR)/drivers/staging/vc04_services/bcm2835-isp/bcm2835-isp.ko
  61. AUTOLOAD:=$(call AutoLoad,67,bcm2835-isp)
  62. $(call AddDepends/video,@TARGET_bcm27xx +kmod-vchiq-mmal-bcm2835 +kmod-video-dma)
  63. endef
  64. define KernelPackage/isp-bcm2835/description
  65. V4L2 driver for the Broadcom BCM2835 ISP hardware.
  66. This operates over the VCHIQ interface to a service running on VideoCore.
  67. endef
  68. $(eval $(call KernelPackage,isp-bcm2835))
  69. define KernelPackage/vc-sm-cma
  70. TITLE:=VideoCore Shared Memory (CMA) driver
  71. KCONFIG:= \
  72. CONFIG_BCM_VC_SM_CMA
  73. FILES:= \
  74. $(LINUX_DIR)/drivers/staging/vc04_services/vc-sm-cma/vc-sm-cma.ko
  75. $(call AddDepends/video,@TARGET_bcm27xx)
  76. endef
  77. define KernelPackage/vc-sm-cma/description
  78. Shared memory interface that supports sharing dmabufs with VideoCore.
  79. This operates over the VCHIQ interface to a service running on VideoCore.
  80. endef
  81. $(eval $(call KernelPackage,vc-sm-cma))
  82. define KernelPackage/vchiq-mmal-bcm2835
  83. TITLE:=BCM2835 MMAL VCHIQ service
  84. KCONFIG:= \
  85. CONFIG_BCM2835_VCHIQ_MMAL
  86. FILES:= \
  87. $(LINUX_DIR)/drivers/staging/vc04_services/vchiq-mmal/bcm2835-mmal-vchiq.ko
  88. $(call AddDepends/video,@TARGET_bcm27xx +kmod-vc-sm-cma)
  89. endef
  90. define KernelPackage/vchiq-mmal-bcm2835/description
  91. Enables the MMAL API over VCHIQ as used for the
  92. majority of the multimedia services on VideoCore.
  93. endef
  94. $(eval $(call KernelPackage,vchiq-mmal-bcm2835))