mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/
synced 2025-04-19 20:58:31 +09:00

Fix two kernel doc warnings introduced by the recent DP audio patch: - Add a doc line for the new "audio" field - Remove a reference to zynqmp_dpsub.c from zynqmp.rst, as the .c file no longer has structured comments Fixes: 3ec5c1579305 ("drm: xlnx: zynqmp_dpsub: Add DP audio support") Closes: https://lore.kernel.org/all/20241220154208.720d990b@canb.auug.org.au/ Reviewed-by: Vishal Sagar <vishal.sagar@amd.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com> Link: https://patchwork.freedesktop.org/patch/msgid/20241220-xilinx-dp-audio-doc-fix-v1-1-cc488996e463@ideasonboard.com (cherry picked from commit 96b5d2e807f667320c66f41ddc1c473023a73ab2) Signed-off-by: Maxime Ripard <mripard@kernel.org>
148 lines
4.7 KiB
ReStructuredText
148 lines
4.7 KiB
ReStructuredText
.. SPDX-License-Identifier: GPL-2.0+
|
|
|
|
===============================================
|
|
Xilinx ZynqMP Ultrascale+ DisplayPort Subsystem
|
|
===============================================
|
|
|
|
This subsystem handles DisplayPort video and audio output on the ZynqMP. It
|
|
supports in-memory framebuffers with the DisplayPort DMA controller
|
|
(xilinx-dpdma), as well as "live" video and audio from the programmable logic
|
|
(PL). This subsystem can perform several transformations, including color space
|
|
conversion, alpha blending, and audio mixing, although not all features are
|
|
currently supported.
|
|
|
|
debugfs
|
|
-------
|
|
|
|
To support debugging and compliance testing, several test modes can be enabled
|
|
though debugfs. The following files in /sys/kernel/debug/dri/X/DP-1/test/
|
|
control the DisplayPort test modes:
|
|
|
|
active:
|
|
Writing a 1 to this file will activate test mode, and writing a 0 will
|
|
deactivate test mode. Writing a 1 or 0 when the test mode is already
|
|
active/inactive will re-activate/re-deactivate test mode. When test
|
|
mode is inactive, changes made to other files will have no (immediate)
|
|
effect, although the settings will be saved for when test mode is
|
|
activated. When test mode is active, changes made to other files will
|
|
apply immediately.
|
|
|
|
custom:
|
|
Custom test pattern value
|
|
|
|
downspread:
|
|
Enable/disable clock downspreading (spread-spectrum clocking) by
|
|
writing 1/0
|
|
|
|
enhanced:
|
|
Enable/disable enhanced framing
|
|
|
|
ignore_aux_errors:
|
|
Ignore AUX errors when set to 1. Writes to this file take effect
|
|
immediately (regardless of whether test mode is active) and affect all
|
|
AUX transfers.
|
|
|
|
ignore_hpd:
|
|
Ignore hotplug events (such as cable removals or monitor link
|
|
retraining requests) when set to 1. Writes to this file take effect
|
|
immediately (regardless of whether test mode is active).
|
|
|
|
laneX_preemphasis:
|
|
Preemphasis from 0 (lowest) to 2 (highest) for lane X
|
|
|
|
laneX_swing:
|
|
Voltage swing from 0 (lowest) to 3 (highest) for lane X
|
|
|
|
lanes:
|
|
Number of lanes to use (1, 2, or 4)
|
|
|
|
pattern:
|
|
Test pattern. May be one of:
|
|
|
|
video
|
|
Use regular video input
|
|
|
|
symbol-error
|
|
Symbol error measurement pattern
|
|
|
|
prbs7
|
|
Output of the PRBS7 (x^7 + x^6 + 1) polynomial
|
|
|
|
80bit-custom
|
|
A custom 80-bit pattern
|
|
|
|
cp2520
|
|
HBR2 compliance eye pattern
|
|
|
|
tps1
|
|
Link training symbol pattern TPS1 (/D10.2/)
|
|
|
|
tps2
|
|
Link training symbol pattern TPS2
|
|
|
|
tps3
|
|
Link training symbol pattern TPS3 (for HBR2)
|
|
|
|
rate:
|
|
Rate in hertz. One of
|
|
|
|
* 5400000000 (HBR2)
|
|
* 2700000000 (HBR)
|
|
* 1620000000 (RBR)
|
|
|
|
You can dump the displayport test settings with the following command::
|
|
|
|
for prop in /sys/kernel/debug/dri/1/DP-1/test/*; do
|
|
printf '%-17s ' ${prop##*/}
|
|
if [ ${prop##*/} = custom ]; then
|
|
hexdump -C $prop | head -1
|
|
else
|
|
cat $prop
|
|
fi
|
|
done
|
|
|
|
The output could look something like::
|
|
|
|
active 1
|
|
custom 00000000 00 00 00 00 00 00 00 00 00 00 |..........|
|
|
downspread 0
|
|
enhanced 1
|
|
ignore_aux_errors 1
|
|
ignore_hpd 1
|
|
lane0_preemphasis 0
|
|
lane0_swing 3
|
|
lane1_preemphasis 0
|
|
lane1_swing 3
|
|
lanes 2
|
|
pattern prbs7
|
|
rate 1620000000
|
|
|
|
The recommended test procedure is to connect the board to a monitor,
|
|
configure test mode, activate test mode, and then disconnect the cable
|
|
and connect it to your test equipment of choice. For example, one
|
|
sequence of commands could be::
|
|
|
|
echo 1 > /sys/kernel/debug/dri/1/DP-1/test/enhanced
|
|
echo tps1 > /sys/kernel/debug/dri/1/DP-1/test/pattern
|
|
echo 1620000000 > /sys/kernel/debug/dri/1/DP-1/test/rate
|
|
echo 1 > /sys/kernel/debug/dri/1/DP-1/test/ignore_aux_errors
|
|
echo 1 > /sys/kernel/debug/dri/1/DP-1/test/ignore_hpd
|
|
echo 1 > /sys/kernel/debug/dri/1/DP-1/test/active
|
|
|
|
at which point the cable could be disconnected from the monitor.
|
|
|
|
Internals
|
|
---------
|
|
|
|
.. kernel-doc:: drivers/gpu/drm/xlnx/zynqmp_disp.h
|
|
|
|
.. kernel-doc:: drivers/gpu/drm/xlnx/zynqmp_dpsub.h
|
|
|
|
.. kernel-doc:: drivers/gpu/drm/xlnx/zynqmp_kms.h
|
|
|
|
.. kernel-doc:: drivers/gpu/drm/xlnx/zynqmp_disp.c
|
|
|
|
.. kernel-doc:: drivers/gpu/drm/xlnx/zynqmp_dp.c
|
|
|
|
.. kernel-doc:: drivers/gpu/drm/xlnx/zynqmp_kms.c
|