Frequently Asked Questions / Common Debug Tips¶
This page documents common questions that developers may encounter while using Kria SOM.
Released Linux Images Not Booting¶
All AMD released images are verified on their supported Starter Kit. If an released image does not boot on the Starter Kit, for an example you may see errors like this while booting, for an example, Ubuntu:
[ 17.644316] emc: device handler registered
[ 17.658214] rdac: device handler registered
[ 20.374057] tpm tpm0: A TPM error (256) occurred attempting the self test
It is usually because the Starter Kit needs an updated boot firmware. Download the correct version of boot firmware according to the wiki, and use image recovery application.
Root Privileges¶
The ubuntu user does not have root privileges. Most commands used in tutorials must be run using sudo, and it may be prompted to enter your password.
For security, by default, the root user is disabled. If user want to login as root user, perform the following steps. Use the ubuntu user’s password on the first password prompt, then set a new password for the root user. User can now login as root user using the newly set root user password.
ubuntu@kria:\~\$ sudo -i
sudo\] password for ubuntu:
root@kria:\~#
PPA Error Requiring Setting Timezone¶
If you receive a PPA error or no response when executing “apt update” command, it maybe due to wrong timezone/time on the system. The followings are commands to set System Timezone and locale:
Set timezone
sudo timedatectl set-ntp true
sudo timedatectl set-timezone America/Los_Angeles
timedatectl
Set locale
sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8
locale
set the date and time.
sudo date --set "11 January 2023 16:47:00"
Docker Space Limitation¶
The storage volume on the SD card can be limited with multiple Docker images. If there are space issues, use the following command to remove the existing container.
sudo docker rmi --force $INSTALLED_DOCKER_IMAGE
Debug Monitors¶
The AMD Kria K26 Starter Kits each have a different HW configuration for their display interfaces:
KV260 Carrier Card:
Supports both DP 1.2 and HDMI 1.4 interfaces.
The ports are driven by the DP controller in the ZynqMPSoC PS to a DP/HDMI video splitter on the KV carrier card.
The K26 + KV CC supports two PS-GTR data lanes from the ZynqMPSoC device which supports HBR and HBR2 data rates.
KR260 Carrier Card:
Supports only a DP 1.2 interface.
The K26 + KR CC supports one PS-GTR data lane from the ZynqMPSoC device which supports HBR and HBR2 data rates.
The maximum transmission bit rate between the carrier card and a monitor depends on the number of lanes connected and the maximum supported transmission mode data rate of both the Kria Starter Kit and the monitor connected. The combinatin of the DP subsystem of MPSoC + the monitor capabilities will determine the maximum resolution supported. For example, if a monitor that supports HBR2 and is connected to KR260, the maximum data rate is 1 data lane x 5.4 Gbit/s = 5.4 Gbit/s, allowing the configuration to support up to 1080p@60FPS.
Monitor should be connected properly to the board before power on, otherwise the resolution may not be recognized correctly.
Ensure to use certified cables for DP and HDMI, recommended specs are HDMI 1.4 and DP 1.2 or greater. If cables are faulty, they could cause distortions or disable display.
Modetest is a test tool which can be found as part of the libdrm suite of test tools.
Depending on if there is a video mixer in the PL or not, modetest would either directly test the DP, or go through video mixer using -D 80000000.v_mix
argument.
Note that among examples using a monitor, AI Box and Defect Detect have video mixer; Smartcam and NLP SmartVision do not have video mixer.
Ensure status of monitor is connected¶
modetest -M xlnx [-D 80000000.v_mix]
The above command would read out the monitors EDID information.
Connectors:
id encoder status name size (mm) modes encoders
52 51 connected DP-1 610x350 43 51
Display modes supported by your display¶
modetest -M xlnx [-D 80000000.v_mix]
Below are the modes that are supported by your display.
modes:
name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot)
3840x2160 30.00 3840 4016 4104 4400 2160 2168 2178 2250 297000 flags: phsync, pvsync; type: driver
3840x2160 30.00 3840 4016 4104 4400 2160 2168 2178 2250 297000 flags: phsync, pvsync; type: driver
...
...
Ensure display is capable of supporting user requested resolution and refresh rates to the application.
Current mode¶
modetest -M xlnx [-D 80000000.v_mix]
CRTC indicates the current mode that is set.
CRTCs:
id fb pos size
40 47 (0,0) (3840x2160)
3840x2160 30.00 3840 4016 4104 4400 2160 2168 2178 2250 297000 flags: phsync, pvsync; type: driver
props:
Test to determine if display is OK¶
Example for 4k and video mixer::
modetest -M xlnx -D 80000000.v_mix -s 52@40:3840x2160@NV16
The above command sets a mode, blue screen appears on the display.
Example for less resolution and without video mixer:
modetest -M xlnx -s 43:1024x768-60@AR24
modetest -M xlnx -s 43:1920x1080-60@AR24
The above command sets a mode, SMPTE Color Bars appears on the display.