summary refs log tree commit diff stats
path: root/gitlab/issues_text/target_arm/host_missing/accel_missing/2898
blob: 6f0618fb73a6b12e3b1d1dc786f1127c81d2c299 (plain) (blame)
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
-M virt,dumpdtb is missing information from the device tree
Description of problem:
dumpdtb no longer produces a device tree with the full system described.


```
$ dtc -I dtb -O dts test.dtb
<stdout>: Warning (unit_address_vs_reg): /soc/pci@30000000: node has a unit name, but no reg or ranges property
<stdout>: Warning (simple_bus_reg): /soc/pci@30000000: missing or empty reg/ranges property
/dts-v1/;

/ {
	#address-cells = <0x02>;
	#size-cells = <0x02>;
	compatible = "riscv-virtio";
	model = "riscv-virtio,qemu";

	pmu {
		riscv,event-to-mhpmcounters = <0x01 0x01 0x7fff9 0x02 0x02 0x7fffc 0x10019 0x10019 0x7fff8 0x1001b 0x1001b 0x7fff8 0x10021 0x10021 0x7fff8>;
		compatible = "riscv,pmu";
	};

	fw-cfg@10100000 {
		dma-coherent;
		reg = <0x00 0x10100000 0x00 0x18>;
		compatible = "qemu,fw-cfg-mmio";
	};

	flash@20000000 {
		bank-width = <0x04>;
		reg = <0x00 0x20000000 0x00 0x2000000 0x00 0x22000000 0x00 0x2000000>;
		compatible = "cfi-flash";
	};

	aliases {
	};

	chosen {
		rng-seed = <0xd4266784 0xc7a7c66f 0xd5b7347d 0x862188f3 0x78065a8e 0xebdedae5 0xd77c47b0 0x34d31eff>;
	};

	soc {
		#address-cells = <0x02>;
		#size-cells = <0x02>;
		compatible = "simple-bus";
		ranges;

		pci@30000000 {
		};
	};
};
```
Steps to reproduce:
1. qemu-system-riscv64 -machine virt,dumpdtb=test.dtb
2. dtc -I dtb -O dts test.dtb
Additional information:
The regression was introduced in https://gitlab.com/qemu-project/qemu/-/commit/8fd2518ef2f8d. If this commit is reverted, the expected behavior returns.

```
dtc -I dtb -O dts test.dtb | grep "@"
	platform-bus@4000000 {
	memory@80000000 {
		cpu@0 {
	fw-cfg@10100000 {
	flash@20000000 {
		serial0 = "/soc/serial@10000000";
		stdout-path = "/soc/serial@10000000";
		rtc@101000 {
		serial@10000000 {
			clock-frequency = "", "8@";
		test@100000 {
		virtio_mmio@10008000 {
		virtio_mmio@10007000 {
		virtio_mmio@10006000 {
		virtio_mmio@10005000 {
		virtio_mmio@10004000 {
		virtio_mmio@10003000 {
		virtio_mmio@10002000 {
		virtio_mmio@10001000 {
		plic@c000000 {
		clint@2000000 {
		pci@30000000 {
```

Other machines are affected to a lesser degree. The arm virt machine:

qemu-system-arm -machine virt,dumpdtb=test.dtb
```
@@ -8,28 +8,6 @@
 	#address-cells = <0x02>;
 	compatible = "linux,dummy-virt";

-	psci {
-		migrate = <0x84000005>;
-		cpu_on = <0x84000003>;
-		cpu_off = <0x84000002>;
-		cpu_suspend = <0x84000001>;
-		method = "hvc";
-		compatible = "arm,psci-1.0", "arm,psci-0.2", "arm,psci";
-	};
-
-	memory@40000000 {
-		reg = <0x00 0x40000000 0x00 0x8000000>;
-		device_type = "memory";
-	};
-
-	platform-bus@c000000 {
-		interrupt-parent = <0x8002>;
-		ranges = <0x00 0x00 0xc000000 0x2000000>;
-		#address-cells = <0x01>;
-		#size-cells = <0x01>;
-		compatible = "qemu,platform", "simple-bus";
-	};
-
```