Skip to content

Commit 9753d1a

Browse files
committed
dts: jh7100: Fixing boot hang by adding e24 which is hart0
Preventing opensbi to choose e24 on hart0 for booting core during lottery selection, which result hang during booting os since e24 core is rv32 and others in jh7100 soc are u74 which is rv64. Signed-off-by: Akira Tsukamoto <[email protected]>
1 parent d6cc5db commit 9753d1a

File tree

1 file changed

+25
-13
lines changed

1 file changed

+25
-13
lines changed

arch/riscv/boot/dts/starfive/jh7100.dtsi

Lines changed: 25 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,18 @@
1111
#address-cells = <1>;
1212
#size-cells = <0>;
1313
cpu@0 {
14+
compatible = "sifive,e24", "riscv";
15+
device_type = "cpu";
16+
reg = <0>;
17+
riscv,isa = "rv32imbc";
18+
status = "disabled";
19+
cpu0_intc: interrupt-controller {
20+
#interrupt-cells = <1>;
21+
compatible = "riscv,cpu-intc";
22+
interrupt-controller;
23+
};
24+
};
25+
cpu@1 {
1426
compatible = "sifive,u74-mc", "riscv";
1527
d-cache-block-size = <64>;
1628
d-cache-sets = <64>;
@@ -25,19 +37,19 @@
2537
i-tlb-size = <32>;
2638
mmu-type = "riscv,sv39";
2739
next-level-cache = <&ccache>;
28-
reg = <0>;
40+
reg = <1>;
2941
riscv,isa = "rv64imafdc";
3042
starfive,itim = <&itim0>;
3143
status = "okay";
3244
tlb-split;
33-
cpu0_intc: interrupt-controller {
45+
cpu1_intc: interrupt-controller {
3446
#interrupt-cells = <1>;
3547
compatible = "riscv,cpu-intc";
3648
interrupt-controller;
3749
};
3850
};
3951

40-
cpu@1 {
52+
cpu@2 {
4153
compatible = "sifive,u74-mc", "riscv";
4254
d-cache-block-size = <64>;
4355
d-cache-sets = <64>;
@@ -52,12 +64,12 @@
5264
i-tlb-size = <32>;
5365
mmu-type = "riscv,sv39";
5466
next-level-cache = <&ccache>;
55-
reg = <1>;
67+
reg = <2>;
5668
riscv,isa = "rv64imafdc";
5769
starfive,itim = <&itim1>;
5870
status = "okay";
5971
tlb-split;
60-
cpu1_intc: interrupt-controller {
72+
cpu2_intc: interrupt-controller {
6173
#interrupt-cells = <1>;
6274
compatible = "riscv,cpu-intc";
6375
interrupt-controller;
@@ -223,10 +235,10 @@
223235
clint: clint@2000000 {
224236
#interrupt-cells = <1>;
225237
compatible = "riscv,clint0";
226-
interrupts-extended = <&cpu0_intc 3>,
227-
<&cpu0_intc 7>,
228-
<&cpu1_intc 3>,
229-
<&cpu1_intc 7>;
238+
interrupts-extended = <&cpu1_intc 3>,
239+
<&cpu1_intc 7>,
240+
<&cpu2_intc 3>,
241+
<&cpu2_intc 7>;
230242
reg = <0x0 0x2000000 0x0 0x10000>;
231243
reg-names = "control";
232244
};
@@ -235,10 +247,10 @@
235247
#interrupt-cells = <1>;
236248
compatible = "riscv,plic0";
237249
interrupt-controller;
238-
interrupts-extended = <&cpu0_intc 11>,
239-
<&cpu0_intc 9>,
240-
<&cpu1_intc 11>,
241-
<&cpu1_intc 9>;
250+
interrupts-extended = <&cpu1_intc 11>,
251+
<&cpu1_intc 9>,
252+
<&cpu2_intc 11>,
253+
<&cpu2_intc 9>;
242254
reg = <0x0 0xc000000 0x0 0x4000000>;
243255
reg-names = "control";
244256
riscv,max-priority = <7>;

0 commit comments

Comments
 (0)