This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM4378: USB touch panel not recognized

Part Number: AM4378
Other Parts Discussed in Thread: AM4372

Hi, 

My customer  use AM4378. OS is Linux with processor SDK. And they are facing one issue with touch panel.

Currently, they are connecting the LCD with touch panel via AM 437x and USB I/F,
There was a problem that touch operation was not detected by repeating power ON / OFF test.

When customer checked the log by dmesg,  AM4378 can only recognize one touch panel for the place where two devices should be detected in the part of ★.
(★ ★ is detected as disconnected state)

Are there any assumed factors and point of analysis (USB, HID device driver)
Could you advise me it?

【OK】

Aug 10 23:43:15 am437x-evm user.notice kernel: [    9.685291] random: dd urandom read with 128 bits of entropy available

Aug 10 23:43:15 am437x-evm user.info kernel: [    9.792402] usb 3-1: New USB device found, idVendor=06d3, idProduct=6400

Aug 10 23:43:15 am437x-evm user.info kernel: [    9.799149] usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0

Aug 10 23:43:15 am437x-evm user.notice kernel: [    9.811972] random: nonblocking pool is initialized

Aug 10 23:43:15 am437x-evm user.info kernel: [    9.838687] usb 3-1: Product: USB Touch (WinXP&7)

Aug 10 23:43:15 am437x-evm user.info kernel: [    9.851142] usb 3-1: Manufacturer: MITSUBISHI ELECTRIC

Aug 10 23:43:15 am437x-evm user.info kernel: [   10.674551] input: MITSUBISHI ELECTRIC USB Touch (WinXP&7) Pen as /devices/platform/44000000.ocp/483c0000.omap_dwc3/483d0000.usb/xhci-hcd.1.auto/usb3/3-1/3-1:1.0/0003:06D3:6400.0001/input/input1

Aug 10 23:43:15 am437x-evm user.info kernel: [   10.701501] input: MITSUBISHI ELECTRIC USB Touch (WinXP&7) as /devices/platform/44000000.ocp/483c0000.omap_dwc3/483d0000.usb/xhci-hcd.1.auto/usb3/3-1/3-1:1.0/0003:06D3:6400.0001/input/input2

Aug 10 23:43:15 am437x-evm user.info kernel: [   10.725752] NET: Registered protocol family 10

Aug 10 23:43:15 am437x-evm user.info kernel: [   10.737062] hid-multitouch 0003:06D3:6400.0001: input,hiddev0: USB HID v1.11 Pointer [MITSUBISHI ELECTRIC USB Touch (WinXP&7)] on usb-xhci-hcd.1.auto-1/input0 ★

Aug 10 23:43:15 am437x-evm user.info kernel: [   10.755476] hid-multitouch 0003:06D3:6400.0002: hiddev0: USB HID v1.11 Device [MITSUBISHI ELECTRIC USB Touch (WinXP&7)] on usb-xhci-hcd.1.auto-1/input1     ★

Aug 10 23:43:15 am437x-evm user.info kernel: [   10.771307] usbcore: registered new interface driver usbhid

Aug 10 23:43:15 am437x-evm user.info kernel: [   10.781413] usbhid: USB HID core driver

 

【NG】

Aug  2 11:39:46 am437x-evm user.info kernel: [    8.733216] usb 3-1: new full-speed USB device number 2 using xhci-hcd

Aug  2 11:39:46 am437x-evm user.info kernel: [    8.882363] usb 3-1: New USB device found, idVendor=06d3, idProduct=6400

Aug  2 11:39:46 am437x-evm user.info kernel: [    8.889110] usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0

Aug  2 11:39:46 am437x-evm user.info kernel: [    8.934612] usb 3-1: Product: USB Touch (WinXP&7)

Aug  2 11:39:46 am437x-evm user.info kernel: [    8.939357] usb 3-1: Manufacturer: MITSUBISHI ELECTRIC

Aug  2 11:39:46 am437x-evm user.info kernel: [    9.811201] input: MITSUBISHI ELECTRIC USB Touch (WinXP&7) Pen as /devices/platform/44000000.ocp/483c0000.omap_dwc3/483d0000.usb/xhci-hcd.1.auto/usb3/3-1/3-1:1.0/0003:06D3:6400.0001/input/input1

