Lines Matching defs:phy
16 #include <linux/phy/phy.h>
53 static int qcom_ipq806x_sata_phy_init(struct phy *generic_phy)
55 struct qcom_ipq806x_sata_phy *phy = phy_get_drvdata(generic_phy);
59 reg = readl_relaxed(phy->mmio + SATA_PHY_P0_PARAM3);
61 writel_relaxed(reg, phy->mmio + SATA_PHY_P0_PARAM3);
63 reg = readl_relaxed(phy->mmio + SATA_PHY_P0_PARAM0) &
68 writel_relaxed(reg, phy->mmio + SATA_PHY_P0_PARAM0);
70 reg = readl_relaxed(phy->mmio + SATA_PHY_P0_PARAM1) &
77 writel_relaxed(reg, phy->mmio + SATA_PHY_P0_PARAM1);
79 reg = readl_relaxed(phy->mmio + SATA_PHY_P0_PARAM2) &
82 writel_relaxed(reg, phy->mmio + SATA_PHY_P0_PARAM2);
85 reg = readl_relaxed(phy->mmio + SATA_PHY_P0_PARAM4);
87 writel_relaxed(reg, phy->mmio + SATA_PHY_P0_PARAM4);
90 reg = readl_relaxed(phy->mmio + SATA_PHY_P0_PARAM4);
92 writel_relaxed(reg, phy->mmio + SATA_PHY_P0_PARAM4);
101 reg = readl_relaxed(phy->mmio + SATA_PHY_P0_PARAM4);
103 writel_relaxed(reg, phy->mmio + SATA_PHY_P0_PARAM4);
108 static int qcom_ipq806x_sata_phy_exit(struct phy *generic_phy)
110 struct qcom_ipq806x_sata_phy *phy = phy_get_drvdata(generic_phy);
114 reg = readl_relaxed(phy->mmio + SATA_PHY_P0_PARAM4);
116 writel_relaxed(reg, phy->mmio + SATA_PHY_P0_PARAM4);
129 struct qcom_ipq806x_sata_phy *phy;
133 struct phy *generic_phy;
136 phy = devm_kzalloc(dev, sizeof(*phy), GFP_KERNEL);
137 if (!phy)
141 phy->mmio = devm_ioremap_resource(dev, res);
142 if (IS_ERR(phy->mmio))
143 return PTR_ERR(phy->mmio);
147 dev_err(dev, "%s: failed to create phy\n", __func__);
151 phy->dev = dev;
152 phy_set_drvdata(generic_phy, phy);
153 platform_set_drvdata(pdev, phy);
155 phy->cfg_clk = devm_clk_get(dev, "cfg");
156 if (IS_ERR(phy->cfg_clk)) {
158 return PTR_ERR(phy->cfg_clk);
161 ret = clk_prepare_enable(phy->cfg_clk);
167 clk_disable_unprepare(phy->cfg_clk);
168 dev_err(dev, "%s: failed to register phy\n", __func__);
177 struct qcom_ipq806x_sata_phy *phy = platform_get_drvdata(pdev);
179 clk_disable_unprepare(phy->cfg_clk);
185 { .compatible = "qcom,ipq806x-sata-phy" },
194 .name = "qcom-ipq806x-sata-phy",