Message ID | 1580823277-13644-1-git-send-email-peng.fan@nxp.com (mailing list archive) |
---|---|
State | Not Applicable, archived |
Headers | show |
Hi Peng, On Tue, Feb 4, 2020 at 10:41 AM <peng.fan@nxp.com> wrote: > I not include the voltage configuration, because imx-rpmsg > and pf1550 rpmsg driver still not upstreamed. Any plans for upstreaming imx-rpmsg? I assume this will go into the remoteproc framework. Without this driver, the i.MX7ULP support in mainline is very limited in functionality. Thanks
> Subject: Re: [PATCH 0/7] ARM: imx: imx7ulp: add cpufreq support > > Hi Peng, > > On Tue, Feb 4, 2020 at 10:41 AM <peng.fan@nxp.com> wrote: > > > I not include the voltage configuration, because imx-rpmsg and pf1550 > > rpmsg driver still not upstreamed. > > Any plans for upstreaming imx-rpmsg? I assume this will go into the > remoteproc framework. I need check with Richard first, if no plan, I'll take it. > > Without this driver, the i.MX7ULP support in mainline is very limited in > functionality. To test only clk change, rpmsg driver is not a must. I have tested that, mhz could correctly show 500MHz and 720Mhz with the diff applied in cover letter. I'll try to push forward with rpmsg and regulator part, but both not go through shawn's tree. This patchset without the dts part, cpufreq also not take effect, so it is safe to be in if got reviewed. After the rpmsg/regulator part got in, we could add the dts patch to switch on cpufreq for i.MX7ULP. Thanks, Peng. > > Thanks
diff --git a/arch/arm/boot/dts/imx7ulp.dtsi b/arch/arm/boot/dts/imx7ulp.dtsi index ab91c98f2124..11085b06506e 100644 --- a/arch/arm/boot/dts/imx7ulp.dtsi +++ b/arch/arm/boot/dts/imx7ulp.dtsi @@ -41,9 +41,29 @@ compatible = "arm,cortex-a7"; device_type = "cpu"; reg = <0xf00>; + clocks = <&smc1 IMX7ULP_CLK_ARM_FREQ>; + clock-frequency = <500210000>; + operating-points-v2 = <&cpu0_opp_table>; }; }; + cpu0_opp_table: opp-table { + compatible = "operating-points-v2"; + opp-shared; + + opp-500210000 { + opp-hz = /bits/ 64 <500210000>; + /*opp-microvolt = <1025000>;*/ + clock-latency-ns = <150000>; + }; + + opp-720000000 { + opp-hz = /bits/ 64 <720000000>; + /*opp-microvolt = <1125000>;*/ + clock-latency-ns = <150000>; + }; + }; + I not include the voltage configuration, because imx-rpmsg and pf1550 rpmsg driver still not upstreamed.
From: Peng Fan <peng.fan@nxp.com> This patchset aims to use cpufreq-dt for i.MX7ULP to avoid plaform specific cpufreq driver. To use cpufreq-dt, we need a ARM core clock that could be easy to support freq change. However i.MX7ULP has some specific design that we could reuse imx_hw_clk_cpu that used on i.MX7D/8M. So introduced a new api imx_hw_clk_cpuv2 to add a virtual clk that could support ARM core freq change easily. Patch 1,2 is to change pfdv2 to make it could determine best parent clk, then we could directly configure pfdv2 to get the best clk per i.MX7ULP datasheet "6.2.4 PLL PFD output" I have tested with following diff applied, and mark fsl,imx7ulp as blacklist in cpufreq-dt driver(I also send out when this patchset is ok) So I not included dts in this patchset, when imx-rpmsg and pf1550 ready, the dts part could be added then. Anson Huang (1): clk: imx: Fix division by zero warning on pfdv2 Peng Fan (6): clk: imx: pfdv2: switch to use determine_rate clk: imx: pfdv2: determine best parent rate clk: imx: add imx_hw_clk_cpuv2 for i.MX7ULP clk: imx: imx7ulp: add IMX7ULP_CLK_ARM_FREQ clk ARM: imx: imx7ulp: support HSRUN mode ARM: imx: imx7ulp: create cpufreq device arch/arm/mach-imx/mach-imx7ulp.c | 2 + arch/arm/mach-imx/pm-imx7ulp.c | 4 + drivers/clk/imx/Makefile | 1 + drivers/clk/imx/clk-cpuv2.c | 137 ++++++++++++++++++++++++++++++ drivers/clk/imx/clk-imx7ulp.c | 15 +++- drivers/clk/imx/clk-pfdv2.c | 61 +++++++++---- drivers/clk/imx/clk.h | 9 ++ include/dt-bindings/clock/imx7ulp-clock.h | 3 +- 8 files changed, 212 insertions(+), 20 deletions(-) create mode 100644 drivers/clk/imx/clk-cpuv2.c