video.mk 2.3 KB

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