Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   1) ==============================================================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   2) NUMA binding description.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   3) ==============================================================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   4) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   5) ==============================================================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   6) 1 - Introduction
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   7) ==============================================================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   8) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   9) Systems employing a Non Uniform Memory Access (NUMA) architecture contain
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  10) collections of hardware resources including processors, memory, and I/O buses,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  11) that comprise what is commonly known as a NUMA node.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  12) Processor accesses to memory within the local NUMA node is generally faster
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  13) than processor accesses to memory outside of the local NUMA node.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  14) DT defines interfaces that allow the platform to convey NUMA node
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  15) topology information to OS.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  16) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  17) ==============================================================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  18) 2 - numa-node-id
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  19) ==============================================================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  20) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  21) For the purpose of identification, each NUMA node is associated with a unique
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  22) token known as a node id. For the purpose of this binding
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  23) a node id is a 32-bit integer.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  24) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  25) A device node is associated with a NUMA node by the presence of a
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  26) numa-node-id property which contains the node id of the device.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  27) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  28) Example:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  29) 	/* numa node 0 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  30) 	numa-node-id = <0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  31) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  32) 	/* numa node 1 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  33) 	numa-node-id = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  34) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  35) ==============================================================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  36) 3 - distance-map
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  37) ==============================================================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  38) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  39) The optional device tree node distance-map describes the relative
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  40) distance (memory latency) between all numa nodes.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  41) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  42) - compatible : Should at least contain "numa-distance-map-v1".
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  43) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  44) - distance-matrix
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  45)   This property defines a matrix to describe the relative distances
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  46)   between all numa nodes.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  47)   It is represented as a list of node pairs and their relative distance.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  48) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  49)   Note:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  50) 	1. Each entry represents distance from first node to second node.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  51) 	The distances are equal in either direction.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  52) 	2. The distance from a node to self (local distance) is represented
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  53) 	with value 10 and all internode distance should be represented with
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  54) 	a value greater than 10.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  55) 	3. distance-matrix should have entries in lexicographical ascending
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  56) 	order of nodes.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  57) 	4. There must be only one device node distance-map which must
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  58) 	reside in the root node.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  59) 	5. If the distance-map node is not present, a default
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  60) 	distance-matrix is used.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  61) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  62) Example:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  63) 	4 nodes connected in mesh/ring topology as below,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  64) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  65) 		0_______20______1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  66) 		|               |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  67) 		|               |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  68) 		20             20
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  69) 		|               |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  70) 		|               |
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  71) 		|_______________|
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  72) 		3       20      2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  73) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  74) 	if relative distance for each hop is 20,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  75) 	then internode distance would be,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  76) 	      0 -> 1 = 20
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  77) 	      1 -> 2 = 20
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  78) 	      2 -> 3 = 20
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  79) 	      3 -> 0 = 20
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  80) 	      0 -> 2 = 40
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  81) 	      1 -> 3 = 40
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  82) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  83)      and dt presentation for this distance matrix is,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  84) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  85) 		distance-map {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  86) 			 compatible = "numa-distance-map-v1";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  87) 			 distance-matrix = <0 0  10>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  88) 					   <0 1  20>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  89) 					   <0 2  40>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  90) 					   <0 3  20>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  91) 					   <1 0  20>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  92) 					   <1 1  10>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  93) 					   <1 2  20>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  94) 					   <1 3  40>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  95) 					   <2 0  40>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  96) 					   <2 1  20>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  97) 					   <2 2  10>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  98) 					   <2 3  20>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  99) 					   <3 0  20>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) 					   <3 1  40>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) 					   <3 2  20>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) 					   <3 3  10>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) 		};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) ==============================================================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) 4 - Example dts
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) ==============================================================================
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) Dual socket system consists of 2 boards connected through ccn bus and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) each board having one socket/soc of 8 cpus, memory and pci bus.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) 	memory@c00000 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) 		device_type = "memory";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) 		reg = <0x0 0xc00000 0x0 0x80000000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) 		/* node 0 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) 		numa-node-id = <0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) 	};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) 	memory@10000000000 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) 		device_type = "memory";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) 		reg = <0x100 0x0 0x0 0x80000000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) 		/* node 1 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) 		numa-node-id = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) 	};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) 	cpus {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) 		#address-cells = <2>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) 		#size-cells = <0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) 		cpu@0 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) 			device_type = "cpu";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) 			compatible =  "arm,armv8";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133) 			reg = <0x0 0x0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) 			enable-method = "psci";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) 			/* node 0 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136) 			numa-node-id = <0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) 		};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) 		cpu@1 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) 			device_type = "cpu";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) 			compatible =  "arm,armv8";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) 			reg = <0x0 0x1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) 			enable-method = "psci";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) 			numa-node-id = <0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) 		};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) 		cpu@2 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) 			device_type = "cpu";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) 			compatible =  "arm,armv8";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) 			reg = <0x0 0x2>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149) 			enable-method = "psci";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) 			numa-node-id = <0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) 		};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) 		cpu@3 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) 			device_type = "cpu";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) 			compatible =  "arm,armv8";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) 			reg = <0x0 0x3>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) 			enable-method = "psci";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) 			numa-node-id = <0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) 		};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) 		cpu@4 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) 			device_type = "cpu";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) 			compatible =  "arm,armv8";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) 			reg = <0x0 0x4>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) 			enable-method = "psci";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164) 			numa-node-id = <0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) 		};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) 		cpu@5 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) 			device_type = "cpu";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) 			compatible =  "arm,armv8";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169) 			reg = <0x0 0x5>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) 			enable-method = "psci";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171) 			numa-node-id = <0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) 		};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173) 		cpu@6 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) 			device_type = "cpu";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175) 			compatible =  "arm,armv8";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176) 			reg = <0x0 0x6>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) 			enable-method = "psci";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) 			numa-node-id = <0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) 		};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) 		cpu@7 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) 			device_type = "cpu";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182) 			compatible =  "arm,armv8";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) 			reg = <0x0 0x7>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184) 			enable-method = "psci";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) 			numa-node-id = <0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) 		};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) 		cpu@8 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188) 			device_type = "cpu";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) 			compatible =  "arm,armv8";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) 			reg = <0x0 0x8>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) 			enable-method = "psci";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192) 			/* node 1 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) 			numa-node-id = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194) 		};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195) 		cpu@9 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) 			device_type = "cpu";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197) 			compatible =  "arm,armv8";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198) 			reg = <0x0 0x9>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) 			enable-method = "psci";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200) 			numa-node-id = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201) 		};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) 		cpu@a {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203) 			device_type = "cpu";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204) 			compatible =  "arm,armv8";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) 			reg = <0x0 0xa>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206) 			enable-method = "psci";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207) 			numa-node-id = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) 		};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209) 		cpu@b {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210) 			device_type = "cpu";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211) 			compatible =  "arm,armv8";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212) 			reg = <0x0 0xb>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213) 			enable-method = "psci";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 214) 			numa-node-id = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 215) 		};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 216) 		cpu@c {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 217) 			device_type = "cpu";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 218) 			compatible =  "arm,armv8";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 219) 			reg = <0x0 0xc>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 220) 			enable-method = "psci";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 221) 			numa-node-id = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 222) 		};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 223) 		cpu@d {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 224) 			device_type = "cpu";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 225) 			compatible =  "arm,armv8";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 226) 			reg = <0x0 0xd>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 227) 			enable-method = "psci";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 228) 			numa-node-id = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 229) 		};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 230) 		cpu@e {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 231) 			device_type = "cpu";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 232) 			compatible =  "arm,armv8";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 233) 			reg = <0x0 0xe>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 234) 			enable-method = "psci";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 235) 			numa-node-id = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 236) 		};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 237) 		cpu@f {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 238) 			device_type = "cpu";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 239) 			compatible =  "arm,armv8";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 240) 			reg = <0x0 0xf>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 241) 			enable-method = "psci";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 242) 			numa-node-id = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 243) 		};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 244) 	};
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 245) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 246) 	pcie0: pcie0@848000000000 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 247) 		compatible = "arm,armv8";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 248) 		device_type = "pci";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 249) 		bus-range = <0 255>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 250) 		#size-cells = <2>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 251) 		#address-cells = <3>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 252) 		reg = <0x8480 0x00000000 0 0x10000000>;  /* Configuration space */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 253) 		ranges = <0x03000000 0x8010 0x00000000 0x8010 0x00000000 0x70 0x00000000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 254) 		/* node 0 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 255) 		numa-node-id = <0>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 256)         };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 257) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 258) 	pcie1: pcie1@948000000000 {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 259) 		compatible = "arm,armv8";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 260) 		device_type = "pci";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 261) 		bus-range = <0 255>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 262) 		#size-cells = <2>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 263) 		#address-cells = <3>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 264) 		reg = <0x9480 0x00000000 0 0x10000000>;  /* Configuration space */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 265) 		ranges = <0x03000000 0x9010 0x00000000 0x9010 0x00000000 0x70 0x00000000>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 266) 		/* node 1 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 267) 		numa-node-id = <1>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 268)         };
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 269) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 270) 	distance-map {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 271) 		compatible = "numa-distance-map-v1";
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 272) 		distance-matrix = <0 0 10>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 273) 				  <0 1 20>,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 274) 				  <1 1 10>;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 275) 	};