Re: [PATCH v6 0/8] drm: zynqmp_dp: IRQ cleanups and debugfs support

2024-10-25 Thread Sean Anderson
Hi Tomi, On 10/3/24 10:53, Sean Anderson wrote: > On 10/2/24 10:50, Tomi Valkeinen wrote: >> Hi, >> >> On 01/10/2024 21:31, Sean Anderson wrote: >>> On 8/9/24 15:35, Sean Anderson wrote: >>>> This series cleans up the zyqnmp_dp IRQ and locking situati

Re: [PATCH v6 0/8] drm: zynqmp_dp: IRQ cleanups and debugfs support

2024-10-03 Thread Sean Anderson
On 10/2/24 10:50, Tomi Valkeinen wrote: > Hi, > > On 01/10/2024 21:31, Sean Anderson wrote: >> 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

Re: [PATCH v6 0/8] drm: zynqmp_dp: IRQ cleanups and debugfs support

2024-10-01 Thread Sean Anderson
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

[PATCH v6 8/8] drm: zynqmp_dp: Add debugfs interface for compliance testing

2024-08-09 Thread Sean Anderson
would be fairly easy to add. Additionally, add some debugfs files for ignoring AUX errors and HPD events, as this can allow testing with equipment that cannot emulate a DPRX. Signed-off-by: Sean Anderson --- (no changes since v2) Changes in v2: - Document debugfs files - Add ignore_aux_errors

[PATCH v6 7/8] drm: zynqmp_dp: Take dp->lock in zynqmp_dp_hpd_work_func

2024-08-09 Thread Sean Anderson
Add a non-locking version of zynqmp_dp_bridge_detect and use it in zynqmp_dp_hpd_work_func so we can take the lock explicitly. This will make it easier to check for hpd_ignore when we add debugfs support. Signed-off-by: Sean Anderson --- (no changes since v3) Changes in v3: - New drivers/gpu

[PATCH v6 6/8] drm: zynqmp_dp: Split off several helper functions

2024-08-09 Thread Sean Anderson
In preparation for supporting compliance testing, split off several helper functions. No functional change intended. Signed-off-by: Sean Anderson Reviewed-by: Laurent Pinchart Reviewed-by: Tomi Valkeinen --- (no changes since v1) drivers/gpu/drm/xlnx/zynqmp_dp.c | 49

[PATCH v6 5/8] drm: zynqmp_dp: Use AUX IRQs instead of polling

2024-08-09 Thread Sean Anderson
Instead of polling the status register for the AUX status, just enable the IRQs and signal a completion. Signed-off-by: Sean Anderson --- (no changes since v3) Changes in v3: - New drivers/gpu/drm/xlnx/zynqmp_dp.c | 35 +++- 1 file changed, 25 insertions(+), 10

[PATCH v6 4/8] drm: zynqmp_dp: Convert to a hard IRQ

2024-08-09 Thread Sean Anderson
Now that all of the sleeping work is done outside of the IRQ, we can convert it to a hard IRQ. Shared IRQs may be triggered even after calling disable_irq, so use free_irq instead which removes our callback altogether. Signed-off-by: Sean Anderson --- Changes in v6: - Fix hang upon driver

[PATCH v6 3/8] drm: zynqmp_dp: Don't retrain the link in our IRQ

2024-08-09 Thread Sean Anderson
Retraining the link can take a while, and might involve waiting for DPCD reads/writes to complete. In preparation for unthreading the IRQ handler, move this into its own work function. Signed-off-by: Sean Anderson --- (no changes since v2) Changes in v2: - Document hpd_irq_work - Split this

[PATCH v6 2/8] drm: zynqmp_dp: Add locking

2024-08-09 Thread Sean Anderson
uration changes so we don't have to do anything tricky. Configuration should never be in the hot path, so I'm not worried about performance. Signed-off-by: Sean Anderson --- (no changes since v2) Changes in v2: - Split off the HPD IRQ work into another commit - Expand the commit messa

[PATCH v6 1/8] drm: zynqmp_kms: Unplug DRM device before removal

2024-08-09 Thread Sean Anderson
for Xilinx ZynqMP DisplayPort Subsystem") Closes: https://lore.kernel.org/dri-devel/4d8f4c9b-2efb-4774-9a37-2f257f79b...@linux.dev/ Signed-off-by: Sean Anderson --- Thanks to Maxime for pointing out the correct function to use here. Changes in v6: - New drivers/gpu/drm/xlnx/zynqmp_kms.c

[PATCH v6 0/8] drm: zynqmp_dp: IRQ cleanups and debugfs support

2024-08-09 Thread Sean Anderson
oducable, 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 th

Re: [PATCH v5 00/10] drm: zynqmp_dp: IRQ cleanups and debugfs support

2024-08-09 Thread Sean Anderson
On 8/8/24 08:46, Tomi Valkeinen wrote: > Hi Sean, > > On 17/06/2024 17:48, Sean Anderson wrote: >> On 6/17/24 03:47, Tomi Valkeinen wrote: >>> Hi Sean, >>> >>> On 03/05/2024 22:29, Sean Anderson wrote: >>>> This series cleans up the zyqnmp_d

Re: [PATCH v5 00/10] drm: zynqmp_dp: IRQ cleanups and debugfs support

