[PATCH 0/4] drm/mgag200: Handle VIDRST from BMC helpers

Thomas Zimmermann tzimmermann at suse.de
Wed Jul 3 13:40:02 UTC 2024


The VIDRST pin controls CRTC synchronization with an external clock
chip, such as a BMC or TV encoder. This patchset separates the CRTC
state from the BMC state and streamlines the driver code.

Patch one moves the VIDRST programming logic into the CRTC modesetting
code. The status of the rsp flag bits is fully controlled by an active
BMC encoder. Without BMC, the CRTC ignores VIDRST by default.

During a modeset operation on the CRTC, the BMC has to stop scanning
out the display signal. Patch 2 integrates the logic controlling the
BMC scanout with the BMC encoder helpers.

Patches 3 and 4 then remove and rename obsolete and unused artifacts
within the mgag200 driver.

Thomas Zimmermann (4):
  drm/mgag200: Only set VIDRST bits in CRTC modesetting
  drm/mgag200: Start/stop BMC scanout in BMC encoder helpers
  drm/mgag200: Remove vidrst callbacks from struct mgag200_device_funcs
  drm/mgag200: Rename BMC vidrst names

 drivers/gpu/drm/mgag200/mgag200_bmc.c     | 50 +++++++++++++++++++----
 drivers/gpu/drm/mgag200/mgag200_drv.h     | 29 ++++---------
 drivers/gpu/drm/mgag200/mgag200_g200er.c  |  8 +---
 drivers/gpu/drm/mgag200/mgag200_g200ev.c  |  8 +---
 drivers/gpu/drm/mgag200/mgag200_g200ew3.c |  2 -
 drivers/gpu/drm/mgag200/mgag200_g200se.c  |  8 +---
 drivers/gpu/drm/mgag200/mgag200_g200wb.c  |  2 -
 drivers/gpu/drm/mgag200/mgag200_mode.c    | 24 ++++-------
 8 files changed, 62 insertions(+), 69 deletions(-)

-- 
2.45.2



More information about the dri-devel mailing list