[PATCH v2] arm64: dts: imx8mm: Add NOC node

Adam Ford aford173 at gmail.com
Wed Nov 3 11:55:54 PDT 2021


On Wed, Nov 3, 2021 at 8:53 AM Tommaso Merciai <tomm.merciai at gmail.com> wrote:
>
> Add support for dynamic frequency scaling of the main NOC configuration
> on imx8mm.
>
> References:
>  - i.MX 8M Mini Applications Processor RM, Rev. 3, 11/2020
>  - f18e6d573b80 arm64: dts: imx8mq: Add NOC node
>  - 912b9dacf3f0 arm64: dts: imx8mq: increase NOC clock to 800 MHz
>  - https://source.codeaurora.org/external/imx/linux-imx/tree/arch/ \
>    arm64/boot/dts/freescale/imx8mm.dtsi?h=lf-5.10.y
>

You're missing the signed-off-by tag.

>From what I can tell, the default NOC clock is 750MHz.  With this
patch enabled, i can manually change the NOC clock to 150, 375 or 750,
but it's not clear to me what this impacts.  In the 8MQ, there are a
couple peripherals that are linked to the NOC, but we don't have those
same peripherals enabled in the 8mm.  The
dt-bindings/interconnect/imx8mq.h list more NOC references than are
used in the device tree, so it's unclear to me if and what we need to
reference anything in the 8MM based on
dt-bindings/interconnect/imx8mm.h

adam

> ---
> Changes since v1:
>  - Fix noc_opp_table frequencies taking NXP bsp as reference
>  - Add reference link to nxp imx8mm dtsi on commit body
>
>  arch/arm64/boot/dts/freescale/imx8mm.dtsi | 25 +++++++++++++++++++++++
>  1 file changed, 25 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/freescale/imx8mm.dtsi b/arch/arm64/boot/dts/freescale/imx8mm.dtsi
> index c2f3f118f82e..1bcc5e361ca3 100644
> --- a/arch/arm64/boot/dts/freescale/imx8mm.dtsi
> +++ b/arch/arm64/boot/dts/freescale/imx8mm.dtsi
> @@ -719,6 +719,31 @@ pgc_mipi: power-domain at 11 {
>                         };
>                 };
>
> +               noc: interconnect at 32700000 {
> +                       compatible = "fsl,imx8mm-noc", "fsl,imx8m-noc";
> +                       reg = <0x32700000 0x100000>;
> +                       clocks = <&clk IMX8MM_CLK_NOC>;
> +                       fsl,ddrc = <&ddrc>;
> +                       #interconnect-cells = <1>;
> +                       operating-points-v2 = <&noc_opp_table>;
> +
> +                       noc_opp_table: opp-table {
> +                               compatible = "operating-points-v2";
> +
> +                               opp-150M {
> +                                       opp-hz = /bits/ 64 <150000000>;
> +                               };
> +
> +                               opp-375M {
> +                                       opp-hz = /bits/ 64 <375000000>;
> +                               };
> +
> +                               opp-750M {
> +                                       opp-hz = /bits/ 64 <750000000>;
> +                               };
> +                       };
> +               };
> +
>                 aips2: bus at 30400000 {
>                         compatible = "fsl,aips-bus", "simple-bus";
>                         reg = <0x30400000 0x400000>;
> --
> 2.25.1
>



More information about the linux-arm-kernel mailing list