MLK-11831-2 usb: chipidea: imx: add request{release}_bus_freq
When the usb in idle, it calls release_bus_req. When the usb is going to use, it calls request_bus_req. This is a rework patch of ENGR00286459 and ENGR00286926. Signed-off-by: Peter Chen <peter.chen@nxp.com>5.4-rM2-2.2.x-imx-squashed
parent
76945d371b
commit
267994809b
|
@ -14,6 +14,7 @@
|
|||
#include <linux/clk.h>
|
||||
#include <linux/pinctrl/consumer.h>
|
||||
#include <linux/pm_qos.h>
|
||||
#include <linux/busfreq-imx.h>
|
||||
|
||||
#include "ci.h"
|
||||
#include "ci_hdrc_imx.h"
|
||||
|
@ -385,6 +386,7 @@ static int ci_hdrc_imx_probe(struct platform_device *pdev)
|
|||
pm_qos_add_request(&data->pm_qos_req,
|
||||
PM_QOS_CPU_DMA_LATENCY, 0);
|
||||
|
||||
request_bus_freq(BUS_FREQ_HIGH);
|
||||
ret = imx_get_clks(dev);
|
||||
if (ret)
|
||||
goto disable_hsic_regulator;
|
||||
|
@ -463,6 +465,7 @@ disable_device:
|
|||
err_clk:
|
||||
imx_disable_unprepare_clks(dev);
|
||||
disable_hsic_regulator:
|
||||
release_bus_freq(BUS_FREQ_HIGH);
|
||||
if (data->hsic_pad_regulator)
|
||||
/* don't overwrite original ret (cf. EPROBE_DEFER) */
|
||||
regulator_disable(data->hsic_pad_regulator);
|
||||
|
@ -491,6 +494,7 @@ static int ci_hdrc_imx_remove(struct platform_device *pdev)
|
|||
usb_phy_shutdown(data->phy);
|
||||
if (data->ci_pdev) {
|
||||
imx_disable_unprepare_clks(&pdev->dev);
|
||||
release_bus_freq(BUS_FREQ_HIGH);
|
||||
if (data->plat_data->flags & CI_HDRC_PMQOS)
|
||||
pm_qos_remove_request(&data->pm_qos_req);
|
||||
if (data->hsic_pad_regulator)
|
||||
|
@ -519,6 +523,7 @@ static int __maybe_unused imx_controller_suspend(struct device *dev)
|
|||
}
|
||||
|
||||
imx_disable_unprepare_clks(dev);
|
||||
release_bus_freq(BUS_FREQ_HIGH);
|
||||
if (data->plat_data->flags & CI_HDRC_PMQOS)
|
||||
pm_qos_remove_request(&data->pm_qos_req);
|
||||
|
||||
|
@ -543,6 +548,7 @@ static int __maybe_unused imx_controller_resume(struct device *dev)
|
|||
pm_qos_add_request(&data->pm_qos_req,
|
||||
PM_QOS_CPU_DMA_LATENCY, 0);
|
||||
|
||||
request_bus_freq(BUS_FREQ_HIGH);
|
||||
ret = imx_prepare_enable_clks(dev);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
|
Loading…
Reference in New Issue