Aug  2 11:39:46 am437x-evm user.info kernel: [    9.842613] input: MITSUBISHI ELECTRIC USB Touch (WinXP&7) as /devices/platform/44000000.ocp/483c0000.omap_dwc3/483d0000.usb/xhci-hcd.1.auto/usb3/3-1/3-1:1.0/0003:06D3:6400.0001/input/input2

Aug  2 11:39:46 am437x-evm user.info kernel: [    9.864942] NET: Registered protocol family 10

Aug  2 11:39:46 am437x-evm user.info kernel: [    9.877028] hid-multitouch 0003:06D3:6400.0001: input,hiddev0: USB HID v1.11 Pointer [MITSUBISHI ELECTRIC USB Touch (WinXP&7)] on usb-xhci-hcd.1.auto-1/input0 ★

Aug  2 11:39:46 am437x-evm user.info kernel: [    9.899983] bridge: automatic filtering via arp/ip/ip6tables has been deprecated. Update your scripts to load br_netfilter if you need this.

Aug  2 11:39:46 am437x-evm user.info kernel: [    9.939398] device eth0 entered promiscuous mode

Aug  2 11:39:46 am437x-evm user.info kernel: [    9.970208] device eth1 entered promiscuous mode

Aug  2 11:39:46 am437x-evm user.info kernel: [    9.991132] net eth0: initializing cpsw version 1.15 (0)

Aug  2 11:39:46 am437x-evm user.info kernel: [   10.071479] net eth0: phy found : id is : 0x221622

Aug  2 11:39:46 am437x-evm user.info kernel: [   10.080169] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready

Aug  2 11:39:46 am437x-evm user.info kernel: [   10.096732] net eth1: initializing cpsw version 1.15 (0)

Aug  2 11:39:46 am437x-evm user.info kernel: [   10.181466] net eth1: phy found : id is : 0x221622

Aug  2 11:39:46 am437x-evm user.info kernel: [   10.186457] IPv6: ADDRCONF(NETDEV_UP): eth1: link is not ready

Aug  2 11:39:46 am437x-evm user.info kernel: [   10.240419] vbr0: port 2(eth1) entered forwarding state

Aug  2 11:39:46 am437x-evm user.info kernel: [   10.245826] vbr0: port 2(eth1) entered forwarding state

Aug  2 11:39:46 am437x-evm user.info kernel: [   10.251114] vbr0: port 1(eth0) entered forwarding state

Aug  2 11:39:46 am437x-evm user.info kernel: [   10.256371] vbr0: port 1(eth0) entered forwarding state

Aug  2 11:39:46 am437x-evm user.info kernel: [   10.951098] vbr0: port 1(eth0) entered disabled state

Aug  2 11:39:46 am437x-evm user.info kernel: [   10.956291] vbr0: port 2(eth1) entered disabled state

Aug  2 11:39:48 am437x-evm user.debug kernel: [   13.482094] gpio-39 (sysfs): gpiod_request: status -16

Aug  2 11:39:48 am437x-evm user.debug kernel: [   13.482112] export_store: status -16

Aug  2 11:39:48 am437x-evm user.debug kernel: [   13.493701] gpio-60 (sysfs): gpiod_request: status -16

Aug  2 11:39:48 am437x-evm user.debug kernel: [   13.493720] export_store: status -16

Aug  2 11:39:48 am437x-evm user.debug kernel: [   13.688219] gpio-109 (sysfs): gpiod_request: status -16

Aug  2 11:39:48 am437x-evm user.debug kernel: [   13.688237] export_store: status -16

Aug  2 11:39:48 am437x-evm user.debug kernel: [   13.694670] gpio-106 (sysfs): gpiod_request: status -16

Aug  2 11:39:48 am437x-evm user.debug kernel: [   13.694687] export_store: status -16

Aug  2 11:39:48 am437x-evm user.crit kernel: [   13.866227] watchdog watchdog0: watchdog did not stop!

