Commit 7934d69a authored by Sudeep Holla's avatar Sudeep Holla Committed by Arnd Bergmann

arm64: Add L2 cache topology to ARM Ltd boards/models

Commit 5d425c18 ("arm64: kernel: add support for cpu cache
information") adds cacheinfo support for ARM64. Since there's no
architectural way of detecting the cpus that share particular cache,
device tree can be used and the core cacheinfo already supports the
same.

This patch adds the L2 cache topology on Juno board, FVP/RTSM and
foundation models.
Signed-off-by: default avatarSudeep Holla <sudeep.holla@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Liviu Dudau <Liviu.Dudau@arm.com>
Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parent c517d838
...@@ -34,6 +34,7 @@ cpu@0 { ...@@ -34,6 +34,7 @@ cpu@0 {
reg = <0x0 0x0>; reg = <0x0 0x0>;
enable-method = "spin-table"; enable-method = "spin-table";
cpu-release-addr = <0x0 0x8000fff8>; cpu-release-addr = <0x0 0x8000fff8>;
next-level-cache = <&L2_0>;
}; };
cpu@1 { cpu@1 {
device_type = "cpu"; device_type = "cpu";
...@@ -41,6 +42,7 @@ cpu@1 { ...@@ -41,6 +42,7 @@ cpu@1 {
reg = <0x0 0x1>; reg = <0x0 0x1>;
enable-method = "spin-table"; enable-method = "spin-table";
cpu-release-addr = <0x0 0x8000fff8>; cpu-release-addr = <0x0 0x8000fff8>;
next-level-cache = <&L2_0>;
}; };
cpu@2 { cpu@2 {
device_type = "cpu"; device_type = "cpu";
...@@ -48,6 +50,7 @@ cpu@2 { ...@@ -48,6 +50,7 @@ cpu@2 {
reg = <0x0 0x2>; reg = <0x0 0x2>;
enable-method = "spin-table"; enable-method = "spin-table";
cpu-release-addr = <0x0 0x8000fff8>; cpu-release-addr = <0x0 0x8000fff8>;
next-level-cache = <&L2_0>;
}; };
cpu@3 { cpu@3 {
device_type = "cpu"; device_type = "cpu";
...@@ -55,6 +58,11 @@ cpu@3 { ...@@ -55,6 +58,11 @@ cpu@3 {
reg = <0x0 0x3>; reg = <0x0 0x3>;
enable-method = "spin-table"; enable-method = "spin-table";
cpu-release-addr = <0x0 0x8000fff8>; cpu-release-addr = <0x0 0x8000fff8>;
next-level-cache = <&L2_0>;
};
L2_0: l2-cache0 {
compatible = "cache";
}; };
}; };
......
...@@ -39,6 +39,7 @@ A57_0: cpu@0 { ...@@ -39,6 +39,7 @@ A57_0: cpu@0 {
reg = <0x0 0x0>; reg = <0x0 0x0>;
device_type = "cpu"; device_type = "cpu";
enable-method = "psci"; enable-method = "psci";
next-level-cache = <&A57_L2>;
}; };
A57_1: cpu@1 { A57_1: cpu@1 {
...@@ -46,6 +47,7 @@ A57_1: cpu@1 { ...@@ -46,6 +47,7 @@ A57_1: cpu@1 {
reg = <0x0 0x1>; reg = <0x0 0x1>;
device_type = "cpu"; device_type = "cpu";
enable-method = "psci"; enable-method = "psci";
next-level-cache = <&A57_L2>;
}; };
A53_0: cpu@100 { A53_0: cpu@100 {
...@@ -53,6 +55,7 @@ A53_0: cpu@100 { ...@@ -53,6 +55,7 @@ A53_0: cpu@100 {
reg = <0x0 0x100>; reg = <0x0 0x100>;
device_type = "cpu"; device_type = "cpu";
enable-method = "psci"; enable-method = "psci";
next-level-cache = <&A53_L2>;
}; };
A53_1: cpu@101 { A53_1: cpu@101 {
...@@ -60,6 +63,7 @@ A53_1: cpu@101 { ...@@ -60,6 +63,7 @@ A53_1: cpu@101 {
reg = <0x0 0x101>; reg = <0x0 0x101>;
device_type = "cpu"; device_type = "cpu";
enable-method = "psci"; enable-method = "psci";
next-level-cache = <&A53_L2>;
}; };
A53_2: cpu@102 { A53_2: cpu@102 {
...@@ -67,6 +71,7 @@ A53_2: cpu@102 { ...@@ -67,6 +71,7 @@ A53_2: cpu@102 {
reg = <0x0 0x102>; reg = <0x0 0x102>;
device_type = "cpu"; device_type = "cpu";
enable-method = "psci"; enable-method = "psci";
next-level-cache = <&A53_L2>;
}; };
A53_3: cpu@103 { A53_3: cpu@103 {
...@@ -74,6 +79,15 @@ A53_3: cpu@103 { ...@@ -74,6 +79,15 @@ A53_3: cpu@103 {
reg = <0x0 0x103>; reg = <0x0 0x103>;
device_type = "cpu"; device_type = "cpu";
enable-method = "psci"; enable-method = "psci";
next-level-cache = <&A53_L2>;
};
A57_L2: l2-cache0 {
compatible = "cache";
};
A53_L2: l2-cache1 {
compatible = "cache";
}; };
}; };
......
...@@ -37,6 +37,7 @@ cpu@0 { ...@@ -37,6 +37,7 @@ cpu@0 {
reg = <0x0 0x0>; reg = <0x0 0x0>;
enable-method = "spin-table"; enable-method = "spin-table";
cpu-release-addr = <0x0 0x8000fff8>; cpu-release-addr = <0x0 0x8000fff8>;
next-level-cache = <&L2_0>;
}; };
cpu@1 { cpu@1 {
device_type = "cpu"; device_type = "cpu";
...@@ -44,6 +45,7 @@ cpu@1 { ...@@ -44,6 +45,7 @@ cpu@1 {
reg = <0x0 0x1>; reg = <0x0 0x1>;
enable-method = "spin-table"; enable-method = "spin-table";
cpu-release-addr = <0x0 0x8000fff8>; cpu-release-addr = <0x0 0x8000fff8>;
next-level-cache = <&L2_0>;
}; };
cpu@2 { cpu@2 {
device_type = "cpu"; device_type = "cpu";
...@@ -51,6 +53,7 @@ cpu@2 { ...@@ -51,6 +53,7 @@ cpu@2 {
reg = <0x0 0x2>; reg = <0x0 0x2>;
enable-method = "spin-table"; enable-method = "spin-table";
cpu-release-addr = <0x0 0x8000fff8>; cpu-release-addr = <0x0 0x8000fff8>;
next-level-cache = <&L2_0>;
}; };
cpu@3 { cpu@3 {
device_type = "cpu"; device_type = "cpu";
...@@ -58,6 +61,11 @@ cpu@3 { ...@@ -58,6 +61,11 @@ cpu@3 {
reg = <0x0 0x3>; reg = <0x0 0x3>;
enable-method = "spin-table"; enable-method = "spin-table";
cpu-release-addr = <0x0 0x8000fff8>; cpu-release-addr = <0x0 0x8000fff8>;
next-level-cache = <&L2_0>;
};
L2_0: l2-cache0 {
compatible = "cache";
}; };
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment