1
This bug seemed worth fixing for 8.0 since we need an rc4 anyway:
1
v2:
2
we were using uninitialized data for the guarded bit when
2
* dropped target/arm/cpu: Use ARRAY_SIZE() to iterate over ARMCPUInfo[]
3
combining stage 1 and stage 2 attrs.
3
* renamed CLOCK_SECOND to CLOCK_PERIOD_1SEC
4
4
5
thanks
6
-- PMM
7
5
8
The following changes since commit 08dede07030973c1053868bc64de7e10bfa02ad6:
6
The following changes since commit 648db19685b7030aa558a4ddbd3a8e53d8c9a062:
9
7
10
Merge tag 'pull-ppc-20230409' of https://github.com/legoater/qemu into staging (2023-04-10 11:47:52 +0100)
8
Merge remote-tracking branch 'remotes/armbru/tags/pull-misc-2020-04-29' into staging (2020-04-29 15:07:33 +0100)
11
9
12
are available in the Git repository at:
10
are available in the Git repository at:
13
11
14
https://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20230410
12
https://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20200430-1
15
13
16
for you to fetch changes up to 8539dc00552e8ea60420856fc1262c8299bc6308:
14
for you to fetch changes up to 6f7b6947a6639fff15c6a0956adf0f5ec004b789:
17
15
18
target/arm: Copy guarded bit in combine_cacheattrs (2023-04-10 14:31:40 +0100)
16
hw/arm: xlnx-zcu102: Disable unsupported FDT firmware nodes (2020-04-30 15:35:41 +0100)
19
17
20
----------------------------------------------------------------
18
----------------------------------------------------------------
21
target-arm: Fix bug where we weren't initializing
19
target-arm queue:
22
guarded bit state when combining S1/S2 attrs
20
* xlnx-zdma: Fix endianness handling of descriptor loading
21
* nrf51: Fix last GPIO CNF address
22
* gicv3: Use gicr_typer in arm_gicv3_icc_reset
23
* msf2: Add EMAC block to SmartFusion2 SoC
24
* New clock modelling framework
25
* hw/arm: versal: Setup the ADMA with 128bit bus-width
26
* Cadence: gem: fix wraparound in 64bit descriptors
27
* cadence_gem: clear RX control descriptor
28
* target/arm: Vectorize integer comparison vs zero
29
* hw/arm/virt: dt: add kaslr-seed property
30
* hw/arm: xlnx-zcu102: Disable unsupported FDT firmware nodes
23
31
24
----------------------------------------------------------------
32
----------------------------------------------------------------
25
Richard Henderson (2):
33
Cameron Esfahani (1):
26
target/arm: PTE bit GP only applies to stage1
34
nrf51: Fix last GPIO CNF address
27
target/arm: Copy guarded bit in combine_cacheattrs
28
35
29
target/arm/ptw.c | 11 ++++++-----
36
Damien Hedde (7):
30
1 file changed, 6 insertions(+), 5 deletions(-)
37
hw/core/clock-vmstate: define a vmstate entry for clock state
38
qdev: add clock input&output support to devices.
39
qdev-clock: introduce an init array to ease the device construction
40
hw/misc/zynq_slcr: add clock generation for uarts
41
hw/char/cadence_uart: add clock support
42
hw/arm/xilinx_zynq: connect uart clocks to slcr
43
qdev-monitor: print the device's clock with info qtree
44
45
Edgar E. Iglesias (7):
46
dma/xlnx-zdma: Fix descriptor loading (MEM) wrt endianness
47
dma/xlnx-zdma: Fix descriptor loading (REG) wrt endianness
48
hw/arm: versal: Setup the ADMA with 128bit bus-width
49
device_tree: Allow name wildcards in qemu_fdt_node_path()
50
device_tree: Constify compat in qemu_fdt_node_path()
51
hw/arm: xlnx-zcu102: Move arm_boot_info into XlnxZCU102
52
hw/arm: xlnx-zcu102: Disable unsupported FDT firmware nodes
53
54
Jerome Forissier (2):
55
hw/arm/virt: dt: move creation of /secure-chosen to create_fdt()
56
hw/arm/virt: dt: add kaslr-seed property
57
58
Keqian Zhu (2):
59
bugfix: Use gicr_typer in arm_gicv3_icc_reset
60
Typo: Correct the name of CPU hotplug memory region
61
62
Peter Maydell (2):
63
hw/core/clock: introduce clock object
64
docs/clocks: add device's clock documentation
65
66
Philippe Mathieu-Daudé (2):
67
target/arm: Restrict the Address Translate write operation to TCG accel
68
target/arm/cpu: Update coding style to make checkpatch.pl happy
69
70
Ramon Fried (2):
71
Cadence: gem: fix wraparound in 64bit descriptors
72
net: cadence_gem: clear RX control descriptor
73
74
Richard Henderson (1):
75
target/arm: Vectorize integer comparison vs zero
76
77
Subbaraya Sundeep (3):
78
hw/net: Add Smartfusion2 emac block
79
msf2: Add EMAC block to SmartFusion2 SoC
80
tests/boot_linux_console: Add ethernet test to SmartFusion2
81
82
Thomas Huth (1):
83
target/arm: Make cpu_register() available for other files
84
85
hw/core/Makefile.objs | 2 +
86
hw/net/Makefile.objs | 1 +
87
tests/Makefile.include | 1 +
88
include/hw/arm/msf2-soc.h | 2 +
89
include/hw/char/cadence_uart.h | 1 +
90
include/hw/clock.h | 225 +++++++++++++
91
include/hw/gpio/nrf51_gpio.h | 2 +-
92
include/hw/net/msf2-emac.h | 53 +++
93
include/hw/qdev-clock.h | 159 +++++++++
94
include/hw/qdev-core.h | 12 +
95
include/sysemu/device_tree.h | 5 +-
96
target/arm/cpu-qom.h | 9 +-
97
target/arm/helper.h | 27 +-
98
target/arm/translate.h | 5 +
99
device_tree.c | 4 +-
100
hw/acpi/cpu.c | 2 +-
101
hw/arm/msf2-soc.c | 26 +-
102
hw/arm/virt.c | 20 +-
103
hw/arm/xilinx_zynq.c | 57 +++-
104
hw/arm/xlnx-versal.c | 2 +
105
hw/arm/xlnx-zcu102.c | 39 ++-
106
hw/char/cadence_uart.c | 73 +++-
107
hw/core/clock-vmstate.c | 25 ++
108
hw/core/clock.c | 130 ++++++++
109
hw/core/qdev-clock.c | 185 +++++++++++
110
hw/core/qdev.c | 12 +
111
hw/dma/xlnx-zdma.c | 25 +-
112
hw/intc/arm_gicv3_kvm.c | 4 +-
113
hw/misc/zynq_slcr.c | 172 +++++++++-
114
hw/net/cadence_gem.c | 16 +-
115
hw/net/msf2-emac.c | 589 +++++++++++++++++++++++++++++++++
116
qdev-monitor.c | 9 +
117
target/arm/cpu.c | 19 +-
118
target/arm/cpu64.c | 8 +-
119
target/arm/helper.c | 17 +
120
target/arm/neon_helper.c | 24 --
121
target/arm/translate-a64.c | 64 +---
122
target/arm/translate.c | 256 ++++++++++++--
123
target/arm/vec_helper.c | 25 ++
124
MAINTAINERS | 2 +
125
docs/devel/clocks.rst | 391 ++++++++++++++++++++++
126
docs/devel/index.rst | 1 +
127
hw/char/trace-events | 3 +
128
hw/core/trace-events | 7 +
129
tests/acceptance/boot_linux_console.py | 15 +-
130
45 files changed, 2533 insertions(+), 193 deletions(-)
131
create mode 100644 include/hw/clock.h
132
create mode 100644 include/hw/net/msf2-emac.h
133
create mode 100644 include/hw/qdev-clock.h
134
create mode 100644 hw/core/clock-vmstate.c
135
create mode 100644 hw/core/clock.c
136
create mode 100644 hw/core/qdev-clock.c
137
create mode 100644 hw/net/msf2-emac.c
138
create mode 100644 docs/devel/clocks.rst
139
diff view generated by jsdifflib
Deleted patch
1
From: Richard Henderson <richard.henderson@linaro.org>
2
1
3
Only perform the extract of GP during the stage1 walk.
4
5
Reported-by: Peter Maydell <peter.maydell@linaro.org>
6
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
7
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
8
Message-id: 20230407185149.3253946-2-richard.henderson@linaro.org
9
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
10
---
11
target/arm/ptw.c | 10 +++++-----
12
1 file changed, 5 insertions(+), 5 deletions(-)
13
14
diff --git a/target/arm/ptw.c b/target/arm/ptw.c
15
index XXXXXXX..XXXXXXX 100644
16
--- a/target/arm/ptw.c
17
+++ b/target/arm/ptw.c
18
@@ -XXX,XX +XXX,XX @@ static bool get_phys_addr_lpae(CPUARMState *env, S1Translate *ptw,
19
result->f.attrs.secure = false;
20
}
21
22
- /* When in aarch64 mode, and BTI is enabled, remember GP in the TLB. */
23
- if (aarch64 && cpu_isar_feature(aa64_bti, cpu)) {
24
- result->f.guarded = extract64(attrs, 50, 1); /* GP */
25
- }
26
-
27
if (regime_is_stage2(mmu_idx)) {
28
result->cacheattrs.is_s2_format = true;
29
result->cacheattrs.attrs = extract32(attrs, 2, 4);
30
@@ -XXX,XX +XXX,XX @@ static bool get_phys_addr_lpae(CPUARMState *env, S1Translate *ptw,
31
assert(attrindx <= 7);
32
result->cacheattrs.is_s2_format = false;
33
result->cacheattrs.attrs = extract64(mair, attrindx * 8, 8);
34
+
35
+ /* When in aarch64 mode, and BTI is enabled, remember GP in the TLB. */
36
+ if (aarch64 && cpu_isar_feature(aa64_bti, cpu)) {
37
+ result->f.guarded = extract64(attrs, 50, 1); /* GP */
38
+ }
39
}
40
41
/*
42
--
43
2.34.1
diff view generated by jsdifflib
Deleted patch
1
From: Richard Henderson <richard.henderson@linaro.org>
2
1
3
The guarded bit comes from the stage1 walk.
4
5
Fixes: Coverity CID 1507929
6
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
7
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
8
Message-id: 20230407185149.3253946-3-richard.henderson@linaro.org
9
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
10
---
11
target/arm/ptw.c | 1 +
12
1 file changed, 1 insertion(+)
13
14
diff --git a/target/arm/ptw.c b/target/arm/ptw.c
15
index XXXXXXX..XXXXXXX 100644
16
--- a/target/arm/ptw.c
17
+++ b/target/arm/ptw.c
18
@@ -XXX,XX +XXX,XX @@ static ARMCacheAttrs combine_cacheattrs(uint64_t hcr,
19
20
assert(!s1.is_s2_format);
21
ret.is_s2_format = false;
22
+ ret.guarded = s1.guarded;
23
24
if (s1.attrs == 0xf0) {
25
tagged = true;
26
--
27
2.34.1
diff view generated by jsdifflib