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.

Linux/DRA77P: USB not detected in new kernel.

Part Number: DRA77P

Tool/software: Linux

Hi,

We are using psdk v5 with kernel 4.14 and we have a custom board with a ublox modem connected via USB2_DP, USB2_DM. In uboot i am able to get usb info

=> usb info 
1: Hub,  USB Revision 3.0
 - U-Boot XHCI Host Controller 
 - Class: Hub
 - PacketSize: 512  Configurations: 1
 - Vendor: 0x0000  Product 0x0000 Version 1.0
   Configuration: 1
   - Interfaces: 1 Self Powered 0mA
     Interface: 0
     - Alternate Setting 0, Endpoints: 1
     - Class Hub
     - Endpoint 1 In Interrupt MaxPacket 8 Interval 255ms

2: Communication,  USB Revision 2.0
 - u-blox MODEM-LTE 000000000100
 - Class: 
 - PacketSize: 64  Configurations: 1
 - Vendor: 0x1546  Product 0x1143 Version 1.0
   Configuration: 1
   - Interfaces: 8 Self Powered Remote Wakeup 500mA
     Interface: 0
     - Alternate Setting 0, Endpoints: 1
     - Class Communication
     - String: "CDC Ethernet Control Model (ECM)"
     - Endpoint 2 In Interrupt MaxPacket 16 Interval 9ms
     Interface: 1
     - Alternate Setting 0, Endpoints: 0
     - Class CDC Data
     - Endpoint 1 In Bulk MaxPacket 512
     - Endpoint 1 Out Bulk MaxPacket 512
     Interface: 2
     - Alternate Setting 0, Endpoints: 1
     - Class Communication
     - String: "CDC Abstract Control Model (ACM)"
     - Endpoint 4 In Interrupt MaxPacket 10 Interval 9ms
     Interface: 3
     - Alternate Setting 0, Endpoints: 2
     - Class CDC Data
     - String: "CDC ACM Data"
     - Endpoint 3 In Bulk MaxPacket 512
     - Endpoint 2 Out Bulk MaxPacket 512
     Interface: 4
     - Alternate Setting 0, Endpoints: 1
     - Class Communication
     - String: "CDC Abstract Control Model (ACM)"
     - Endpoint 6 In Interrupt MaxPacket 10 Interval 9ms
     Interface: 5
     - Alternate Setting 0, Endpoints: 2
     - Class CDC Data
     - String: "CDC ACM Data"
     - Endpoint 5 In Bulk MaxPacket 512
     - Endpoint 3 Out Bulk MaxPacket 512
     Interface: 6
     - Alternate Setting 0, Endpoints: 1
     - Class Communication
     - String: "CDC Abstract Control Model (ACM)"
     - Endpoint 8 In Interrupt MaxPacket 10 Interval 9ms
     Interface: 7
     - Alternate Setting 0, Endpoints: 2
     - Class CDC Data
     - String: "CDC ACM Data"
     - Endpoint 7 In Bulk MaxPacket 512
     - Endpoint 4 Out Bulk MaxPacket 512

but after the kernel boot up, we do not find any ACM ports, even after giving lsusb command we get output,

lsusb
Bus 002 Device 003: ID 1c04:3074 QNAP System Inc. 
Bus 001 Device 003: ID 0eef:7200 D-WAV Scientific Co., Ltd Touchscreen Controller
Bus 001 Device 004: ID 1c04:2074 QNAP System Inc. 
Bus 001 Device 002: ID 1c04:2074 QNAP System Inc. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 002: ID 1c04:3074 QNAP System Inc. 
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

The dtb which we were using previously in kernel 4.4 had no such problem. We checked our dra76-evm.dts file in new kernel 4.14 but we didn't find any change from previous dts from kernel 4.4 in case of usb2. What can be the issue? 

  • Hi Sam,

    Can you let us know what is the USB port instance to which the ublox modem is connected? Is it  USB0 port ( usb@48890000) or the USB1 port (usb@488d0000)?

    Can you provide the complete device tree setting for review along the complete dmesg dump?

    Also on the linux prompt, can you run below and provide us the output:

    cat /sys/kernel/debug/48890000.usb/mode
    cat /sys/kernel/debug/488d0000.usb/mode

    and

    cat /sys/firmware/devicetree/base/ocp/omap_dwc3_1@48880000/usb@48890000/dr_mode
    cat /sys/firmware/devicetree/base/ocp/omap_dwc3_2@488c0000/usb@488d0000/dr_mode

    regards,

    Praveen

  • Hi Praveen,

    The issue is solved. We made a change in the dts by removing extcon=<&extcon_usb2> from usb2 block which was using pcf expanders gpio which is not used in our board. Now we can see the ACM ports from Ublox.

    Regards,

    Sam