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.

AM3505 - USB3320 (Swap DP/DM) linux support

Dear Community Members,

We want to connect a USB3320 USB transceiver to the USB2/ULPI Interface and want to use linux.
There is a Swap DP/DM feature that can be accessed by setting
the respective bit in the vendor specific register 0x39(write).
We want to set it to 1 in order to prevent crossing DP/DM traces on our board.

Is this / and how is this supported by the available linux driver? Or is it
planned to be supported? Can this be configured?

Thank you for your help

Best regards
Christoph

  • I think you are referring to PHY register (0x39). You can access PHY resgiters using INSNREG05_ULPI register.

    You can refer the old EHCI driver code at http://omaplbp.india.ti.com/git/?p=12x/.git;a=commitdiff;h=4094a61fa979402ae595ba896bf0d9d91e0b877b

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

    +       /* Refer ISSUE2: LINK assumes external charge pump */
    +
    +       /* use Port1 VBUS to charge externally Port2:
    +        *      So for PHY mode operation use Port2 only
    +        */
    +       omap_writel((0xA << EHCI_INSNREG05_ULPI_REGADD_SHIFT) |/* OTG ctrl reg*/
    +                       (2 << EHCI_INSNREG05_ULPI_OPSEL_SHIFT) |/*   Write */
    +                       (1 << EHCI_INSNREG05_ULPI_PORTSEL_SHIFT) |/* Port1 */
    +                       (1 << EHCI_INSNREG05_ULPI_CONTROL_SHIFT) |/* Start */
    +                       (0x26),
    +                       EHCI_INSNREG05_ULPI);
    +
    +       while (!(omap_readl(EHCI_INSNREG05_ULPI) &

    +               (1<<EHCI_INSNREG05_ULPI_CONTROL_SHIFT)));

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

    Regards,
    Ajay