include/hw/arm: move BSA definitions to bsa.h
virt.h defines a number of IRQs that are ultimately described by Arm's Base System Architecture specification. Move these to a dedicated header so that they can be reused by other platforms that do the same. Include that header from virt.h to minimise churn. While we're moving the definitions, sort them into numerical order, and add the ARCH_TIMER_NS_EL2_VIRT_IRQ definition used by sbsa-ref and which will eventually be needed by virt also. Signed-off-by: Leif Lindholm <quic_llindhol@quicinc.com> Message-id: 20230919090229.188092-3-quic_llindhol@quicinc.com [PMM: Remove unused PPI_TO_INTID macro; sort numerically; add ARCH_TIMER_NS_EL2_VIRT_IRQ] Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
9036e917f8
commit
2419ce83fc
35
include/hw/arm/bsa.h
Normal file
35
include/hw/arm/bsa.h
Normal file
@ -0,0 +1,35 @@
|
||||
/*
|
||||
* Common definitions for Arm Base System Architecture (BSA) platforms.
|
||||
*
|
||||
* Copyright (c) 2015 Linaro Limited
|
||||
* Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify it
|
||||
* under the terms and conditions of the GNU General Public License,
|
||||
* version 2 or later, as published by the Free Software Foundation.
|
||||
*
|
||||
* This program is distributed in the hope it will be useful, but WITHOUT
|
||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||
* more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License along with
|
||||
* this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef QEMU_ARM_BSA_H
|
||||
#define QEMU_ARM_BSA_H
|
||||
|
||||
/* These are architectural INTID values */
|
||||
#define VIRTUAL_PMU_IRQ 23
|
||||
#define ARCH_GIC_MAINT_IRQ 25
|
||||
#define ARCH_TIMER_NS_EL2_IRQ 26
|
||||
#define ARCH_TIMER_VIRT_IRQ 27
|
||||
#define ARCH_TIMER_NS_EL2_VIRT_IRQ 28
|
||||
#define ARCH_TIMER_S_EL1_IRQ 29
|
||||
#define ARCH_TIMER_NS_EL1_IRQ 30
|
||||
|
||||
#define INTID_TO_PPI(irq) ((irq) - 16)
|
||||
|
||||
#endif /* QEMU_ARM_BSA_H */
|
@ -34,6 +34,7 @@
|
||||
#include "qemu/notify.h"
|
||||
#include "hw/boards.h"
|
||||
#include "hw/arm/boot.h"
|
||||
#include "hw/arm/bsa.h"
|
||||
#include "hw/block/flash.h"
|
||||
#include "sysemu/kvm.h"
|
||||
#include "hw/intc/arm_gicv3_common.h"
|
||||
@ -43,17 +44,6 @@
|
||||
#define NUM_VIRTIO_TRANSPORTS 32
|
||||
#define NUM_SMMU_IRQS 4
|
||||
|
||||
#define ARCH_GIC_MAINT_IRQ 25
|
||||
|
||||
#define ARCH_TIMER_VIRT_IRQ 27
|
||||
#define ARCH_TIMER_S_EL1_IRQ 29
|
||||
#define ARCH_TIMER_NS_EL1_IRQ 30
|
||||
#define ARCH_TIMER_NS_EL2_IRQ 26
|
||||
|
||||
#define VIRTUAL_PMU_IRQ 23
|
||||
|
||||
#define INTID_TO_PPI(irq) ((irq) - 16)
|
||||
|
||||
/* See Linux kernel arch/arm64/include/asm/pvclock-abi.h */
|
||||
#define PVTIME_SIZE_PER_CPU 64
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user