1b4a12dfcSJiaxun Yang /* SPDX-License-Identifier: GPL-2.0-or-later */ 2b4a12dfcSJiaxun Yang /* 3b4a12dfcSJiaxun Yang * Loongson ipi interrupt header files 4b4a12dfcSJiaxun Yang * 5b4a12dfcSJiaxun Yang * Copyright (C) 2021 Loongson Technology Corporation Limited 6b4a12dfcSJiaxun Yang */ 7b4a12dfcSJiaxun Yang 8b4a12dfcSJiaxun Yang #ifndef HW_LOONGSON_IPI_H 9b4a12dfcSJiaxun Yang #define HW_LOONGSON_IPI_H 10b4a12dfcSJiaxun Yang 117e555781SBibo Mao #include "qom/object.h" 127e555781SBibo Mao #include "hw/intc/loongson_ipi_common.h" 13b4a12dfcSJiaxun Yang #include "hw/sysbus.h" 14b4a12dfcSJiaxun Yang 15b4a12dfcSJiaxun Yang #define TYPE_LOONGSON_IPI "loongson_ipi" 167e555781SBibo Mao OBJECT_DECLARE_TYPE(LoongsonIPIState, LoongsonIPIClass, LOONGSON_IPI) 17b4a12dfcSJiaxun Yang 187e555781SBibo Mao struct LoongsonIPIClass { 197e555781SBibo Mao LoongsonIPICommonClass parent_class; 207e555781SBibo Mao 217e555781SBibo Mao DeviceRealize parent_realize; 227e555781SBibo Mao DeviceUnrealize parent_unrealize; 237e555781SBibo Mao }; 247e555781SBibo Mao 2540a0815eSBibo Mao struct LoongsonIPIState { 267e555781SBibo Mao LoongsonIPICommonState parent_obj; 277e555781SBibo Mao 28*a022e0deSBibo Mao MemoryRegion *ipi_mmio_mem; 29b4a12dfcSJiaxun Yang }; 30b4a12dfcSJiaxun Yang 31b4a12dfcSJiaxun Yang #endif 32