TM7000 Touch issue with SAMA5D3-Xplained - I2C frozen

This forum is for users of Microchip MPUs and who are interested in using Linux OS.

Moderator: nferre

jknoch
Posts: 5
Joined: Wed Nov 12, 2014 3:13 pm

TM7000 Touch issue with SAMA5D3-Xplained - I2C frozen

Wed Nov 26, 2014 7:00 pm

I am using a PDA TM7000 7” capacitive touch screen display with the SAMA5D3-Xplained board and am running into some issues. I see the problem running the Home Automation demo provided in linux4sam-poky-qte-sama5d3_xplained-4.4.zip (demo_linux_nandflash_pda7.sh) as well as with my own Qt application running under the same setup. The issue is some type of communication issue with the touchscreen and can happen after the application has been successfully running for a while:

sama5d3_xplained login: at91_i2c f0018000.i2c: controller timed out
atmel_mxt_ts 1-004c: __mxt_read_reg: i2c transfer failed (-110)
atmel_mxt_ts 1-004c: Failed to read message
at91_i2c f0018000.i2c: controller timed out
atmel_mxt_ts 1-004c: __mxt_read_reg: i2c transfer failed (-110)
atmel_mxt_ts 1-004c: Failed to read message

When this occurs, touch stops working. I can more easily force this error by doing a muti-touch on the screen. Does anyone know if there is some configuration or driver update this will address this issue? Note: I currently have no need for multi-touch support.

Additional information from log:

Poky (Yocto Project Reference Distro) 1.5.1 sama5d3_xplained /dev/ttyS0

of_dma_request_slave_channel: dma-names property missing or empty
at91_i2c f0014000.i2c: can't get a DMA channel for tx
at91_i2c f0014000.i2c: can't use DMA
at91_i2c f0014000.i2c: AT91 i2c bus driver.
at91_i2c f0018000.i2c: using dma0chan0 (tx) and dma0chan1 (rx) for DMA transfers
at91_i2c f0018000.i2c: AT91 i2c bus driver.
at91_i2c f801c000.i2c: can't get a DMA channel for tx
at91_i2c f801c000.i2c: can't use DMA
at91_i2c f801c000.i2c: AT91 i2c bus driver.

qt1070 1-001b: AT42QT1070 firmware version 15
input: AT42QT1070 QTouch Sensor as /devices/ahb.0/apb.1/f0018000.i2c/i2c-1/1-001b/input/input0
atmel_mxt_ts 1-004c: Family ID: 161 Variant ID: 11 Major.Minor.Build: 2.2.AA
atmel_mxt_ts 1-004c: Matrix X Size: 24 Matrix Y Size: 32 Object Num: 24
input: Atmel maXTouch Touchscreen as /devices/ahb.0/apb.1/f0018000.i2c/i2c-1/1-004c/input/input1

I have also seen cases where it starting up "locked up" with the following in the log:

QWSTslibMouseHandlerPrivate: ts_open() failed with error: 'No such file or directory'
Please check your tslib installation!

Thanks
On a somewhat related note, I was going to check the MaxTouch configuration using instructions at linux4sam/bin/view/Linux4SAM/UsingMaxTouch. This includes using git, but git is not available on the target and does not appear to be available via any opkg package. Am I missing something here?


UPDATE (12/2/14) - This is an issue with the I2C interface to the ACT8865 power management unit creating I2C Bus contention with multi-byte devices on the same bus. See the ERRATA in http://www.active-semi.com/sheets/ACT8865_Datasheet.pdf and discussions/viewtopic.php/f,33/t,22923.html. I worked around this by placing the following commands to disable the ACT8865 I2C interface in a late startup script:

i2cset -y 1 0x5b 0x0B 0xE9 || true
i2cset -y 1 0x5b 0x02 0x07 || true
i2cset -y 1 0x5b 0x03 0x01 || true

I’m not sure i2cset is the safest way to do this, so I would be open to any input on a better approach.
Note: I must have had the 303 version of the chip; there are different instructions in the ERRATA for the 305 version.
nferre
Site Admin
Posts: 225
Joined: Wed Feb 14, 2007 11:17 am

Re: TM7000 Touch issue with SAMA5D3-Xplained - I2C frozen

Fri Dec 12, 2014 10:25 am

Hi,

Absolutely, you found the hardware bug involved in this issue: http://www.active-semi.com/sheets/ACT8865_Datasheet.pdf
and a related post is here: discussions/viewtopic.php/p,43801.html#p43801

The issue can also be worked-around by using latest revisions of AT91Bootstrap (3.7.1 is good) where we integrated these i2c commands to the PMIC.

Bye,

Return to “LINUX”

Who is online

Users browsing this forum: Google [Bot] and 7 guests