vc4.rst 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. =====================================
  2. drm/vc4 Broadcom VC4 Graphics Driver
  3. =====================================
  4. .. kernel-doc:: drivers/gpu/drm/vc4/vc4_drv.c
  5. :doc: Broadcom VC4 Graphics Driver
  6. Display Hardware Handling
  7. =========================
  8. This section covers everything related to the display hardware including
  9. the mode setting infrastructure, plane, sprite and cursor handling and
  10. display, output probing and related topics.
  11. Pixel Valve (DRM CRTC)
  12. ----------------------
  13. .. kernel-doc:: drivers/gpu/drm/vc4/vc4_crtc.c
  14. :doc: VC4 CRTC module
  15. HVS
  16. ---
  17. .. kernel-doc:: drivers/gpu/drm/vc4/vc4_hvs.c
  18. :doc: VC4 HVS module.
  19. HVS planes
  20. ----------
  21. .. kernel-doc:: drivers/gpu/drm/vc4/vc4_plane.c
  22. :doc: VC4 plane module
  23. HDMI encoder
  24. ------------
  25. .. kernel-doc:: drivers/gpu/drm/vc4/vc4_hdmi.c
  26. :doc: VC4 Falcon HDMI module
  27. DSI encoder
  28. -----------
  29. .. kernel-doc:: drivers/gpu/drm/vc4/vc4_dsi.c
  30. :doc: VC4 DSI0/DSI1 module
  31. DPI encoder
  32. -----------
  33. .. kernel-doc:: drivers/gpu/drm/vc4/vc4_dpi.c
  34. :doc: VC4 DPI module
  35. VEC (Composite TV out) encoder
  36. ------------------------------
  37. .. kernel-doc:: drivers/gpu/drm/vc4/vc4_vec.c
  38. :doc: VC4 SDTV module
  39. KUnit Tests
  40. ===========
  41. The VC4 Driver uses KUnit to perform driver-specific unit and
  42. integration tests.
  43. These tests are using a mock driver and can be ran using the
  44. command below, on either arm or arm64 architectures,
  45. .. code-block:: bash
  46. $ ./tools/testing/kunit/kunit.py run \
  47. --kunitconfig=drivers/gpu/drm/vc4/tests/.kunitconfig \
  48. --cross_compile aarch64-linux-gnu- --arch arm64
  49. Parts of the driver that are currently covered by tests are:
  50. * The HVS to PixelValve dynamic FIFO assignment, for the BCM2835-7
  51. and BCM2711.
  52. Memory Management and 3D Command Submission
  53. ===========================================
  54. This section covers the GEM implementation in the vc4 driver.
  55. GPU buffer object (BO) management
  56. ---------------------------------
  57. .. kernel-doc:: drivers/gpu/drm/vc4/vc4_bo.c
  58. :doc: VC4 GEM BO management support
  59. V3D binner command list (BCL) validation
  60. ----------------------------------------
  61. .. kernel-doc:: drivers/gpu/drm/vc4/vc4_validate.c
  62. :doc: Command list validator for VC4.
  63. V3D render command list (RCL) generation
  64. ----------------------------------------
  65. .. kernel-doc:: drivers/gpu/drm/vc4/vc4_render_cl.c
  66. :doc: Render command list generation
  67. Shader validator for VC4
  68. ---------------------------
  69. .. kernel-doc:: drivers/gpu/drm/vc4/vc4_validate_shaders.c
  70. :doc: Shader validator for VC4.
  71. V3D Interrupts
  72. --------------
  73. .. kernel-doc:: drivers/gpu/drm/vc4/vc4_irq.c
  74. :doc: Interrupt management for the V3D engine