Aug  2 11:39:53 am437x-evm user.crit kernel: [   18.882752] watchdog watchdog0: watchdog did not stop!

Aug  2 11:39:54 am437x-evm user.warn kernel: [   19.901002] xhci-hcd xhci-hcd.1.auto: xHCI host not responding to stop endpoint command.

Aug  2 11:39:54 am437x-evm user.warn kernel: [   19.909153] xhci-hcd xhci-hcd.1.auto: Assuming host is dying, halting host.

Aug  2 11:39:54 am437x-evm user.warn kernel: [   19.938603] xhci-hcd xhci-hcd.1.auto: Host not halted after 16000 microseconds.

Aug  2 11:39:54 am437x-evm user.warn kernel: [   19.945957] xhci-hcd xhci-hcd.1.auto: Non-responsive xHCI host is not halting.

Aug  2 11:39:54 am437x-evm user.warn kernel: [   19.953209] xhci-hcd xhci-hcd.1.auto: Completing active URBs anyway.

Aug  2 11:39:54 am437x-evm user.err kernel: [   19.959639] xhci-hcd xhci-hcd.1.auto: HC died; cleaning up

Aug  2 11:39:54 am437x-evm user.info kernel: [   19.965784] usbcore: registered new interface driver usbhid

Aug  2 11:39:54 am437x-evm user.info kernel: [   19.971476] usb 3-1: USB disconnect, device number 2 ★★

Aug  2 11:39:54 am437x-evm user.info kernel: [   19.988634] usbhid: USB HID core driver

Aug  2 11:39:54 am437x-evm user.info kernel: [   20.082882] usbcore: registered new interface driver usbmouse

-------------------------------------------------------------------------------------

I appreciate your quick reply.

Best regards,

Michi

  • Hi,

    Which SDK version is this?
  • Biser-san,

    Thank you for your quick reply.

    SDK version is 2.00.00.

    Best regards,
    Michi
  • Feedback from the factory team:

    The log shows the xHCI host has died when the enumeration failed. A similar log has been reported in last year and some patches went into the kernel to solve the issue. Recommendation is to test with the latest Processor SDK.
  • Dear Biser-san,

    Thank you for your continuous cooperation.

    My customer needs more suppor from you.
    Because, as you know, customer uses SDK2.00.00(Kernel 4.1, Qt 5.5). But regarding SDK4.00.00.04, Linux kernel is 4.9 and !Qt is 5.7.1. It is quite different from the current environment. So there is a lot of risk to make it the latest version.

    So customer would like to confirm patch corrections on this issue.

    Looking at the commit log under the USB driver (/ drivers / usb) of SDK 4.0, after SDK 2.0 (August 2015) which is currently based, more than 1000 commits are being made and multiple branches are merged.

    So customer would like to know a patch that seems to be suitable from this issue.

    The following is additional information from customer.
    -----------------------------------------------------------------------------------
    1) Customer tried changing from ACTIVE_HIGH to ACTIVE_LOW according to the following patch applied to SDK 2.00.00 or later, but it has no effect.
    Commit 0731 cbdd 5 f 408 5020 36 184 ab 510 c 924 a 6551 bf 18
    Author: Mugunthan V N <mugunthanvnm@ti.com>
    Date: Mon Oct 12 14: 37: 11 2015 + 0530

    2) Customer checked by adding the following to the DTS of mmc1: mmc @ 48060000 of am4372.dtsi, There was no effect.
    ti,dual-volt;
    --------------------------------------------------------------------------------------

    Please ask this to factory team, again.

    I appreciate your continuous support.

    Best regards,
    Michi
  • Michi-san,

    I saw the log also has gpio related error messages, I am not sure what it is. The referred patch is gpio related, it wouldn't be relevant to this usb issue.
    I did some search, the linux kernel had many times that the xhci driver shows this 'HC died' because of "xHCI host not responding to stop endpoint command" problem in the last year or two, and they all had different root cause. So I am unable to point to one or few kernel patches which will fix your issue. Migrating to the latest Processor SDK is the better option that I can think of.