c403d5ff93
Loongarch IPI is added here, it inherits from class TYPE_LOONGSON_IPI_COMMON, and two interfaces get_iocsr_as() and cpu_by_arch_id() are added for Loongarch 3A5000 machine. It can be used when ipi is emulated in userspace with KVM mode. Signed-off-by: Bibo Mao <maobibo@loongson.cn> [PMD: Rebased and simplified] Co-Developed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Reviewed-by: Bibo Mao <maobibo@loongson.cn> Tested-by: Bibo Mao <maobibo@loongson.cn> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> Acked-by: Song Gao <gaosong@loongson.cn> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Jiaxun Yang <jiaxun.yang@flygoat.com> Tested-by: Jiaxun Yang <jiaxun.yang@flygoat.com> Message-Id: <20240805180622.21001-13-philmd@linaro.org>
26 lines
549 B
C
26 lines
549 B
C
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
|
/*
|
|
* LoongArch IPI interrupt header files
|
|
*
|
|
* Copyright (C) 2024 Loongson Technology Corporation Limited
|
|
*/
|
|
|
|
#ifndef HW_LOONGARCH_IPI_H
|
|
#define HW_LOONGARCH_IPI_H
|
|
|
|
#include "qom/object.h"
|
|
#include "hw/intc/loongson_ipi_common.h"
|
|
|
|
#define TYPE_LOONGARCH_IPI "loongarch_ipi"
|
|
OBJECT_DECLARE_TYPE(LoongarchIPIState, LoongarchIPIClass, LOONGARCH_IPI)
|
|
|
|
struct LoongarchIPIState {
|
|
LoongsonIPICommonState parent_obj;
|
|
};
|
|
|
|
struct LoongarchIPIClass {
|
|
LoongsonIPICommonClass parent_class;
|
|
};
|
|
|
|
#endif
|