Lines Matching defs:phy
13 #include <linux/phy/phy.h>
16 #include "phy-samsung-usb2.h"
18 static int samsung_usb2_phy_power_on(struct phy *phy)
20 struct samsung_usb2_phy_instance *inst = phy_get_drvdata(phy);
24 dev_dbg(drv->dev, "Request to power_on \"%s\" usb phy\n",
60 static int samsung_usb2_phy_power_off(struct phy *phy)
62 struct samsung_usb2_phy_instance *inst = phy_get_drvdata(phy);
66 dev_dbg(drv->dev, "Request to power_off \"%s\" usb phy\n",
89 static struct phy *samsung_usb2_phy_xlate(struct device *dev,
101 return drv->instances[args->args[0]].phy;
107 .compatible = "samsung,exynos3250-usb2-phy",
113 .compatible = "samsung,exynos4210-usb2-phy",
119 .compatible = "samsung,exynos4x12-usb2-phy",
125 .compatible = "samsung,exynos5250-usb2-phy",
129 .compatible = "samsung,exynos5420-usb2-phy",
135 .compatible = "samsung,s5pv210-usb2-phy",
173 dev_err(dev, "Failed to map register memory (phy)\n");
193 drv->clk = devm_clk_get(dev, "phy");
195 dev_err(dev, "Failed to get clock of phy controller\n");
201 dev_err(dev, "Failed to get reference clock for the phy controller\n");
224 dev_dbg(dev, "Creating phy \"%s\"\n", label);
225 p->phy = devm_phy_create(dev, NULL, &samsung_usb2_phy_ops);
226 if (IS_ERR(p->phy)) {
229 return PTR_ERR(p->phy);
234 phy_set_bus_width(p->phy, 8);
235 phy_set_drvdata(p->phy, p);
241 dev_err(drv->dev, "Failed to register phy provider\n");
252 .name = "samsung-usb2-phy",
261 MODULE_ALIAS("platform:samsung-usb2-phy");