On 4/23/24 09:33, Tomi Valkeinen wrote: > Hi Sean, > > On 22/04/2024 21:45, 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. >> >> Last time 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. > > What is the base for this series? I'm having trouble applying it. > > I managed to mostly apply it, but I see the board hang when I unload the modules. I didn't debug it as it might as well be caused by my conflict resolution. The base is v6.8-rc1, but it should probably be v6.9. I can rebase and resend. --Sean >> Changes in v3: >> - Store base pointers in zynqmp_disp directly >> - Don't delay work >> - Convert to a hard IRQ >> - Use AUX IRQs instead of polling >> - Take dp->lock in zynqmp_dp_hpd_work_func >> >> Changes in v2: >> - Fix kerneldoc >> - Rearrange zynqmp_dp for better padding >> - 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 (13): >> drm: xlnx: Store base pointers in zynqmp_disp directly >> drm: xlnx: Fix kerneldoc >> drm: zynqmp_dp: Downgrade log level for aux retries message >> drm: zynqmp_dp: Adjust training values per-lane >> drm: zynqmp_dp: Rearrange zynqmp_dp for better padding >> drm: zynqmp_dp: Don't delay work >> 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_disp.c | 44 +- >> drivers/gpu/drm/xlnx/zynqmp_dp.c | 909 +++++++++++++++++++++++++--- >> drivers/gpu/drm/xlnx/zynqmp_dpsub.h | 1 + >> drivers/gpu/drm/xlnx/zynqmp_kms.h | 4 +- >> 7 files changed, 1000 insertions(+), 109 deletions(-) >> create mode 100644 Documentation/gpu/zynqmp.rst >> >