xref: /freebsd/sys/contrib/device-tree/Bindings/arm/cpu-enable-method/al,alpine-smp (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
1*c66ec88fSEmmanuel Vadot========================================================
2*c66ec88fSEmmanuel VadotSecondary CPU enable-method "al,alpine-smp" binding
3*c66ec88fSEmmanuel Vadot========================================================
4*c66ec88fSEmmanuel Vadot
5*c66ec88fSEmmanuel VadotThis document describes the "al,alpine-smp" method for
6*c66ec88fSEmmanuel Vadotenabling secondary CPUs. To apply to all CPUs, a single
7*c66ec88fSEmmanuel Vadot"al,alpine-smp" enable method should be defined in the
8*c66ec88fSEmmanuel Vadot"cpus" node.
9*c66ec88fSEmmanuel Vadot
10*c66ec88fSEmmanuel VadotEnable method name:	"al,alpine-smp"
11*c66ec88fSEmmanuel VadotCompatible machines:	"al,alpine"
12*c66ec88fSEmmanuel VadotCompatible CPUs:	"arm,cortex-a15"
13*c66ec88fSEmmanuel VadotRelated properties:	(none)
14*c66ec88fSEmmanuel Vadot
15*c66ec88fSEmmanuel VadotNote:
16*c66ec88fSEmmanuel VadotThis enable method requires valid nodes compatible with
17*c66ec88fSEmmanuel Vadot"al,alpine-cpu-resume" and "al,alpine-nb-service".
18*c66ec88fSEmmanuel Vadot
19*c66ec88fSEmmanuel Vadot
20*c66ec88fSEmmanuel Vadot* Alpine CPU resume registers
21*c66ec88fSEmmanuel Vadot
22*c66ec88fSEmmanuel VadotThe CPU resume register are used to define required resume address after
23*c66ec88fSEmmanuel Vadotreset.
24*c66ec88fSEmmanuel Vadot
25*c66ec88fSEmmanuel VadotProperties:
26*c66ec88fSEmmanuel Vadot- compatible : Should contain "al,alpine-cpu-resume".
27*c66ec88fSEmmanuel Vadot- reg : Offset and length of the register set for the device
28*c66ec88fSEmmanuel Vadot
29*c66ec88fSEmmanuel Vadot
30*c66ec88fSEmmanuel VadotExample:
31*c66ec88fSEmmanuel Vadot
32*c66ec88fSEmmanuel Vadotcpus {
33*c66ec88fSEmmanuel Vadot	#address-cells = <1>;
34*c66ec88fSEmmanuel Vadot	#size-cells = <0>;
35*c66ec88fSEmmanuel Vadot	enable-method = "al,alpine-smp";
36*c66ec88fSEmmanuel Vadot
37*c66ec88fSEmmanuel Vadot	cpu@0 {
38*c66ec88fSEmmanuel Vadot		compatible = "arm,cortex-a15";
39*c66ec88fSEmmanuel Vadot		device_type = "cpu";
40*c66ec88fSEmmanuel Vadot		reg = <0>;
41*c66ec88fSEmmanuel Vadot	};
42*c66ec88fSEmmanuel Vadot
43*c66ec88fSEmmanuel Vadot	cpu@1 {
44*c66ec88fSEmmanuel Vadot		compatible = "arm,cortex-a15";
45*c66ec88fSEmmanuel Vadot		device_type = "cpu";
46*c66ec88fSEmmanuel Vadot		reg = <1>;
47*c66ec88fSEmmanuel Vadot	};
48*c66ec88fSEmmanuel Vadot
49*c66ec88fSEmmanuel Vadot	cpu@2 {
50*c66ec88fSEmmanuel Vadot		compatible = "arm,cortex-a15";
51*c66ec88fSEmmanuel Vadot		device_type = "cpu";
52*c66ec88fSEmmanuel Vadot		reg = <2>;
53*c66ec88fSEmmanuel Vadot	};
54*c66ec88fSEmmanuel Vadot
55*c66ec88fSEmmanuel Vadot	cpu@3 {
56*c66ec88fSEmmanuel Vadot		compatible = "arm,cortex-a15";
57*c66ec88fSEmmanuel Vadot		device_type = "cpu";
58*c66ec88fSEmmanuel Vadot		reg = <3>;
59*c66ec88fSEmmanuel Vadot	};
60*c66ec88fSEmmanuel Vadot};
61*c66ec88fSEmmanuel Vadot
62*c66ec88fSEmmanuel Vadotcpu_resume {
63*c66ec88fSEmmanuel Vadot	compatible = "al,alpine-cpu-resume";
64*c66ec88fSEmmanuel Vadot	reg = <0xfbff5ed0 0x30>;
65*c66ec88fSEmmanuel Vadot};
66*c66ec88fSEmmanuel Vadot
67*c66ec88fSEmmanuel Vadotnb_service {
68*c66ec88fSEmmanuel Vadot        compatible = "al,alpine-sysfabric-service", "syscon";
69*c66ec88fSEmmanuel Vadot        reg = <0xfb070000 0x10000>;
70*c66ec88fSEmmanuel Vadot};
71