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.

OMAP3 USB HOST Controller - PHY management

In OMAP HSUSB Host controller (EHCI), How the PHY management happens in ULPI mode?  i.e. when HSUSB Host controller's EHCI port is configured in ULPI mode to work with an external PHY. Who will write/ read the PHY register, is it USB driver or host controller?

For example, during standby - resume of PHY, do we need to write the PHY register directly, this does not seem to be possible for PHY with only ULPI interface. Only Link layer can manupulate the PHY registers over ULPI link? or is it that when the driver configures the stop/run bit of the EHCI host controller, host controller hardware automatically writes to whatever PHY registers that are required to put the PHY in standby mode?

  • Anybody who knows about OMAP3 HSUSBHC hardware, please do respond.

  • I tried to excess the external PHY register through following register reads/write,

    ULPI_VENDOR_ID_LO_i              R    0x0000 0800 + (0x100 * i) 0x4806 2800 + (0x100 * i)
    ULPI_VENDOR_ID_HI_i               R    0x0000 0001 + (0x100 * i) 0x4806 2801 + (0x100 * i)
    ULPI_PRODUCT_ID_LO_i            R    0x0000 0002 + (0x100 * i) 0x4806 2802 + (0x100 * i)
    ULPI_PRODUCT_ID_HI_i             R    0x0000 0003 + (0x100 * i) 0x4806 2803 + (0x100 * i)
    ULPI_FUNCTION_CTRL_i            W   0x0000 0004 + (0x100 * i) 0x4806 2804 + (0x100 * i)
    ULPI_FUNCTION_CTRL_SET_i    RW 0x0000 0005 + (0x100 * i) 0x4806 2805 + (0x100 * i)
    ULPI_FUNCTION_CTRL_CLR_i    RW 0x0000 0006 + (0x100 * i) 0x4806 2806 + (0x100 * i)
    ULPI_INTERFACE_CTRL_i          RW 0x0000 0007 + (0x100 * i) 0x4806 2807 + (0x100 * i)
    ULPI_INTERFACE_CTRL_SET_i  RW 0x0000 0008 + (0x100 * i) 0x4806 2808 + (0x100 * i)
    ULPI_INTERFACE_CTRL_CLR_i  RW 0x0000 0009 + (0x100 * i) 0x4806 2809 + (0x100 * i) 

    But,

    It always reads zeros.... Am not able to read the vendor/product ID