usb: mtu3: get resources that cause deferred probe earlier
Some resources such as regulator, clock usually cause deferred probe, get them earlier to avoid more ineffective processing. Signed-off-by: Chunfeng Yun <chunfeng.yun@mediatek.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
5de4e1ea9a
commit
5cbf2d69f6
|
@ -204,6 +204,18 @@ static int get_ssusb_rscs(struct platform_device *pdev, struct ssusb_mtk *ssusb)
|
|||
int i;
|
||||
int ret;
|
||||
|
||||
ssusb->vusb33 = devm_regulator_get(&pdev->dev, "vusb33");
|
||||
if (IS_ERR(ssusb->vusb33)) {
|
||||
dev_err(dev, "failed to get vusb33\n");
|
||||
return PTR_ERR(ssusb->vusb33);
|
||||
}
|
||||
|
||||
ssusb->sys_clk = devm_clk_get(dev, "sys_ck");
|
||||
if (IS_ERR(ssusb->sys_clk)) {
|
||||
dev_err(dev, "failed to get sys clock\n");
|
||||
return PTR_ERR(ssusb->sys_clk);
|
||||
}
|
||||
|
||||
ssusb->num_phys = of_count_phandle_with_args(node,
|
||||
"phys", "#phy-cells");
|
||||
if (ssusb->num_phys > 0) {
|
||||
|
@ -230,18 +242,6 @@ static int get_ssusb_rscs(struct platform_device *pdev, struct ssusb_mtk *ssusb)
|
|||
return PTR_ERR(ssusb->ippc_base);
|
||||
}
|
||||
|
||||
ssusb->vusb33 = devm_regulator_get(&pdev->dev, "vusb33");
|
||||
if (IS_ERR(ssusb->vusb33)) {
|
||||
dev_err(dev, "failed to get vusb33\n");
|
||||
return PTR_ERR(ssusb->vusb33);
|
||||
}
|
||||
|
||||
ssusb->sys_clk = devm_clk_get(dev, "sys_ck");
|
||||
if (IS_ERR(ssusb->sys_clk)) {
|
||||
dev_err(dev, "failed to get sys clock\n");
|
||||
return PTR_ERR(ssusb->sys_clk);
|
||||
}
|
||||
|
||||
ssusb->dr_mode = usb_get_dr_mode(dev);
|
||||
if (ssusb->dr_mode == USB_DR_MODE_UNKNOWN) {
|
||||
dev_err(dev, "dr_mode is error\n");
|
||||
|
|
Loading…
Reference in New Issue