2024-06-17 Thread Sean Anderson
On 6/17/24 03:47, Tomi Valkeinen wrote: > Hi Sean, > > On 03/05/2024 22:29, 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 he

Re: [PATCH] drm: zynqmp_dpsub: Fix an error handling path in zynqmp_dpsub_probe()

2024-06-13 Thread Sean Anderson
On 5/20/24 11:05, Sean Anderson wrote: > On 5/20/24 05:40, Christophe JAILLET wrote: >> If zynqmp_dpsub_drm_init() fails, we must undo the previous >> drm_bridge_add() call. >> >> Fixes: be3f3042391d ("drm: zynqmp_dpsub: Always register bridge")

Re: [PATCH v5 00/10] drm: zynqmp_dp: IRQ cleanups and debugfs support

2024-05-31 Thread Sean Anderson
On 5/3/24 15:29, 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

Re: [PATCH] drm: zynqmp_dpsub: Fix an error handling path in zynqmp_dpsub_probe()

2024-05-20 Thread Sean Anderson
+ b/drivers/gpu/drm/xlnx/zynqmp_dpsub.c > @@ -269,6 +269,7 @@ static int zynqmp_dpsub_probe(struct platform_device > *pdev) > return 0; > > err_disp: > + drm_bridge_remove(dpsub->bridge); > zynqmp_disp_remove(dpsub); > err_dp: > zynqmp_dp_remove(dpsub); Reviewed-by: Sean Anderson

Re: [BUG] drm: zynqmp_dp: Lockup in zynqmp_dp_bridge_detect when device is unbound

2024-05-06 Thread Sean Anderson
On 5/6/24 03:35, Laurent Pinchart wrote: > On Mon, May 06, 2024 at 09:29:36AM +0200, Maxime Ripard wrote: >> Hi Laurent, Sean, >> >> On Sat, May 04, 2024 at 03:21:18PM GMT, Laurent Pinchart wrote: >> > On Fri, May 03, 2024 at 05:54:32PM -0400, Sean Anderson wrote:

Re: [BUG] drm: zynqmp_dp: Lockup in zynqmp_dp_bridge_detect when device is unbound

2024-05-06 Thread Sean Anderson
On 5/6/24 07:16, Tomi Valkeinen wrote: > Hi, > > On 04/05/2024 00:54, Sean Anderson wrote: >> Hi, >> >> I have discovered a bug in the displayport driver on drm-misc-next. To >> trigger it, run >> >> echo fd4a.display > /sys/bus/platform/d

[BUG] drm: zynqmp_dp: Lockup in zynqmp_dp_bridge_detect when device is unbound

2024-05-03 Thread Sean Anderson
Hi, I have discovered a bug in the displayport driver on drm-misc-next. To trigger it, run echo fd4a.display > /sys/bus/platform/drivers/zynqmp-dpsub/unbind The system will become unresponsive and (after a bit) splat with a hard LOCKUP. One core will be unresponsive at the first zynqmp_dp_re

[PATCH v5 10/10] drm: zynqmp_dp: Add debugfs interface for compliance testing

2024-05-03 Thread Sean Anderson
would be fairly easy to add. Additionally, add some debugfs files for ignoring AUX errors and HPD events, as this can allow testing with equipment that cannot emulate a DPRX. Signed-off-by: Sean Anderson --- (no changes since v2) Changes in v2: - Document debugfs files - Add ignore_aux_errors

[PATCH v5 09/10] drm: zynqmp_dp: Take dp->lock in zynqmp_dp_hpd_work_func

2024-05-03 Thread Sean Anderson
Add a non-locking version of zynqmp_dp_bridge_detect and use it in zynqmp_dp_hpd_work_func so we can take the lock explicitly. This will make it easier to check for hpd_ignore when we add debugfs support. Signed-off-by: Sean Anderson --- (no changes since v3) Changes in v3: - New drivers/gpu

[PATCH v5 08/10] drm: zynqmp_dp: Split off several helper functions

2024-05-03 Thread Sean Anderson
In preparation for supporting compliance testing, split off several helper functions. No functional change intended. Signed-off-by: Sean Anderson Reviewed-by: Laurent Pinchart Reviewed-by: Tomi Valkeinen --- (no changes since v1) drivers/gpu/drm/xlnx/zynqmp_dp.c | 49

[PATCH v5 07/10] drm: zynqmp_dp: Use AUX IRQs instead of polling

2024-05-03 Thread Sean Anderson
Instead of polling the status register for the AUX status, just enable the IRQs and signal a completion. Signed-off-by: Sean Anderson --- (no changes since v3) Changes in v3: - New drivers/gpu/drm/xlnx/zynqmp_dp.c | 35 +++- 1 file changed, 25 insertions(+), 10

[PATCH v5 06/10] drm: zynqmp_dp: Convert to a hard IRQ

2024-05-03 Thread Sean Anderson
Now that all of the sleeping work is done outside of the IRQ, we can convert it to a hard IRQ. Signed-off-by: Sean Anderson --- (no changes since v3) Changes in v3: - New drivers/gpu/drm/xlnx/zynqmp_dp.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm

[PATCH v5 05/10] drm: zynqmp_dp: Don't retrain the link in our IRQ

