Merge "USB: dwc3-msm: Add support for setting specific frequency for core clock"
This commit is contained in:
commit
8cd4d6c413
2 changed files with 15 additions and 5 deletions
|
@ -50,6 +50,7 @@ Optional properties :
|
|||
- qcom,disable-dev-mode-pm: If present, it disables PM runtime functionality for device mode.
|
||||
- qcom,disable-host-mode-pm: If present, it disables XHCI PM runtime functionality when USB
|
||||
host mode is used.
|
||||
- qcom,core-clk-rate: If present, indicates clock frequency to be set for USB master clock.
|
||||
- extcon: phandles to external connector devices. First phandle should point to
|
||||
external connector, which provide "USB" cable events, the second
|
||||
should point to external connector device, which provide "USB-HOST"
|
||||
|
|
|
@ -2338,14 +2338,23 @@ static int dwc3_msm_get_clk_gdsc(struct dwc3_msm *mdwc)
|
|||
return ret;
|
||||
}
|
||||
|
||||
/*
|
||||
* Get Max supported clk frequency for USB Core CLK and request
|
||||
* to set the same.
|
||||
*/
|
||||
mdwc->core_clk_rate = clk_round_rate(mdwc->core_clk, LONG_MAX);
|
||||
if (!of_property_read_u32(mdwc->dev->of_node, "qcom,core-clk-rate",
|
||||
(u32 *)&mdwc->core_clk_rate)) {
|
||||
mdwc->core_clk_rate = clk_round_rate(mdwc->core_clk,
|
||||
mdwc->core_clk_rate);
|
||||
} else {
|
||||
/*
|
||||
* Get Max supported clk frequency for USB Core CLK and request
|
||||
* to set the same.
|
||||
*/
|
||||
mdwc->core_clk_rate = clk_round_rate(mdwc->core_clk, LONG_MAX);
|
||||
}
|
||||
|
||||
if (IS_ERR_VALUE(mdwc->core_clk_rate)) {
|
||||
dev_err(mdwc->dev, "fail to get core clk max freq.\n");
|
||||
} else {
|
||||
dev_dbg(mdwc->dev, "USB core frequency = %ld\n",
|
||||
mdwc->core_clk_rate);
|
||||
ret = clk_set_rate(mdwc->core_clk, mdwc->core_clk_rate);
|
||||
if (ret)
|
||||
dev_err(mdwc->dev, "fail to set core_clk freq:%d\n",
|
||||
|
|
Loading…
Add table
Reference in a new issue