1
v1->v2 changes: drop the sd card-reparenting patch
1
Squashed in a trivial fix for 32-bit hosts:
2
and the 2 raspi2 patches that depend on it.
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); \
3
14
4
-- PMM
15
-- PMM
5
16
6
The following changes since commit 6181478f6395cdd9d6ffd99623d0c9f39ea53606:
17
The following changes since commit 53f306f316549d20c76886903181413d20842423:
7
18
8
Merge remote-tracking branch 'remotes/stefanha/tags/block-pull-request' into staging (2017-02-28 08:46:03 +0000)
19
Merge remote-tracking branch 'remotes/ehabkost-gl/tags/x86-next-pull-request' into staging (2021-06-21 11:26:04 +0100)
9
20
10
are available in the git repository at:
21
are available in the Git repository at:
11
22
12
git://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20170228
23
https://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20210624
13
24
14
for you to fetch changes up to f3a6339a5bbc160d327299c67bb68c6d07fa4a61:
25
for you to fetch changes up to 90a76c6316cfe6416fc33814a838fb3928f746ee:
15
26
16
hw/arm/exynos: Fix proper mapping of CPUs by providing real cluster ID (2017-02-28 12:08:20 +0000)
27
docs/system: arm: Add nRF boards description (2021-06-24 14:58:48 +0100)
17
28
18
----------------------------------------------------------------
29
----------------------------------------------------------------
19
target-arm queue:
30
target-arm queue:
20
* raspi2: implement RNG module
31
* Don't require 'virt' board to be compiled in for ACPI GHES code
21
* raspi2: implement new SD card controller (but don't wire it up)
32
* docs: Document which architecture extensions we emulate
22
* sdhci: bugfixes for block transfers
33
* Fix bugs in M-profile FPCXT_NS accesses
23
* virt: fix cpu object reference leak
34
* First slice of MVE patches
24
* Add missing fp_access_check() to aarch64 crypto instructions
35
* Implement MTE3
25
* cputlb: Don't assume do_unassigned_access() never returns
36
* docs/system: arm: Add nRF boards description
26
* virt: Add a user option to disallow ITS instantiation
27
* i.MX timers: fix reset handling
28
* ARMv7M NVIC: rewrite to fix broken priority handling and masking
29
* exynos: Fix proper mapping of CPUs by providing real cluster ID
30
* exynos: Fix Linux kernel division by zero for PLLs
31
37
32
----------------------------------------------------------------
38
----------------------------------------------------------------
33
Clement Deschamps (1):
39
Alexandre Iooss (1):
34
bcm2835_sdhost: add bcm2835 sdhost controller
40
docs/system: arm: Add nRF boards description
35
41
36
Eric Auger (1):
42
Peter Collingbourne (1):
37
hw/arm/virt: Add a user option to disallow ITS instantiation
43
target/arm: Implement MTE3
38
44
39
Igor Mammedov (1):
45
Peter Maydell (55):
40
hw/arm/virt: fix cpu object reference leak
46
hw/acpi: Provide stub version of acpi_ghes_record_errors()
47
hw/acpi: Provide function acpi_ghes_present()
48
target/arm: Use acpi_ghes_present() to see if we report ACPI memory errors
49
docs/system/arm: Document which architecture extensions we emulate
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
41
101
42
Krzysztof Kozlowski (2):
102
docs/system/arm/emulation.rst | 103 ++++
43
hw/arm/exynos: Fix Linux kernel division by zero for PLLs
103
docs/system/arm/nrf.rst | 51 ++
44
hw/arm/exynos: Fix proper mapping of CPUs by providing real cluster ID
104
docs/system/target-arm.rst | 7 +
105
include/hw/acpi/ghes.h | 9 +
106
include/tcg/tcg-op.h | 8 +
107
include/tcg/tcg.h | 1 -
108
target/arm/helper-mve.h | 357 +++++++++++++
109
target/arm/helper.h | 2 +
110
target/arm/internals.h | 11 +
111
target/arm/translate-a32.h | 3 +
112
target/arm/translate.h | 10 +
113
target/arm/m-nocp.decode | 24 +
114
target/arm/mve.decode | 240 +++++++++
115
target/arm/vfp.decode | 14 -
116
hw/acpi/ghes-stub.c | 22 +
117
hw/acpi/ghes.c | 17 +
118
target/arm/cpu64.c | 2 +-
119
target/arm/kvm64.c | 6 +-
120
target/arm/mte_helper.c | 82 +--
121
target/arm/mve_helper.c | 1160 +++++++++++++++++++++++++++++++++++++++++
122
target/arm/translate-m-nocp.c | 550 +++++++++++++++++++
123
target/arm/translate-mve.c | 759 +++++++++++++++++++++++++++
124
target/arm/translate-vfp.c | 741 +++++++-------------------
125
tcg/tcg-op-gvec.c | 20 +-
126
MAINTAINERS | 1 +
127
hw/acpi/meson.build | 6 +-
128
target/arm/meson.build | 1 +
129
27 files changed, 3578 insertions(+), 629 deletions(-)
130
create mode 100644 docs/system/arm/emulation.rst
131
create mode 100644 docs/system/arm/nrf.rst
132
create mode 100644 target/arm/helper-mve.h
133
create mode 100644 hw/acpi/ghes-stub.c
134
create mode 100644 target/arm/mve_helper.c
45
135
46
Kurban Mallachiev (1):
47
ARM i.MX timers: fix reset handling
48
49
Marcin Chojnacki (1):
50
target-arm: Implement BCM2835 hardware RNG
51
52
Michael Davidsaver (5):
53
armv7m: Rewrite NVIC to not use any GIC code
54
arm: gic: Remove references to NVIC
55
armv7m: Escalate exceptions to HardFault if necessary
56
armv7m: Simpler and faster exception start
57
armv7m: VECTCLRACTIVE and VECTRESET are UNPREDICTABLE
58
59
Nick Reilly (1):
60
Add missing fp_access_check() to aarch64 crypto instructions
61
62
Peter Maydell (10):
63
bcm2835_rng: Use qcrypto_random_bytes() rather than rand()
64
cputlb: Don't assume do_unassigned_access() never returns
65
armv7m: Rename nvic_state to NVICState
66
armv7m: Implement reading and writing of PRIGROUP
67
armv7m: Fix condition check for taking exceptions
68
armv7m: Remove unused armv7m_nvic_acknowledge_irq() return value
69
armv7m: Extract "exception taken" code into functions
70
armv7m: Check exception return consistency
71
armv7m: Raise correct kind of UsageFault for attempts to execute ARM code
72
armv7m: Allow SHCSR writes to change pending and active bits
73
74
Prasad J Pandit (4):
75
sd: sdhci: mask transfer mode register value
76
sd: sdhci: check transfer mode register in multi block transfer
77
sd: sdhci: conditionally invoke multi block transfer
78
sd: sdhci: Remove block count enable check in single block transfers
79
80
hw/misc/Makefile.objs | 3 +-
81
hw/sd/Makefile.objs | 1 +
82
hw/intc/gic_internal.h | 7 +-
83
include/hw/arm/bcm2835_peripherals.h | 2 +
84
include/hw/arm/virt.h | 1 +
85
include/hw/misc/bcm2835_rng.h | 27 ++
86
include/hw/sd/bcm2835_sdhost.h | 48 ++
87
target/arm/cpu.h | 23 +-
88
cputlb.c | 15 +-
89
hw/arm/bcm2835_peripherals.c | 15 +
90
hw/arm/exynos4210.c | 18 +
91
hw/arm/virt.c | 32 +-
92
hw/intc/arm_gic.c | 31 +-
93
hw/intc/arm_gic_common.c | 23 +-
94
hw/intc/armv7m_nvic.c | 885 ++++++++++++++++++++++++++++-------
95
hw/misc/bcm2835_rng.c | 149 ++++++
96
hw/misc/exynos4210_clk.c | 164 +++++++
97
hw/sd/bcm2835_sdhost.c | 429 +++++++++++++++++
98
hw/sd/sdhci.c | 25 +-
99
hw/timer/imx_gpt.c | 33 +-
100
linux-user/main.c | 1 +
101
target/arm/cpu.c | 16 +-
102
target/arm/helper.c | 245 +++++++---
103
target/arm/translate-a64.c | 12 +
104
target/arm/translate.c | 8 +-
105
hw/intc/trace-events | 15 +
106
26 files changed, 1897 insertions(+), 331 deletions(-)
107
create mode 100644 include/hw/misc/bcm2835_rng.h
108
create mode 100644 include/hw/sd/bcm2835_sdhost.h
109
create mode 100644 hw/misc/bcm2835_rng.c
110
create mode 100644 hw/misc/exynos4210_clk.c
111
create mode 100644 hw/sd/bcm2835_sdhost.c
112
diff view generated by jsdifflib