Skip to content

Commit 64a66c4

Browse files
committed
Merge branch 'dev/dyn' of github.com:arceos-hypervisor/axvisor into dev/dyn
2 parents 56fd2de + dc159a3 commit 64a66c4

8 files changed

+12730
-0
lines changed
Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
/dts-v1/;
2+
3+
/memreserve/ 0x0000000008300000 0x000000000001c000;
4+
/memreserve/ 0x000000000a200000 0x00000000008cf15d;
5+
/ {
6+
serial-number = "425ca8fc29ade692";
7+
compatible = "rockchip,rk3568-firefly-roc-pc\0rockchip,rk3568";
8+
interrupt-parent = <0x01>;
9+
#address-cells = <0x02>;
10+
#size-cells = <0x02>;
11+
model = "Firefly RK3568-ROC-PC";
12+
13+
memory {
14+
reg = <0x00 0x70000000 0x00 0x10000000>;
15+
device_type = "memory";
16+
};
17+
18+
chosen {
19+
bootargs = "earlycon=uart8250,mmio32,0xfe660000";
20+
};
21+
22+
aliases {
23+
serial2 = "/serial@fe660000";
24+
};
25+
26+
cpus {
27+
#address-cells = <0x02>;
28+
#size-cells = <0x00>;
29+
30+
cpu@100 {
31+
device_type = "cpu";
32+
compatible = "arm,cortex-a55";
33+
reg = <0x00 0x100>;
34+
enable-method = "psci";
35+
clocks = <0x02 0x00>;
36+
operating-points-v2 = <0x03>;
37+
cpu-idle-states = <0x04>;
38+
phandle = <0x0d>;
39+
};
40+
};
41+
42+
psci {
43+
compatible = "arm,psci-1.0";
44+
method = "smc";
45+
};
46+
47+
timer {
48+
compatible = "arm,armv8-timer";
49+
interrupts = <0x01 0x0d 0xf04 0x01 0x0e 0xf04 0x01 0x0b 0xf04 0x01 0x0a 0xf04>;
50+
arm,no-tick-in-suspend;
51+
};
52+
53+
interrupt-controller@fd400000 {
54+
compatible = "arm,gic-v3";
55+
#interrupt-cells = <0x03>;
56+
#address-cells = <0x02>;
57+
#size-cells = <0x02>;
58+
ranges;
59+
interrupt-controller;
60+
reg = <0x00 0xfd400000 0x00 0x10000 0x00 0xfd460000 0x00 0xc0000>;
61+
interrupts = <0x01 0x09 0x04>;
62+
phandle = <0x01>;
63+
64+
interrupt-controller@fd440000 {
65+
compatible = "arm,gic-v3-its";
66+
msi-controller;
67+
#msi-cells = <0x01>;
68+
reg = <0x00 0xfd440000 0x00 0x20000>;
69+
status = "okay";
70+
phandle = <0xbe>;
71+
};
72+
};
73+
74+
serial@fe660000 {
75+
compatible = "rockchip,rk3568-uart\0snps,dw-apb-uart";
76+
reg = <0x00 0xfe660000 0x00 0x100>;
77+
interrupts = <0x00 0x76 0x04>;
78+
clocks = <0x23 0x123 0x23 0x120>;
79+
clock-names = "baudclk\0apb_pclk";
80+
reg-shift = <0x02>;
81+
reg-io-width = <0x04>;
82+
dmas = <0x4e 0x04 0x4e 0x05>;
83+
pinctrl-names = "default";
84+
pinctrl-0 = <0x10c>;
85+
status = "okay";
86+
};
87+
};
Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
# Vm base info configs
2+
#
3+
[base]
4+
# Guest vm id.
5+
id = 1
6+
# Guest vm name.
7+
name = "arceos"
8+
# Virtualization type.
9+
vm_type = 1
10+
# The number of virtual CPUs.
11+
cpu_num = 1
12+
# The physical CPU ids.
13+
phys_cpu_ids = [0x100]
14+
# Guest vm physical cpu sets.
15+
phys_cpu_sets = [1]
16+
17+
#
18+
# Vm kernel configs
19+
#
20+
[kernel]
21+
# The entry point of the kernel image.
22+
entry_point = 0x7008_0000
23+
# The location of image: "memory" | "fs".
24+
# Load from file system.
25+
image_location = "fs"
26+
# The load address of the kernel image.
27+
kernel_load_addr = 0x7008_0000
28+
## The file path of the kernel image.
29+
kernel_path = "/guest/arceos-aarch64-rk3568_smp1.bin"
30+
## The file path of the device tree blob (DTB).
31+
dtb_path = "/guest/arceos-aarch64-rk3568_smp1.dtb"
32+
dtb_load_addr = 0x7000_0000
33+
# Memory regions with format (`base_paddr`, `size`, `flags`, `map_type`).
34+
# For `map_type`, 0 means `MAP_ALLOC`, 1 means `MAP_IDENTICAL`.
35+
memory_regions = [
36+
# [0x1000_0000, 0x800_0000, 0x7, 0],
37+
[0x7000_0000, 0x1000_0000, 0x7, 1], # System RAM 1G MAP_IDENTICAL
38+
# [0x1_f000_0000, 0x1000_0000 , 0x7, 1], # System RAM 1G MAP_IDENTICAL
39+
# [0x600_0000, 0x240_0000, 0x7, 1], # System RAM MAP_IDENTICAL
40+
# [0x1_f000_0000, 0x1000_0000, 0x7, 1], # System RAM MAP_IDENTICAL
41+
]
42+
43+
#
44+
# Device specifications
45+
#
46+
[devices]
47+
# Emu_devices.
48+
# Name Base-Ipa Ipa_len Alloc-Irq Emu-Type EmuConfig.
49+
emu_devices = []
50+
51+
# Pass-through devices.
52+
# Name Base-Ipa Base-Pa Length Alloc-Irq.
53+
passthrough_devices = [
54+
[
55+
"UART2",
56+
0xfe66_0000,
57+
0xfe66_0000,
58+
0x10000,
59+
0x1,
60+
],
61+
[
62+
"gic-v3",
63+
0xfd40_0000,
64+
0xfd40_0000,
65+
0x10000,
66+
0x1,
67+
],
68+
[
69+
"gic-v3-its",
70+
0xfd44_0000,
71+
0xfd44_0000,
72+
0x100000,
73+
0x1,
74+
],
75+
]
Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
/dts-v1/;
2+
3+
/memreserve/ 0x0000000008300000 0x000000000001c000;
4+
/memreserve/ 0x000000000a200000 0x00000000008cf15d;
5+
/ {
6+
serial-number = "425ca8fc29ade692";
7+
compatible = "rockchip,rk3568-firefly-roc-pc\0rockchip,rk3568";
8+
interrupt-parent = <0x01>;
9+
#address-cells = <0x02>;
10+
#size-cells = <0x02>;
11+
model = "Firefly RK3568-ROC-PC";
12+
13+
memory {
14+
reg = <0x00 0x70000000 0x00 0x10000000>;
15+
device_type = "memory";
16+
};
17+
18+
chosen {
19+
bootargs = "earlycon=uart8250,mmio32,0xfe660000";
20+
};
21+
22+
aliases {
23+
serial2 = "/serial@fe660000";
24+
};
25+
26+
cpus {
27+
#address-cells = <0x02>;
28+
#size-cells = <0x00>;
29+
30+
cpu@0 {
31+
device_type = "cpu";
32+
compatible = "arm,cortex-a55";
33+
reg = <0x00 0x00>;
34+
enable-method = "psci";
35+
clocks = <0x02 0x00>;
36+
operating-points-v2 = <0x03>;
37+
cpu-idle-states = <0x04>;
38+
#cooling-cells = <0x02>;
39+
dynamic-power-coefficient = <0xbb>;
40+
cpu-supply = <0x05>;
41+
phandle = <0x0c>;
42+
};
43+
44+
cpu@100 {
45+
device_type = "cpu";
46+
compatible = "arm,cortex-a55";
47+
reg = <0x00 0x100>;
48+
enable-method = "psci";
49+
clocks = <0x02 0x00>;
50+
operating-points-v2 = <0x03>;
51+
cpu-idle-states = <0x04>;
52+
phandle = <0x0d>;
53+
};
54+
};
55+
56+
psci {
57+
compatible = "arm,psci-1.0";
58+
method = "smc";
59+
};
60+
61+
timer {
62+
compatible = "arm,armv8-timer";
63+
interrupts = <0x01 0x0d 0xf04 0x01 0x0e 0xf04 0x01 0x0b 0xf04 0x01 0x0a 0xf04>;
64+
arm,no-tick-in-suspend;
65+
};
66+
67+
interrupt-controller@fd400000 {
68+
compatible = "arm,gic-v3";
69+
#interrupt-cells = <0x03>;
70+
#address-cells = <0x02>;
71+
#size-cells = <0x02>;
72+
ranges;
73+
interrupt-controller;
74+
reg = <0x00 0xfd400000 0x00 0x10000 0x00 0xfd460000 0x00 0xc0000>;
75+
interrupts = <0x01 0x09 0x04>;
76+
phandle = <0x01>;
77+
78+
interrupt-controller@fd440000 {
79+
compatible = "arm,gic-v3-its";
80+
msi-controller;
81+
#msi-cells = <0x01>;
82+
reg = <0x00 0xfd440000 0x00 0x20000>;
83+
status = "okay";
84+
phandle = <0xbe>;
85+
};
86+
};
87+
88+
serial@fe660000 {
89+
compatible = "rockchip,rk3568-uart\0snps,dw-apb-uart";
90+
reg = <0x00 0xfe660000 0x00 0x100>;
91+
interrupts = <0x00 0x76 0x04>;
92+
clocks = <0x23 0x123 0x23 0x120>;
93+
clock-names = "baudclk\0apb_pclk";
94+
reg-shift = <0x02>;
95+
reg-io-width = <0x04>;
96+
dmas = <0x4e 0x04 0x4e 0x05>;
97+
pinctrl-names = "default";
98+
pinctrl-0 = <0x10c>;
99+
status = "okay";
100+
};
101+
};
Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
# Vm base info configs
2+
#
3+
[base]
4+
# Guest vm id.
5+
id = 2
6+
# Guest vm name.
7+
name = "arceos"
8+
# Virtualization type.
9+
vm_type = 1
10+
# The number of virtual CPUs.
11+
cpu_num = 2
12+
# The physical CPU ids.
13+
phys_cpu_ids = [0x00, 0x100]
14+
# Guest vm physical cpu sets.
15+
phys_cpu_sets = [1, 2]
16+
17+
#
18+
# Vm kernel configs
19+
#
20+
[kernel]
21+
# The entry point of the kernel image.
22+
entry_point = 0x7008_0000
23+
# The location of image: "memory" | "fs".
24+
# Load from file system.
25+
image_location = "fs"
26+
# The load address of the kernel image.
27+
kernel_load_addr = 0x7008_0000
28+
## The file path of the kernel image.
29+
kernel_path = "/guest/arceos-aarch64-rk3568_smp2.bin"
30+
## The file path of the device tree blob (DTB).
31+
dtb_path = "/guest/arceos-aarch64-rk3568_smp2.dtb"
32+
dtb_load_addr = 0x7000_0000
33+
# Memory regions with format (`base_paddr`, `size`, `flags`, `map_type`).
34+
# For `map_type`, 0 means `MAP_ALLOC`, 1 means `MAP_IDENTICAL`.
35+
memory_regions = [
36+
# [0x1000_0000, 0x800_0000, 0x7, 0],
37+
[0x7000_0000, 0x1000_0000, 0x7, 1], # System RAM 1G MAP_IDENTICAL
38+
# [0x1_f000_0000, 0x1000_0000 , 0x7, 1], # System RAM 1G MAP_IDENTICAL
39+
# [0x600_0000, 0x240_0000, 0x7, 1], # System RAM MAP_IDENTICAL
40+
# [0x1_f000_0000, 0x1000_0000, 0x7, 1], # System RAM MAP_IDENTICAL
41+
]
42+
43+
#
44+
# Device specifications
45+
#
46+
[devices]
47+
# Emu_devices.
48+
# Name Base-Ipa Ipa_len Alloc-Irq Emu-Type EmuConfig.
49+
emu_devices = []
50+
51+
# Pass-through devices.
52+
# Name Base-Ipa Base-Pa Length Alloc-Irq.
53+
passthrough_devices = [
54+
[
55+
"UART2",
56+
0xfe66_0000,
57+
0xfe66_0000,
58+
0x10000,
59+
0x1,
60+
],
61+
[
62+
"gic-v3",
63+
0xfd40_0000,
64+
0xfd40_0000,
65+
0x10000,
66+
0x1,
67+
],
68+
[
69+
"gic-v3-its",
70+
0xfd44_0000,
71+
0xfd44_0000,
72+
0x100000,
73+
0x1,
74+
],
75+
]

0 commit comments

Comments
 (0)