compatible = "rockchip,rk3288_usb20_host";
reg = <0xff540000 0x40000>;
interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
- clocks = <&clk_gates13 6>, <&clk_gates7 7>;
- clock-names = "clk_usbphy1", "hclk_usb1";
+ clocks = <&clk_gates13 6>, <&clk_gates7 7>,
+ <&usbphy_480m>;
+ clock-names = "clk_usbphy1", "hclk_usb1",
+ "usbphy_480m";
};
usb2: usb@ff500000 {
static void usb20host_clock_init(void* pdata)
{
struct dwc_otg_platform_data *usbpdata=pdata;
- struct clk* ahbclk,*phyclk;
+ struct clk* ahbclk, *phyclk, *phyclk_480m;
ahbclk = devm_clk_get(usbpdata->dev, "hclk_usb1");
if (IS_ERR(ahbclk)) {
return;
}
+ phyclk_480m = devm_clk_get(usbpdata->dev, "usbphy_480m");
+ if (IS_ERR(phyclk_480m)) {
+ dev_err(usbpdata->dev, "Failed to get usbphy_480m\n");
+ return;
+ }
+
usbpdata->phyclk = phyclk;
usbpdata->ahbclk = ahbclk;
+ usbpdata->phyclk_480m = phyclk_480m;
}
static void usb20host_clock_enable(void* pdata, int enable)