# Debug

This information provides the necessary details to troubleshoot and analyze various components, such as the DSI panel clock, DPU, and Weston.

Tab QCS6490/QCS5430
Tab QCS9075/QCS8275

- *class* tabincludedirective

    - ## Display panel and clock

> 
> 
> Note
> 
> 
> - You must enable SSH to access your host device. For instructions, see [Use SSH](https://docs.qualcomm.com/bundle/publicresource/topics/80-70017-254/how_to.html#use-ssh).
> - To mount the `debugfs` file system to access the `debugfs` details of the display subsystem, run the following commands:
> 
> 
> 
> > 
> > 
> > mount -o remount,rw /
> >         Copy to clipboard
> > 
> > 
> > mount -t debugfs none /sys/kernel/debug
> >         Copy to clipboard

**View display panel information**

To check the selected display panel, run the following command:

cat /sys/kernel/debug/qcom,mdss_dsi_ext_bridge_rb3gen2/dump_info
    Copy to clipboard

**Sample output**

name = qcom,mdss_dsi_ext_bridge_rb3gen2
                        Resolution = 1920(148|88|44|1)x1080(36|4|5|1)@60fps 0 Hz
                        CTRL_0:
                            ctrl = dsi-ctrl-0
                            phy = dsi-phy-0
                        Panel = ext video mode dsi bridge
                        Clock master = dsi-ctrl-0
    Copy to clipboard

**View DSI clock information**

To check the DSI clock information, run the following command:

> 
> 
> cat /sys/kernel/debug/qcom,mdss_dsi_ext_bridge_rb3gen2/dsi-ctrl-0/state_info
>     Copy to clipboard

**Sample output**

> 
> 
> Current State:
>         CTRL_ENGINE = ON
>         VIDEO_ENGINE = ON
>         COMMAND_ENGINE = OFF
>     Clock Info:
>         BYTE_CLK = 111375000, PIXEL_CLK = 148500000, ESC_CLK = 19200000
>     Copy to clipboard

## Check regulator information

To check the regulator status and the voltage, run the following command:

cat /sys/kernel/debug/regulator/regulator_summary
    Copy to clipboard

## Display interface information

To retrieve the debug dump output (display interface number, VSync count, underrun count, and interface modes), run the following command:

cat /sys/kernel/debug/dri/0/encoder*/status
    Copy to clipboard

**Sample output**

intf:1    vsync:  192124     underrun:       0    mode: video
    Copy to clipboard

## SDE layer mixers and layer information

The Snapdragon display engine (SDE) layer mixer information is available to licensed developers with authorized access. For more information, see [Qualcomm Linux Display Guide - Addendum](https://docs.qualcomm.com/bundle/resource/topics/80-70017-18A/debug.html).

## General DPU debugging information

The common DPU debugging information is provided as follows:

> 
> 
> **DPU clock rate**
> 
> 
> Note
> 
> 
> You must enable SSH to access your host device. For instructions, see [Use SSH](https://docs.qualcomm.com/bundle/publicresource/topics/80-70017-254/how_to.html#use-ssh).
> 
> 
> To check the DPU clock rate, run the following command:
> 
> 
> 
> > 
> > 
> > cat /sys/kernel/debug/clk/clk_summary | grep disp_cc
> >     Copy to clipboard
> 
> 
> 
> **Set DPU to Performance mode**
> 
> 
> To set the DPU to Performance mode, run the following commands:
> 
> 
> 
> > 
> > 
> > cd /sys/kernel/debug/dri/0/debug/core_perf/
> >     Copy to clipboard
> > 
> > 
> > echo 1 > perf_mode
> >     Copy to clipboard

## User mode/Weston debug

### Weston autolaunch

The Weston screen automatically launches when the device is powered on. The `/etc/initscripts/init_qti_display` script file contains the Weston configurations and the corresponding command-line parameters that have been used to set up the Weston screen autolaunch.

Note

You must enable SSH to access your host device. For instructions, see [Use SSH](https://docs.qualcomm.com/bundle/publicresource/topics/80-70017-254/how_to.html#use-ssh).

mount -o remount,rw /
    Copy to clipboard

cat /etc/initscripts/init_qti_display
    Copy to clipboard

### Weston display configuration

Weston uses the `weston.ini` configuration file. When Weston starts,
it searches for the `weston.ini` file from the Weston init script as
`--config=/etc/xdg/weston/weston.ini` and configures the Weston
display pipeline. The detailed configurations are described at
[https://manpages.ubuntu.com/manpages/focal/en/man5/weston.ini.5.html](https://manpages.ubuntu.com/manpages/focal/en/man5/weston.ini.5.html).

To fetch the Weston configuration file, run the following commands:

mount -o remount,rw /
    Copy to clipboard

cat /etc/xdg/weston/weston.ini
    Copy to clipboard

After executing the commands, you see the following `weston.ini` configuration sample output:

configuration file for Weston
    [core]
    idle-time=0
    backend=sdm-backend.so
    repaint-window=10
    
    [output]
    name=DSI-1
    mode=on
    
    [output]
    name=DP-1
    mode=on
    
    [shell]
    clock-format=seconds
    Copy to clipboard

### Relaunch Weston

To kill the Weston process and manually relaunch the Weston server, do the following:

Note

You must enable SSH to access your host device. For instructions, see [Use SSH](https://docs.qualcomm.com/bundle/publicresource/topics/80-70017-254/how_to.html#use-ssh).

1. To identify the ID of the Weston processes, run the following commands:

> 
> 
> mount -o remount,rw /
>         Copy to clipboard
> 
> 
> ps -A | grep weston
>         Copy to clipboard
> 
> 
> **Sample output**
> 
> 
> 824 ?        00:00:12 weston
>             1090 ?        00:00:00 weston-keyboard
>             1092 ?        00:00:01 weston-desktop-
>         Copy to clipboard
2. To kill the Weston process, run the following command:

> 
> 
> killall weston
>         Copy to clipboard
3. To relaunch the Weston server, run the following commands:

> 
> 
> mount -o remount,rw /
>         Copy to clipboard
> 
> 
> su
>         Copy to clipboard
> 
> 
> . /etc/profile
>         Copy to clipboard
> 
> 
> export XDG_RUNTIME_DIR=/dev/socket/weston
>         Copy to clipboard
> 
> 
> mkdir --parents $XDG_RUNTIME_DIR
>         Copy to clipboard
> 
> 
> chmod 0700 $XDG_RUNTIME_DIR
>         Copy to clipboard
> 
> 
> cd /usr/bin
>         Copy to clipboard
> 
> 
> ./weston --tty=2 --continue-without-input
>         Copy to clipboard

## HDMI troubleshooting

LT9611uxc is the DSI-to-HDMI bridge chip firmware. The recommended firmware version is `LT9611UXC_DSI_PortA_HDCP_Disable_V5.0.21.bin`. If you experience a no-display screen on the HDMI, it is recommended to upgrade the firmware.

**Upgrade Lontium firmware**

To upgrade the Lontium firmware, do the following:

1. Download the recommended LT9611uxc firmware version `LT9611UXC_DSI_PortA_HDCP_Disable_V5.0.21.bin` from [http://www.lontiumsemi.com/download](http://www.lontiumsemi.com/download) and go to the Qualcomm section.

> 
> 
> Note
> 
>     - Enable SSH to access your host device. For more information, see [Use SSH](https://docs.qualcomm.com/bundle/publicresource/topics/80-70017-254/how_to.html#use-ssh).
>     - When prompted for a password, enter oelinux123.
2. To upgrade the firmware, run the following Linux shell commands:

> 
> 
> mount -o rw,remount /
>         Copy to clipboard
> 
> 
> scp <LT firmware bin> root@<IP of the device>:/lib/firmware/lt9611uxc_fw.bin
>         Copy to clipboard
> 
> 
> sync
>         Copy to clipboard
> 
> 
> echo 0 > /sys/bus/i2c/devices/0-002b/lt9611uxc_firmware
>         Copy to clipboard
> 
> 
> Note
> 
> 
> Wait for at least 3 minutes for the firmware upgrade to complete.
3. To retrieve the lt9611 logs, run the following command:

> 
> 
> dmesg | grep lt9611
>         Copy to clipboard

The `Firmware updates successfully` log confirms that the firmware upgrade is successful. To ensure that the new firmware is in effect, it is recommended to hard reboot (unplug and plug in the power cable) the device.

- *class* tabincludedirective

    - ## DisplayPort panel and clock

> 
> 
> Note
> 
> - You must enable SSH to access your host device. For instructions, see [Use SSH](https://docs.qualcomm.com/bundle/publicresource/topics/80-70017-254/how_to.html#use-ssh).
> - To mount the `debugfs` file system to access the `debugfs` details of the display subsystem, run the following commands:
> 
> 
> 
> > 
> > 
> > mount -o remount,rw /
> >         Copy to clipboard
> > 
> > 
> > mount -t debugfs none /sys/kernel/debug
> >         Copy to clipboard

**View DisplayPort panel information**

To check the selected DisplayPort panel, run the following command:

cat  /sys/kernel/debug/dri/0/msm_dp-DP-1/dp_debug
    Copy to clipboard

**Sample output**

name = msm_dp
    drm_dp_link
            rate = 270000
            num_lanes = 4
            capabilities = 1
    dp_panel_info:
            active = 3840x2160
            back_porch = 80x23
            front_porch = 48x3
            sync_width = 32x5
            active_low = 0x0
            h_skew = 0
            refresh rate = 30
            pixel clock khz = 262750
            bpp = 30
    dp_link:
            test_requested = 512
            num_lanes = 4
            bw_code = 10
            lclk = 270000000
            v_level = 1
            p_level = 0
    Copy to clipboard

**View status of DisplayPort cable**

To check if the DisplayPort cable is connected, run the following command:

cat  /sys/class/drm/card0-DP-1/status
    Copy to clipboard

**Sample output**

Connected
    Copy to clipboard

**Check EDID mode**

To check for the EDID mode of the DisplayPort panel connected, run the following command:

cat  /sys/class/drm/card0-DP-1/modes
    Copy to clipboard

**Sample output**

3840x2160
    2048x1080
    1920x1080
    1280x720
    Copy to clipboard

## Check regulator information

To check the regulator status and the voltage, run the following command:

cat /sys/kernel/debug/regulator/regulator_summary
    Copy to clipboard

## Display interface information

The following are the debug dump-outs: Display interface number, VSync
count, underrun count, and interface modes.

cat /sys/kernel/debug/dri/0/encoder*/status
    Copy to clipboard

**Sample output**

intf:1    vsync:  192124     underrun:       0    mode: video
    Copy to clipboard

## Snapdragon Display Engine (SDE) layer mixers and layer information

The SDE layer mixer information is currently available for users with full access to the proprietary software shipped with Qualcomm Linux. For more information, see [Qualcomm Linux Display Guide - Addendum](https://docs.qualcomm.com/bundle/resource/topics/80-70017-18A/debug.html)

## General DPU debugging information

The common DPU debugging information is provided as follows:

> 
> 
> **DPU clock rate**
> 
> 
> Note
> 
> 
> You must enable SSH to securely access your host device. For instructions, see [Use SSH](https://docs.qualcomm.com/bundle/publicresource/topics/80-70017-254/how_to.html#use-ssh).
> 
> 
> To check the DPU clock rate, run the following commands:
> 
> 
> cat /sys/kernel/debug/clk/clk_summary | grep disp_cc
>     Copy to clipboard
> 
> 
> **Set DPU to Performance mode**
> 
> 
> To set the DPU to Performance mode, run the following commands:
> 
> 
> cd /sys/kernel/debug/dri/0/debug/core_perf/
>     Copy to clipboard
> 
> 
> echo 1 > perf_mode
>     Copy to clipboard

## User mode/Weston debug

### Weston autolaunch

The Weston screen automatically launches when you power on the device. The `/etc/initscripts/init_qti_display` script file contains the Weston configurations and the corresponding command-line parameters that are used to set up the Weston screen autolaunch.

Note

You must enable SSH to access your host device. For instructions, see [Use SSH](https://docs.qualcomm.com/bundle/publicresource/topics/80-70017-254/how_to.html#use-ssh).

mount -o remount,rw /
    Copy to clipboard

cat /etc/initscripts/init_qti_display
    Copy to clipboard

### Relaunch Weston

To kill the Weston process and manually relaunch the Weston server, do the following:

> 
> 
> Note
> 
> 
> You must enable SSH to access your host device. For instructions, see [Use SSH](https://docs.qualcomm.com/bundle/publicresource/topics/80-70017-254/how_to.html#use-ssh).

1. To identify the ID of the Weston processes, run the following commands:

> 
> 
> mount -o remount,rw /
>         Copy to clipboard
> 
> 
> ps -A | grep weston
>         Copy to clipboard
> 
> 
> **Sample output**
> 
> 
> 824 ?        00:00:12 weston
>             1090 ?        00:00:00 weston-keyboard
>             1092 ?        00:00:01 weston-desktop-
>         Copy to clipboard
2. To kill the Weston process, run the following command:

> 
> 
> killall weston
>         Copy to clipboard
3. To relaunch the Weston server, run the following commands:

> 
> 
> mount -o remount,rw /
>         Copy to clipboard
> 
> 
> su
>         Copy to clipboard
> 
> 
> . /etc/profile
>         Copy to clipboard
> 
> 
> export XDG_RUNTIME_DIR=/dev/socket/weston
>         Copy to clipboard
> 
> 
> mkdir --parents $XDG_RUNTIME_DIR
>         Copy to clipboard
> 
> 
> chmod 0700 $XDG_RUNTIME_DIR
>         Copy to clipboard
> 
> 
> cd /usr/bin
>         Copy to clipboard
> 
> 
> ./weston --tty=2 --continue-without-input
>         Copy to clipboard

Last Published: Dec 19, 2024

[Previous Topic
Configure](https://docs.qualcomm.com/bundle/publicresource/80-70017-18/topics/configure.md) [Next Topic
References](https://docs.qualcomm.com/bundle/publicresource/80-70017-18/topics/references.md)