[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 0/9] target/arm: Housekeeping around NVIC
From: |
Philippe Mathieu-Daudé |
Subject: |
[PATCH 0/9] target/arm: Housekeeping around NVIC |
Date: |
Mon, 6 Feb 2023 13:17:05 +0100 |
Few cleanups while using link properties between CPU/NVIC:
- Restrict code to sysemu|useremu or tcg
- Simplify ID_PFR1 on useremu
- Move NVIC helpersto "hw/intc/armv7m_nvic.h"
Something odd occurs when an ARM CPU is realized, the
CPU reset handler is called, ending calling
armv7m_nvic_neg_prio_requested() on an unrealized NVIC.
I kludged by checking whether the NVIC is realized, but
this rather looks like a code smell...
Philippe Mathieu-Daudé (9):
target/arm: Restrict v7-M MMU helpers to sysemu TCG
target/arm: Constify ID_PFR1 on user emulation
target/arm: Avoid resetting CPUARMState::eabi field
target/arm: Restrict CPUARMState::arm_boot_info to sysemu
target/arm: Restrict CPUARMState::gicv3state to sysemu
target/arm: Restrict CPUARMState::nvic to sysemu and store as
NVICState*
target/arm: Declare CPU <-> NVIC helpers in 'hw/intc/armv7m_nvic.h'
hw/intc/armv7m_nvic: Allow calling neg_prio_requested on unrealized
NVIC
hw/arm/armv7m: Pass CPU/NVIC using object_property_add_const_link()
hw/arm/armv7m.c | 4 +-
hw/intc/armv7m_nvic.c | 44 +++++------
include/hw/intc/armv7m_nvic.h | 128 ++++++++++++++++++++++++++++++-
target/arm/cpu.c | 8 +-
target/arm/cpu.h | 137 ++--------------------------------
target/arm/cpu_tcg.c | 3 +
target/arm/helper.c | 14 +++-
target/arm/m_helper.c | 9 ++-
8 files changed, 179 insertions(+), 168 deletions(-)
--
2.38.1
- [PATCH 0/9] target/arm: Housekeeping around NVIC,
Philippe Mathieu-Daudé <=
- [PATCH 1/9] target/arm: Restrict v7-M MMU helpers to sysemu TCG, Philippe Mathieu-Daudé, 2023/02/06
- [PATCH 2/9] target/arm: Constify ID_PFR1 on user emulation, Philippe Mathieu-Daudé, 2023/02/06
- [PATCH 4/9] target/arm: Restrict CPUARMState::arm_boot_info to sysemu, Philippe Mathieu-Daudé, 2023/02/06
- [PATCH 5/9] target/arm: Restrict CPUARMState::gicv3state to sysemu, Philippe Mathieu-Daudé, 2023/02/06
- [PATCH 3/9] target/arm: Avoid resetting CPUARMState::eabi field, Philippe Mathieu-Daudé, 2023/02/06