mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
usb: phy: registering Tegra USB PHY as platform driver
Registered Tegra USB PHY as a separate platform driver. To synchronize host controller and PHY initialization, used deferred probe mechanism. As PHY should be initialized before EHCI starts running, deferred probe of Tegra EHCI driver till PHY probe gets completed. Got rid of instance number based handling in host driver. Made use of DT params to get the PHY Pad registers. Signed-off-by: Venu Byravarasu <vbyravarasu@nvidia.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
This commit is contained in:
parent
6829f92f6e
commit
2d22b42db0
3 changed files with 231 additions and 211 deletions
|
@ -63,14 +63,9 @@ struct tegra_usb_phy {
|
|||
bool is_legacy_phy;
|
||||
bool is_ulpi_phy;
|
||||
int reset_gpio;
|
||||
void (*set_pts)(struct usb_phy *x, u8 pts_val);
|
||||
void (*set_phcd)(struct usb_phy *x, bool enable);
|
||||
};
|
||||
|
||||
struct tegra_usb_phy *tegra_usb_phy_open(struct device *dev, int instance,
|
||||
void __iomem *regs, void *config,
|
||||
void (*set_pts)(struct usb_phy *x, u8 pts_val),
|
||||
void (*set_phcd)(struct usb_phy *x, bool enable));
|
||||
struct usb_phy *tegra_usb_get_phy(struct device_node *dn);
|
||||
|
||||
void tegra_usb_phy_preresume(struct usb_phy *phy);
|
||||
|
||||
|
@ -81,4 +76,8 @@ void tegra_ehci_phy_restore_start(struct usb_phy *phy,
|
|||
|
||||
void tegra_ehci_phy_restore_end(struct usb_phy *phy);
|
||||
|
||||
void tegra_ehci_set_pts(struct usb_phy *x, u8 pts_val);
|
||||
|
||||
void tegra_ehci_set_phcd(struct usb_phy *x, bool enable);
|
||||
|
||||
#endif /* __TEGRA_USB_PHY_H */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue