-
Notifications
You must be signed in to change notification settings - Fork 74
Expand file tree
/
Copy pathminimal.dts
More file actions
127 lines (111 loc) · 3.31 KB
/
Copy pathminimal.dts
File metadata and controls
127 lines (111 loc) · 3.31 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
/dts-v1/;
/*
* RISC-V harts descriptions
*/
#include "riscv-harts.dtsi"
/ {
#address-cells = <1>;
#size-cells = <1>;
model = "semu";
aliases {
serial0 = "/soc@F0000000/serial@4000000";
};
chosen {
#if SEMU_FEATURE_EXTERNAL_ROOT && SEMU_FEATURE_VIRTIOBLK
/* External rootfs on virtio-blk; skip initrd unpack entirely.
* - quiet/loglevel=3: suppress non-error printk so the UART path
* (MMIO -> device handler -> fputc) does not dominate boot
* - lpj=260000: skip the BogoMIPS calibration loop; the value
* matches what calibration would print at the current
* timebase-frequency
* Note: rootflags=noatime makes ext4 root mount fail under the
* prebuilt Linux Image; do not add it back without re-testing.
*/
bootargs = "earlycon console=ttyS0 root=/dev/vda rw rootwait quiet loglevel=3 lpj=260000";
stdout-path = "serial0";
#else
bootargs = "earlycon console=ttyS0";
stdout-path = "serial0";
linux,initrd-start = <0x1f700000>; /* @403 MiB (503 * 1024 * 1024) */
linux,initrd-end = <0x1fefffff>; /* @511 MiB (511 * 1024 * 1024 - 1) */
#endif
};
cpus {
#address-cells = <1>;
#size-cells = <0>;
timebase-frequency = <CLOCK_FREQ>;
};
sram: memory@0 {
device_type = "memory";
reg = <0x00000000 0x20000000>;
reg-names = "sram0";
};
soc: soc@F0000000 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "simple-bus";
ranges = <0x0 0xF0000000 0x10000000>;
interrupt-parent = <&plic0>;
serial@4000000 {
compatible = "ns16550";
reg = <0x4000000 0x100000>;
interrupts = <1>;
no-loopback-test;
clock-frequency = <5000000>; /* the baudrate divisor is ignored */
};
#if SEMU_FEATURE_VIRTIONET
net0: virtio@4100000 {
compatible = "virtio,mmio";
reg = <0x4100000 0x100000>;
interrupts = <2>;
};
#endif
#if SEMU_FEATURE_VIRTIOBLK
blk0: virtio@4200000 {
compatible = "virtio,mmio";
reg = <0x4200000 0x200>;
interrupts = <3>;
};
#endif
#if SEMU_FEATURE_VIRTIORNG
rng0: virtio@4600000 {
compatible = "virtio,mmio";
reg = <0x4600000 0x200>;
interrupts = <4>;
};
#endif
#if SEMU_FEATURE_VIRTIOSND
snd0: virtio@4700000 {
compatible = "virtio,mmio";
reg = <0x4700000 0x200>;
interrupts = <5>;
};
#endif
#if SEMU_FEATURE_VIRTIOFS
fs0: virtio@4800000 {
compatible = "virtio,mmio";
reg = <0x4800000 0x1000>;
interrupts = <6>;
};
#endif
#if SEMU_FEATURE_VIRTIOINPUT
keyboard0: virtio@4900000 {
compatible = "virtio,mmio";
reg = <0x4900000 0x200>;
interrupts = <7>;
};
mouse0: virtio@4a00000 {
compatible = "virtio,mmio";
reg = <0x4a00000 0x200>;
interrupts = <8>;
};
#endif
#if SEMU_FEATURE_VIRTIOGPU
gpu0: virtio@4b00000 {
compatible = "virtio,mmio";
reg = <0x4b00000 0x200>;
interrupts = <9>;
};
#endif
};
};