2024-05-03 Thread Sean Anderson
Retraining the link can take a while, and might involve waiting for DPCD reads/writes to complete. In preparation for unthreading the IRQ handler, move this into its own work function. Signed-off-by: Sean Anderson --- (no changes since v2) Changes in v2: - Document hpd_irq_work - Split this

[PATCH v5 04/10] drm: zynqmp_dp: Add locking

2024-05-03 Thread Sean Anderson
uration changes so we don't have to do anything tricky. Configuration should never be in the hot path, so I'm not worried about performance. Signed-off-by: Sean Anderson --- (no changes since v2) Changes in v2: - Split off the HPD IRQ work into another commit - Expand the commit messa

[PATCH v5 03/10] drm: zynqmp_dp: Don't delay work

2024-05-03 Thread Sean Anderson
We always call scheduled_delayed_work with no delay, so just use a non-delayed work_struct instead. Signed-off-by: Sean Anderson Reviewed-by: Tomi Valkeinen --- (no changes since v3) Changes in v3: - New drivers/gpu/drm/xlnx/zynqmp_dp.c | 13 ++--- 1 file changed, 6 insertions(+), 7

[PATCH v5 02/10] drm: zynqmp_dp: Rearrange zynqmp_dp for better padding

2024-05-03 Thread Sean Anderson
Sort the members of struct zynqmp_dp to reduce padding necessary for alignment. Signed-off-by: Sean Anderson --- (no changes since v2) Changes in v2: - New drivers/gpu/drm/xlnx/zynqmp_dp.c | 28 ++-- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a

[PATCH v5 00/10] drm: zynqmp_dp: IRQ cleanups and debugfs support

2024-05-03 Thread Sean Anderson
purious build warning - Drop "Optionally ignore DPCD errors" in favor of a debugfs file directly affecting zynqmp_dp_aux_transfer. Sean Anderson (10): drm: zynqmp_kms: Fix AUX bus not getting unregistered drm: zynqmp_dp: Rearrange zynqmp_dp for better padding drm: zynqmp_dp: Don't

[PATCH v5 01/10] drm: zynqmp_kms: Fix AUX bus not getting unregistered

2024-05-03 Thread Sean Anderson
der_cleanup get called before or after drm_atomic_helper_shutdown? Fixes: 2dfd045c8435 ("drm: xlnx: zynqmp_dpsub: Register AUX bus at bridge attach time") Signed-off-by: Sean Anderson --- Changes in v5: - New drivers/gpu/drm/xlnx/zynqmp_kms.c | 12 +--- 1 file changed, 9 i

Re: [PATCH v4 00/13] drm: zynqmp_dp: IRQ cleanups and debugfs support

2024-04-25 Thread Sean Anderson
On 4/24/24 14:54, Tomi Valkeinen wrote: > Hi Sean, > > On 23/04/2024 20:18, 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 he

Re: [PATCH] drm: zynqmp_dpsub: Always register bridge

2024-04-23 Thread Sean Anderson
Hi, On 3/22/24 02:01, Tomi Valkeinen wrote: > Hi, > > On 08/03/2024 22:47, Sean Anderson wrote: >> We must always register the DRM bridge, since zynqmp_dp_hpd_work_func >> calls drm_bridge_hpd_notify, which in turn expects hpd_mutex to be >> initialized. We do this b

[PATCH v4 12/13] drm: zynqmp_dp: Take dp->lock in zynqmp_dp_hpd_work_func

2024-04-23 Thread Sean Anderson
Add a non-locking version of zynqmp_dp_bridge_detect and use it in zynqmp_dp_hpd_work_func so we can take the lock explicitly. This will make it easier to check for hpd_ignore when we add debugfs support. Signed-off-by: Sean Anderson --- (no changes since v3) Changes in v3: - New drivers/gpu

[PATCH v4 13/13] drm: zynqmp_dp: Add debugfs interface for compliance testing

2024-04-23 Thread Sean Anderson
would be fairly easy to add. Additionally, add some debugfs files for ignoring AUX errors and HPD events, as this can allow testing with equipment that cannot emulate a DPRX. Signed-off-by: Sean Anderson --- (no changes since v2) Changes in v2: - Document debugfs files - Add ignore_aux_errors

[PATCH v4 05/13] drm: zynqmp_dp: Rearrange zynqmp_dp for better padding

2024-04-23 Thread Sean Anderson
Sort the members of struct zynqmp_dp to reduce padding necessary for alignment. Signed-off-by: Sean Anderson --- (no changes since v2) Changes in v2: - New drivers/gpu/drm/xlnx/zynqmp_dp.c | 28 ++-- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a

[PATCH v4 00/13] drm: zynqmp_dp: IRQ cleanups and debugfs support

2024-04-23 Thread Sean Anderson
;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 t

[PATCH v4 09/13] drm: zynqmp_dp: Convert to a hard IRQ

2024-04-23 Thread Sean Anderson
Now that all of the sleeping work is done outside of the IRQ, we can convert it to a hard IRQ. Signed-off-by: Sean Anderson --- (no changes since v3) Changes in v3: - New drivers/gpu/drm/xlnx/zynqmp_dp.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm

