1 | v1->v2: fix format-string errors on 32-bit hosts in xilinx csu dma model. | 1 | Squashed in a trivial fix for 32-bit hosts: |
---|---|---|---|
2 | |||
3 | --- a/target/arm/mve_helper.c | ||
4 | +++ b/target/arm/mve_helper.c | ||
5 | @@ -XXX,XX +XXX,XX @@ DO_LDAV(vmlsldavxsw, 4, int32_t, true, +=, -=) | ||
6 | acc = EVENACC(acc, TO128(n[H##ESIZE(e + 1 * XCHG)] * \ | ||
7 | m[H##ESIZE(e)])); \ | ||
8 | } \ | ||
9 | - acc = int128_add(acc, 1 << 7); \ | ||
10 | + acc = int128_add(acc, int128_make64(1 << 7)); \ | ||
11 | } \ | ||
12 | } \ | ||
13 | mve_advance_vpt(env); \ | ||
2 | 14 | ||
3 | -- PMM | 15 | -- PMM |
4 | 16 | ||
5 | The following changes since commit 0436c55edf6b357ff56e2a5bf688df8636f83456: | 17 | The following changes since commit 53f306f316549d20c76886903181413d20842423: |
6 | 18 | ||
7 | Merge remote-tracking branch 'remotes/bonzini-gitlab/tags/for-upstream' into staging (2021-03-08 13:51:41 +0000) | 19 | Merge remote-tracking branch 'remotes/ehabkost-gl/tags/x86-next-pull-request' into staging (2021-06-21 11:26:04 +0100) |
8 | 20 | ||
9 | are available in the Git repository at: | 21 | are available in the Git repository at: |
10 | 22 | ||
11 | https://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20210310 | 23 | https://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20210624 |
12 | 24 | ||
13 | for you to fetch changes up to 81b3ddaf8772ec6f88d372e52f9b433cfa46bc46: | 25 | for you to fetch changes up to 90a76c6316cfe6416fc33814a838fb3928f746ee: |
14 | 26 | ||
15 | hw/timer/renesas_tmr: Fix use of uninitialized data in read_tcnt() (2021-03-10 13:54:51 +0000) | 27 | docs/system: arm: Add nRF boards description (2021-06-24 14:58:48 +0100) |
16 | 28 | ||
17 | ---------------------------------------------------------------- | 29 | ---------------------------------------------------------------- |
18 | target-arm queue: | 30 | target-arm queue: |
19 | * Add new mps3-an547 board | 31 | * Don't require 'virt' board to be compiled in for ACPI GHES code |
20 | * target/arm: Restrict v7A TCG cpus to TCG accel | 32 | * docs: Document which architecture extensions we emulate |
21 | * Implement a Xilinx CSU DMA model | 33 | * Fix bugs in M-profile FPCXT_NS accesses |
22 | * hw/timer/renesas_tmr: Fix use of uninitialized data in read_tcnt() | 34 | * First slice of MVE patches |
35 | * Implement MTE3 | ||
36 | * docs/system: arm: Add nRF boards description | ||
23 | 37 | ||
24 | ---------------------------------------------------------------- | 38 | ---------------------------------------------------------------- |
25 | Peter Maydell (48): | 39 | Alexandre Iooss (1): |
26 | clock: Add ClockEvent parameter to callbacks | 40 | docs/system: arm: Add nRF boards description |
27 | clock: Add ClockPreUpdate callback event type | ||
28 | clock: Add clock_ns_to_ticks() function | ||
29 | hw/timer/npcm7xx_timer: Use new clock_ns_to_ticks() | ||
30 | hw/arm/armsse: Introduce SSE subsystem version property | ||
31 | hw/misc/iotkit-sysctl: Remove is_sse200 flag | ||
32 | hw/misc/iotkit-secctl.c: Implement SSE-300 PID register values | ||
33 | hw/misc/iotkit-sysinfo.c: Implement SSE-300 PID register values | ||
34 | hw/arm/armsse.c: Use correct SYS_CONFIG0 register value for SSE-300 | ||
35 | hw/misc/iotkit-sysinfo.c: Implement SYS_CONFIG1 and IIDR | ||
36 | hw/timer/sse-counter: Model the SSE Subsystem System Counter | ||
37 | hw/timer/sse-timer: Model the SSE Subsystem System Timer | ||
38 | hw/misc/iotkit-sysctl: Add SSE-300 cases which match SSE-200 behaviour | ||
39 | hw/misc/iotkit-sysctl: Handle CPU_WAIT, NMI_ENABLE for SSE-300 | ||
40 | hw/misc/iotkit-sysctl: Handle INITSVTOR* for SSE-300 | ||
41 | hw/misc/iotkit-sysctl: Implement dummy version of SSE-300 PWRCTRL register | ||
42 | hw/misc/iotkit-sysctl: Handle SSE-300 changes to PDCM_PD_*_SENSE registers | ||
43 | hw/misc/iotkit-sysctl: Implement SSE-200 and SSE-300 PID register values | ||
44 | hw/arm/Kconfig: Move ARMSSE_CPUID and ARMSSE_MHU stanzas to hw/misc | ||
45 | hw/misc/sse-cpu-pwrctrl: Implement SSE-300 CPU<N>_PWRCTRL register block | ||
46 | hw/arm/armsse: Use an array for apb_ppc fields in the state structure | ||
47 | hw/arm/armsse: Add a define for number of IRQs used by the SSE itself | ||
48 | hw/arm/armsse: Add framework for data-driven device placement | ||
49 | hw/arm/armsse: Move dual-timer device into data-driven framework | ||
50 | hw/arm/armsse: Move watchdogs into data-driven framework | ||
51 | hw/arm/armsse: Move s32ktimer into data-driven framework | ||
52 | hw/arm/armsse: Move sysinfo register block into data-driven framework | ||
53 | hw/arm/armsse: Move sysctl register block into data-driven framework | ||
54 | hw/arm/armsse: Move PPUs into data-driven framework | ||
55 | hw/arm/armsse: Add missing SSE-200 SYS_PPU | ||
56 | hw/arm/armsse: Indirect irq_is_common[] through ARMSSEInfo | ||
57 | hw/arm/armsse: Add support for SSE variants with a system counter | ||
58 | hw/arm/armsse: Add support for TYPE_SSE_TIMER in ARMSSEDeviceInfo | ||
59 | hw/arm/armsse: Support variants with ARMSSE_CPU_PWRCTRL block | ||
60 | hw/arm/armsse: Add SSE-300 support | ||
61 | hw/arm/mps2-tz: Make UART overflow IRQ board-specific | ||
62 | hw/misc/mps2-fpgaio: Fold counters subsection into main vmstate | ||
63 | hw/misc/mps2-fpgaio: Support AN547 DBGCTRL register | ||
64 | hw/misc/mps2-scc: Implement changes for AN547 | ||
65 | hw/arm/mps2-tz: Support running APB peripherals on different clock | ||
66 | hw/arm/mps2-tz: Make initsvtor0 setting board-specific | ||
67 | hw/arm/mps2-tz: Add new mps3-an547 board | ||
68 | docs/system/arm/mps2.rst: Document the new mps3-an547 board | ||
69 | tests/qtest/sse-timer-test: Add simple test of the SSE counter | ||
70 | tests/qtest/sse-timer-test: Test the system timer | ||
71 | tests/qtest/sse-timer-test: Test counter scaling changes | ||
72 | hw/timer/renesas_tmr: Prefix constants for CSS values with CSS_ | ||
73 | hw/timer/renesas_tmr: Fix use of uninitialized data in read_tcnt() | ||
74 | 41 | ||
75 | Philippe Mathieu-Daudé (1): | 42 | Peter Collingbourne (1): |
76 | target/arm: Restrict v7A TCG cpus to TCG accel | 43 | target/arm: Implement MTE3 |
77 | 44 | ||
78 | Xuzhou Cheng (5): | 45 | Peter Maydell (55): |
79 | hw/dma: Implement a Xilinx CSU DMA model | 46 | hw/acpi: Provide stub version of acpi_ghes_record_errors() |
80 | hw/arm: xlnx-zynqmp: Clean up coding convention issues | 47 | hw/acpi: Provide function acpi_ghes_present() |
81 | hw/arm: xlnx-zynqmp: Connect a Xilinx CSU DMA module for QSPI | 48 | target/arm: Use acpi_ghes_present() to see if we report ACPI memory errors |
82 | hw/ssi: xilinx_spips: Clean up coding convention issues | 49 | docs/system/arm: Document which architecture extensions we emulate |
83 | hw/ssi: xilinx_spips: Remove DMA related dead codes from zynqmp_spips | 50 | target/arm/translate-vfp.c: Whitespace fixes |
51 | target/arm: Handle FPU being disabled in FPCXT_NS accesses | ||
52 | target/arm: Don't NOCP fault for FPCXT_NS accesses | ||
53 | target/arm: Handle writeback in VLDR/VSTR sysreg with no memory access | ||
54 | target/arm: Factor FP context update code out into helper function | ||
55 | target/arm: Split vfp_access_check() into A and M versions | ||
56 | target/arm: Handle FPU check for FPCXT_NS insns via vfp_access_check_m() | ||
57 | target/arm: Implement MVE VLDR/VSTR (non-widening forms) | ||
58 | target/arm: Implement widening/narrowing MVE VLDR/VSTR insns | ||
59 | target/arm: Implement MVE VCLZ | ||
60 | target/arm: Implement MVE VCLS | ||
61 | target/arm: Implement MVE VREV16, VREV32, VREV64 | ||
62 | target/arm: Implement MVE VMVN (register) | ||
63 | target/arm: Implement MVE VABS | ||
64 | target/arm: Implement MVE VNEG | ||
65 | tcg: Make gen_dup_i32/i64() public as tcg_gen_dup_i32/i64 | ||
66 | target/arm: Implement MVE VDUP | ||
67 | target/arm: Implement MVE VAND, VBIC, VORR, VORN, VEOR | ||
68 | target/arm: Implement MVE VADD, VSUB, VMUL | ||
69 | target/arm: Implement MVE VMULH | ||
70 | target/arm: Implement MVE VRMULH | ||
71 | target/arm: Implement MVE VMAX, VMIN | ||
72 | target/arm: Implement MVE VABD | ||
73 | target/arm: Implement MVE VHADD, VHSUB | ||
74 | target/arm: Implement MVE VMULL | ||
75 | target/arm: Implement MVE VMLALDAV | ||
76 | target/arm: Implement MVE VMLSLDAV | ||
77 | target/arm: Implement MVE VRMLALDAVH, VRMLSLDAVH | ||
78 | target/arm: Implement MVE VADD (scalar) | ||
79 | target/arm: Implement MVE VSUB, VMUL (scalar) | ||
80 | target/arm: Implement MVE VHADD, VHSUB (scalar) | ||
81 | target/arm: Implement MVE VBRSR | ||
82 | target/arm: Implement MVE VPST | ||
83 | target/arm: Implement MVE VQADD and VQSUB | ||
84 | target/arm: Implement MVE VQDMULH and VQRDMULH (scalar) | ||
85 | target/arm: Implement MVE VQDMULL scalar | ||
86 | target/arm: Implement MVE VQDMULH, VQRDMULH (vector) | ||
87 | target/arm: Implement MVE VQADD, VQSUB (vector) | ||
88 | target/arm: Implement MVE VQSHL (vector) | ||
89 | target/arm: Implement MVE VQRSHL | ||
90 | target/arm: Implement MVE VSHL insn | ||
91 | target/arm: Implement MVE VRSHL | ||
92 | target/arm: Implement MVE VQDMLADH and VQRDMLADH | ||
93 | target/arm: Implement MVE VQDMLSDH and VQRDMLSDH | ||
94 | target/arm: Implement MVE VQDMULL (vector) | ||
95 | target/arm: Implement MVE VRHADD | ||
96 | target/arm: Implement MVE VADC, VSBC | ||
97 | target/arm: Implement MVE VCADD | ||
98 | target/arm: Implement MVE VHCADD | ||
99 | target/arm: Implement MVE VADDV | ||
100 | target/arm: Make VMOV scalar <-> gpreg beatwise for MVE | ||
84 | 101 | ||
85 | docs/devel/clocks.rst | 71 ++- | 102 | docs/system/arm/emulation.rst | 103 ++++ |
86 | docs/system/arm/mps2.rst | 6 +- | 103 | docs/system/arm/nrf.rst | 51 ++ |
87 | include/hw/arm/armsse-version.h | 42 ++ | 104 | docs/system/target-arm.rst | 7 + |
88 | include/hw/arm/armsse.h | 40 +- | 105 | include/hw/acpi/ghes.h | 9 + |
89 | include/hw/arm/xlnx-zynqmp.h | 5 +- | 106 | include/tcg/tcg-op.h | 8 + |
90 | include/hw/clock.h | 63 ++- | 107 | include/tcg/tcg.h | 1 - |
91 | include/hw/dma/xlnx_csu_dma.h | 52 ++ | 108 | target/arm/helper-mve.h | 357 +++++++++++++ |
92 | include/hw/misc/armsse-cpu-pwrctrl.h | 40 ++ | 109 | target/arm/helper.h | 2 + |
93 | include/hw/misc/iotkit-secctl.h | 2 + | 110 | target/arm/internals.h | 11 + |
94 | include/hw/misc/iotkit-sysctl.h | 13 +- | 111 | target/arm/translate-a32.h | 3 + |
95 | include/hw/misc/iotkit-sysinfo.h | 2 + | 112 | target/arm/translate.h | 10 + |
96 | include/hw/misc/mps2-fpgaio.h | 2 + | 113 | target/arm/m-nocp.decode | 24 + |
97 | include/hw/qdev-clock.h | 17 +- | 114 | target/arm/mve.decode | 240 +++++++++ |
98 | include/hw/ssi/xilinx_spips.h | 2 +- | 115 | target/arm/vfp.decode | 14 - |
99 | include/hw/timer/sse-counter.h | 105 ++++ | 116 | hw/acpi/ghes-stub.c | 22 + |
100 | include/hw/timer/sse-timer.h | 53 ++ | 117 | hw/acpi/ghes.c | 17 + |
101 | hw/adc/npcm7xx_adc.c | 2 +- | 118 | target/arm/cpu64.c | 2 +- |
102 | hw/arm/armsse.c | 1008 +++++++++++++++++++++++++--------- | 119 | target/arm/kvm64.c | 6 +- |
103 | hw/arm/mps2-tz.c | 168 +++++- | 120 | target/arm/mte_helper.c | 82 +-- |
104 | hw/arm/xlnx-zynqmp.c | 21 +- | 121 | target/arm/mve_helper.c | 1160 +++++++++++++++++++++++++++++++++++++++++ |
105 | hw/char/cadence_uart.c | 4 +- | 122 | target/arm/translate-m-nocp.c | 550 +++++++++++++++++++ |
106 | hw/char/ibex_uart.c | 4 +- | 123 | target/arm/translate-mve.c | 759 +++++++++++++++++++++++++++ |
107 | hw/char/pl011.c | 5 +- | 124 | target/arm/translate-vfp.c | 741 +++++++------------------- |
108 | hw/core/clock.c | 24 +- | 125 | tcg/tcg-op-gvec.c | 20 +- |
109 | hw/core/qdev-clock.c | 8 +- | 126 | MAINTAINERS | 1 + |
110 | hw/dma/xlnx_csu_dma.c | 745 +++++++++++++++++++++++++ | 127 | hw/acpi/meson.build | 6 +- |
111 | hw/mips/cps.c | 2 +- | 128 | target/arm/meson.build | 1 + |
112 | hw/misc/armsse-cpu-pwrctrl.c | 149 +++++ | 129 | 27 files changed, 3578 insertions(+), 629 deletions(-) |
113 | hw/misc/bcm2835_cprman.c | 23 +- | 130 | create mode 100644 docs/system/arm/emulation.rst |
114 | hw/misc/iotkit-secctl.c | 50 +- | 131 | create mode 100644 docs/system/arm/nrf.rst |
115 | hw/misc/iotkit-sysctl.c | 522 +++++++++++++++--- | 132 | create mode 100644 target/arm/helper-mve.h |
116 | hw/misc/iotkit-sysinfo.c | 51 +- | 133 | create mode 100644 hw/acpi/ghes-stub.c |
117 | hw/misc/mps2-fpgaio.c | 52 +- | 134 | create mode 100644 target/arm/mve_helper.c |
118 | hw/misc/mps2-scc.c | 15 +- | ||
119 | hw/misc/npcm7xx_clk.c | 26 +- | ||
120 | hw/misc/npcm7xx_pwm.c | 2 +- | ||
121 | hw/misc/zynq_slcr.c | 5 +- | ||
122 | hw/ssi/xilinx_spips.c | 33 +- | ||
123 | hw/timer/cmsdk-apb-dualtimer.c | 5 +- | ||
124 | hw/timer/cmsdk-apb-timer.c | 4 +- | ||
125 | hw/timer/npcm7xx_timer.c | 6 +- | ||
126 | hw/timer/renesas_tmr.c | 33 +- | ||
127 | hw/timer/sse-counter.c | 474 ++++++++++++++++ | ||
128 | hw/timer/sse-timer.c | 470 ++++++++++++++++ | ||
129 | hw/watchdog/cmsdk-apb-watchdog.c | 5 +- | ||
130 | target/arm/cpu.c | 335 ----------- | ||
131 | target/arm/cpu_tcg.c | 318 +++++++++++ | ||
132 | target/mips/cpu.c | 2 +- | ||
133 | tests/qtest/sse-timer-test.c | 240 ++++++++ | ||
134 | MAINTAINERS | 7 + | ||
135 | hw/arm/Kconfig | 10 +- | ||
136 | hw/dma/Kconfig | 4 + | ||
137 | hw/dma/meson.build | 1 + | ||
138 | hw/misc/Kconfig | 9 + | ||
139 | hw/misc/meson.build | 1 + | ||
140 | hw/misc/trace-events | 4 + | ||
141 | hw/timer/Kconfig | 6 + | ||
142 | hw/timer/meson.build | 2 + | ||
143 | hw/timer/trace-events | 12 + | ||
144 | tests/qtest/meson.build | 1 + | ||
145 | 60 files changed, 4537 insertions(+), 846 deletions(-) | ||
146 | create mode 100644 include/hw/arm/armsse-version.h | ||
147 | create mode 100644 include/hw/dma/xlnx_csu_dma.h | ||
148 | create mode 100644 include/hw/misc/armsse-cpu-pwrctrl.h | ||
149 | create mode 100644 include/hw/timer/sse-counter.h | ||
150 | create mode 100644 include/hw/timer/sse-timer.h | ||
151 | create mode 100644 hw/dma/xlnx_csu_dma.c | ||
152 | create mode 100644 hw/misc/armsse-cpu-pwrctrl.c | ||
153 | create mode 100644 hw/timer/sse-counter.c | ||
154 | create mode 100644 hw/timer/sse-timer.c | ||
155 | create mode 100644 tests/qtest/sse-timer-test.c | ||
156 | 135 | diff view generated by jsdifflib |