Lines Matching refs:r

57 static void write_clkset1_for_usb_extal(struct rcar_gen3_usb3 *r, bool reset)  in write_clkset1_for_usb_extal()  argument
65 writew(val, r->base + USB30_CLKSET1); in write_clkset1_for_usb_extal()
68 static void rcar_gen3_phy_usb3_enable_ssc(struct rcar_gen3_usb3 *r) in rcar_gen3_phy_usb3_enable_ssc() argument
72 switch (r->ssc_range) { in rcar_gen3_phy_usb3_enable_ssc()
83 dev_err(&r->phy->dev, "%s: unsupported range (%x)\n", __func__, in rcar_gen3_phy_usb3_enable_ssc()
84 r->ssc_range); in rcar_gen3_phy_usb3_enable_ssc()
88 writew(val, r->base + USB30_SSC_SET); in rcar_gen3_phy_usb3_enable_ssc()
91 static void rcar_gen3_phy_usb3_select_usb_extal(struct rcar_gen3_usb3 *r) in rcar_gen3_phy_usb3_select_usb_extal() argument
93 write_clkset1_for_usb_extal(r, false); in rcar_gen3_phy_usb3_select_usb_extal()
94 if (r->ssc_range) in rcar_gen3_phy_usb3_select_usb_extal()
95 rcar_gen3_phy_usb3_enable_ssc(r); in rcar_gen3_phy_usb3_select_usb_extal()
97 r->base + USB30_CLKSET0); in rcar_gen3_phy_usb3_select_usb_extal()
98 writew(PHY_ENABLE_RESET_EN, r->base + USB30_PHY_ENABLE); in rcar_gen3_phy_usb3_select_usb_extal()
99 write_clkset1_for_usb_extal(r, true); in rcar_gen3_phy_usb3_select_usb_extal()
101 write_clkset1_for_usb_extal(r, false); in rcar_gen3_phy_usb3_select_usb_extal()
106 struct rcar_gen3_usb3 *r = phy_get_drvdata(p); in rcar_gen3_phy_usb3_init() local
108 dev_vdbg(&r->phy->dev, "%s: enter (%d, %d, %d)\n", __func__, in rcar_gen3_phy_usb3_init()
109 r->usb3s_clk, r->usb_extal, r->ssc_range); in rcar_gen3_phy_usb3_init()
111 if (!r->usb3s_clk && r->usb_extal) in rcar_gen3_phy_usb3_init()
112 rcar_gen3_phy_usb3_select_usb_extal(r); in rcar_gen3_phy_usb3_init()
115 writew(VBUS_EN_VBUS_EN, r->base + USB30_VBUS_EN); in rcar_gen3_phy_usb3_init()
134 struct rcar_gen3_usb3 *r; in rcar_gen3_phy_usb3_probe() local
145 r = devm_kzalloc(dev, sizeof(*r), GFP_KERNEL); in rcar_gen3_phy_usb3_probe()
146 if (!r) in rcar_gen3_phy_usb3_probe()
150 r->base = devm_ioremap_resource(dev, res); in rcar_gen3_phy_usb3_probe()
151 if (IS_ERR(r->base)) in rcar_gen3_phy_usb3_probe()
152 return PTR_ERR(r->base); in rcar_gen3_phy_usb3_probe()
156 r->usb3s_clk = !!clk_get_rate(clk); in rcar_gen3_phy_usb3_probe()
161 r->usb_extal = !!clk_get_rate(clk); in rcar_gen3_phy_usb3_probe()
165 if (!r->usb3s_clk && !r->usb_extal) { in rcar_gen3_phy_usb3_probe()
177 r->phy = devm_phy_create(dev, NULL, &rcar_gen3_phy_usb3_ops); in rcar_gen3_phy_usb3_probe()
178 if (IS_ERR(r->phy)) { in rcar_gen3_phy_usb3_probe()
180 ret = PTR_ERR(r->phy); in rcar_gen3_phy_usb3_probe()
184 of_property_read_u32(dev->of_node, "renesas,ssc-range", &r->ssc_range); in rcar_gen3_phy_usb3_probe()
186 platform_set_drvdata(pdev, r); in rcar_gen3_phy_usb3_probe()
187 phy_set_drvdata(r->phy, r); in rcar_gen3_phy_usb3_probe()