[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-arm] [PATCH 00/11] ARMv7M: QOMify
From: |
Peter Maydell |
Subject: |
[Qemu-arm] [PATCH 00/11] ARMv7M: QOMify |
Date: |
Mon, 20 Feb 2017 15:35:54 +0000 |
This patch series attempts to bring the v7M code
up to something resembling modern practice for
QEMU devices:
* proper QOM object for the armv7m "container"
which holds the CPU, NVIC, etc cpu-internal devices"
* split the systick out into its own device
* use memory region links rather than having the
NVIC and bitband map themselves directly into the
system memory space
* have stm32f205 create the armv7m container via the
QOM APIs rather than armv7m_init(), since that fits better
with the rest of that SoC's code
These patches sit on top of the NVIC rewrite patchset;
you can find a git branch with the whole lot at:
https://git.linaro.org/people/peter.maydell/qemu-arm.git v7m-qomify
thanks
-- PMM
Peter Maydell (11):
armv7m: Abstract out the "load kernel" code
armv7m: Move NVICState struct definition into header
armv7m: QOMify the armv7m container
armv7m: Use QOMified armv7m object in armv7m_init()
armv7m: Make ARMv7M object take memory region link
armv7m: Make NVIC expose a memory region rather than mapping itself
armv7m: Make bitband device take the address space to access
armv7m: Don't put core v7M devices under CONFIG_STELLARIS
armv7m: Split systick out from NVIC
stm32f205: Create armv7m object without using armv7m_init()
stm32f205: Rename 'nvic' local to 'armv7m'
hw/intc/Makefile.objs | 2 +-
hw/timer/Makefile.objs | 1 +
include/hw/arm/arm.h | 12 ++
include/hw/arm/armv7m.h | 63 +++++++
include/hw/arm/armv7m_nvic.h | 62 +++++++
include/hw/arm/stm32f205_soc.h | 4 +-
include/hw/timer/armv7m_systick.h | 34 ++++
hw/arm/armv7m.c | 380 +++++++++++++++++++++++++-------------
hw/arm/netduino2.c | 7 +-
hw/arm/stm32f205_soc.c | 28 ++-
hw/intc/armv7m_nvic.c | 214 ++++-----------------
hw/timer/armv7m_systick.c | 239 ++++++++++++++++++++++++
default-configs/arm-softmmu.mak | 2 +
hw/timer/trace-events | 6 +
14 files changed, 733 insertions(+), 321 deletions(-)
create mode 100644 include/hw/arm/armv7m.h
create mode 100644 include/hw/arm/armv7m_nvic.h
create mode 100644 include/hw/timer/armv7m_systick.h
create mode 100644 hw/timer/armv7m_systick.c
--
2.7.4
- [Qemu-arm] [PATCH 00/11] ARMv7M: QOMify,
Peter Maydell <=