ARM: dts: exynos: Move Exynos5420 bus related OPPs to the Odroid boards DTS
authorMarek Szyprowski <m.szyprowski@samsung.com>
Thu, 19 Dec 2019 10:51:29 +0000 (11:51 +0100)
committerKrzysztof Kozlowski <krzk@kernel.org>
Thu, 19 Dec 2019 20:12:15 +0000 (21:12 +0100)
Currently the only Exynos5422-based boards that support bus frequency
scaling are Hardkernel's Odroid XU3/XU4/HC1. Move the bus related OPPs
to the boards DTS, because those OPPs heavily depend on the clock
topology and top PLL rates, which are being configured by the board's
bootloader.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Tested-by: Chanwoo Choi <cw00.choi@samsung.com>
Reviewed-by: Chanwoo Choi <cw00.choi@samsung.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
arch/arm/boot/dts/exynos5420.dtsi
arch/arm/boot/dts/exynos5422-odroid-core.dtsi

index 1ae5211..0787471 100644 (file)
                        compatible = "samsung,exynos-bus";
                        clocks = <&clock CLK_DOUT_ACLK400_WCORE>;
                        clock-names = "bus";
-                       operating-points-v2 = <&bus_wcore_opp_table>;
                        status = "disabled";
                };
 
                        compatible = "samsung,exynos-bus";
                        clocks = <&clock CLK_DOUT_ACLK100_NOC>;
                        clock-names = "bus";
-                       operating-points-v2 = <&bus_noc_opp_table>;
                        status = "disabled";
                };
 
                        compatible = "samsung,exynos-bus";
                        clocks = <&clock CLK_DOUT_PCLK200_FSYS>;
                        clock-names = "bus";
-                       operating-points-v2 = <&bus_fsys_apb_opp_table>;
                        status = "disabled";
                };
 
                        compatible = "samsung,exynos-bus";
                        clocks = <&clock CLK_DOUT_ACLK200_FSYS>;
                        clock-names = "bus";
-                       operating-points-v2 = <&bus_fsys_apb_opp_table>;
                        status = "disabled";
                };
 
                        compatible = "samsung,exynos-bus";
                        clocks = <&clock CLK_DOUT_ACLK200_FSYS2>;
                        clock-names = "bus";
-                       operating-points-v2 = <&bus_fsys2_opp_table>;
                        status = "disabled";
                };
 
                        compatible = "samsung,exynos-bus";
                        clocks = <&clock CLK_DOUT_ACLK333>;
                        clock-names = "bus";
-                       operating-points-v2 = <&bus_mfc_opp_table>;
                        status = "disabled";
                };
 
                        compatible = "samsung,exynos-bus";
                        clocks = <&clock CLK_DOUT_ACLK266>;
                        clock-names = "bus";
-                       operating-points-v2 = <&bus_gen_opp_table>;
                        status = "disabled";
                };
 
                        compatible = "samsung,exynos-bus";
                        clocks = <&clock CLK_DOUT_ACLK66>;
                        clock-names = "bus";
-                       operating-points-v2 = <&bus_peri_opp_table>;
                        status = "disabled";
                };
 
                        compatible = "samsung,exynos-bus";
                        clocks = <&clock CLK_DOUT_ACLK333_G2D>;
                        clock-names = "bus";
-                       operating-points-v2 = <&bus_g2d_opp_table>;
                        status = "disabled";
                };
 
                        compatible = "samsung,exynos-bus";
                        clocks = <&clock CLK_DOUT_ACLK266_G2D>;
                        clock-names = "bus";
-                       operating-points-v2 = <&bus_g2d_acp_opp_table>;
                        status = "disabled";
                };
 
                        compatible = "samsung,exynos-bus";
                        clocks = <&clock CLK_DOUT_ACLK300_JPEG>;
                        clock-names = "bus";
-                       operating-points-v2 = <&bus_jpeg_opp_table>;
                        status = "disabled";
                };
 
                        compatible = "samsung,exynos-bus";
                        clocks = <&clock CLK_DOUT_ACLK166>;
                        clock-names = "bus";
-                       operating-points-v2 = <&bus_jpeg_apb_opp_table>;
                        status = "disabled";
                };
 
                        compatible = "samsung,exynos-bus";
                        clocks = <&clock CLK_DOUT_ACLK300_DISP1>;
                        clock-names = "bus";
-                       operating-points-v2 = <&bus_disp1_fimd_opp_table>;
                        status = "disabled";
                };
 
                        compatible = "samsung,exynos-bus";
                        clocks = <&clock CLK_DOUT_ACLK400_DISP1>;
                        clock-names = "bus";
-                       operating-points-v2 = <&bus_disp1_opp_table>;
                        status = "disabled";
                };
 
                        compatible = "samsung,exynos-bus";
                        clocks = <&clock CLK_DOUT_ACLK300_GSCL>;
                        clock-names = "bus";
-                       operating-points-v2 = <&bus_gscl_opp_table>;
                        status = "disabled";
                };
 
                        compatible = "samsung,exynos-bus";
                        clocks = <&clock CLK_DOUT_ACLK400_MSCL>;
                        clock-names = "bus";
-                       operating-points-v2 = <&bus_mscl_opp_table>;
                        status = "disabled";
                };
-
-               bus_wcore_opp_table: opp_table2 {
-                       compatible = "operating-points-v2";
-
-                       opp00 {
-                               opp-hz = /bits/ 64 <84000000>;
-                               opp-microvolt = <925000 925000 1400000>;
-                       };
-                       opp01 {
-                               opp-hz = /bits/ 64 <111000000>;
-                               opp-microvolt = <950000 950000 1400000>;
-                       };
-                       opp02 {
-                               opp-hz = /bits/ 64 <222000000>;
-                               opp-microvolt = <950000 950000 1400000>;
-                       };
-                       opp03 {
-                               opp-hz = /bits/ 64 <333000000>;
-                               opp-microvolt = <950000 950000 1400000>;
-                       };
-                       opp04 {
-                               opp-hz = /bits/ 64 <400000000>;
-                               opp-microvolt = <987500 987500 1400000>;
-                       };
-               };
-
-               bus_noc_opp_table: opp_table3 {
-                       compatible = "operating-points-v2";
-
-                       opp00 {
-                               opp-hz = /bits/ 64 <67000000>;
-                       };
-                       opp01 {
-                               opp-hz = /bits/ 64 <75000000>;
-                       };
-                       opp02 {
-                               opp-hz = /bits/ 64 <86000000>;
-                       };
-                       opp03 {
-                               opp-hz = /bits/ 64 <100000000>;
-                       };
-               };
-
-               bus_fsys_apb_opp_table: opp_table4 {
-                       compatible = "operating-points-v2";
-                       opp-shared;
-
-                       opp00 {
-                               opp-hz = /bits/ 64 <100000000>;
-                       };
-                       opp01 {
-                               opp-hz = /bits/ 64 <200000000>;
-                       };
-               };
-
-               bus_fsys2_opp_table: opp_table5 {
-                       compatible = "operating-points-v2";
-
-                       opp00 {
-                               opp-hz = /bits/ 64 <75000000>;
-                       };
-                       opp01 {
-                               opp-hz = /bits/ 64 <100000000>;
-                       };
-                       opp02 {
-                               opp-hz = /bits/ 64 <150000000>;
-                       };
-               };
-
-               bus_mfc_opp_table: opp_table6 {
-                       compatible = "operating-points-v2";
-
-                       opp00 {
-                               opp-hz = /bits/ 64 <96000000>;
-                       };
-                       opp01 {
-                               opp-hz = /bits/ 64 <111000000>;
-                       };
-                       opp02 {
-                               opp-hz = /bits/ 64 <167000000>;
-                       };
-                       opp03 {
-                               opp-hz = /bits/ 64 <222000000>;
-                       };
-                       opp04 {
-                               opp-hz = /bits/ 64 <333000000>;
-                       };
-               };
-
-               bus_gen_opp_table: opp_table7 {
-                       compatible = "operating-points-v2";
-
-                       opp00 {
-                               opp-hz = /bits/ 64 <89000000>;
-                       };
-                       opp01 {
-                               opp-hz = /bits/ 64 <133000000>;
-                       };
-                       opp02 {
-                               opp-hz = /bits/ 64 <178000000>;
-                       };
-                       opp03 {
-                               opp-hz = /bits/ 64 <267000000>;
-                       };
-               };
-
-               bus_peri_opp_table: opp_table8 {
-                       compatible = "operating-points-v2";
-
-                       opp00 {
-                               opp-hz = /bits/ 64 <67000000>;
-                       };
-               };
-
-               bus_g2d_opp_table: opp_table9 {
-                       compatible = "operating-points-v2";
-
-                       opp00 {
-                               opp-hz = /bits/ 64 <84000000>;
-                       };
-                       opp01 {
-                               opp-hz = /bits/ 64 <167000000>;
-                       };
-                       opp02 {
-                               opp-hz = /bits/ 64 <222000000>;
-                       };
-                       opp03 {
-                               opp-hz = /bits/ 64 <300000000>;
-                       };
-                       opp04 {
-                               opp-hz = /bits/ 64 <333000000>;
-                       };
-               };
-
-               bus_g2d_acp_opp_table: opp_table10 {
-                       compatible = "operating-points-v2";
-
-                       opp00 {
-                               opp-hz = /bits/ 64 <67000000>;
-                       };
-                       opp01 {
-                               opp-hz = /bits/ 64 <133000000>;
-                       };
-                       opp02 {
-                               opp-hz = /bits/ 64 <178000000>;
-                       };
-                       opp03 {
-                               opp-hz = /bits/ 64 <267000000>;
-                       };
-               };
-
-               bus_jpeg_opp_table: opp_table11 {
-                       compatible = "operating-points-v2";
-
-                       opp00 {
-                               opp-hz = /bits/ 64 <75000000>;
-                       };
-                       opp01 {
-                               opp-hz = /bits/ 64 <150000000>;
-                       };
-                       opp02 {
-                               opp-hz = /bits/ 64 <200000000>;
-                       };
-                       opp03 {
-                               opp-hz = /bits/ 64 <300000000>;
-                       };
-               };
-
-               bus_jpeg_apb_opp_table: opp_table12 {
-                       compatible = "operating-points-v2";
-
-                       opp00 {
-                               opp-hz = /bits/ 64 <84000000>;
-                       };
-                       opp01 {
-                               opp-hz = /bits/ 64 <111000000>;
-                       };
-                       opp02 {
-                               opp-hz = /bits/ 64 <134000000>;
-                       };
-                       opp03 {
-                               opp-hz = /bits/ 64 <167000000>;
-                       };
-               };
-
-               bus_disp1_fimd_opp_table: opp_table13 {
-                       compatible = "operating-points-v2";
-
-                       opp00 {
-                               opp-hz = /bits/ 64 <120000000>;
-                       };
-                       opp01 {
-                               opp-hz = /bits/ 64 <200000000>;
-                       };
-               };
-
-               bus_disp1_opp_table: opp_table14 {
-                       compatible = "operating-points-v2";
-
-                       opp00 {
-                               opp-hz = /bits/ 64 <120000000>;
-                       };
-                       opp01 {
-                               opp-hz = /bits/ 64 <200000000>;
-                       };
-                       opp02 {
-                               opp-hz = /bits/ 64 <300000000>;
-                       };
-               };
-
-               bus_gscl_opp_table: opp_table15 {
-                       compatible = "operating-points-v2";
-
-                       opp00 {
-                               opp-hz = /bits/ 64 <150000000>;
-                       };
-                       opp01 {
-                               opp-hz = /bits/ 64 <200000000>;
-                       };
-                       opp02 {
-                               opp-hz = /bits/ 64 <300000000>;
-                       };
-               };
-
-               bus_mscl_opp_table: opp_table16 {
-                       compatible = "operating-points-v2";
-
-                       opp00 {
-                               opp-hz = /bits/ 64 <84000000>;
-                       };
-                       opp01 {
-                               opp-hz = /bits/ 64 <167000000>;
-                       };
-                       opp02 {
-                               opp-hz = /bits/ 64 <222000000>;
-                       };
-                       opp03 {
-                               opp-hz = /bits/ 64 <333000000>;
-                       };
-                       opp04 {
-                               opp-hz = /bits/ 64 <400000000>;
-                       };
-               };
        };
 
        thermal-zones {
index 8a34a86..277a6a8 100644 (file)
                };
        };
 
-       dmc_opp_table: opp_table2 {
+       bus_wcore_opp_table: opp_table2 {
+               compatible = "operating-points-v2";
+
+               opp00 {
+                       opp-hz = /bits/ 64 <84000000>;
+                       opp-microvolt = <925000 925000 1400000>;
+               };
+               opp01 {
+                       opp-hz = /bits/ 64 <111000000>;
+                       opp-microvolt = <950000 950000 1400000>;
+               };
+               opp02 {
+                       opp-hz = /bits/ 64 <222000000>;
+                       opp-microvolt = <950000 950000 1400000>;
+               };
+               opp03 {
+                       opp-hz = /bits/ 64 <333000000>;
+                       opp-microvolt = <950000 950000 1400000>;
+               };
+               opp04 {
+                       opp-hz = /bits/ 64 <400000000>;
+                       opp-microvolt = <987500 987500 1400000>;
+               };
+       };
+
+       bus_noc_opp_table: opp_table3 {
+               compatible = "operating-points-v2";
+
+               opp00 {
+                       opp-hz = /bits/ 64 <67000000>;
+               };
+               opp01 {
+                       opp-hz = /bits/ 64 <75000000>;
+               };
+               opp02 {
+                       opp-hz = /bits/ 64 <86000000>;
+               };
+               opp03 {
+                       opp-hz = /bits/ 64 <100000000>;
+               };
+       };
+
+       bus_fsys_apb_opp_table: opp_table4 {
+               compatible = "operating-points-v2";
+               opp-shared;
+
+               opp00 {
+                       opp-hz = /bits/ 64 <100000000>;
+               };
+               opp01 {
+                       opp-hz = /bits/ 64 <200000000>;
+               };
+       };
+
+       bus_fsys2_opp_table: opp_table5 {
+               compatible = "operating-points-v2";
+
+               opp00 {
+                       opp-hz = /bits/ 64 <75000000>;
+               };
+               opp01 {
+                       opp-hz = /bits/ 64 <100000000>;
+               };
+               opp02 {
+                       opp-hz = /bits/ 64 <150000000>;
+               };
+       };
+
+       bus_mfc_opp_table: opp_table6 {
+               compatible = "operating-points-v2";
+
+               opp00 {
+                       opp-hz = /bits/ 64 <96000000>;
+               };
+               opp01 {
+                       opp-hz = /bits/ 64 <111000000>;
+               };
+               opp02 {
+                       opp-hz = /bits/ 64 <167000000>;
+               };
+               opp03 {
+                       opp-hz = /bits/ 64 <222000000>;
+               };
+               opp04 {
+                       opp-hz = /bits/ 64 <333000000>;
+               };
+       };
+
+       bus_gen_opp_table: opp_table7 {
+               compatible = "operating-points-v2";
+
+               opp00 {
+                       opp-hz = /bits/ 64 <89000000>;
+               };
+               opp01 {
+                       opp-hz = /bits/ 64 <133000000>;
+               };
+               opp02 {
+                       opp-hz = /bits/ 64 <178000000>;
+               };
+               opp03 {
+                       opp-hz = /bits/ 64 <267000000>;
+               };
+       };
+
+       bus_peri_opp_table: opp_table8 {
+               compatible = "operating-points-v2";
+
+               opp00 {
+                       opp-hz = /bits/ 64 <67000000>;
+               };
+       };
+
+       bus_g2d_opp_table: opp_table9 {
+               compatible = "operating-points-v2";
+
+               opp00 {
+                       opp-hz = /bits/ 64 <84000000>;
+               };
+               opp01 {
+                       opp-hz = /bits/ 64 <167000000>;
+               };
+               opp02 {
+                       opp-hz = /bits/ 64 <222000000>;
+               };
+               opp03 {
+                       opp-hz = /bits/ 64 <300000000>;
+               };
+               opp04 {
+                       opp-hz = /bits/ 64 <333000000>;
+               };
+       };
+
+       bus_g2d_acp_opp_table: opp_table10 {
+               compatible = "operating-points-v2";
+
+               opp00 {
+                       opp-hz = /bits/ 64 <67000000>;
+               };
+               opp01 {
+                       opp-hz = /bits/ 64 <133000000>;
+               };
+               opp02 {
+                       opp-hz = /bits/ 64 <178000000>;
+               };
+               opp03 {
+                       opp-hz = /bits/ 64 <267000000>;
+               };
+       };
+
+       bus_jpeg_opp_table: opp_table11 {
+               compatible = "operating-points-v2";
+
+               opp00 {
+                       opp-hz = /bits/ 64 <75000000>;
+               };
+               opp01 {
+                       opp-hz = /bits/ 64 <150000000>;
+               };
+               opp02 {
+                       opp-hz = /bits/ 64 <200000000>;
+               };
+               opp03 {
+                       opp-hz = /bits/ 64 <300000000>;
+               };
+       };
+
+       bus_jpeg_apb_opp_table: opp_table12 {
+               compatible = "operating-points-v2";
+
+               opp00 {
+                       opp-hz = /bits/ 64 <84000000>;
+               };
+               opp01 {
+                       opp-hz = /bits/ 64 <111000000>;
+               };
+               opp02 {
+                       opp-hz = /bits/ 64 <134000000>;
+               };
+               opp03 {
+                       opp-hz = /bits/ 64 <167000000>;
+               };
+       };
+
+       bus_disp1_fimd_opp_table: opp_table13 {
+               compatible = "operating-points-v2";
+
+               opp00 {
+                       opp-hz = /bits/ 64 <120000000>;
+               };
+               opp01 {
+                       opp-hz = /bits/ 64 <200000000>;
+               };
+       };
+
+       bus_disp1_opp_table: opp_table14 {
+               compatible = "operating-points-v2";
+
+               opp00 {
+                       opp-hz = /bits/ 64 <120000000>;
+               };
+               opp01 {
+                       opp-hz = /bits/ 64 <200000000>;
+               };
+               opp02 {
+                       opp-hz = /bits/ 64 <300000000>;
+               };
+       };
+
+       bus_gscl_opp_table: opp_table15 {
+               compatible = "operating-points-v2";
+
+               opp00 {
+                       opp-hz = /bits/ 64 <150000000>;
+               };
+               opp01 {
+                       opp-hz = /bits/ 64 <200000000>;
+               };
+               opp02 {
+                       opp-hz = /bits/ 64 <300000000>;
+               };
+       };
+
+       bus_mscl_opp_table: opp_table16 {
+               compatible = "operating-points-v2";
+
+               opp00 {
+                       opp-hz = /bits/ 64 <84000000>;
+               };
+               opp01 {
+                       opp-hz = /bits/ 64 <167000000>;
+               };
+               opp02 {
+                       opp-hz = /bits/ 64 <222000000>;
+               };
+               opp03 {
+                       opp-hz = /bits/ 64 <333000000>;
+               };
+               opp04 {
+                       opp-hz = /bits/ 64 <400000000>;
+               };
+       };
+
+       dmc_opp_table: opp_table17 {
                compatible = "operating-points-v2";
 
                opp00 {
 };
 
 &bus_wcore {
+       operating-points-v2 = <&bus_wcore_opp_table>;
        devfreq-events = <&nocp_mem0_0>, <&nocp_mem0_1>,
                        <&nocp_mem1_0>, <&nocp_mem1_1>;
        vdd-supply = <&buck3_reg>;
 };
 
 &bus_noc {
+       operating-points-v2 = <&bus_noc_opp_table>;
        devfreq = <&bus_wcore>;
        status = "okay";
 };
 
 &bus_fsys_apb {
+       operating-points-v2 = <&bus_fsys_apb_opp_table>;
        devfreq = <&bus_wcore>;
        status = "okay";
 };
 
 &bus_fsys {
+       operating-points-v2 = <&bus_fsys_apb_opp_table>;
        devfreq = <&bus_wcore>;
        status = "okay";
 };
 
 &bus_fsys2 {
+       operating-points-v2 = <&bus_fsys2_opp_table>;
        devfreq = <&bus_wcore>;
        status = "okay";
 };
 
 &bus_mfc {
+       operating-points-v2 = <&bus_mfc_opp_table>;
        devfreq = <&bus_wcore>;
        status = "okay";
 };
 
 &bus_gen {
+       operating-points-v2 = <&bus_gen_opp_table>;
        devfreq = <&bus_wcore>;
        status = "okay";
 };
 
 &bus_peri {
+       operating-points-v2 = <&bus_peri_opp_table>;
        devfreq = <&bus_wcore>;
        status = "okay";
 };
 
 &bus_g2d {
+       operating-points-v2 = <&bus_g2d_opp_table>;
        devfreq = <&bus_wcore>;
        status = "okay";
 };
 
 &bus_g2d_acp {
+       operating-points-v2 = <&bus_g2d_acp_opp_table>;
        devfreq = <&bus_wcore>;
        status = "okay";
 };
 
 &bus_jpeg {
+       operating-points-v2 = <&bus_jpeg_opp_table>;
        devfreq = <&bus_wcore>;
        status = "okay";
 };
 
 &bus_jpeg_apb {
+       operating-points-v2 = <&bus_jpeg_apb_opp_table>;
        devfreq = <&bus_wcore>;
        status = "okay";
 };
 
 &bus_disp1_fimd {
+       operating-points-v2 = <&bus_disp1_fimd_opp_table>;
        devfreq = <&bus_wcore>;
        status = "okay";
 };
 
 &bus_disp1 {
+       operating-points-v2 = <&bus_disp1_opp_table>;
        devfreq = <&bus_wcore>;
        status = "okay";
 };
 
 &bus_gscl_scaler {
+       operating-points-v2 = <&bus_gscl_opp_table>;
        devfreq = <&bus_wcore>;
        status = "okay";
 };
 
 &bus_mscl {
+       operating-points-v2 = <&bus_mscl_opp_table>;
        devfreq = <&bus_wcore>;
        status = "okay";
 };