[RFC PATCH v4 3/4] arm64:thunder: Add initial dts for Cavium's Thunder SoC in 2 Node topology.
Arnd Bergmann
arnd at arndb.de
Thu Jan 22 08:47:13 PST 2015
On Thursday 22 January 2015 16:35:54 Ganapatrao Kulkarni wrote:
> +
> + cpu at 000 {
> + device_type = "cpu";
> + compatible = "cavium,thunder", "arm,armv8";
> + reg = <0x0 0x000>;
> + enable-method = "psci";
> + /* socket 0, cluster 0, core 0*/
> + arm,associativity = <0 0 0>;
> + };
...
> + cpu at 20f {
> + device_type = "cpu";
> + compatible = "cavium,thunder", "arm,armv8";
> + reg = <0x0 0x20f>;
> + enable-method = "psci";
> + arm,associativity = <0 2 15>;
> + };
> + cpu at 10000 {
> + device_type = "cpu";
> + compatible = "cavium,thunder", "arm,armv8";
> + reg = <0x0 0x10000>;
> + enable-method = "psci";
> + /* socket 1, cluster 0, core 0*/
> + arm,associativity = <1 0 0>;
> + };
This seems wrong still: The clusters and cores do not have unique
numbers. I believe the code will not work correctly, and it won't
be compliant with the binding from patch 2.
I think the right way here would be to use
arm,associativity = <0 2 47>;
for cpu at 20f, and
arm,associativity = <1 3 48>;
for cpu at 10000. Your previous version used the numbers from
the reg property, which should be fine as well if that helps:
arm,associativity = <0x0 0x200 0x20f>;
arm,associativity = <0x10000 0x10000 0x10000>;
which should have the same effect as above, as long as the code
can handle the numbers not being consecutive.
Arnd
More information about the linux-arm-kernel
mailing list