AM64x: Linux hangs on repetitive probe/removal of gadget zero

XMLWordPrintable

    • Type: Bug
    • Resolution: Fixed
    • Priority: Medium
    • Linux Core SDK
    • LCPD-38756
    • 10.00
    • Hide
      am64xx-evm
      am64xx_sk-fs
      am68_sk-fs
      am68_sk-se
      am69_sk-fs
      j7200-evm
      j7200-hsevm
      j7200_evm-fs
      j721e-evm-ivi
      j721e-hsevm
      j721e-idk-gw
      j721e-sk
      j721s2-evm
      j721s2-hsevm
      j721s2_evm-fs
      j721s2_evm-se
      j722s_evm-fs
      j722s_evm-se
      j742s2_evm-fs
      j784s4-evm
      j784s4-hsevm
      Show
      am64xx-evm am64xx_sk-fs am68_sk-fs am68_sk-se am69_sk-fs j7200-evm j7200-hsevm j7200_evm-fs j721e-evm-ivi j721e-hsevm j721e-idk-gw j721e-sk j721s2-evm j721s2-hsevm j721s2_evm-fs j721s2_evm-se j722s_evm-fs j722s_evm-se j742s2_evm-fs j784s4-evm j784s4-hsevm

      When the USB Controller on AM64 is configured for Device mode of operation, and the Gadget Zero module is repeatedly loaded/unloaded, it eventually results in Linux hanging:

      root@am64xx-evm:~# while true; do modprobe g_zero; modprobe -r g_zero; done

      The lockup happens when activating or deactivating the UDC (the USB device controller), which is in kernel function cdns3_gadget_udc_start() or cdns3_gadget_udc_stop() respectively.

      When the lockup happens, JTAG can connect to A53_0 or DAP, but is unable to access to DDR, peripheral MMR (tried main_uart0/1), and A53_0 registers.

      Resolution:
      https://lore.kernel.org/r/20250206125943.786949-1-s-vadapalli@ti.com

            Assignee:
            TI User
            Reporter:
            TI User
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved:

                Connection: Intermediate to External PROD System
                EXTSYNC-4955 - AM64x: Linux hangs on repetitive pr...
                SYNCHRONIZED
                • Last Sync Date: