[SRU][Bionic][PATCH v2 0/5] Support cpufreq, thermal sensors & cooling cells on iMX6Q based Nitrogen6x board

Paolo Pisati paolo.pisati at canonical.com
Mon Aug 19 08:59:45 UTC 2019


On Mon, Aug 19, 2019 at 5:43 AM Shrirang Bagul
<shrirang.bagul at canonical.com> wrote:
>
> BugLink: https://bugs.launchpad.net/bugs/1840437

There's something weird between patch 2 and 3.

Patch 2:
...
The OPP properties, like "operating-points", should either be present
for all the CPUs of a cluster or none. If these are present only for a
subset of CPUs of a cluster then things will start falling apart as soon
as the CPUs are brought online in a different order.
...

and adds such property to cpu1:

--- a/arch/arm/boot/dts/imx7d.dtsi
+++ b/arch/arm/boot/dts/imx7d.dtsi
@@ -59,6 +59,11 @@
                        compatible = "arm,cortex-a7";
                        device_type = "cpu";
                        reg = <1>;
+                       operating-points = <
+                               /* KHz  uV */
+                               996000  1075000
+                               792000  975000
+                       >;
...

afterward, in patch 3, "operating points" is replaced with
"operating-points-v2", but that is only done for cpu0:

--- a/arch/arm/boot/dts/imx7d.dtsi
+++ b/arch/arm/boot/dts/imx7d.dtsi
@@ -47,12 +47,8 @@
 / {
        cpus {
                cpu0: cpu at 0 {
-                       operating-points = <
-                               /* KHz  uV */
-                               996000  1075000
-                               792000  975000
-                       >;
                        clock-frequency = <996000000>;
+                       operating-points-v2 = <&cpu0_opp_table>;
                };

                cpu1: cpu at 1 {
@@ -65,6 +61,25 @@
                                792000  975000
                        >;
                        clock-frequency = <996000000>;
+                       operating-points-v2 = <&cpu0_opp_table>;
...

and this is the final result:

...
        cpus {
                cpu0: cpu at 0 {
                        clock-frequency = <996000000>;
                        operating-points-v2 = <&cpu0_opp_table>;
                        #cooling-cells = <2>;
                };

                cpu1: cpu at 1 {
                        compatible = "arm,cortex-a7";
                        device_type = "cpu";
                        reg = <1>;
                        operating-points = <
                                /* KHz  uV */
                                996000  1075000
                                792000  975000
                        >;
                        clock-frequency = <996000000>;
                        operating-points-v2 = <&cpu0_opp_table>;
                };
        };
...

Could you check that?



More information about the kernel-team mailing list