========================Display Core Debug tools========================DC Visual Confirmation======================Display core provides a feature named visual confirmation, which is a set ofbars added at the scanout time by the driver to convey some specificinformation. In general, you can enable this debug option by using:: echo <N> > /sys/kernel/debug/dri/0/amdgpu_dm_visual_confirmWhere `N` is an integer number for some specific scenarios that the developerwants to enable, you will see some of these debug cases in the followingsubsection.Multiple Planes Debug---------------------If you want to enable or debug multiple planes in a specific user-spaceapplication, you can leverage a debug feature named visual confirm. Forenabling it, you will need:: echo 1 > /sys/kernel/debug/dri/0/amdgpu_dm_visual_confirmYou need to reload your GUI to see the visual confirmation. When the planeconfiguration changes or a full update occurs there will be a colored bar atthe bottom of each hardware plane being drawn on the screen.* The color indicates the format - For example, red is AR24 and green is NV12* The height of the bar indicates the index of the plane* Pipe split can be observed if there are two bars with a difference in height covering the same planeConsider the video playback case in which a video is played in a specificplane, and the desktop is drawn in another plane. The video plane shouldfeature one or two green bars at the bottom of the video depending on pipesplit configuration.* There should **not** be any visual corruption* There should **not** be any underflow or screen flashes* There should **not** be any black screens* There should **not** be any cursor corruption* Multiple plane **may** be briefly disabled during window transitions or resizing but should come back after the action has finishedPipe Split Debug----------------Sometimes we need to debug if DCN is splitting pipes correctly, and visualconfirmation is also handy for this case. Similar to the MPO case, you can usethe below command to enable visual confirmation:: echo 1 > /sys/kernel/debug/dri/0/amdgpu_dm_visual_confirmIn this case, if you have a pipe split, you will see one small red bar at thebottom of the display covering the entire display width and another barcovering the second pipe. In other words, you will see a bit high bar in thesecond pipe.DTN Debug=========DC (DCN) provides an extensive log that dumps multiple details from ourhardware configuration. Via debugfs, you can capture those status values byusing Display Test Next (DTN) log, which can be captured via debugfs by using:: cat /sys/kernel/debug/dri/0/amdgpu_dm_dtn_logSince this log is updated accordingly with DCN status, you can also follow thechange in real-time by using something like:: sudo watch -d cat /sys/kernel/debug/dri/0/amdgpu_dm_dtn_logWhen reporting a bug related to DC, consider attaching this log before andafter you reproduce the bug.
========================
Display Core Debug tools
========================
DC Visual Confirmation
======================
Display core provides a feature named visual confirmation, which is a set of
bars added at the scanout time by the driver to convey some specific
information. In general, you can enable this debug option by using::
echo <N> > /sys/kernel/debug/dri/0/amdgpu_dm_visual_confirm
Where `N` is an integer number for some specific scenarios that the developer
wants to enable, you will see some of these debug cases in the following
subsection.
Multiple Planes Debug
---------------------
If you want to enable or debug multiple planes in a specific user-space
application, you can leverage a debug feature named visual confirm. For
enabling it, you will need::
echo 1 > /sys/kernel/debug/dri/0/amdgpu_dm_visual_confirm
You need to reload your GUI to see the visual confirmation. When the plane
configuration changes or a full update occurs there will be a colored bar at
the bottom of each hardware plane being drawn on the screen.
* The color indicates the format - For example, red is AR24 and green is NV12
* The height of the bar indicates the index of the plane
* Pipe split can be observed if there are two bars with a difference in height
covering the same plane
Consider the video playback case in which a video is played in a specific
plane, and the desktop is drawn in another plane. The video plane should
feature one or two green bars at the bottom of the video depending on pipe
split configuration.
* There should **not** be any visual corruption
* There should **not** be any underflow or screen flashes
* There should **not** be any black screens
* There should **not** be any cursor corruption
* Multiple plane **may** be briefly disabled during window transitions or
resizing but should come back after the action has finished
Pipe Split Debug
----------------
Sometimes we need to debug if DCN is splitting pipes correctly, and visual
confirmation is also handy for this case. Similar to the MPO case, you can use
the below command to enable visual confirmation::
echo 1 > /sys/kernel/debug/dri/0/amdgpu_dm_visual_confirm
In this case, if you have a pipe split, you will see one small red bar at the
bottom of the display covering the entire display width and another bar
covering the second pipe. In other words, you will see a bit high bar in the
second pipe.
DTN Debug
=========
DC (DCN) provides an extensive log that dumps multiple details from our
hardware configuration. Via debugfs, you can capture those status values by
using Display Test Next (DTN) log, which can be captured via debugfs by using::
cat /sys/kernel/debug/dri/0/amdgpu_dm_dtn_log
Since this log is updated accordingly with DCN status, you can also follow the
change in real-time by using something like::
sudo watch -d cat /sys/kernel/debug/dri/0/amdgpu_dm_dtn_log
When reporting a bug related to DC, consider attaching this log before and
after you reproduce the bug.