powerpc: Add Microwatt device tree
authorPaul Mackerras <paulus@ozlabs.org>
Fri, 18 Jun 2021 03:44:16 +0000 (13:44 +1000)
committerMichael Ellerman <mpe@ellerman.id.au>
Mon, 21 Jun 2021 11:15:26 +0000 (21:15 +1000)
Microwatt currently runs with MSR[HV] = 0, hence the usable-privilege
properties don't have bit 2 (for HV support) set, and we need the
/chosen/ibm,architecture-vec-5 property.

Signed-off-by: Paul Mackerras <paulus@ozlabs.org>
Reviewed-by: Segher Boessenkool <segher@kernel.crashing.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/YMwWkPcXlGDSQ9Q3@thinks.paulus.ozlabs.org
arch/powerpc/boot/dts/microwatt.dts [new file with mode: 0644]

diff --git a/arch/powerpc/boot/dts/microwatt.dts b/arch/powerpc/boot/dts/microwatt.dts
new file mode 100644 (file)
index 0000000..ac264ad
--- /dev/null
@@ -0,0 +1,98 @@
+/dts-v1/;
+
+/ {
+       #size-cells = <0x02>;
+       #address-cells = <0x02>;
+       model-name = "microwatt";
+       compatible = "microwatt-soc";
+
+       reserved-memory {
+               #size-cells = <0x02>;
+               #address-cells = <0x02>;
+               ranges;
+       };
+
+       memory@0 {
+               device_type = "memory";
+               reg = <0x00000000 0x00000000 0x00000000 0x10000000>;
+       };
+
+       cpus {
+               #size-cells = <0x00>;
+               #address-cells = <0x01>;
+
+               ibm,powerpc-cpu-features {
+                       display-name = "Microwatt";
+                       isa = <3000>;
+                       device_type = "cpu-features";
+                       compatible = "ibm,powerpc-cpu-features";
+
+                       mmu-radix {
+                               isa = <3000>;
+                               usable-privilege = <2>;
+                       };
+
+                       little-endian {
+                               isa = <2050>;
+                               usable-privilege = <3>;
+                               hwcap-bit-nr = <1>;
+                       };
+
+                       cache-inhibited-large-page {
+                               isa = <2040>;
+                               usable-privilege = <2>;
+                       };
+
+                       fixed-point-v3 {
+                               isa = <3000>;
+                               usable-privilege = <3>;
+                       };
+
+                       no-execute {
+                               isa = <2010>;
+                               usable-privilege = <2>;
+                       };
+
+                       floating-point {
+                               hwcap-bit-nr = <27>;
+                               isa = <0>;
+                               usable-privilege = <3>;
+                       };
+               };
+
+               PowerPC,Microwatt@0 {
+                       i-cache-sets = <2>;
+                       ibm,dec-bits = <64>;
+                       reservation-granule-size = <64>;
+                       clock-frequency = <100000000>;
+                       timebase-frequency = <100000000>;
+                       i-tlb-sets = <1>;
+                       ibm,ppc-interrupt-server#s = <0>;
+                       i-cache-block-size = <64>;
+                       d-cache-block-size = <64>;
+                       d-cache-sets = <2>;
+                       i-tlb-size = <64>;
+                       cpu-version = <0x990000>;
+                       status = "okay";
+                       i-cache-size = <0x1000>;
+                       ibm,processor-radix-AP-encodings = <0x0c 0xa0000010 0x20000015 0x4000001e>;
+                       tlb-size = <0>;
+                       tlb-sets = <0>;
+                       device_type = "cpu";
+                       d-tlb-size = <128>;
+                       d-tlb-sets = <2>;
+                       reg = <0>;
+                       general-purpose;
+                       64-bit;
+                       d-cache-size = <0x1000>;
+                       ibm,chip-id = <0>;
+               };
+       };
+
+       chosen {
+               bootargs = "";
+               ibm,architecture-vec-5 = [19 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00
+                                         00 00 00 00 00 00 00 00 40 00 40];
+       };
+
+};