1/dts-v1/;
2
3/ {
4    #size-cells = <0x2>;
5    #address-cells = <0x2>;
6    compatible = "arm,ffa-core-manifest-1.0";
7    attribute {
8        spmc_id = <0x8000>;
9        maj_ver = <0x1>;
10        min_ver = <0x1>;
11        exec_state = <0x0>;
12        /* i'm not sure this is right, or whether it does anything
13        the docs say that it's only used to verify that the entry
14        point is in range */
15        load_address = <0x0 0x0e200000>;
16        entrypoint = <0x0 0x0e200000>;
17        binary_size = <0x60000>;
18    };
19    cpus {
20        #address-cells = <0x1>;
21        #size-cells = <0x0>;
22        cpu@0 {
23            phandle = <0x8004>;
24            reg = <0x0>;
25            compatible = "arm,cortex-a57";
26            device_type = "cpu";
27        };
28        /*
29        * SPMC (Hafnium) requires secondary core nodes are declared
30        * in descending order.
31        */
32        cpu@3 {
33            phandle = <0x8001>;
34            reg = <0x3>;
35            compatible = "arm,cortex-a57";
36            device_type = "cpu";
37        };
38        cpu@2 {
39            phandle = <0x8002>;
40            reg = <0x2>;
41            compatible = "arm,cortex-a57";
42            device_type = "cpu";
43        };
44        cpu@1 {
45            phandle = <0x8003>;
46            reg = <0x1>;
47            compatible = "arm,cortex-a57";
48            device_type = "cpu";
49        };
50    };
51    secram@e000000 {
52        secure-status = "okay";
53        status = "disabled";
54        reg = <0x0 0xe000000 0x0 0x30000000>;
55        device_type = "memory";
56    };
57    ns-memory@40000000 {
58        reg = <0x0 0x40000000 0x0 0x40000000>;
59        device_type = "ns-memory";
60    };
61    hypervisor {
62        compatible = "hafnium,hafnium";
63        vm1 {
64            is_ffa_partition;
65            debug_name = "trusty";
66            load_address = <0x10000000>;
67            vcpu_count = <4>;
68            mem_size = <0x08000000>;
69        };
70    };
71};
72