[PATCH v4 10/13] drm: zynqmp_dp: Use AUX IRQs instead of polling

2024-04-23 Thread Sean Anderson
Instead of polling the status register for the AUX status, just enable the IRQs and signal a completion. Signed-off-by: Sean Anderson --- (no changes since v3) Changes in v3: - New drivers/gpu/drm/xlnx/zynqmp_dp.c | 35 +++- 1 file changed, 25 insertions(+), 10

[PATCH v4 08/13] drm: zynqmp_dp: Don't retrain the link in our IRQ

2024-04-23 Thread Sean Anderson
Retraining the link can take a while, and might involve waiting for DPCD reads/writes to complete. In preparation for unthreading the IRQ handler, move this into its own work function. Signed-off-by: Sean Anderson --- (no changes since v2) Changes in v2: - Document hpd_irq_work - Split this

[PATCH v4 02/13] drm: xlnx: Fix kerneldoc

2024-04-23 Thread Sean Anderson
Fix a few errors in the kerneldoc. Mostly this addresses missing/renamed members. Signed-off-by: Sean Anderson Reviewed-by: Tomi Valkeinen --- (no changes since v3) Changes in v3: - Split off documentation for base pointers to previous commit Changes in v2: - New drivers/gpu/drm/xlnx

[PATCH v4 11/13] drm: zynqmp_dp: Split off several helper functions

2024-04-23 Thread Sean Anderson
In preparation for supporting compliance testing, split off several helper functions. No functional change intended. Signed-off-by: Sean Anderson Reviewed-by: Laurent Pinchart Reviewed-by: Tomi Valkeinen --- (no changes since v1) drivers/gpu/drm/xlnx/zynqmp_dp.c | 49

[PATCH v4 07/13] drm: zynqmp_dp: Add locking

2024-04-23 Thread Sean Anderson
uration changes so we don't have to do anything tricky. Configuration should never be in the hot path, so I'm not worried about performance. Signed-off-by: Sean Anderson --- (no changes since v2) Changes in v2: - Split off the HPD IRQ work into another commit - Expand the commit messa

[PATCH v4 06/13] drm: zynqmp_dp: Don't delay work

2024-04-23 Thread Sean Anderson
We always call scheduled_delayed_work with no delay, so just use a non-delayed work_struct instead. Signed-off-by: Sean Anderson Reviewed-by: Tomi Valkeinen --- (no changes since v3) Changes in v3: - New drivers/gpu/drm/xlnx/zynqmp_dp.c | 13 ++--- 1 file changed, 6 insertions(+), 7

[PATCH v4 04/13] drm: zynqmp_dp: Adjust training values per-lane

2024-04-23 Thread Sean Anderson
The feedback we get from the DPRX is per-lane. Make changes using this information, instead of picking the maximum values from all lanes. This results in more-consistent training on marginal links. Signed-off-by: Sean Anderson Reviewed-by: Tomi Valkeinen --- (no changes since v1) drivers/gpu

[PATCH v4 01/13] drm: xlnx: Store base pointers in zynqmp_disp directly

2024-04-23 Thread Sean Anderson
The blend, avbuf, and audio members of zynqmp_disp are anonymous structs with only one member each. This is rather pointless, so move the members up a level. Signed-off-by: Sean Anderson Reviewed-by: Tomi Valkeinen --- (no changes since v3) Changes in v3: - New drivers/gpu/drm/xlnx

[PATCH v4 03/13] drm: zynqmp_dp: Downgrade log level for aux retries message

2024-04-23 Thread Sean Anderson
Enable this message for verbose debugging only as it is otherwise printed after every AUX message, quickly filling the log buffer. Signed-off-by: Sean Anderson Reviewed-by: Laurent Pinchart Reviewed-by: Tomi Valkeinen --- (no changes since v1) drivers/gpu/drm/xlnx/zynqmp_dp.c | 2 +- 1 file

Re: [PATCH v3 00/13] drm: zynqmp_dp: IRQ cleanups and debugfs support

2024-04-23 Thread Sean Anderson
On 4/23/24 11:30, Tomi Valkeinen wrote: > On 23/04/2024 17:59, Sean Anderson wrote: >> 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 s

Re: [PATCH v3 00/13] drm: zynqmp_dp: IRQ cleanups and debugfs support

2024-04-23 Thread Sean Anderson
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 he

Re: [PATCH v3 00/13] drm: zynqmp_dp: IRQ cleanups and debugfs support

2024-04-22 Thread Sean Anderson
On 4/22/24 14: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

[PATCH v3 12/13] drm: zynqmp_dp: Take dp->lock in zynqmp_dp_hpd_work_func

2024-04-22 Thread Sean Anderson
Add a non-locking version of zynqmp_dp_bridge_detect and use it in zynqmp_dp_hpd_work_func so we can take the lock explicitly. This will make it easier to check for hpd_ignore when we add debugfs support. Signed-off-by: Sean Anderson --- Changes in v3: - New drivers/gpu/drm/xlnx/zynqmp_dp.c

[PATCH v3 06/13] drm: zynqmp_dp: Don't delay work

