On 8/9/24 15:35, Sean Anderson wrote: > This series cleans up the zyqnmp_dp IRQ and locking situation. Once > that's done, it adds debugfs support. The intent is to enable compliance > testing or to help debug signal-integrity issues. > > Previously, I discussed converting the HPD work(s) to a threaded IRQ. I > did not end up doing that for this series since the steps would be > > - Add locking > - Move link retraining to a work function > - Harden the IRQ > - Merge the works into a threaded IRQ (omitted) > > Which with the exception of the final step is the same as leaving those > works as-is. Conversion to a threaded IRQ can be done as a follow-up. > > Changes in v6: > - Unplug DRM device before removal > - Fix hang upon driver removal > - Rebase onto drm-misc/drm-misc-next > > Changes in v5: > - Rebase onto drm-misc/drm-misc-next > > Changes in v4: > - Rebase onto drm/drm-next > > Changes in v3: > - Convert to a hard IRQ > - Use AUX IRQs instead of polling > - Take dp->lock in zynqmp_dp_hpd_work_func > > Changes in v2: > - Split off the HPD IRQ work into another commit > - Expand the commit message > - Document hpd_irq_work > - Document debugfs files > - Add ignore_aux_errors and ignore_hpd debugfs files to replace earlier > implicit functionality > - Attempt to fix unreproducable, spurious build warning > - Drop "Optionally ignore DPCD errors" in favor of a debugfs file > directly affecting zynqmp_dp_aux_transfer. > > Sean Anderson (8): > drm: zynqmp_kms: Unplug DRM device before removal > drm: zynqmp_dp: Add locking > drm: zynqmp_dp: Don't retrain the link in our IRQ > drm: zynqmp_dp: Convert to a hard IRQ > drm: zynqmp_dp: Use AUX IRQs instead of polling > drm: zynqmp_dp: Split off several helper functions > drm: zynqmp_dp: Take dp->lock in zynqmp_dp_hpd_work_func > drm: zynqmp_dp: Add debugfs interface for compliance testing > > Documentation/gpu/drivers.rst | 1 + > Documentation/gpu/zynqmp.rst | 149 ++++++ > MAINTAINERS | 1 + > drivers/gpu/drm/xlnx/zynqmp_dp.c | 846 ++++++++++++++++++++++++++++-- > drivers/gpu/drm/xlnx/zynqmp_kms.c | 2 +- > 5 files changed, 951 insertions(+), 48 deletions(-) > create mode 100644 Documentation/gpu/zynqmp.rst > ping --Sean