TS-4700 errata screen shaking

From embeddedTS Manuals
Synopsis LCD Shakes
Affected TS-4700 REV C
Status Workarounds available

Description:

TS-4700 images originating from images older than 02-02-2016 show horizontal shaking on the 10" TPC, or typically any displays 800x600 or larger.

Workaround:

The shaking is caused by the LCD having insufficient bandwidth to the memory. Failing to draw on time causes the screen to appear to shake. The fix is to adjust the DMA priority to allow the LCD controller higher priority to the memory to always draw on time.

In startup add the command:

 devmem 0xB0000280 32 0x10102

This can be added directly into your Linuxrc to happen on startup. For example, adding before getdio:

 ifconfig lo 127.0.0.1 up
 route add -net 127.0.0.0 netmask 255.0.0.0 lo
 xuartctl --server 
 
 eval `ts4700ctl --info`
 export bootdev model baseboard_model pclk dclk
 
 devmem 0xB0000280 32 0x10102
 
 eval `ts4700ctl --getdio`
 let dio9="(dio >> 9) & 0x1"
 XCONSOLE=0

You can also apply the fix just in Debian if you run this before any graphics:

 /initrd/bin/busybox devmem 0xB0000280 32 0x10102