2024-04-22 Thread Sean Anderson
We always call scheduled_delayed_work with no delay, so just use a non-delayed work_struct instead. Signed-off-by: Sean Anderson --- Changes in v3: - New drivers/gpu/drm/xlnx/zynqmp_dp.c | 13 ++--- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/drivers/gpu/drm/xlnx

[PATCH v3 10/13] drm: zynqmp_dp: Use AUX IRQs instead of polling

2024-04-22 Thread Sean Anderson
Instead of polling the status register for the AUX status, just enable the IRQs and signal a completion. Signed-off-by: Sean Anderson --- Changes in v3: - New drivers/gpu/drm/xlnx/zynqmp_dp.c | 35 +++- 1 file changed, 25 insertions(+), 10 deletions(-) diff --git

[PATCH v3 13/13] drm: zynqmp_dp: Add debugfs interface for compliance testing

2024-04-22 Thread Sean Anderson
would be fairly easy to add. Additionally, add some debugfs files for ignoring AUX errors and HPD events, as this can allow testing with equipment that cannot emulate a DPRX. Signed-off-by: Sean Anderson --- (no changes since v2) Changes in v2: - Document debugfs files - Add ignore_aux_errors

[PATCH v3 11/13] drm: zynqmp_dp: Split off several helper functions

2024-04-22 Thread Sean Anderson
In preparation for supporting compliance testing, split off several helper functions. No functional change intended. Signed-off-by: Sean Anderson Reviewed-by: Laurent Pinchart Reviewed-by: Tomi Valkeinen --- (no changes since v1) drivers/gpu/drm/xlnx/zynqmp_dp.c | 49

[PATCH v3 07/13] drm: zynqmp_dp: Add locking

2024-04-22 Thread Sean Anderson
uration changes so we don't have to do anything tricky. Configuration should never be in the hot path, so I'm not worried about performance. Signed-off-by: Sean Anderson --- (no changes since v2) Changes in v2: - Split off the HPD IRQ work into another commit - Expand the commit messa

[PATCH v3 05/13] drm: zynqmp_dp: Rearrange zynqmp_dp for better padding

2024-04-22 Thread Sean Anderson
Sort the members of struct zynqmp_dp to reduce padding necessary for alignment. Signed-off-by: Sean Anderson --- (no changes since v2) Changes in v2: - New drivers/gpu/drm/xlnx/zynqmp_dp.c | 28 ++-- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a

[PATCH v3 09/13] drm: zynqmp_dp: Convert to a hard IRQ

2024-04-22 Thread Sean Anderson
Now that all of the sleeping work is done outside of the IRQ, we can convert it to a hard IRQ. Signed-off-by: Sean Anderson --- Changes in v3: - New drivers/gpu/drm/xlnx/zynqmp_dp.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/xlnx/zynqmp_dp.c b

[PATCH v3 04/13] drm: zynqmp_dp: Adjust training values per-lane

2024-04-22 Thread Sean Anderson
The feedback we get from the DPRX is per-lane. Make changes using this information, instead of picking the maximum values from all lanes. This results in more-consistent training on marginal links. Signed-off-by: Sean Anderson Reviewed-by: Tomi Valkeinen --- (no changes since v1) drivers/gpu

[PATCH v3 08/13] drm: zynqmp_dp: Don't retrain the link in our IRQ

2024-04-22 Thread Sean Anderson
Retraining the link can take a while, and might involve waiting for DPCD reads/writes to complete. In preparation for unthreading the IRQ handler, move this into its own work function. Signed-off-by: Sean Anderson --- (no changes since v2) Changes in v2: - Document hpd_irq_work - Split this

[PATCH v3 03/13] drm: zynqmp_dp: Downgrade log level for aux retries message

2024-04-22 Thread Sean Anderson
Enable this message for verbose debugging only as it is otherwise printed after every AUX message, quickly filling the log buffer. Signed-off-by: Sean Anderson Reviewed-by: Laurent Pinchart Reviewed-by: Tomi Valkeinen --- (no changes since v1) drivers/gpu/drm/xlnx/zynqmp_dp.c | 2 +- 1 file

[PATCH v3 00/13] drm: zynqmp_dp: IRQ cleanups and debugfs support

2024-04-22 Thread Sean Anderson
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:

[PATCH v3 02/13] drm: xlnx: Fix kerneldoc

2024-04-22 Thread Sean Anderson
Fix a few errors in the kerneldoc. Mostly this addresses missing/renamed members. Signed-off-by: Sean Anderson --- Changes in v3: - Split off documentation for base pointers to previous commit Changes in v2: - New drivers/gpu/drm/xlnx/zynqmp_dpsub.h | 1 + drivers/gpu/drm/xlnx/zynqmp_kms.h

[PATCH v3 01/13] drm: xlnx: Store base pointers in zynqmp_disp directly

2024-04-22 Thread Sean Anderson
The blend, avbuf, and audio members of zynqmp_disp are anonymous structs with only one member each. This is rather pointless, so move the members up a level. Signed-off-by: Sean Anderson --- Changes in v3: - New drivers/gpu/drm/xlnx/zynqmp_disp.c | 44 +- 1 file

Re: [PATCH v2 5/8] drm: zynqmp_dp: Don't retrain the link in our IRQ

