arm64: dts: mediatek: mt8192: Fix CPUs capacity-dmips-mhz
authorNícolas F. R. A. Prado <nfraprado@collabora.com>
Fri, 2 Jun 2023 18:35:15 +0000 (14:35 -0400)
committerMatthias Brugger <matthias.bgg@gmail.com>
Thu, 15 Jun 2023 11:14:58 +0000 (13:14 +0200)
The capacity-dmips-mhz parameter was miscalculated: this SoC runs
the first (Cortex-A55) cluster at a maximum of 2000MHz and the
second (Cortex-A76) cluster at a maximum of 2200MHz.

In order to calculate the right capacity-dmips-mhz, the following
test was performed:
1. CPUFREQ governor was set to 'performance' on both clusters
2. Ran dhrystone with 500000000 iterations for 10 times on each cluster
3. Calculated the mean result for each cluster
4. Calculated DMIPS/MHz: dmips_mhz = dmips_per_second / cpu_mhz
5. Scaled results to 1024:
   result_c0 = dmips_mhz_c0 / dmips_mhz_c1 * 1024

The mean results for this SoC are:
Cluster 0 (LITTLE): 12016411 Dhry/s
Cluster 1 (BIG): 31702034 Dhry/s

The calculated scaled results are:
Cluster 0: 426.953226899238 (rounded to 427)
Cluster 1: 1024

Fixes: 48489980e27e ("arm64: dts: Add Mediatek SoC MT8192 and evaluation board dts and Makefile")
Signed-off-by: Nícolas F. R. A. Prado <nfraprado@collabora.com>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://lore.kernel.org/r/20230602183515.3778780-1-nfraprado@collabora.com
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
arch/arm64/boot/dts/mediatek/mt8192.dtsi

index bab403a..69f4cde 100644 (file)
@@ -71,7 +71,7 @@
                        d-cache-sets = <128>;
                        next-level-cache = <&l2_0>;
                        performance-domains = <&performance 0>;
-                       capacity-dmips-mhz = <530>;
+                       capacity-dmips-mhz = <427>;
                };
 
                cpu1: cpu@100 {
@@ -89,7 +89,7 @@
                        d-cache-sets = <128>;
                        next-level-cache = <&l2_0>;
                        performance-domains = <&performance 0>;
-                       capacity-dmips-mhz = <530>;
+                       capacity-dmips-mhz = <427>;
                };
 
                cpu2: cpu@200 {
                        d-cache-sets = <128>;
                        next-level-cache = <&l2_0>;
                        performance-domains = <&performance 0>;
-                       capacity-dmips-mhz = <530>;
+                       capacity-dmips-mhz = <427>;
                };
 
                cpu3: cpu@300 {
                        d-cache-sets = <128>;
                        next-level-cache = <&l2_0>;
                        performance-domains = <&performance 0>;
-                       capacity-dmips-mhz = <530>;
+                       capacity-dmips-mhz = <427>;
                };
 
                cpu4: cpu@400 {