Thierry Reding | f202e02 | 2014-12-09 22:25:09 -0700 | [diff] [blame] | 1 | #ifndef _TEGRA_XUSB_PADCTL_H_ |
| 2 | #define _TEGRA_XUSB_PADCTL_H_ |
| 3 | |
| 4 | struct tegra_xusb_phy; |
| 5 | |
| 6 | /** |
| 7 | * tegra_xusb_phy_get() - obtain a reference to a specified padctl PHY |
| 8 | * @type: the type of PHY to obtain |
| 9 | * |
| 10 | * The type of PHY varies between SoC generations. Typically there are XUSB, |
| 11 | * PCIe and SATA PHYs, though not all generations support all of them. The |
| 12 | * value of type can usually be directly parsed from a device tree. |
| 13 | * |
| 14 | * Return: a pointer to the PHY or NULL if no such PHY exists |
| 15 | */ |
| 16 | struct tegra_xusb_phy *tegra_xusb_phy_get(unsigned int type); |
| 17 | |
Simon Glass | cf0c6e2 | 2017-07-25 08:29:59 -0600 | [diff] [blame] | 18 | void tegra_xusb_padctl_init(void); |
JC Kuo | f479aca | 2020-03-26 16:10:09 -0700 | [diff] [blame] | 19 | void tegra_xusb_padctl_exit(void); |
Thierry Reding | f202e02 | 2014-12-09 22:25:09 -0700 | [diff] [blame] | 20 | int tegra_xusb_phy_prepare(struct tegra_xusb_phy *phy); |
| 21 | int tegra_xusb_phy_enable(struct tegra_xusb_phy *phy); |
| 22 | int tegra_xusb_phy_disable(struct tegra_xusb_phy *phy); |
| 23 | int tegra_xusb_phy_unprepare(struct tegra_xusb_phy *phy); |
| 24 | |
| 25 | #endif |