2024-03-22 Thread Sean Anderson
On 3/22/24 14:09, Tomi Valkeinen wrote: > On 22/03/2024 18:18, Sean Anderson wrote: >> On 3/22/24 01:32, Tomi Valkeinen wrote: >>> On 21/03/2024 21:17, Sean Anderson wrote: >>>> On 3/21/24 15:08, Tomi Valkeinen wrote: >>>>> On 21/03/2024 20:01, Sean

Re: [PATCH v2 5/8] drm: zynqmp_dp: Don't retrain the link in our IRQ

2024-03-22 Thread Sean Anderson
On 3/22/24 01:32, Tomi Valkeinen wrote: > On 21/03/2024 21:17, Sean Anderson wrote: >> On 3/21/24 15:08, Tomi Valkeinen wrote: >>> On 21/03/2024 20:01, Sean Anderson wrote: >>>> On 3/21/24 13:25, Tomi Valkeinen wrote: >>>>> On 21/03/2024 17:52, Sean

Re: [PATCH v2 1/8] drm: xlnx: Fix kerneldoc

2024-03-22 Thread Sean Anderson
On 3/22/24 01:50, Tomi Valkeinen wrote: > On 21/03/2024 17:33, Sean Anderson wrote: >> On 3/20/24 02:05, Randy Dunlap wrote: >>> >>> >>> On 3/19/24 22:42, Tomi Valkeinen wrote: >>>> On 20/03/2024 00:51, Sean Anderson wrote: >>>>> F

Re: [PATCH v2 5/8] drm: zynqmp_dp: Don't retrain the link in our IRQ

2024-03-21 Thread Sean Anderson
On 3/21/24 15:08, Tomi Valkeinen wrote: > On 21/03/2024 20:01, Sean Anderson wrote: >> On 3/21/24 13:25, Tomi Valkeinen wrote: >>> On 21/03/2024 17:52, Sean Anderson wrote: >>>> On 3/20/24 02:53, Tomi Valkeinen wrote: >>>>> On 20/03/2024 00:51, Sean A

Re: [PATCH v2 5/8] drm: zynqmp_dp: Don't retrain the link in our IRQ

2024-03-21 Thread Sean Anderson
On 3/21/24 13:25, Tomi Valkeinen wrote: > On 21/03/2024 17:52, Sean Anderson wrote: >> On 3/20/24 02:53, Tomi Valkeinen wrote: >>> On 20/03/2024 00:51, Sean Anderson wrote: >>>> Retraining the link can take a while, and might involve waiting for >>>&

Re: [PATCH v2 8/8] drm: zynqmp_dp: Add debugfs interface for compliance testing

