* [Qemu-devel] [PULL 00/12] target-arm queue
@ 2014-08-04 13:53 Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 01/12] hw/arm/boot: Set PC correctly when loading AArch64 ELF files Peter Maydell
` (12 more replies)
0 siblings, 13 replies; 27+ messages in thread
From: Peter Maydell @ 2014-08-04 13:53 UTC (permalink / raw)
To: qemu-devel
First pullreq for 2.2; not very many patches but I didn't want
to hang onto them any more, especially since there are several
bits of work in-flight that will need to rebase after these.
The following changes since commit 924c09db51b147881d51d8102deb4f285305c1b7:
Merge remote-tracking branch 'remotes/amit-virtio-rng/for-2.2' into staging (2014-08-04 13:07:02 +0100)
are available in the git repository at:
git://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20140804
for you to fetch changes up to dbb1fb277ca12acd577403575aa6a2f119ab79ea:
target-arm: A64: fix TLB flush instructions (2014-08-04 14:41:56 +0100)
----------------------------------------------------------------
target-arm queue:
* Set PC correctly when loading AArch64 ELF files
* sdhci: Fix ADMA dma_memory_read access
* some more foundational work for EL2/EL3 support
* fix bugs which reveal themselves if the TARGET_PAGE_SIZE
is not set to 1K
----------------------------------------------------------------
Alex Bennée (2):
target-arm: don't hardcode mask values in arm_cpu_handle_mmu_fault
target-arm: A64: fix TLB flush instructions
Andrew Jones (1):
hw/arm/virt: formatting: memory map
Edgar E. Iglesias (6):
target-arm: A64: Break out aarch64_save/restore_sp
target-arm: A64: Respect SPSEL in ERET SP restore
target-arm: A64: Respect SPSEL when taking exceptions
target-arm: Make far_el1 an array
target-arm: Add ESR_EL2 and 3
target-arm: Add FAR_EL2 and 3
Peter Crosthwaite (1):
sd: sdhci: Fix ADMA dma_memory_read access
Peter Maydell (1):
hw/arm/boot: Set PC correctly when loading AArch64 ELF files
Stefan Weil (1):
target-arm: Fix bit test in sp_el0_access
hw/arm/boot.c | 8 ++++++--
hw/arm/virt.c | 16 ++++++++--------
hw/sd/sdhci.c | 3 ++-
target-arm/cpu.c | 2 +-
target-arm/cpu.h | 4 ++--
target-arm/helper-a64.c | 8 ++++----
target-arm/helper.c | 42 +++++++++++++++++++++++++++++++-----------
target-arm/internals.h | 29 ++++++++++++++++++++---------
target-arm/kvm64.c | 13 +++----------
target-arm/op_helper.c | 8 ++------
10 files changed, 79 insertions(+), 54 deletions(-)
^ permalink raw reply [flat|nested] 27+ messages in thread
* [Qemu-devel] [PULL 01/12] hw/arm/boot: Set PC correctly when loading AArch64 ELF files
2014-08-04 13:53 [Qemu-devel] [PULL 00/12] target-arm queue Peter Maydell
@ 2014-08-04 13:53 ` Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 02/12] hw/arm/virt: formatting: memory map Peter Maydell
` (11 subsequent siblings)
12 siblings, 0 replies; 27+ messages in thread
From: Peter Maydell @ 2014-08-04 13:53 UTC (permalink / raw)
To: qemu-devel
The code in do_cpu_reset() correctly handled AArch64 CPUs
when running Linux kernels, but was missing code in the
branch of the if() that deals with loading ELF files.
Correctly jump to the ELF entry point on reset rather than
leaving the reset PC at zero.
Reported-by: Christopher Covington <cov@codeaurora.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Tested-by: Christopher Covington <cov@codeaurora.org>
Cc: qemu-stable@nongnu.org
---
hw/arm/boot.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/hw/arm/boot.c b/hw/arm/boot.c
index 3d1f4a2..1241761 100644
--- a/hw/arm/boot.c
+++ b/hw/arm/boot.c
@@ -417,8 +417,12 @@ static void do_cpu_reset(void *opaque)
if (info) {
if (!info->is_linux) {
/* Jump to the entry point. */
- env->regs[15] = info->entry & 0xfffffffe;
- env->thumb = info->entry & 1;
+ if (env->aarch64) {
+ env->pc = info->entry;
+ } else {
+ env->regs[15] = info->entry & 0xfffffffe;
+ env->thumb = info->entry & 1;
+ }
} else {
if (CPU(cpu) == first_cpu) {
if (env->aarch64) {
--
1.9.1
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [Qemu-devel] [PULL 02/12] hw/arm/virt: formatting: memory map
2014-08-04 13:53 [Qemu-devel] [PULL 00/12] target-arm queue Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 01/12] hw/arm/boot: Set PC correctly when loading AArch64 ELF files Peter Maydell
@ 2014-08-04 13:53 ` Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 03/12] sd: sdhci: Fix ADMA dma_memory_read access Peter Maydell
` (10 subsequent siblings)
12 siblings, 0 replies; 27+ messages in thread
From: Peter Maydell @ 2014-08-04 13:53 UTC (permalink / raw)
To: qemu-devel
From: Andrew Jones <drjones@redhat.com>
Add some spacing and zeros to make it easier to read and
modify the map. This patch has no functional changes. The
review looks ugly, but it's actually pretty easy to confirm
all the addresses are as they should be - thanks to the new
formatting ;-)
Signed-off-by: Andrew Jones <drjones@redhat.com>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
hw/arm/virt.c | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/hw/arm/virt.c b/hw/arm/virt.c
index 89532bd..ba94298 100644
--- a/hw/arm/virt.c
+++ b/hw/arm/virt.c
@@ -98,17 +98,17 @@ typedef struct VirtBoardInfo {
*/
static const MemMapEntry a15memmap[] = {
/* Space up to 0x8000000 is reserved for a boot ROM */
- [VIRT_FLASH] = { 0, 0x8000000 },
- [VIRT_CPUPERIPHS] = { 0x8000000, 0x20000 },
+ [VIRT_FLASH] = { 0, 0x08000000 },
+ [VIRT_CPUPERIPHS] = { 0x08000000, 0x00020000 },
/* GIC distributor and CPU interfaces sit inside the CPU peripheral space */
- [VIRT_GIC_DIST] = { 0x8000000, 0x10000 },
- [VIRT_GIC_CPU] = { 0x8010000, 0x10000 },
- [VIRT_UART] = { 0x9000000, 0x1000 },
- [VIRT_RTC] = { 0x9010000, 0x1000 },
- [VIRT_MMIO] = { 0xa000000, 0x200 },
+ [VIRT_GIC_DIST] = { 0x08000000, 0x00010000 },
+ [VIRT_GIC_CPU] = { 0x08010000, 0x00010000 },
+ [VIRT_UART] = { 0x09000000, 0x00001000 },
+ [VIRT_RTC] = { 0x09010000, 0x00001000 },
+ [VIRT_MMIO] = { 0x0a000000, 0x00000200 },
/* ...repeating for a total of NUM_VIRTIO_TRANSPORTS, each of that size */
/* 0x10000000 .. 0x40000000 reserved for PCI */
- [VIRT_MEM] = { 0x40000000, 30ULL * 1024 * 1024 * 1024 },
+ [VIRT_MEM] = { 0x40000000, 30ULL * 1024 * 1024 * 1024 },
};
static const int a15irqmap[] = {
--
1.9.1
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [Qemu-devel] [PULL 03/12] sd: sdhci: Fix ADMA dma_memory_read access
2014-08-04 13:53 [Qemu-devel] [PULL 00/12] target-arm queue Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 01/12] hw/arm/boot: Set PC correctly when loading AArch64 ELF files Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 02/12] hw/arm/virt: formatting: memory map Peter Maydell
@ 2014-08-04 13:53 ` Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 04/12] target-arm: A64: Break out aarch64_save/restore_sp Peter Maydell
` (9 subsequent siblings)
12 siblings, 0 replies; 27+ messages in thread
From: Peter Maydell @ 2014-08-04 13:53 UTC (permalink / raw)
To: qemu-devel
From: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
This dma_memory_read was giving too big a size when begin was non-zero.
This could cause segfaults in some circumstances. Fix.
Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
hw/sd/sdhci.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/hw/sd/sdhci.c b/hw/sd/sdhci.c
index b5a9eee..f9fe700 100644
--- a/hw/sd/sdhci.c
+++ b/hw/sd/sdhci.c
@@ -702,7 +702,8 @@ static void sdhci_do_adma(SDHCIState *s)
length -= block_size - begin;
}
dma_memory_read(&address_space_memory, dscr.addr,
- &s->fifo_buffer[begin], s->data_count);
+ &s->fifo_buffer[begin],
+ s->data_count - begin);
dscr.addr += s->data_count - begin;
if (s->data_count == block_size) {
for (n = 0; n < block_size; n++) {
--
1.9.1
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [Qemu-devel] [PULL 04/12] target-arm: A64: Break out aarch64_save/restore_sp
2014-08-04 13:53 [Qemu-devel] [PULL 00/12] target-arm queue Peter Maydell
` (2 preceding siblings ...)
2014-08-04 13:53 ` [Qemu-devel] [PULL 03/12] sd: sdhci: Fix ADMA dma_memory_read access Peter Maydell
@ 2014-08-04 13:53 ` Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 05/12] target-arm: A64: Respect SPSEL in ERET SP restore Peter Maydell
` (8 subsequent siblings)
12 siblings, 0 replies; 27+ messages in thread
From: Peter Maydell @ 2014-08-04 13:53 UTC (permalink / raw)
To: qemu-devel
From: "Edgar E. Iglesias" <edgar.iglesias@xilinx.com>
Break out code to save/restore AArch64 SP into functions.
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Reviewed-by: Greg Bellows <greg.bellows@linaro.org>
Message-id: 1402994746-8328-2-git-send-email-edgar.iglesias@gmail.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
target-arm/internals.h | 29 ++++++++++++++++++++---------
target-arm/kvm64.c | 13 +++----------
target-arm/op_helper.c | 6 +-----
3 files changed, 24 insertions(+), 24 deletions(-)
diff --git a/target-arm/internals.h b/target-arm/internals.h
index 564b5fa..08fa697 100644
--- a/target-arm/internals.h
+++ b/target-arm/internals.h
@@ -105,6 +105,24 @@ enum arm_fprounding {
int arm_rmode_to_sf(int rmode);
+static inline void aarch64_save_sp(CPUARMState *env, int el)
+{
+ if (env->pstate & PSTATE_SP) {
+ env->sp_el[el] = env->xregs[31];
+ } else {
+ env->sp_el[0] = env->xregs[31];
+ }
+}
+
+static inline void aarch64_restore_sp(CPUARMState *env, int el)
+{
+ if (env->pstate & PSTATE_SP) {
+ env->xregs[31] = env->sp_el[el];
+ } else {
+ env->xregs[31] = env->sp_el[0];
+ }
+}
+
static inline void update_spsel(CPUARMState *env, uint32_t imm)
{
unsigned int cur_el = arm_current_pl(env);
@@ -114,21 +132,14 @@ static inline void update_spsel(CPUARMState *env, uint32_t imm)
if (!((imm ^ env->pstate) & PSTATE_SP)) {
return;
}
+ aarch64_save_sp(env, cur_el);
env->pstate = deposit32(env->pstate, 0, 1, imm);
/* We rely on illegal updates to SPsel from EL0 to get trapped
* at translation time.
*/
assert(cur_el >= 1 && cur_el <= 3);
- if (env->pstate & PSTATE_SP) {
- /* Switch from using SP_EL0 to using SP_ELx */
- env->sp_el[0] = env->xregs[31];
- env->xregs[31] = env->sp_el[cur_el];
- } else {
- /* Switch from SP_EL0 to SP_ELx */
- env->sp_el[cur_el] = env->xregs[31];
- env->xregs[31] = env->sp_el[0];
- }
+ aarch64_restore_sp(env, cur_el);
}
/* Valid Syndrome Register EC field values */
diff --git a/target-arm/kvm64.c b/target-arm/kvm64.c
index 5d217ca..c615286 100644
--- a/target-arm/kvm64.c
+++ b/target-arm/kvm64.c
@@ -21,6 +21,7 @@
#include "sysemu/kvm.h"
#include "kvm_arm.h"
#include "cpu.h"
+#include "internals.h"
#include "hw/arm/arm.h"
static inline void set_feature(uint64_t *features, int feature)
@@ -132,11 +133,7 @@ int kvm_arch_put_registers(CPUState *cs, int level)
/* KVM puts SP_EL0 in regs.sp and SP_EL1 in regs.sp_el1. On the
* QEMU side we keep the current SP in xregs[31] as well.
*/
- if (env->pstate & PSTATE_SP) {
- env->sp_el[1] = env->xregs[31];
- } else {
- env->sp_el[0] = env->xregs[31];
- }
+ aarch64_save_sp(env, 1);
reg.id = AARCH64_CORE_REG(regs.sp);
reg.addr = (uintptr_t) &env->sp_el[0];
@@ -235,11 +232,7 @@ int kvm_arch_get_registers(CPUState *cs)
/* KVM puts SP_EL0 in regs.sp and SP_EL1 in regs.sp_el1. On the
* QEMU side we keep the current SP in xregs[31] as well.
*/
- if (env->pstate & PSTATE_SP) {
- env->xregs[31] = env->sp_el[1];
- } else {
- env->xregs[31] = env->sp_el[0];
- }
+ aarch64_restore_sp(env, 1);
reg.id = AARCH64_CORE_REG(regs.pc);
reg.addr = (uintptr_t) &env->pc;
diff --git a/target-arm/op_helper.c b/target-arm/op_helper.c
index 9c1ef52..90a946a 100644
--- a/target-arm/op_helper.c
+++ b/target-arm/op_helper.c
@@ -376,11 +376,7 @@ void HELPER(exception_return)(CPUARMState *env)
uint32_t spsr = env->banked_spsr[spsr_idx];
int new_el, i;
- if (env->pstate & PSTATE_SP) {
- env->sp_el[cur_el] = env->xregs[31];
- } else {
- env->sp_el[0] = env->xregs[31];
- }
+ aarch64_save_sp(env, cur_el);
env->exclusive_addr = -1;
--
1.9.1
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [Qemu-devel] [PULL 05/12] target-arm: A64: Respect SPSEL in ERET SP restore
2014-08-04 13:53 [Qemu-devel] [PULL 00/12] target-arm queue Peter Maydell
` (3 preceding siblings ...)
2014-08-04 13:53 ` [Qemu-devel] [PULL 04/12] target-arm: A64: Break out aarch64_save/restore_sp Peter Maydell
@ 2014-08-04 13:53 ` Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 06/12] target-arm: A64: Respect SPSEL when taking exceptions Peter Maydell
` (7 subsequent siblings)
12 siblings, 0 replies; 27+ messages in thread
From: Peter Maydell @ 2014-08-04 13:53 UTC (permalink / raw)
To: qemu-devel
From: "Edgar E. Iglesias" <edgar.iglesias@xilinx.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Reviewed-by: Greg Bellows <greg.bellows@linaro.org>
Message-id: 1402994746-8328-3-git-send-email-edgar.iglesias@gmail.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
target-arm/op_helper.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/target-arm/op_helper.c b/target-arm/op_helper.c
index 90a946a..25ad902 100644
--- a/target-arm/op_helper.c
+++ b/target-arm/op_helper.c
@@ -410,7 +410,7 @@ void HELPER(exception_return)(CPUARMState *env)
}
env->aarch64 = 1;
pstate_write(env, spsr);
- env->xregs[31] = env->sp_el[new_el];
+ aarch64_restore_sp(env, new_el);
env->pc = env->elr_el[cur_el];
}
--
1.9.1
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [Qemu-devel] [PULL 06/12] target-arm: A64: Respect SPSEL when taking exceptions
2014-08-04 13:53 [Qemu-devel] [PULL 00/12] target-arm queue Peter Maydell
` (4 preceding siblings ...)
2014-08-04 13:53 ` [Qemu-devel] [PULL 05/12] target-arm: A64: Respect SPSEL in ERET SP restore Peter Maydell
@ 2014-08-04 13:53 ` Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 07/12] target-arm: Make far_el1 an array Peter Maydell
` (6 subsequent siblings)
12 siblings, 0 replies; 27+ messages in thread
From: Peter Maydell @ 2014-08-04 13:53 UTC (permalink / raw)
To: qemu-devel
From: "Edgar E. Iglesias" <edgar.iglesias@gmail.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Reviewed-by: Greg Bellows <greg.bellows@linaro.org>
Message-id: 1402994746-8328-4-git-send-email-edgar.iglesias@gmail.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
target-arm/helper-a64.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/target-arm/helper-a64.c b/target-arm/helper-a64.c
index 2b4ce6a..027434a 100644
--- a/target-arm/helper-a64.c
+++ b/target-arm/helper-a64.c
@@ -489,8 +489,7 @@ void aarch64_cpu_do_interrupt(CPUState *cs)
if (is_a64(env)) {
env->banked_spsr[aarch64_banked_spsr_index(1)] = pstate_read(env);
- env->sp_el[arm_current_pl(env)] = env->xregs[31];
- env->xregs[31] = env->sp_el[1];
+ aarch64_save_sp(env, arm_current_pl(env));
env->elr_el[1] = env->pc;
} else {
env->banked_spsr[0] = cpsr_read(env);
@@ -508,6 +507,7 @@ void aarch64_cpu_do_interrupt(CPUState *cs)
pstate_write(env, PSTATE_DAIF | PSTATE_MODE_EL1h);
env->aarch64 = 1;
+ aarch64_restore_sp(env, 1);
env->pc = addr;
cs->interrupt_request |= CPU_INTERRUPT_EXITTB;
--
1.9.1
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [Qemu-devel] [PULL 07/12] target-arm: Make far_el1 an array
2014-08-04 13:53 [Qemu-devel] [PULL 00/12] target-arm queue Peter Maydell
` (5 preceding siblings ...)
2014-08-04 13:53 ` [Qemu-devel] [PULL 06/12] target-arm: A64: Respect SPSEL when taking exceptions Peter Maydell
@ 2014-08-04 13:53 ` Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 08/12] target-arm: Add ESR_EL2 and 3 Peter Maydell
` (5 subsequent siblings)
12 siblings, 0 replies; 27+ messages in thread
From: Peter Maydell @ 2014-08-04 13:53 UTC (permalink / raw)
To: qemu-devel
From: "Edgar E. Iglesias" <edgar.iglesias@xilinx.com>
No functional change.
Prepares for future additions of the EL2 and 3 versions of this reg.
Reviewed-by: Greg Bellows <greg.bellows@linaro.org>
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-id: 1402994746-8328-5-git-send-email-edgar.iglesias@gmail.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
target-arm/cpu.c | 2 +-
target-arm/cpu.h | 2 +-
target-arm/helper-a64.c | 4 ++--
target-arm/helper.c | 12 ++++++------
4 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/target-arm/cpu.c b/target-arm/cpu.c
index 05e52e0..7cebb76 100644
--- a/target-arm/cpu.c
+++ b/target-arm/cpu.c
@@ -447,7 +447,7 @@ static void arm1026_initfn(Object *obj)
ARMCPRegInfo ifar = {
.name = "IFAR", .cp = 15, .crn = 6, .crm = 0, .opc1 = 0, .opc2 = 1,
.access = PL1_RW,
- .fieldoffset = offsetofhigh32(CPUARMState, cp15.far_el1),
+ .fieldoffset = offsetofhigh32(CPUARMState, cp15.far_el[1]),
.resetvalue = 0
};
define_one_arm_cp_reg(cpu, &ifar);
diff --git a/target-arm/cpu.h b/target-arm/cpu.h
index 369d472..b755f99 100644
--- a/target-arm/cpu.h
+++ b/target-arm/cpu.h
@@ -187,7 +187,7 @@ typedef struct CPUARMState {
uint32_t ifsr_el2; /* Fault status registers. */
uint64_t esr_el[2];
uint32_t c6_region[8]; /* MPU base/size registers. */
- uint64_t far_el1; /* Fault address registers. */
+ uint64_t far_el[2]; /* Fault address registers. */
uint64_t par_el1; /* Translation result. */
uint32_t c9_insn; /* Cache lockdown registers. */
uint32_t c9_data;
diff --git a/target-arm/helper-a64.c b/target-arm/helper-a64.c
index 027434a..2e9ef64 100644
--- a/target-arm/helper-a64.c
+++ b/target-arm/helper-a64.c
@@ -465,13 +465,13 @@ void aarch64_cpu_do_interrupt(CPUState *cs)
}
env->cp15.esr_el[1] = env->exception.syndrome;
- env->cp15.far_el1 = env->exception.vaddress;
+ env->cp15.far_el[1] = env->exception.vaddress;
switch (cs->exception_index) {
case EXCP_PREFETCH_ABORT:
case EXCP_DATA_ABORT:
qemu_log_mask(CPU_LOG_INT, "...with FAR 0x%" PRIx64 "\n",
- env->cp15.far_el1);
+ env->cp15.far_el[1]);
break;
case EXCP_BKPT:
case EXCP_UDEF:
diff --git a/target-arm/helper.c b/target-arm/helper.c
index d343856..b5f2e57 100644
--- a/target-arm/helper.c
+++ b/target-arm/helper.c
@@ -521,7 +521,7 @@ static const ARMCPRegInfo v6_cp_reginfo[] = {
.access = PL0_W, .type = ARM_CP_NOP },
{ .name = "IFAR", .cp = 15, .crn = 6, .crm = 0, .opc1 = 0, .opc2 = 2,
.access = PL1_RW,
- .fieldoffset = offsetofhigh32(CPUARMState, cp15.far_el1),
+ .fieldoffset = offsetofhigh32(CPUARMState, cp15.far_el[1]),
.resetvalue = 0, },
/* Watchpoint Fault Address Register : should actually only be present
* for 1136, 1176, 11MPCore.
@@ -1516,7 +1516,7 @@ static const ARMCPRegInfo vmsa_cp_reginfo[] = {
/* 64-bit FAR; this entry also gives us the AArch32 DFAR */
{ .name = "FAR_EL1", .state = ARM_CP_STATE_BOTH,
.opc0 = 3, .crn = 6, .crm = 0, .opc1 = 0, .opc2 = 0,
- .access = PL1_RW, .fieldoffset = offsetof(CPUARMState, cp15.far_el1),
+ .access = PL1_RW, .fieldoffset = offsetof(CPUARMState, cp15.far_el[1]),
.resetvalue = 0, },
REGINFO_SENTINEL
};
@@ -3425,8 +3425,8 @@ void arm_cpu_do_interrupt(CPUState *cs)
/* Fall through to prefetch abort. */
case EXCP_PREFETCH_ABORT:
env->cp15.ifsr_el2 = env->exception.fsr;
- env->cp15.far_el1 = deposit64(env->cp15.far_el1, 32, 32,
- env->exception.vaddress);
+ env->cp15.far_el[1] = deposit64(env->cp15.far_el[1], 32, 32,
+ env->exception.vaddress);
qemu_log_mask(CPU_LOG_INT, "...with IFSR 0x%x IFAR 0x%x\n",
env->cp15.ifsr_el2, (uint32_t)env->exception.vaddress);
new_mode = ARM_CPU_MODE_ABT;
@@ -3436,8 +3436,8 @@ void arm_cpu_do_interrupt(CPUState *cs)
break;
case EXCP_DATA_ABORT:
env->cp15.esr_el[1] = env->exception.fsr;
- env->cp15.far_el1 = deposit64(env->cp15.far_el1, 0, 32,
- env->exception.vaddress);
+ env->cp15.far_el[1] = deposit64(env->cp15.far_el[1], 0, 32,
+ env->exception.vaddress);
qemu_log_mask(CPU_LOG_INT, "...with DFSR 0x%x DFAR 0x%x\n",
(uint32_t)env->cp15.esr_el[1],
(uint32_t)env->exception.vaddress);
--
1.9.1
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [Qemu-devel] [PULL 08/12] target-arm: Add ESR_EL2 and 3
2014-08-04 13:53 [Qemu-devel] [PULL 00/12] target-arm queue Peter Maydell
` (6 preceding siblings ...)
2014-08-04 13:53 ` [Qemu-devel] [PULL 07/12] target-arm: Make far_el1 an array Peter Maydell
@ 2014-08-04 13:53 ` Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 09/12] target-arm: Add FAR_EL2 " Peter Maydell
` (4 subsequent siblings)
12 siblings, 0 replies; 27+ messages in thread
From: Peter Maydell @ 2014-08-04 13:53 UTC (permalink / raw)
To: qemu-devel
From: "Edgar E. Iglesias" <edgar.iglesias@xilinx.com>
Reviewed-by: Greg Bellows <greg.bellows@linaro.org>
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-id: 1402994746-8328-6-git-send-email-edgar.iglesias@gmail.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
target-arm/cpu.h | 2 +-
target-arm/helper.c | 8 ++++++++
2 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/target-arm/cpu.h b/target-arm/cpu.h
index b755f99..3d9cf57 100644
--- a/target-arm/cpu.h
+++ b/target-arm/cpu.h
@@ -185,7 +185,7 @@ typedef struct CPUARMState {
uint32_t pmsav5_data_ap; /* PMSAv5 MPU data access permissions */
uint32_t pmsav5_insn_ap; /* PMSAv5 MPU insn access permissions */
uint32_t ifsr_el2; /* Fault status registers. */
- uint64_t esr_el[2];
+ uint64_t esr_el[4];
uint32_t c6_region[8]; /* MPU base/size registers. */
uint64_t far_el[2]; /* Fault address registers. */
uint64_t par_el1; /* Translation result. */
diff --git a/target-arm/helper.c b/target-arm/helper.c
index b5f2e57..f4845b0 100644
--- a/target-arm/helper.c
+++ b/target-arm/helper.c
@@ -2127,6 +2127,10 @@ static const ARMCPRegInfo v8_el2_cp_reginfo[] = {
.opc0 = 3, .opc1 = 4, .crn = 4, .crm = 0, .opc2 = 1,
.access = PL2_RW,
.fieldoffset = offsetof(CPUARMState, elr_el[2]) },
+ { .name = "ESR_EL2", .state = ARM_CP_STATE_AA64,
+ .type = ARM_CP_NO_MIGRATE,
+ .opc0 = 3, .opc1 = 4, .crn = 5, .crm = 2, .opc2 = 0,
+ .access = PL2_RW, .fieldoffset = offsetof(CPUARMState, cp15.esr_el[2]) },
{ .name = "SPSR_EL2", .state = ARM_CP_STATE_AA64,
.type = ARM_CP_NO_MIGRATE,
.opc0 = 3, .opc1 = 4, .crn = 4, .crm = 0, .opc2 = 0,
@@ -2145,6 +2149,10 @@ static const ARMCPRegInfo v8_el3_cp_reginfo[] = {
.opc0 = 3, .opc1 = 6, .crn = 4, .crm = 0, .opc2 = 1,
.access = PL3_RW,
.fieldoffset = offsetof(CPUARMState, elr_el[3]) },
+ { .name = "ESR_EL3", .state = ARM_CP_STATE_AA64,
+ .type = ARM_CP_NO_MIGRATE,
+ .opc0 = 3, .opc1 = 6, .crn = 5, .crm = 2, .opc2 = 0,
+ .access = PL3_RW, .fieldoffset = offsetof(CPUARMState, cp15.esr_el[3]) },
{ .name = "SPSR_EL3", .state = ARM_CP_STATE_AA64,
.type = ARM_CP_NO_MIGRATE,
.opc0 = 3, .opc1 = 6, .crn = 4, .crm = 0, .opc2 = 0,
--
1.9.1
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [Qemu-devel] [PULL 09/12] target-arm: Add FAR_EL2 and 3
2014-08-04 13:53 [Qemu-devel] [PULL 00/12] target-arm queue Peter Maydell
` (7 preceding siblings ...)
2014-08-04 13:53 ` [Qemu-devel] [PULL 08/12] target-arm: Add ESR_EL2 and 3 Peter Maydell
@ 2014-08-04 13:53 ` Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 10/12] target-arm: Fix bit test in sp_el0_access Peter Maydell
` (3 subsequent siblings)
12 siblings, 0 replies; 27+ messages in thread
From: Peter Maydell @ 2014-08-04 13:53 UTC (permalink / raw)
To: qemu-devel
From: "Edgar E. Iglesias" <edgar.iglesias@xilinx.com>
Reviewed-by: Greg Bellows <greg.bellows@linaro.org>
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-id: 1402994746-8328-7-git-send-email-edgar.iglesias@gmail.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
target-arm/cpu.h | 2 +-
target-arm/helper.c | 6 ++++++
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/target-arm/cpu.h b/target-arm/cpu.h
index 3d9cf57..79205ba 100644
--- a/target-arm/cpu.h
+++ b/target-arm/cpu.h
@@ -187,7 +187,7 @@ typedef struct CPUARMState {
uint32_t ifsr_el2; /* Fault status registers. */
uint64_t esr_el[4];
uint32_t c6_region[8]; /* MPU base/size registers. */
- uint64_t far_el[2]; /* Fault address registers. */
+ uint64_t far_el[4]; /* Fault address registers. */
uint64_t par_el1; /* Translation result. */
uint32_t c9_insn; /* Cache lockdown registers. */
uint32_t c9_data;
diff --git a/target-arm/helper.c b/target-arm/helper.c
index f4845b0..a7f82f3 100644
--- a/target-arm/helper.c
+++ b/target-arm/helper.c
@@ -2131,6 +2131,9 @@ static const ARMCPRegInfo v8_el2_cp_reginfo[] = {
.type = ARM_CP_NO_MIGRATE,
.opc0 = 3, .opc1 = 4, .crn = 5, .crm = 2, .opc2 = 0,
.access = PL2_RW, .fieldoffset = offsetof(CPUARMState, cp15.esr_el[2]) },
+ { .name = "FAR_EL2", .state = ARM_CP_STATE_AA64,
+ .opc0 = 3, .opc1 = 4, .crn = 6, .crm = 0, .opc2 = 0,
+ .access = PL2_RW, .fieldoffset = offsetof(CPUARMState, cp15.far_el[2]) },
{ .name = "SPSR_EL2", .state = ARM_CP_STATE_AA64,
.type = ARM_CP_NO_MIGRATE,
.opc0 = 3, .opc1 = 4, .crn = 4, .crm = 0, .opc2 = 0,
@@ -2153,6 +2156,9 @@ static const ARMCPRegInfo v8_el3_cp_reginfo[] = {
.type = ARM_CP_NO_MIGRATE,
.opc0 = 3, .opc1 = 6, .crn = 5, .crm = 2, .opc2 = 0,
.access = PL3_RW, .fieldoffset = offsetof(CPUARMState, cp15.esr_el[3]) },
+ { .name = "FAR_EL3", .state = ARM_CP_STATE_AA64,
+ .opc0 = 3, .opc1 = 6, .crn = 6, .crm = 0, .opc2 = 0,
+ .access = PL3_RW, .fieldoffset = offsetof(CPUARMState, cp15.far_el[3]) },
{ .name = "SPSR_EL3", .state = ARM_CP_STATE_AA64,
.type = ARM_CP_NO_MIGRATE,
.opc0 = 3, .opc1 = 6, .crn = 4, .crm = 0, .opc2 = 0,
--
1.9.1
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [Qemu-devel] [PULL 10/12] target-arm: Fix bit test in sp_el0_access
2014-08-04 13:53 [Qemu-devel] [PULL 00/12] target-arm queue Peter Maydell
` (8 preceding siblings ...)
2014-08-04 13:53 ` [Qemu-devel] [PULL 09/12] target-arm: Add FAR_EL2 " Peter Maydell
@ 2014-08-04 13:53 ` Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 11/12] target-arm: don't hardcode mask values in arm_cpu_handle_mmu_fault Peter Maydell
` (2 subsequent siblings)
12 siblings, 0 replies; 27+ messages in thread
From: Peter Maydell @ 2014-08-04 13:53 UTC (permalink / raw)
To: qemu-devel
From: Stefan Weil <sw@weilnetz.de>
Static code analyzers complain about a dubious & operation used for a
boolean value. The code does not test the PSTATE_SP bit as it should.
Cc: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Stefan Weil <sw@weilnetz.de>
Message-id: 1406359601-25583-1-git-send-email-sw@weilnetz.de
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
target-arm/helper.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/target-arm/helper.c b/target-arm/helper.c
index a7f82f3..d709285 100644
--- a/target-arm/helper.c
+++ b/target-arm/helper.c
@@ -1853,7 +1853,7 @@ static uint64_t aa64_dczid_read(CPUARMState *env, const ARMCPRegInfo *ri)
static CPAccessResult sp_el0_access(CPUARMState *env, const ARMCPRegInfo *ri)
{
- if (!env->pstate & PSTATE_SP) {
+ if (!(env->pstate & PSTATE_SP)) {
/* Access to SP_EL0 is undefined if it's being used as
* the stack pointer.
*/
--
1.9.1
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [Qemu-devel] [PULL 11/12] target-arm: don't hardcode mask values in arm_cpu_handle_mmu_fault
2014-08-04 13:53 [Qemu-devel] [PULL 00/12] target-arm queue Peter Maydell
` (9 preceding siblings ...)
2014-08-04 13:53 ` [Qemu-devel] [PULL 10/12] target-arm: Fix bit test in sp_el0_access Peter Maydell
@ 2014-08-04 13:53 ` Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 12/12] target-arm: A64: fix TLB flush instructions Peter Maydell
2014-08-04 15:05 ` [Qemu-devel] [PULL 00/12] target-arm queue Peter Maydell
12 siblings, 0 replies; 27+ messages in thread
From: Peter Maydell @ 2014-08-04 13:53 UTC (permalink / raw)
To: qemu-devel
From: Alex Bennée <alex.bennee@linaro.org>
Otherwise we break quickly when we change TARGET_PAGE_SIZE.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-id: 1406733627-24255-2-git-send-email-alex.bennee@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
target-arm/helper.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/target-arm/helper.c b/target-arm/helper.c
index d709285..35c11e7 100644
--- a/target-arm/helper.c
+++ b/target-arm/helper.c
@@ -4156,8 +4156,8 @@ int arm_cpu_handle_mmu_fault(CPUState *cs, vaddr address,
&page_size);
if (ret == 0) {
/* Map a single [sub]page. */
- phys_addr &= ~(hwaddr)0x3ff;
- address &= ~(target_ulong)0x3ff;
+ phys_addr &= TARGET_PAGE_MASK;
+ address &= TARGET_PAGE_MASK;
tlb_set_page(cs, address, phys_addr, prot, mmu_idx, page_size);
return 0;
}
--
1.9.1
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [Qemu-devel] [PULL 12/12] target-arm: A64: fix TLB flush instructions
2014-08-04 13:53 [Qemu-devel] [PULL 00/12] target-arm queue Peter Maydell
` (10 preceding siblings ...)
2014-08-04 13:53 ` [Qemu-devel] [PULL 11/12] target-arm: don't hardcode mask values in arm_cpu_handle_mmu_fault Peter Maydell
@ 2014-08-04 13:53 ` Peter Maydell
2014-08-04 15:05 ` [Qemu-devel] [PULL 00/12] target-arm queue Peter Maydell
12 siblings, 0 replies; 27+ messages in thread
From: Peter Maydell @ 2014-08-04 13:53 UTC (permalink / raw)
To: qemu-devel
From: Alex Bennée <alex.bennee@linaro.org>
According to the ARM ARM we weren't correctly flushing the TLB entries
where bits 63:56 didn't match bit 55 of the virtual address. This
exposed a problem when we switched QEMU's internal TARGET_PAGE_BITS to
12 for aarch64.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 1406733627-24255-3-git-send-email-alex.bennee@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
target-arm/helper.c | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/target-arm/helper.c b/target-arm/helper.c
index 35c11e7..f630d96 100644
--- a/target-arm/helper.c
+++ b/target-arm/helper.c
@@ -1801,12 +1801,17 @@ static CPAccessResult aa64_cacheop_access(CPUARMState *env,
return CP_ACCESS_OK;
}
+/* See: D4.7.2 TLB maintenance requirements and the TLB maintenance instructions
+ * Page D4-1736 (DDI0487A.b)
+ */
+
static void tlbi_aa64_va_write(CPUARMState *env, const ARMCPRegInfo *ri,
uint64_t value)
{
/* Invalidate by VA (AArch64 version) */
ARMCPU *cpu = arm_env_get_cpu(env);
- uint64_t pageaddr = value << 12;
+ uint64_t pageaddr = sextract64(value << 12, 0, 56);
+
tlb_flush_page(CPU(cpu), pageaddr);
}
@@ -1815,7 +1820,8 @@ static void tlbi_aa64_vaa_write(CPUARMState *env, const ARMCPRegInfo *ri,
{
/* Invalidate by VA, all ASIDs (AArch64 version) */
ARMCPU *cpu = arm_env_get_cpu(env);
- uint64_t pageaddr = value << 12;
+ uint64_t pageaddr = sextract64(value << 12, 0, 56);
+
tlb_flush_page(CPU(cpu), pageaddr);
}
--
1.9.1
^ permalink raw reply related [flat|nested] 27+ messages in thread
* Re: [Qemu-devel] [PULL 00/12] target-arm queue
2014-08-04 13:53 [Qemu-devel] [PULL 00/12] target-arm queue Peter Maydell
` (11 preceding siblings ...)
2014-08-04 13:53 ` [Qemu-devel] [PULL 12/12] target-arm: A64: fix TLB flush instructions Peter Maydell
@ 2014-08-04 15:05 ` Peter Maydell
12 siblings, 0 replies; 27+ messages in thread
From: Peter Maydell @ 2014-08-04 15:05 UTC (permalink / raw)
To: QEMU Developers
On 4 August 2014 14:53, Peter Maydell <peter.maydell@linaro.org> wrote:
> First pullreq for 2.2; not very many patches but I didn't want
> to hang onto them any more, especially since there are several
> bits of work in-flight that will need to rebase after these.
>
>
> The following changes since commit 924c09db51b147881d51d8102deb4f285305c1b7:
>
> Merge remote-tracking branch 'remotes/amit-virtio-rng/for-2.2' into staging (2014-08-04 13:07:02 +0100)
>
> are available in the git repository at:
>
>
> git://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20140804
>
> for you to fetch changes up to dbb1fb277ca12acd577403575aa6a2f119ab79ea:
>
> target-arm: A64: fix TLB flush instructions (2014-08-04 14:41:56 +0100)
>
> ----------------------------------------------------------------
> target-arm queue:
> * Set PC correctly when loading AArch64 ELF files
> * sdhci: Fix ADMA dma_memory_read access
> * some more foundational work for EL2/EL3 support
> * fix bugs which reveal themselves if the TARGET_PAGE_SIZE
> is not set to 1K
Applied, thanks.
-- PMM
^ permalink raw reply [flat|nested] 27+ messages in thread
* [Qemu-devel] [PULL 00/12] target-arm queue
@ 2015-02-13 5:54 Peter Maydell
2015-02-13 11:04 ` Peter Maydell
2015-02-13 11:44 ` Peter Maydell
0 siblings, 2 replies; 27+ messages in thread
From: Peter Maydell @ 2015-02-13 5:54 UTC (permalink / raw)
To: qemu-devel
The following changes since commit 449008f86418583a1f0fb946cf91ee7b4797317d:
Merge remote-tracking branch 'remotes/awilliam/tags/vfio-update-20150210.0' into staging (2015-02-11 05:14:41 +0000)
are available in the git repository at:
git://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20150213
for you to fetch changes up to c2ebd862a54b7e12175d65c03ba259926cb2237a:
target-arm: A64: Avoid signed shifts in disas_ldst_pair() (2015-02-13 05:46:09 +0000)
----------------------------------------------------------------
target-arm queue:
* PCIe support in virt board
* Support 32-bit guests on 64-bit KVM hosts in virt board
* Fixes to avoid C undefined behaviour
----------------------------------------------------------------
Alexander Graf (4):
pci: Allocate PCIe host bridge PCI ID
pci: Add generic PCIe host bridge
arm: Add PCIe host bridge in virt machine
pci: Move PCI VGA to pci.mak
Greg Bellows (4):
target-arm: Add CPU property to disable AArch64
target-arm: Add feature parsing to virt
target-arm: Add 32/64-bit register sync
target-arm: Add AArch32 guest support to KVM64
Peter Maydell (4):
target-arm: A64: Fix shifts into sign bit
target-arm: A64: Fix handling of rotate in logic_imm_decode_wmask
target-arm: A64: Avoid left shifting negative integers in disas_pc_rel_addr
target-arm: A64: Avoid signed shifts in disas_ldst_pair()
default-configs/alpha-softmmu.mak | 2 -
default-configs/arm-softmmu.mak | 2 +
default-configs/i386-softmmu.mak | 2 -
default-configs/mips-softmmu.mak | 2 -
default-configs/mips64-softmmu.mak | 2 -
default-configs/mips64el-softmmu.mak | 2 -
default-configs/mipsel-softmmu.mak | 2 -
default-configs/pci.mak | 2 +
default-configs/ppc-softmmu.mak | 2 -
default-configs/ppc64-softmmu.mak | 2 -
default-configs/ppcemb-softmmu.mak | 2 -
default-configs/sparc64-softmmu.mak | 2 -
default-configs/x86_64-softmmu.mak | 2 -
hw/arm/virt.c | 158 ++++++++++++++++++++++++--
hw/pci-host/Makefile.objs | 1 +
hw/pci-host/gpex.c | 154 +++++++++++++++++++++++++
include/hw/pci-host/gpex.h | 56 ++++++++++
include/hw/pci/pci.h | 1 +
include/sysemu/device_tree.h | 9 ++
target-arm/cpu.c | 5 +-
target-arm/cpu.h | 2 +
target-arm/cpu64.c | 39 +++++++
target-arm/helper-a64.c | 5 +-
target-arm/helper.c | 211 +++++++++++++++++++++++++++++++++++
target-arm/kvm64.c | 36 +++++-
target-arm/op_helper.c | 6 +-
target-arm/translate-a64.c | 18 +--
27 files changed, 678 insertions(+), 49 deletions(-)
create mode 100644 hw/pci-host/gpex.c
create mode 100644 include/hw/pci-host/gpex.h
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [Qemu-devel] [PULL 00/12] target-arm queue
2015-02-13 5:54 Peter Maydell
@ 2015-02-13 11:04 ` Peter Maydell
2015-02-13 11:44 ` Peter Maydell
1 sibling, 0 replies; 27+ messages in thread
From: Peter Maydell @ 2015-02-13 11:04 UTC (permalink / raw)
To: QEMU Developers
On 13 February 2015 at 05:54, Peter Maydell <peter.maydell@linaro.org> wrote:
> The following changes since commit 449008f86418583a1f0fb946cf91ee7b4797317d:
>
> Merge remote-tracking branch 'remotes/awilliam/tags/vfio-update-20150210.0' into staging (2015-02-11 05:14:41 +0000)
>
> are available in the git repository at:
>
>
> git://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20150213
>
> for you to fetch changes up to c2ebd862a54b7e12175d65c03ba259926cb2237a:
>
> target-arm: A64: Avoid signed shifts in disas_ldst_pair() (2015-02-13 05:46:09 +0000)
>
> ----------------------------------------------------------------
> target-arm queue:
> * PCIe support in virt board
> * Support 32-bit guests on 64-bit KVM hosts in virt board
> * Fixes to avoid C undefined behaviour
>
> ----------------------------------------------------------------
NB: if following this merge you find 'make check' fails, this is
likely because your build tree is old and is missing the correct
dependency files (the .d files which would tell it to rebuild the
config-devices.mak files don't exist, and the .d files only get
built when the config-devices.mak files are rebuilt.) This can
be fixed by:
rm <builddir>/*/config-devices.mak*
(or by blowing away the whole builddir, of course).
-- PMM
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [Qemu-devel] [PULL 00/12] target-arm queue
2015-02-13 5:54 Peter Maydell
2015-02-13 11:04 ` Peter Maydell
@ 2015-02-13 11:44 ` Peter Maydell
1 sibling, 0 replies; 27+ messages in thread
From: Peter Maydell @ 2015-02-13 11:44 UTC (permalink / raw)
To: QEMU Developers
On 13 February 2015 at 05:54, Peter Maydell <peter.maydell@linaro.org> wrote:
> The following changes since commit 449008f86418583a1f0fb946cf91ee7b4797317d:
>
> Merge remote-tracking branch 'remotes/awilliam/tags/vfio-update-20150210.0' into staging (2015-02-11 05:14:41 +0000)
>
> are available in the git repository at:
>
>
> git://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20150213
>
> for you to fetch changes up to c2ebd862a54b7e12175d65c03ba259926cb2237a:
>
> target-arm: A64: Avoid signed shifts in disas_ldst_pair() (2015-02-13 05:46:09 +0000)
>
> ----------------------------------------------------------------
> target-arm queue:
> * PCIe support in virt board
> * Support 32-bit guests on 64-bit KVM hosts in virt board
> * Fixes to avoid C undefined behaviour
>
Applied, thanks.
-- PMM
^ permalink raw reply [flat|nested] 27+ messages in thread
* [Qemu-devel] [PULL 00/12] target-arm queue
@ 2015-06-19 13:47 Peter Maydell
2015-06-19 17:32 ` Peter Maydell
0 siblings, 1 reply; 27+ messages in thread
From: Peter Maydell @ 2015-06-19 13:47 UTC (permalink / raw)
To: qemu-devel
target-arm queue, mostly a collection of the last few stray features
that have been on the list in plenty of time for softfreeze but didn't
quite make the previous pullreq.
I expect the "support GICv2m with virt board ACPI tables" patch also
to go in for 2.4, but it needs a little more review time. Other than that
I think we should be down to bugfix patches.
-- PMM
The following changes since commit ffdb1409a79c9cc91afd9f58df625fdca16bf8b9:
Merge remote-tracking branch 'remotes/pmaydell/tags/pull-cocoa-20150619-1' into staging (2015-06-19 12:54:08 +0100)
are available in the git repository at:
git://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20150619
for you to fetch changes up to a59d31a1ebdce796a469242800db89bf09c94580:
semihosting: add --semihosting-config arg sub-argument (2015-06-19 14:17:45 +0100)
----------------------------------------------------------------
target-arm queue:
* support --semihosting-config,arg=value
* Cortex-R5 support (including implementing them on the Zynq board)
* Cortex-M4 support (without FPU)
* enable vfio-calxeda-xgmac
* don't reset ALIAS sysregs
----------------------------------------------------------------
Aurelio C. Remonda (1):
target-arm: Add the Cortex-M4 CPU
Eric Auger (1):
hw/arm/sysbus-fdt: enable vfio-calxeda-xgmac dynamic instantiation
Leon Alrae (2):
semihosting: create SemihostingConfig structure and semihost.h
semihosting: add --semihosting-config arg sub-argument
Peter Crosthwaite (7):
target-arm/helper.c: define MPUIR register
target-arm: Add registers for PMSAv7
target-arm: Implement PMSAv7 MPU
target-arm: Add support for Cortex-R5
arm: xlnx-zynqmp: Preface CPU variables with "apu"
arm: xlnx-zynqmp: Add boot-cpu property
arm: xlnx-zynqmp: Add 2xCortexR5 CPUs
Sergey Fedorov (1):
target-arm: Do not reset sysregs marked as ALIAS
gdbstub.c | 8 +-
hw/arm/sysbus-fdt.c | 73 ++++++++++
hw/arm/virt.c | 12 +-
hw/arm/xlnx-ep108.c | 2 +-
hw/arm/xlnx-zynqmp.c | 79 +++++++++--
include/exec/gdbstub.h | 6 -
include/exec/semihost.h | 62 +++++++++
include/hw/arm/fdt.h | 34 +++++
include/hw/arm/xlnx-zynqmp.h | 9 +-
include/sysemu/sysemu.h | 1 -
qemu-options.hx | 21 ++-
target-arm/arm-semi.c | 10 +-
target-arm/cpu-qom.h | 2 +
target-arm/cpu.c | 75 ++++++++++-
target-arm/cpu.h | 15 ++-
target-arm/helper.c | 309 ++++++++++++++++++++++++++++++++++++++-----
target-arm/machine.c | 34 +++++
target-lm32/helper.c | 3 +-
target-m68k/op_helper.c | 5 +-
target-xtensa/translate.c | 3 +-
vl.c | 104 +++++++++++++--
21 files changed, 770 insertions(+), 97 deletions(-)
create mode 100644 include/exec/semihost.h
create mode 100644 include/hw/arm/fdt.h
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [Qemu-devel] [PULL 00/12] target-arm queue
2015-06-19 13:47 Peter Maydell
@ 2015-06-19 17:32 ` Peter Maydell
0 siblings, 0 replies; 27+ messages in thread
From: Peter Maydell @ 2015-06-19 17:32 UTC (permalink / raw)
To: QEMU Developers
On 19 June 2015 at 14:47, Peter Maydell <peter.maydell@linaro.org> wrote:
> target-arm queue, mostly a collection of the last few stray features
> that have been on the list in plenty of time for softfreeze but didn't
> quite make the previous pullreq.
>
> I expect the "support GICv2m with virt board ACPI tables" patch also
> to go in for 2.4, but it needs a little more review time. Other than that
> I think we should be down to bugfix patches.
>
> -- PMM
>
> The following changes since commit ffdb1409a79c9cc91afd9f58df625fdca16bf8b9:
>
> Merge remote-tracking branch 'remotes/pmaydell/tags/pull-cocoa-20150619-1' into staging (2015-06-19 12:54:08 +0100)
>
> are available in the git repository at:
>
>
> git://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20150619
>
> for you to fetch changes up to a59d31a1ebdce796a469242800db89bf09c94580:
>
> semihosting: add --semihosting-config arg sub-argument (2015-06-19 14:17:45 +0100)
>
> ----------------------------------------------------------------
> target-arm queue:
> * support --semihosting-config,arg=value
> * Cortex-R5 support (including implementing them on the Zynq board)
> * Cortex-M4 support (without FPU)
> * enable vfio-calxeda-xgmac
> * don't reset ALIAS sysregs
Applied, thanks.
-- PMM
^ permalink raw reply [flat|nested] 27+ messages in thread
* [Qemu-devel] [PULL 00/12] target-arm queue
@ 2017-02-10 18:07 Peter Maydell
2017-02-13 9:30 ` Peter Maydell
0 siblings, 1 reply; 27+ messages in thread
From: Peter Maydell @ 2017-02-10 18:07 UTC (permalink / raw)
To: qemu-devel
ARM queue: nothing particularly exciting here, but no
reason to sit on them for another week.
thanks
-- PMM
The following changes since commit 61eedf7aec0e2395aabd628cc055096909a3ea15:
tests/prom-env: Ease time-out problems on slow hosts (2017-02-10 15:44:53 +0000)
are available in the git repository at:
git://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20170210
for you to fetch changes up to b4cc583f0285a2e1e78621dfba142f00ca47414a:
aspeed/smc: use a modulo to check segment limits (2017-02-10 17:40:30 +0000)
----------------------------------------------------------------
target-arm queue:
* aspeed: minor fixes
* virt: declare fwcfg and virtio-mmio as DMA coherent in DT & ACPI
* arm: enable basic TCG emulation of PMU for AArch64
----------------------------------------------------------------
Alexander Graf (4):
target-arm: Declare virtio-mmio as dma-coherent in dt
hw/arm/virt: Declare virtio-mmio as dma cache coherent in ACPI
hw/arm/virt: Declare fwcfg as dma cache coherent in ACPI
hw/arm/virt: Declare fwcfg as dma cache coherent in dt
Cédric Le Goater (4):
aspeed: check for negative values returned by blk_getlength()
aspeed: remove useless comment on controller segment size
aspeed/smc: handle dummies only in fast read mode
aspeed/smc: use a modulo to check segment limits
Wei Huang (4):
target-arm: Add support for PMU register PMSELR_EL0
target-arm: Add support for AArch64 PMU register PMXEVTYPER_EL0
target-arm: Add support for PMU register PMINTENSET_EL1
target-arm: Enable vPMU support under TCG mode
target/arm/cpu.h | 4 +--
hw/arm/aspeed.c | 22 +++++++++-----
hw/arm/vexpress.c | 1 +
hw/arm/virt-acpi-build.c | 2 ++
hw/arm/virt.c | 4 ++-
hw/ssi/aspeed_smc.c | 13 +++++----
target/arm/cpu.c | 2 +-
target/arm/helper.c | 74 ++++++++++++++++++++++++++++++++++++------------
8 files changed, 88 insertions(+), 34 deletions(-)
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [Qemu-devel] [PULL 00/12] target-arm queue
2017-02-10 18:07 Peter Maydell
@ 2017-02-13 9:30 ` Peter Maydell
0 siblings, 0 replies; 27+ messages in thread
From: Peter Maydell @ 2017-02-13 9:30 UTC (permalink / raw)
To: QEMU Developers
On 10 February 2017 at 18:07, Peter Maydell <peter.maydell@linaro.org> wrote:
> ARM queue: nothing particularly exciting here, but no
> reason to sit on them for another week.
>
> thanks
> -- PMM
>
> The following changes since commit 61eedf7aec0e2395aabd628cc055096909a3ea15:
>
> tests/prom-env: Ease time-out problems on slow hosts (2017-02-10 15:44:53 +0000)
>
> are available in the git repository at:
>
> git://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20170210
>
> for you to fetch changes up to b4cc583f0285a2e1e78621dfba142f00ca47414a:
>
> aspeed/smc: use a modulo to check segment limits (2017-02-10 17:40:30 +0000)
>
> ----------------------------------------------------------------
> target-arm queue:
> * aspeed: minor fixes
> * virt: declare fwcfg and virtio-mmio as DMA coherent in DT & ACPI
> * arm: enable basic TCG emulation of PMU for AArch64
>
Applied, thanks.
-- PMM
^ permalink raw reply [flat|nested] 27+ messages in thread
* [Qemu-devel] [PULL 00/12] target-arm queue
@ 2018-04-10 12:17 Peter Maydell
2018-04-10 15:48 ` Peter Maydell
0 siblings, 1 reply; 27+ messages in thread
From: Peter Maydell @ 2018-04-10 12:17 UTC (permalink / raw)
To: qemu-devel
Arm patch queue for 2.12 -- a miscellaneous collection
of bug fixes.
thanks
-- PMM
The following changes since commit fb4fe32d5b6290deabe752b51cc1cc2a9e8573db:
Merge remote-tracking branch 'remotes/xtensa/tags/20180409-xtensa' into staging (2018-04-10 10:22:45 +0100)
are available in the Git repository at:
git://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20180410
for you to fetch changes up to bd49e6027cbc207c87633c7add3ebd7d3474cd35:
fpu: Fix rounding mode for floatN_to_uintM_round_to_zero (2018-04-10 13:02:26 +0100)
----------------------------------------------------------------
target-arm queue:
* fpu: Fix rounding mode for floatN_to_uintM_round_to_zero
* tcg: Fix guest state corruption when running 64-bit Arm
guests on a 32-bit host (especially when using icount)
* linux-user/signal.c: Ensure AArch64 signal frame isn't too small
* cpus.c: ensure running CPU recalculates icount deadlines on timer expiry
* target/arm: Report unsupported MPU region sizes more clearly
* hw/arm/fsl-imx: Fix introspection problem with fsl-imx6 and fsl-imx7
* hw/arm/allwinner-a10: Do not use nd_table in instance_init function
* hw/sd/bcm2835_sdhost: Don't raise spurious interrupts
* hw/sd/bcm2835_sdhost: Add tracepoints
* target-arm: Check undefined opcodes for SWP in A32 decoder
* hw/arm/integratorcp: Don't do things that could be fatal in the instance_init
* hw/arm: Allow manually specified /psci node
----------------------------------------------------------------
Andrey Smirnov (1):
hw/arm: Allow manually specified /psci node
Onur Sahin (1):
target-arm: Check undefined opcodes for SWP in A32 decoder
Peter Maydell (5):
hw/sd/bcm2835_sdhost: Add tracepoints
hw/sd/bcm2835_sdhost: Don't raise spurious interrupts
target/arm: Report unsupported MPU region sizes more clearly
cpus.c: ensure running CPU recalculates icount deadlines on timer expiry
linux-user/signal.c: Ensure AArch64 signal frame isn't too small
Richard Henderson (2):
tcg: Introduce tcg_set_insn_start_param
fpu: Fix rounding mode for floatN_to_uintM_round_to_zero
Thomas Huth (3):
hw/arm/integratorcp: Don't do things that could be fatal in the instance_init
hw/arm/allwinner-a10: Do not use nd_table in instance_init function
hw/arm/fsl-imx: Fix introspection problem with fsl-imx6 and fsl-imx7
target/arm/translate.h | 2 +-
tcg/tcg.h | 10 ++++++++++
cpus.c | 10 +++++++++-
fpu/softfloat.c | 4 ++--
hw/arm/allwinner-a10.c | 12 +++++------
hw/arm/boot.c | 10 ++++++++++
hw/arm/fsl-imx6.c | 14 ++++++-------
hw/arm/fsl-imx7.c | 13 ++++++------
hw/arm/integratorcp.c | 23 +++++++++++++--------
hw/sd/bcm2835_sdhost.c | 54 ++++++++++++++++++++++++++++++++------------------
linux-user/signal.c | 6 ++++++
target/arm/helper.c | 6 +++---
target/arm/translate.c | 9 +++++++--
hw/sd/trace-events | 6 ++++++
14 files changed, 124 insertions(+), 55 deletions(-)
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [Qemu-devel] [PULL 00/12] target-arm queue
2018-04-10 12:17 Peter Maydell
@ 2018-04-10 15:48 ` Peter Maydell
0 siblings, 0 replies; 27+ messages in thread
From: Peter Maydell @ 2018-04-10 15:48 UTC (permalink / raw)
To: QEMU Developers
On 10 April 2018 at 13:17, Peter Maydell <peter.maydell@linaro.org> wrote:
> Arm patch queue for 2.12 -- a miscellaneous collection
> of bug fixes.
>
> thanks
> -- PMM
>
>
> The following changes since commit fb4fe32d5b6290deabe752b51cc1cc2a9e8573db:
>
> Merge remote-tracking branch 'remotes/xtensa/tags/20180409-xtensa' into staging (2018-04-10 10:22:45 +0100)
>
> are available in the Git repository at:
>
> git://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20180410
>
> for you to fetch changes up to bd49e6027cbc207c87633c7add3ebd7d3474cd35:
>
> fpu: Fix rounding mode for floatN_to_uintM_round_to_zero (2018-04-10 13:02:26 +0100)
>
> ----------------------------------------------------------------
> target-arm queue:
> * fpu: Fix rounding mode for floatN_to_uintM_round_to_zero
> * tcg: Fix guest state corruption when running 64-bit Arm
> guests on a 32-bit host (especially when using icount)
> * linux-user/signal.c: Ensure AArch64 signal frame isn't too small
> * cpus.c: ensure running CPU recalculates icount deadlines on timer expiry
> * target/arm: Report unsupported MPU region sizes more clearly
> * hw/arm/fsl-imx: Fix introspection problem with fsl-imx6 and fsl-imx7
> * hw/arm/allwinner-a10: Do not use nd_table in instance_init function
> * hw/sd/bcm2835_sdhost: Don't raise spurious interrupts
> * hw/sd/bcm2835_sdhost: Add tracepoints
> * target-arm: Check undefined opcodes for SWP in A32 decoder
> * hw/arm/integratorcp: Don't do things that could be fatal in the instance_init
> * hw/arm: Allow manually specified /psci node
>
> ----------------------------------------------------------------
Applied, thanks.
-- PMM
^ permalink raw reply [flat|nested] 27+ messages in thread
* [Qemu-devel] [PULL 00/12] target-arm queue
@ 2019-05-23 14:23 Peter Maydell
2019-05-24 10:06 ` Peter Maydell
0 siblings, 1 reply; 27+ messages in thread
From: Peter Maydell @ 2019-05-23 14:23 UTC (permalink / raw)
To: qemu-devel
Not very much here, but several people have fallen over
the vector operation segfault bug, so let's get the fix
into master.
thanks
-- PMM
The following changes since commit d418238dca7b4e0b124135827ead3076233052b1:
Merge remote-tracking branch 'remotes/rth/tags/pull-rng-20190522' into staging (2019-05-23 12:57:17 +0100)
are available in the Git repository at:
https://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20190523
for you to fetch changes up to 98e4f4fdb8ea05d840f51f47125924c2bb9df2df:
hw/arm/exynos4210: QOM'ify the Exynos4210 SoC (2019-05-23 14:47:44 +0100)
----------------------------------------------------------------
target-arm queue:
* exynos4210: QOM'ify the Exynos4210 SoC
* exynos4210: Add DMA support for the Exynos4210
* arm_gicv3: Fix writes to ICC_CTLR_EL3
* arm_gicv3: Fix write of ICH_VMCR_EL2.{VBPR0, VBPR1}
* target/arm: Fix vector operation segfault
* target/arm: Minor improvements to BFXIL, EXTR
----------------------------------------------------------------
Alistair Francis (1):
target/arm: Fix vector operation segfault
Guenter Roeck (1):
hw/arm/exynos4210: Add DMA support for the Exynos4210
Peter Maydell (5):
arm: Move system_clock_scale to armv7m_systick.h
arm: Remove unnecessary includes of hw/arm/arm.h
arm: Rename hw/arm/arm.h to hw/arm/boot.h
hw/intc/arm_gicv3: Fix write of ICH_VMCR_EL2.{VBPR0, VBPR1}
hw/intc/arm_gicv3: Fix writes to ICC_CTLR_EL3
Philippe Mathieu-Daudé (3):
hw/arm/exynos4: Remove unuseful debug code
hw/arm/exynos4: Use the IEC binary prefix definitions
hw/arm/exynos4210: QOM'ify the Exynos4210 SoC
Richard Henderson (2):
target/arm: Use extract2 for EXTR
target/arm: Simplify BFXIL expansion
include/hw/arm/allwinner-a10.h | 2 +-
include/hw/arm/aspeed_soc.h | 1 -
include/hw/arm/bcm2836.h | 1 -
include/hw/arm/{arm.h => boot.h} | 12 +++------
include/hw/arm/exynos4210.h | 9 +++++--
include/hw/arm/fsl-imx25.h | 2 +-
include/hw/arm/fsl-imx31.h | 2 +-
include/hw/arm/fsl-imx6.h | 2 +-
include/hw/arm/fsl-imx6ul.h | 2 +-
include/hw/arm/fsl-imx7.h | 2 +-
include/hw/arm/virt.h | 2 +-
include/hw/arm/xlnx-versal.h | 2 +-
include/hw/arm/xlnx-zynqmp.h | 2 +-
include/hw/timer/armv7m_systick.h | 22 ++++++++++++++++
hw/arm/armsse.c | 2 +-
hw/arm/armv7m.c | 2 +-
hw/arm/aspeed.c | 2 +-
hw/arm/boot.c | 2 +-
hw/arm/collie.c | 2 +-
hw/arm/exynos4210.c | 54 ++++++++++++++++++++++++++++++++++++---
hw/arm/exynos4_boards.c | 40 ++++++++---------------------
hw/arm/highbank.c | 2 +-
hw/arm/integratorcp.c | 2 +-
hw/arm/mainstone.c | 2 +-
hw/arm/microbit.c | 2 +-
hw/arm/mps2-tz.c | 2 +-
hw/arm/mps2.c | 2 +-
hw/arm/msf2-soc.c | 1 -
hw/arm/msf2-som.c | 2 +-
hw/arm/musca.c | 2 +-
hw/arm/musicpal.c | 2 +-
hw/arm/netduino2.c | 2 +-
hw/arm/nrf51_soc.c | 2 +-
hw/arm/nseries.c | 2 +-
hw/arm/omap1.c | 2 +-
hw/arm/omap2.c | 2 +-
hw/arm/omap_sx1.c | 2 +-
hw/arm/palm.c | 2 +-
hw/arm/raspi.c | 2 +-
hw/arm/realview.c | 2 +-
hw/arm/spitz.c | 2 +-
hw/arm/stellaris.c | 2 +-
hw/arm/stm32f205_soc.c | 2 +-
hw/arm/strongarm.c | 2 +-
hw/arm/tosa.c | 2 +-
hw/arm/versatilepb.c | 2 +-
hw/arm/vexpress.c | 2 +-
hw/arm/virt.c | 2 +-
hw/arm/xilinx_zynq.c | 2 +-
hw/arm/xlnx-versal.c | 2 +-
hw/arm/z2.c | 2 +-
hw/intc/arm_gicv3_cpuif.c | 6 ++---
hw/intc/armv7m_nvic.c | 1 -
target/arm/arm-semi.c | 1 -
target/arm/cpu.c | 1 -
target/arm/cpu64.c | 1 -
target/arm/kvm.c | 1 -
target/arm/kvm32.c | 1 -
target/arm/kvm64.c | 1 -
target/arm/translate-a64.c | 44 ++++++++++++++++---------------
target/arm/translate.c | 4 +--
61 files changed, 164 insertions(+), 123 deletions(-)
rename include/hw/arm/{arm.h => boot.h} (96%)
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [Qemu-devel] [PULL 00/12] target-arm queue
2019-05-23 14:23 Peter Maydell
@ 2019-05-24 10:06 ` Peter Maydell
0 siblings, 0 replies; 27+ messages in thread
From: Peter Maydell @ 2019-05-24 10:06 UTC (permalink / raw)
To: QEMU Developers
On Thu, 23 May 2019 at 15:23, Peter Maydell <peter.maydell@linaro.org> wrote:
>
> Not very much here, but several people have fallen over
> the vector operation segfault bug, so let's get the fix
> into master.
>
> thanks
> -- PMM
>
> The following changes since commit d418238dca7b4e0b124135827ead3076233052b1:
>
> Merge remote-tracking branch 'remotes/rth/tags/pull-rng-20190522' into staging (2019-05-23 12:57:17 +0100)
>
> are available in the Git repository at:
>
> https://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20190523
>
> for you to fetch changes up to 98e4f4fdb8ea05d840f51f47125924c2bb9df2df:
>
> hw/arm/exynos4210: QOM'ify the Exynos4210 SoC (2019-05-23 14:47:44 +0100)
>
> ----------------------------------------------------------------
> target-arm queue:
> * exynos4210: QOM'ify the Exynos4210 SoC
> * exynos4210: Add DMA support for the Exynos4210
> * arm_gicv3: Fix writes to ICC_CTLR_EL3
> * arm_gicv3: Fix write of ICH_VMCR_EL2.{VBPR0, VBPR1}
> * target/arm: Fix vector operation segfault
> * target/arm: Minor improvements to BFXIL, EXTR
>
Applied, thanks.
Please update the changelog at https://wiki.qemu.org/ChangeLog/4.1
for any user-visible changes.
-- PMM
^ permalink raw reply [flat|nested] 27+ messages in thread
* [Qemu-devel] [PULL 00/12] target-arm queue
@ 2019-09-13 15:49 Peter Maydell
2019-09-16 12:21 ` Peter Maydell
0 siblings, 1 reply; 27+ messages in thread
From: Peter Maydell @ 2019-09-13 15:49 UTC (permalink / raw)
To: qemu-devel
target-arm queue: mostly aspeed changes from Cédric.
thanks
-- PMM
The following changes since commit 85182c96de61f0b600bbe834d5a23e713162e892:
Merge remote-tracking branch 'remotes/dgilbert/tags/pull-migration-20190912a' into staging (2019-09-13 14:37:48 +0100)
are available in the Git repository at:
https://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20190913
for you to fetch changes up to 27a296fce9821e3608d537756cffa6e43a46df3b:
qemu-ga: Convert invocation documentation to rST (2019-09-13 16:05:01 +0100)
----------------------------------------------------------------
target-arm queue:
* aspeed: add a GPIO controller to the SoC
* aspeed: Various refactorings
* aspeed: Improve DMA controller modelling
* atomic_template: fix indentation in GEN_ATOMIC_HELPER
* qemu-ga: Convert invocation documentation to rST
----------------------------------------------------------------
Christian Svensson (1):
aspeed/smc: Calculate checksum on normal DMA
Cédric Le Goater (7):
aspeed: Remove unused SoC definitions
aspeed: Use consistent typenames
aspeed/smc: Add support for DMAs
aspeed/smc: Add DMA calibration settings
aspeed/smc: Inject errors in DMA checksum
aspeed/scu: Introduce per-SoC SCU types
aspeed/scu: Introduce a aspeed_scu_get_apb_freq() routine
Emilio G. Cota (1):
atomic_template: fix indentation in GEN_ATOMIC_HELPER
Peter Maydell (1):
qemu-ga: Convert invocation documentation to rST
Rashmica Gupta (2):
hw/gpio: Add basic Aspeed GPIO model for AST2400 and AST2500
aspeed: add a GPIO controller to the SoC
Makefile | 24 +-
hw/gpio/Makefile.objs | 1 +
accel/tcg/atomic_template.h | 2 +-
include/hw/arm/aspeed_soc.h | 4 +-
include/hw/gpio/aspeed_gpio.h | 100 +++++
include/hw/misc/aspeed_scu.h | 21 +-
include/hw/ssi/aspeed_smc.h | 7 +
hw/arm/aspeed.c | 2 +
hw/arm/aspeed_soc.c | 63 ++-
hw/gpio/aspeed_gpio.c | 884 ++++++++++++++++++++++++++++++++++++++++++
hw/misc/aspeed_scu.c | 102 ++---
hw/ssi/aspeed_smc.c | 335 +++++++++++++++-
hw/timer/aspeed_timer.c | 3 +-
MAINTAINERS | 2 +-
docs/conf.py | 18 +-
docs/interop/conf.py | 7 +
docs/interop/index.rst | 1 +
docs/interop/qemu-ga.rst | 133 +++++++
qemu-doc.texi | 5 -
qemu-ga.texi | 137 -------
20 files changed, 1585 insertions(+), 266 deletions(-)
create mode 100644 include/hw/gpio/aspeed_gpio.h
create mode 100644 hw/gpio/aspeed_gpio.c
create mode 100644 docs/interop/qemu-ga.rst
delete mode 100644 qemu-ga.texi
^ permalink raw reply [flat|nested] 27+ messages in thread
* Re: [Qemu-devel] [PULL 00/12] target-arm queue
2019-09-13 15:49 Peter Maydell
@ 2019-09-16 12:21 ` Peter Maydell
0 siblings, 0 replies; 27+ messages in thread
From: Peter Maydell @ 2019-09-16 12:21 UTC (permalink / raw)
To: QEMU Developers
On Fri, 13 Sep 2019 at 16:49, Peter Maydell <peter.maydell@linaro.org> wrote:
>
> target-arm queue: mostly aspeed changes from Cédric.
>
> thanks
> -- PMM
>
> The following changes since commit 85182c96de61f0b600bbe834d5a23e713162e892:
>
> Merge remote-tracking branch 'remotes/dgilbert/tags/pull-migration-20190912a' into staging (2019-09-13 14:37:48 +0100)
>
> are available in the Git repository at:
>
> https://git.linaro.org/people/pmaydell/qemu-arm.git tags/pull-target-arm-20190913
>
> for you to fetch changes up to 27a296fce9821e3608d537756cffa6e43a46df3b:
>
> qemu-ga: Convert invocation documentation to rST (2019-09-13 16:05:01 +0100)
>
> ----------------------------------------------------------------
> target-arm queue:
> * aspeed: add a GPIO controller to the SoC
> * aspeed: Various refactorings
> * aspeed: Improve DMA controller modelling
> * atomic_template: fix indentation in GEN_ATOMIC_HELPER
> * qemu-ga: Convert invocation documentation to rST
>
> ----------------------------------------------------------------
Applied, thanks.
Please update the changelog at https://wiki.qemu.org/ChangeLog/4.2
for any user-visible changes.
-- PMM
^ permalink raw reply [flat|nested] 27+ messages in thread
end of thread, other threads:[~2019-09-16 12:22 UTC | newest]
Thread overview: 27+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-08-04 13:53 [Qemu-devel] [PULL 00/12] target-arm queue Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 01/12] hw/arm/boot: Set PC correctly when loading AArch64 ELF files Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 02/12] hw/arm/virt: formatting: memory map Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 03/12] sd: sdhci: Fix ADMA dma_memory_read access Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 04/12] target-arm: A64: Break out aarch64_save/restore_sp Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 05/12] target-arm: A64: Respect SPSEL in ERET SP restore Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 06/12] target-arm: A64: Respect SPSEL when taking exceptions Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 07/12] target-arm: Make far_el1 an array Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 08/12] target-arm: Add ESR_EL2 and 3 Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 09/12] target-arm: Add FAR_EL2 " Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 10/12] target-arm: Fix bit test in sp_el0_access Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 11/12] target-arm: don't hardcode mask values in arm_cpu_handle_mmu_fault Peter Maydell
2014-08-04 13:53 ` [Qemu-devel] [PULL 12/12] target-arm: A64: fix TLB flush instructions Peter Maydell
2014-08-04 15:05 ` [Qemu-devel] [PULL 00/12] target-arm queue Peter Maydell
-- strict thread matches above, loose matches on Subject: below --
2015-02-13 5:54 Peter Maydell
2015-02-13 11:04 ` Peter Maydell
2015-02-13 11:44 ` Peter Maydell
2015-06-19 13:47 Peter Maydell
2015-06-19 17:32 ` Peter Maydell
2017-02-10 18:07 Peter Maydell
2017-02-13 9:30 ` Peter Maydell
2018-04-10 12:17 Peter Maydell
2018-04-10 15:48 ` Peter Maydell
2019-05-23 14:23 Peter Maydell
2019-05-24 10:06 ` Peter Maydell
2019-09-13 15:49 Peter Maydell
2019-09-16 12:21 ` Peter Maydell
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).