Part Number: LINUXSDK-OMAPL138
Other Parts Discussed in Thread: TMDSLCDK138, OMAPL138, OMAP-L138
Hi TI experts,
We are using:
1. TMDSLCDK138 board revision A7A.
2. PROCESSOR-SDK-LINUX-OMAPL138 version 06_00_00_07.
3. Custom device tree 6076.device_tree.zip.
4. Custom board adapter with the NHD-4.3-480272EF-ASXN# TFT LCD screen 8422.Schematic Prints.pdf.
5. Custom Kernel .config 4503.config.config.
6. Linux loading log
U-Boot SPL 2019.01-g8b90adfb16 (Aug 05 2019 - 06:26:20 +0000)
Trying to boot from MMC1
U-Boot 2019.01-g8b90adfb16 (Aug 05 2019 - 06:26:20 +0000)
Model: DA850/AM1808/OMAP-L138 LCDK
DRAM: 128 MiB
NAND: 512 MiB
MMC: da830-mmc: 0
Loading Environment from NAND... *** Warning - bad CRC, using default environment
In: serial@10d000
Out: serial@10d000
Err: serial@10d000
Invalid MAC address read.
Net: DaVinci-EMAC
Warning: DaVinci-EMAC (eth0) using random MAC address - fe:db:17:1e:dc:77
Hit any key to stop autoboot: 3 2 1 0
switch to partitions #0, OK
mmc0 is current device
SD/MMC found on device 0
** Unable to read file boot.scr **
** Unable to read file uEnv.txt **
switch to partitions #0, OK
mmc0 is current device
SD/MMC found on device 0
2961408 bytes read in 773 ms (3.7 MiB/s)
19903 bytes read in 7 ms (2.7 MiB/s)
## Flattened Device Tree blob at c0600000
Booting using the fdt blob at 0xc0600000
Loading Device Tree to c7e19000, end c7e20dbe ... OK
Starting kernel ...
Booting Linux on physical CPU 0x0
Linux version 4.19.38-g4dae378bbe (oe-user@oe-host) (gcc version 8.2.0 (GCC)) #1 PREEMPT Mon Aug 5 05:25:37 UTC 2019
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=0005317f
CPU: VIVT data cache, VIVT instruction cache
OF: fdt: Machine model: DA850/AM1808/OMAP-L138 LCDK
Memory policy: Data cache writethrough
Reserved memory: created CMA memory pool at 0xc3000000, size 16 MiB
OF: reserved mem: initialized node dsp-memory@c3000000, compatible id shared-dma-pool
cma: Reserved 24 MiB at 0xc6400000
DaVinci da850/omap-l138/am18x variant 0x1
random: get_random_bytes called from start_kernel+0x88/0x428 with crng_init=0
Built 1 zonelists, mobility grouping on. Total pages: 32480
Kernel command line: console=ttyS2,115200n8 root=PARTUUID=0032aaf6-02 rw rootfstype=ext4 rootwait
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 80356K/131072K available (5740K kernel code, 338K rwdata, 1836K rodata, 224K init, 141K bss, 9756K reserved, 40960K cma-reserved)
Virtual kernel memory layout:
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xffc00000 - 0xfff00000 (3072 kB)
vmalloc : 0xc8800000 - 0xff800000 ( 880 MB)
lowmem : 0xc0000000 - 0xc8000000 ( 128 MB)
modules : 0xbf000000 - 0xc0000000 ( 16 MB)
.text : 0x(ptrval) - 0x(ptrval) (5742 kB)
.init : 0x(ptrval) - 0x(ptrval) ( 224 kB)
.data : 0x(ptrval) - 0x(ptrval) ( 339 kB)
.bss : 0x(ptrval) - 0x(ptrval) ( 142 kB)
SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
rcu: Preemptible hierarchical RCU implementation.
Tasks RCU enabled.
NR_IRQS: 245
clocksource: timer0_1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
Console: colour dummy device 80x30
Calibrating delay loop... 227.32 BogoMIPS (lpj=1136640)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
CPU: Testing write buffer coherency: ok
Setting up static identity map for 0xc0008400 - 0xc0008458
rcu: Hierarchical SRCU implementation.
devtmpfs: initialized
VFP support v0.3: not present
clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
futex hash table entries: 256 (order: -1, 3072 bytes)
pinctrl core: initialized pinctrl subsystem
NET: Registered protocol family 16
DMA: preallocated 256 KiB pool for atomic coherent allocations
cpuidle: using governor ladder
cpuidle: using governor menu
mux: initialized RTC_ALARM
mux: Setting register RTC_ALARM
mux: PINMUX0 (0x00000000) = 0x44080000 -> 0x24080000
gpiochip_add_data_with_key: GPIOs 0..143 (davinci_gpio.0) failed to register, -517
vcc_3v3d: supplied by vcc_5vd
vcc_1v8d: supplied by vcc_5vd
pps_core: LinuxPPS API ver. 1 registered
pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
PTP clock support registered
Advanced Linux Sound Architecture Driver Initialized.
clocksource: Switched to clocksource timer0_1
NET: Registered protocol family 2
tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes)
TCP established hash table entries: 1024 (order: 0, 4096 bytes)
TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
TCP: Hash tables configured (established 1024 bind 1024)
UDP hash table entries: 256 (order: 0, 4096 bytes)
UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
NET: Registered protocol family 1
RPC: Registered named UNIX socket transport module.
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
RPC: Registered tcp NFSv4.1 backchannel transport module.
workingset: timestamp_bits=14 max_order=15 bucket_order=1
Block layer SCSI generic (bsg) driver version 0.4 loaded (major 249)
io scheduler noop registered (default)
io scheduler mq-deadline registered
io scheduler kyber registered
pinctrl-single 1c14120.pinmux: 160 pins, size 80
Serial: 8250/16550 driver, 10 ports, IRQ sharing disabled
console [ttyS2] disabled
1d0d000.serial: ttyS2 at MMIO 0x1d0d000 (irq = 61, base_baud = 8250000) is a TI DA8xx/66AK2x
console [ttyS2] enabled
OF: graph: no port node found in /soc@1c00000/display@213000
OF: graph: no port node found in /soc@1c00000/display@213000
OF: graph: no port node found in /soc@1c00000/display@213000
[drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[drm] No driver support for vblank timestamp query.
tilcdc 1e13000.display: fb0: DRM emulated frame buffer device
[drm] Initialized tilcdc 1.0.0 20121205 for 1e13000.display on minor 0
brd: module loaded
libphy: Fixed MDIO Bus: probed
davinci_mdio 1e24000.mdio: davinci mdio revision 1.5, bus freq 2200000
davinci_mdio 1e24000.mdio: detected phy mask ffffff7f
libphy: 1e24000.mdio: probed
davinci_mdio 1e24000.mdio: phy[7]: device 1e24000.mdio:07, driver SMSC LAN8710/LAN8720
i2c /dev entries driver
davinci-wdt 1c21000.wdt: heartbeat 60 sec
sdhci: Secure Digital Host Controller Interface driver
sdhci: Copyright(c) Pierre Ossman
sdhci-pltfm: SDHCI platform and OF driver helper
NET: Registered protocol family 10
Segment Routing with IPv6
sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
NET: Registered protocol family 17
edma 1c00000.edma: memcpy is disabled
edma 1c00000.edma: TI EDMA DMA engine driver
davinci_mmc 1c40000.mmc: Got CD GPIO
davinci_mmc 1c40000.mmc: Using DMA, 4-bit mode
console [netcon0] enabled
netconsole: network logging started
davinci_emac 1e20000.ethernet: incompatible machine/device type for reading mac address
davinci_emac 1e20000.ethernet: using random MAC addr: b6:4b:66:5d:3f:31
input: gpio-keys as /devices/platform/gpio-keys/input/input0
hctosys: unable to open rtc device (rtc0)
ALSA device list:
No soundcards found.
mmcblk0: mmc0:59b4 USD 7.51 GiB
mmcblk0: p1 p2
random: fast init done
EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
VFS: Mounted root (ext4 filesystem) on device 179:2.
devtmpfs: mounted
Freeing unused kernel memory: 224K
This architecture does not have kernel memory protection.
Run /sbin/init as init process
tilcdc 1e13000.display: tilcdc_crtc_irq(0x00000160): FIFO underflow
systemd[1]: System time before build time, advancing clock.
systemd[1]: systemd 239 running in system mode. (+PAM -AUDIT -SELINUX +IMA -APPARMOR +SMACK +SYSVINIT +UTMP -LIBCRYPTSETUP -GCRYPT -GNUTLS +ACL +XZ -LZ4 -SECCOMP +BLKID -ELFUTILS +KMOD -IDN2 -IDN -PCRE2 default-hierarchy=hybrid)
systemd[1]: Detected architecture arm.
Welcome to [1mArago 2019.05[0m!
systemd[1]: Set hostname to <omapl138-lcdk>.
systemd[1]: File /lib/systemd/system/systemd-journald.service:36 configures an IP firewall (IPAddressDeny=any), but the local system does not support BPF/cgroup based firewalling.
systemd[1]: Proceeding WITHOUT firewalling in effect! (This warning is only shown for the first loaded unit using IP firewalling.)
random: systemd: uninitialized urandom read (16 bytes read)
systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[[0;32m OK [0m] Started Forward Password Requests to Wall Directory Watch.
random: systemd: uninitialized urandom read (16 bytes read)
systemd[1]: Created slice system-getty.slice.
[[0;32m OK [0m] Created slice system-getty.slice.
random: systemd: uninitialized urandom read (16 bytes read)
systemd[1]: Listening on udev Control Socket.
[[0;32m OK [0m] Listening on udev Control Socket.
systemd[1]: Created slice system-serial\x2dgetty.slice.
[[0;32m OK [0m] Created slice system-serial\x2dgetty.slice.
systemd[1]: Listening on udev Kernel Socket.
[[0;32m OK [0m] Listening on udev Kernel Socket.
[[0;32m OK [0m] Created slice User and Session Slice.
[[0;32m OK [0m] Listening on Network Service Netlink Socket.
[[0;32m OK [0m] Listening on Journal Socket.
[[0;32m OK [0m] Started Hardware RNG Entropy Gatherer Daemon.
Starting udev Coldplug all Devices...
[[0;32m OK [0m] Listening on initctl Compatibility Named Pipe.
[[0;32m OK [0m] Reached target Remote File Systems.
Mounting POSIX Message Queue File System...
[[0;32m OK [0m] Listening on Journal Socket (/dev/log).
Starting Journal Service...
Starting Remount Root and Kernel File Systems...
Mounting Kernel Debug File System...
Mounting Kernel Configuration File System...
EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
Starting Apply Kernel Variables...
[[0;32m OK [0m] Reached target Swap.
Mounting Temporary Directory (/tmp)...
[[0;32m OK [0m] Reached target Slices.
[[0;32m OK [0m] Started Dispatch Password Requests to Console Directory Watch.
[[0;32m OK [0m] Reached target Paths.
systemd[1]: Listening on Process Core Dump Socket.
[[0;32m OK [0m] Listening on Process Core Dump Socket.
systemd[1]: Starting Create list of required static device nodes for the current kernel...
Starting Create list of required st…ce nodes for the current kernel...
systemd[1]: rngd.service: Main process exited, code=exited, status=1/FAILURE
systemd[1]: rngd.service: Failed with result 'exit-code'.
systemd[1]: Mounted POSIX Message Queue File System.
[[0;32m OK [0m] Mounted POSIX Message Queue File System.
systemd[1]: Started Remount Root and Kernel File Systems.
[[0;32m OK [0m] Started Remount Root and Kernel File Systems.
systemd[1]: Mounted Kernel Debug File System.
[[0;32m OK [0m] Mounted Kernel Debug File System.
systemd[1]: Mounted Kernel Configuration File System.
[[0;32m OK [0m] Mounted Kernel Configuration File System.
systemd[1]: Started Apply Kernel Variables.
[[0;32m OK [0m] Started Apply Kernel Variables.
systemd[1]: Mounted Temporary Directory (/tmp).
[[0;32m OK [0m] Mounted Temporary Directory (/tmp).
[[0;32m OK [0m] Started Create list of required sta…vice nodes for the current kernel.
Starting Create Static Device Nodes in /dev...
[[0;32m OK [0m] Started Journal Service.
Starting Flush Journal to Persistent Storage...
[[0;32m OK [0m] Started Create Static Device Nodes in /dev.
systemd-journald[60]: Received request to flush runtime journal from PID 1
[[0;32m OK [0m] Reached target Local File Systems (Pre).
[[0;32m OK [0m] Reached target Containers.
Mounting /var/volatile...
Mounting /media/ram...
Starting udev Kernel Device Manager...
[[0;32m OK [0m] Started Flush Journal to Persistent Storage.
[[0;32m OK [0m] Mounted /var/volatile.
[[0;32m OK [0m] Mounted /media/ram.
[[0;32m OK [0m] Reached target Local File Systems.
Starting Load/Save Random Seed...
Starting Create Volatile Files and Directories...
[[0;32m OK [0m] Started udev Kernel Device Manager.
[[0;32m OK [0m] Started Load/Save Random Seed.
[[0;32m OK [0m] Started Create Volatile Files and Directories.
Starting Network Time Synchronization...
Starting Network Service...
Starting Update UTMP about System Boot/Shutdown...
[[0;32m OK [0m] Started Update UTMP about System Boot/Shutdown.
[[0;32m OK [0m] Started Network Service.
Starting Network Name Resolution...
[[0;32m OK [0m] Started Network Time Synchronization.
[[0;32m OK [0m] Reached target System Time Synchronized.
[[0;32m OK [0m] Started Network Name Resolution.
[[0;32m OK [0m] Reached target Network.
[[0;32m OK [0m] Reached target Host and Network Name Lookups.
davinci-rproc 11800000.dsp: assigned reserved memory node dsp-memory@c3000000
remoteproc remoteproc0: dsp is available
remoteproc remoteproc0: Direct firmware load for rproc-dsp-fw failed with error -2
remoteproc remoteproc0: powering up dsp
remoteproc remoteproc0: Direct firmware load for rproc-dsp-fw failed with error -2
remoteproc remoteproc0: request_firmware failed: -2
nand: device found, Manufacturer ID: 0x2c, Chip ID: 0xcc
nand: Micron MT29F4G16ABADAH4
omap_rtc 1c23000.rtc: already running
nand: 512 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 64
Bad block table not found for chip 0
omap_rtc 1c23000.rtc: registered as rtc0
Bad block table not found for chip 0
Scanning device for bad blocks
tlv320aic3x-codec 0-0018: Linked as a consumer to regulator.2
tlv320aic3x-codec 0-0018: Linked as a consumer to regulator.3
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
SCSI subsystem initialized
usbcore: registered new device driver usb
ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
usb_phy_generic usb_phy_generic.0.auto: usb_phy_generic.0.auto supply vcc not found, using dummy regulator
ohci-da8xx: DA8XX
[[0;32m OK [0m] Started udev Coldplug all Devices.
ohci-da8xx 1e25000.usb: USB Host Controller
ohci-da8xx 1e25000.usb: new USB bus registered, assigned bus number 1
usb_phy_generic usb_phy_generic.0.auto: Linked as a consumer to regulator.0
ahci_da850 1e18000.sata: forcing PORTS_IMPL to 0x1
ahci_da850 1e18000.sata: AHCI 0001.0100 32 slots 1 ports 3 Gbps 0x1 impl platform mode
ohci-da8xx 1e25000.usb: irq 59, io mem 0x01e25000
asoc-simple-card sound: tlv320aic3x-hifi <-> 1d00000.mcasp mapping ok
musb-hdrc musb-hdrc.1.auto: MUSB HDRC host driver
usb usb1: New USB device found, idVendor=1d6b, idProduct=0001, bcdDevice= 4.19
ahci_da850 1e18000.sata: flags: ncq sntf pm led clo only pmp pio slum part ccc
usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb1: Product: USB Host Controller
scsi host0: ahci_da850
ata1: SATA max UDMA/133 mmio [mem 0x01e18000-0x01e19fff] port 0x100 irq 67
usb usb1: Manufacturer: Linux 4.19.38-g4dae378bbe ohci_hcd
usb usb1: SerialNumber: 1e25000.usb
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
musb-hdrc musb-hdrc.1.auto: new USB bus registered, assigned bus number 2
usb usb2: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 4.19
usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb2: Product: MUSB HDRC host driver
usb usb2: Manufacturer: Linux 4.19.38-g4dae378bbe musb-hcd
usb usb2: SerialNumber: musb-hdrc.1.auto
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 1 port detected
ata1: SATA link down (SStatus 0 SControl 300)
davinci_mdio 1e24000.mdio: resetting idled controller
SMSC LAN8710/LAN8720 1e24000.mdio:07: attached PHY driver [SMSC LAN8710/LAN8720] (mii_bus:phy_addr=1e24000.mdio:07, irq=POLL)
IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
Bad block table written to 0x00001ffe0000, version 0x01
Bad block table written to 0x00001ffc0000, version 0x01
3 fixed-partitions partitions found on MTD device 62000000.nand
Creating 3 MTD partitions on "62000000.nand":
0x000000000000-0x000000020000 : "u-boot env"
0x000000020000-0x0000000a0000 : "u-boot"
0x0000000a0000-0x000020000000 : "free space"
davinci_nand 62000000.nand: controller rev. 2.5
[[0m[0;31m* [0m] A start job is running for dev-ttyS2.device (26s / 1min 31s)
[K[[0;1;31m*[0m[0;31m* [0m] A start job is running for dev-ttyS2.device (29s / 1min 31s)
[K[[0;32m OK [0m] Found device /dev/ttyS2.
random: crng init done
random: 7 urandom warning(s) missed due to ratelimiting
[[0;32m OK [0m] Created slice system-systemd\x2dfsck.slice.
Starting File System Check on /dev/mmcblk0p1...
[[0;32m OK [0m] Reached target System Initialization.
[[0;32m OK [0m] Started Daily rotation of log files.
[[0;32m OK [0m] Started Daily Cleanup of Temporary Directories.
[[0;32m OK [0m] Reached target Timers.
Starting sshd.socket.
[[0;32m OK [0m] Listening on D-Bus System Message Bus Socket.
[[0;32m OK [0m] Listening on RPCbind Server Activation Socket.
[[0;32m OK [0m] Listening on sshd.socket.
[[0;32m OK [0m] Reached target Sockets.
[[0;32m OK [0m] Reached target Basic System.
Starting Permit User Sessions...
Starting TI IPC Daemon...
[[0;32m OK [0m] Started Periodic Command Scheduler.
Starting RPC Bind Service...
[[0;32m OK [0m] Started Vsftpd ftp daemon.
[[0;32m OK [0m] Started Job spooling tools.
Starting rng-tools.service...
Starting Print notice about GPLv3 packages...
[[0;32m OK [0m] Started D-Bus System Message Bus.
Starting uim-sysfs.service...
Starting Enable and configure wl18xx bluetooth stack...
Starting Login Service...
Starting Save/Restore Sound Card State...
[[0;32m OK [0m] Started File System Check on /dev/mmcblk0p1.
[[0;32m OK [0m] Started Permit User Sessions.
[[0;32m OK [0m] Started TI IPC Daemon.
[[0;32m OK [0m] Started RPC Bind Service.
[[0;32m OK [0m] Started rng-tools.service.
[[0;32m OK [0m] Started Enable and configure wl18xx bluetooth stack.
[[0;32m OK [0m] Started NFS status monitor for NFSv2/3 locking..
[[0;32m OK [0m] Started Serial Getty on ttyS2.
[[0;32m OK [0m] Started Getty on tty1.
[[0;32m OK [0m] Reached target Login Prompts.
Starting Synchronize System and HW clocks...
Mounting /run/media/mmcblk0p1...
[[0;32m OK [0m] Started Save/Restore Sound Card State.
[[0;32m OK [0m] Started Synchronize System and HW clocks.
[[0;32m OK [0m] Reached target Sound Card.
[[0;32m OK [0m] Started Login Service.
[[0;32m OK [0m] Mounted /run/media/mmcblk0p1.
_____ _____ _ _
| _ |___ ___ ___ ___ | _ |___ ___ |_|___ ___| |_
| | _| .'| . | . | | __| _| . | | | -_| _| _|
|__|__|_| |__,|_ |___| |__| |_| |___|_| |___|___|_|
|___| |___|
Arago Project http://arago-project.org omapl138-lcdk ttyS2
Arago 2019.05 omapl138-lcdk ttyS2
omapl138-lcdk login: ***************************************************************
***************************************************************
NOTICE: This file system contains the following GPLv3 packages:
bash-dev
bash
bc
cifs-utils
cpio
dosfstools
elfutils
gawk
gzip
libbfd
libcairo-perf-utils
libdw1
libelf1
libgdbm-compat4
libgdbm-dev
libgdbm6
libreadline-dev
libreadline7
m4-dev
m4
which
If you do not wish to distribute GPLv3 components please remove
the above packages prior to distribution. This can be done using
the opkg remove command. i.e.:
opkg remove <package>
Where <package> is the name printed in the list above
NOTE: If the package is a dependency of another package you
will be notified of the dependent packages. You should
use the --force-removal-of-dependent-packages option to
also remove the dependent packages as well
***************************************************************
***************************************************************
We are using Qt software rendering graphics application through Qt LinuxFB plugin.
All the files above, including sd card image with test program (testTearing in "home" directory) are here.
The problem.
The problem is that moving objects are suffer from tearing on the LCD as I hope you can see on the video and photos below (the moving line must be straight, but it isn't).
Questions.
From documentation for Qt Embedded Linux on LinuxFB plugin:
"This plugin writes directly to the framebuffer via Linux's fbdev subsystem. Only software-rendered content is supported. Note that on some setups the display performance is expected to be limited.
However, since fbdev is being deprecated in the Linux kernel, the DRM dumb buffer support is also available, as of Qt 5.9. To use it, set the QT_QPA_FB_DRM environment variable to a non-zero value. When set, provided that dumb buffers are supported by your system, legacy framebuffer devices like /dev/fb0 won't be accessed. Instead, the rendering is set up via the DRM APIs, similar to the eglfs_kms backend in EGLFS. The output is double-buffered and page flipped, providing proper vsync for software-rendered content as well."
As far as I know you are not supporting Qt on OMAPL138, but I don't know where the problem is hidding - Qt, Linux, TI drivers or OMAPL138 LCDC module hardware, so my question is where is the problem and how to fix it if possible? Thanks in advance!