2024-03-21 Thread Sean Anderson
On 3/21/24 12:31, Tomi Valkeinen wrote: > On 21/03/2024 18:08, Sean Anderson wrote: >> On 3/20/24 03:49, Tomi Valkeinen wrote: >>> On 20/03/2024 00:51, Sean Anderson wrote: >>> >>>> +/** >>>> + * enum test_pattern - Test patterns for test testing

Re: [PATCH v2 8/8] drm: zynqmp_dp: Add debugfs interface for compliance testing

2024-03-21 Thread Sean Anderson
On 3/20/24 03:49, Tomi Valkeinen wrote: > On 20/03/2024 00:51, Sean Anderson wrote: > >> +/** >> + * enum test_pattern - Test patterns for test testing > > "for test testing"? =) > >> @@ -1655,6 +2321,9 @@ static void zynqmp_dp_hpd_irq_work_func(struc

Re: [PATCH v2 5/8] drm: zynqmp_dp: Don't retrain the link in our IRQ

2024-03-21 Thread Sean Anderson
On 3/20/24 02:53, Tomi Valkeinen wrote: > On 20/03/2024 00:51, Sean Anderson wrote: >> Retraining the link can take a while, and might involve waiting for >> DPCD reads/writes to complete. This is inappropriate for an IRQ handler. >> Just schedule this work for later completi

Re: [PATCH v2 4/8] drm: zynqmp_dp: Rearrange zynqmp_dp for better padding

2024-03-21 Thread Sean Anderson
On 3/20/24 02:14, Tomi Valkeinen wrote: > On 20/03/2024 00:51, Sean Anderson wrote: >> Sort the members of struct zynqmp_dp to reduce padding necessary for >> alignment. >> >> Signed-off-by: Sean Anderson >> --- >> >> Changes in v2: >>

Re: [PATCH v2 3/8] drm: zynqmp_dp: Adjust training values per-lane

2024-03-21 Thread Sean Anderson
On 3/20/24 01:57, Tomi Valkeinen wrote: > On 20/03/2024 00:51, Sean Anderson wrote: >> The feedback we get from the DPRX is per-lane. Make changes using this >> information, instead of picking the maximum values from all lanes. This >> results in more-consistent train

Re: [PATCH v2 1/8] drm: xlnx: Fix kerneldoc

2024-03-21 Thread Sean Anderson
On 3/20/24 02:05, Randy Dunlap wrote: > > > On 3/19/24 22:42, Tomi Valkeinen wrote: >> On 20/03/2024 00:51, Sean Anderson wrote: >>> Fix a few errors in the kerneldoc. Mostly this addresses missing/renamed >>> members. >>> >>> Signed-o

Re: [PATCH v2 0/8] drm: zynqmp_dp: Misc. patches and debugfs support

2024-03-19 Thread Sean Anderson
On 3/19/24 18:51, Sean Anderson wrote: > This series adds debugfs support for the zynqmp_dp driver. The intent is > to enable compliance testing or to help debug signal-integrity issues. > > The first four patches are general improvements (and could be applied > independently),

[PATCH v2 8/8] drm: zynqmp_dp: Add debugfs interface for compliance testing

2024-03-19 Thread Sean Anderson
would be fairly easy to add. Additionally, add some debugfs files for ignoring AUX errors and HPD events, as this can allow testing with equipment that cannot emulate a DPRX. Signed-off-by: Sean Anderson --- Changes in v2: - Document debugfs files - Add ignore_aux_errors and ignore_hpd debugfs

[PATCH v2 6/8] drm: zynqmp_dp: Add locking

2024-03-19 Thread Sean Anderson
uration changes so we don't have to do anything tricky. Configuration should never be in the hot path, so I'm not worried about performance. Signed-off-by: Sean Anderson --- Changes in v2: - Split off the HPD IRQ work into another commit - Expand the commit message drivers/gpu/

[PATCH v2 5/8] drm: zynqmp_dp: Don't retrain the link in our IRQ

2024-03-19 Thread Sean Anderson
Retraining the link can take a while, and might involve waiting for DPCD reads/writes to complete. This is inappropriate for an IRQ handler. Just schedule this work for later completion. This is racy, but will be fixed in the next commit. Signed-off-by: Sean Anderson --- Actually, on second look

[PATCH v2 4/8] drm: zynqmp_dp: Rearrange zynqmp_dp for better padding

2024-03-19 Thread Sean Anderson
Sort the members of struct zynqmp_dp to reduce padding necessary for alignment. Signed-off-by: Sean Anderson --- Changes in v2: - New drivers/gpu/drm/xlnx/zynqmp_dp.c | 28 ++-- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/drivers/gpu/drm/xlnx

[PATCH v2 7/8] drm: zynqmp_dp: Split off several helper functions

2024-03-19 Thread Sean Anderson
In preparation for supporting compliance testing, split off several helper functions. No functional change intended. Signed-off-by: Sean Anderson Reviewed-by: Laurent Pinchart --- (no changes since v1) drivers/gpu/drm/xlnx/zynqmp_dp.c | 49 ++-- 1 file changed, 34

[PATCH v2 0/8] drm: zynqmp_dp: Misc. patches and debugfs support

2024-03-19 Thread Sean Anderson
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: xlnx: Fix kerneldoc drm: zynqmp_dp: Downgrade log level for aux retries message drm: zynqmp_dp: Adjust training value

[PATCH v2 3/8] drm: zynqmp_dp: Adjust training values per-lane

2024-03-19 Thread Sean Anderson
The feedback we get from the DPRX is per-lane. Make changes using this information, instead of picking the maximum values from all lanes. This results in more-consistent training on marginal links. Signed-off-by: Sean Anderson --- (no changes since v1) drivers/gpu/drm/xlnx/zynqmp_dp.c | 23

[PATCH v2 2/8] drm: zynqmp_dp: Downgrade log level for aux retries message

2024-03-19 Thread Sean Anderson
Enable this message for verbose debugging only as it is otherwise printed after every AUX message, quickly filling the log buffer. Signed-off-by: Sean Anderson Reviewed-by: Laurent Pinchart --- (no changes since v1) drivers/gpu/drm/xlnx/zynqmp_dp.c | 2 +- 1 file changed, 1 insertion(+), 1

[PATCH v2 1/8] drm: xlnx: Fix kerneldoc

2024-03-19 Thread Sean Anderson
Fix a few errors in the kerneldoc. Mostly this addresses missing/renamed members. Signed-off-by: Sean Anderson --- Changes in v2: - New drivers/gpu/drm/xlnx/zynqmp_disp.c | 6 +++--- drivers/gpu/drm/xlnx/zynqmp_dpsub.h | 1 + drivers/gpu/drm/xlnx/zynqmp_kms.h | 4 ++-- 3 files changed, 6

Re: [PATCH 6/6] drm: zynqmp_dp: Add debugfs interface for compliance testing

2024-03-18 Thread Sean Anderson
On 3/18/24 13:50, Laurent Pinchart wrote: > On Mon, Mar 18, 2024 at 11:06:40AM -0400, Sean Anderson wrote: >> On 3/16/24 06:14, kernel test robot wrote: >> > Hi Sean, >> > >> > kernel test robot noticed the following build warnings: >> > >> >

Re: [PATCH 5/6] drm: zynqmp_dp: Optionally ignore DPCD errors

2024-03-18 Thread Sean Anderson
On 3/18/24 13:47, Laurent Pinchart wrote: > Hi Sean, > > Thank you for the patch. > > On Fri, Mar 15, 2024 at 07:09:15PM -0400, Sean Anderson wrote: >> When testing, it's convenient to be able to ignore DPCD errors if there >> is test equipment which can't e

Re: [PATCH 3/6] drm: zynqmp_dp: Add locking

2024-03-18 Thread Sean Anderson
On 3/18/24 13:59, Laurent Pinchart wrote: > Hi Sean, > > On Mon, Mar 18, 2024 at 01:29:12PM -0400, Sean Anderson wrote: >> On 3/18/24 13:16, Laurent Pinchart wrote: >> > On Fri, Mar 15, 2024 at 07:09:13PM -0400, Sean Anderson wrote: >> >> Add some lockin

Re: [PATCH 3/6] drm: zynqmp_dp: Add locking

2024-03-18 Thread Sean Anderson
On 3/18/24 13:16, Laurent Pinchart wrote: > Hi Sean, > > Thank you for the patch. > > On Fri, Mar 15, 2024 at 07:09:13PM -0400, Sean Anderson wrote: >> Add some locking, since none is provided by the drm subsystem. This will > > That's not quite right,

Re: [PATCH 6/6] drm: zynqmp_dp: Add debugfs interface for compliance testing

2024-03-18 Thread Sean Anderson
On 3/16/24 13:56, Dmitry Baryshkov wrote: > On Sat, 16 Mar 2024 at 01:09, Sean Anderson wrote: >> >> Add a debugfs interface for exercising the various test modes supported >> by the DisplayPort controller. This allows performing compliance >> testing, or performing si

Re: [PATCH 3/6] drm: zynqmp_dp: Add locking

2024-03-18 Thread Sean Anderson
is applied to the wrong git tree, kindly drop us a note. > And when submitting patch, we suggest to use '--base' as documented in > https://git-scm.com/docs/git-format-patch#_base_tree_information] > > url: > https://github.com/intel-lab-lkp/linux/commits/Sean-Anderson/

Re: [PATCH 6/6] drm: zynqmp_dp: Add debugfs interface for compliance testing

2024-03-18 Thread Sean Anderson
kindly drop us a note. > And when submitting patch, we suggest to use '--base' as documented in > https://git-scm.com/docs/git-format-patch#_base_tree_information] > > url: > https://github.com/intel-lab-lkp/linux/commits/Sean-Anderson/drm-zynqmp_dp-Downgrade-log-level-

Re: [PATCH 6/6] drm: zynqmp_dp: Add debugfs interface for compliance testing

2024-03-18 Thread Sean Anderson
kindly drop us a note. > And when submitting patch, we suggest to use '--base' as documented in > https://git-scm.com/docs/git-format-patch#_base_tree_information] > > url: > https://github.com/intel-lab-lkp/linux/commits/Sean-Anderson/drm-zynqmp_dp-Downgrade-log-level-

[PATCH 5/6] drm: zynqmp_dp: Optionally ignore DPCD errors

2024-03-15 Thread Sean Anderson
When testing, it's convenient to be able to ignore DPCD errors if there is test equipment which can't emulate a DPRX connected to the output. Add some (currently-unused) options to ignore these errors and just reconfigure our internal registers as we usually would. Signed-off-by: Sea

[PATCH 3/6] drm: zynqmp_dp: Add locking

2024-03-15 Thread Sean Anderson
Add some locking, since none is provided by the drm subsystem. This will prevent the IRQ/workers/bridge API calls from stepping on each other's toes. Signed-off-by: Sean Anderson --- drivers/gpu/drm/xlnx/zynqmp_dp.c | 59 +++- 1 file changed, 42 insertions(+

[PATCH 2/6] drm: zynqmp_dp: Adjust training values per-lane

2024-03-15 Thread Sean Anderson
The feedback we get from the DPRX is per-lane. Make changes using this information, instead of picking the maximum values from all lanes. This results in more-consistent training on marginal links. Signed-off-by: Sean Anderson --- drivers/gpu/drm/xlnx/zynqmp_dp.c | 23

[PATCH 6/6] drm: zynqmp_dp: Add debugfs interface for compliance testing

2024-03-15 Thread Sean Anderson
would be fairly easy to add. Signed-off-by: Sean Anderson --- drivers/gpu/drm/xlnx/zynqmp_dp.c | 591 ++- 1 file changed, 590 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/xlnx/zynqmp_dp.c b/drivers/gpu/drm/xlnx/zynqmp_dp.c index 040f7b88ee51

[PATCH 4/6] drm: zynqmp_dp: Split off several helper functions

2024-03-15 Thread Sean Anderson
In preparation for supporting compliance testing, split off several helper functions. No functional change intended. Signed-off-by: Sean Anderson --- drivers/gpu/drm/xlnx/zynqmp_dp.c | 49 +--- 1 file changed, 33 insertions(+), 16 deletions(-) diff --git a/drivers

[PATCH 1/6] drm: zynqmp_dp: Downgrade log level for aux retries message

2024-03-15 Thread Sean Anderson
Enable this message for verbose debugging only as it is otherwise printed after every AUX message, quickly filling the log buffer. Signed-off-by: Sean Anderson --- drivers/gpu/drm/xlnx/zynqmp_dp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/xlnx

[PATCH 0/6] drm: zynqmp_dp: Misc. patches and debugfs support

2024-03-15 Thread Sean Anderson
This series adds debugfs support for the zynqmp_dp driver. The intent is to enable compliance testing or to help debug signal-integrity issues. The first three patches are general improvements (and could be applied independently), while the last three add debugfs support. Sean Anderson (6

  1   2   >