Kernel-3.10.0-957.el7_nvidia,tegra20-ehci

Tegra SOC USB controllers

The device node for a USB controller that is part of a Tegra
SOC is as described in the document “Open Firmware Recommended
Practice : Universal Serial Bus” with the following modifications
and additions :

Required properties :

  • compatible : Should be “nvidia,tegra20-ehci” for USB controllers
    used in host mode.
  • phy_type : Should be one of “ulpi” or “utmi”.
  • nvidia,vbus-gpio : If present, specifies a gpio that needs to be
    activated for the bus to be powered.
  • nvidia,phy : phandle of the PHY instance, the controller is connected to.

Required properties for phy_type == ulpi:

  • nvidia,phy-reset-gpio : The GPIO used to reset the PHY.

Optional properties:

  • dr_mode : dual role mode. Indicates the working mode for
    nvidia,tegra20-ehci compatible controllers. Can be “host”, “peripheral”,
    or “otg”. Default to “host” if not defined for backward compatibility.
    host means this is a host controller
    peripheral means it is device controller
    otg means it can operate as either (“on the go”)
  • nvidia,has-legacy-mode : boolean indicates whether this controller can
    operate in legacy mode (as APX 2500 / 2600). In legacy mode some
    registers are accessed through the APB_MISC base address instead of
    the USB controller. Since this is a legacy issue it probably does not
    warrant a compatible string of its own.
  • nvidia,needs-double-reset : boolean is to be set for some of the Tegra2
    USB ports, which need reset twice due to hardware issues.