mbox series

[00/10] hw/intc/loongarch_extioi: Split into extioi common and extioi

Message ID 20240920090507.2692125-1-maobibo@loongson.cn
Headers show
Series hw/intc/loongarch_extioi: Split into extioi common and extioi | expand

Message

Bibo Mao Sept. 20, 2024, 9:04 a.m. UTC
In order to support irqchip_in_kenrel method, split loongarch extioi
emulation driver into two parts, extioi common and extioi TCG driver.
LoongArch extioi common driver includes vmstate and property interface,
also vmstate load and store interface is defined in extioi common driver.

In future LoongArch extioi kvm driver can inherit from extioi common
driver.

Bibo Mao (10):
  include: Add loongarch_extioi_common header file
  include: Move struct LoongArchExtIOI to header file
    loongarch_extioi_common
  include: Rename LoongArchExtIOI with LoongArchExtIOICommonState
  hw/intc/loongarch_extioi: Rename LoongArchExtIOI with
    LoongArchExtIOICommonState
  hw/intc/loongarch_extioi: Add common realize interface
  hw/intc/loongarch_extioi: Add unrealize interface
  hw/intc/loongarch_extioi: Add common file loongarch_extioi_common
  hw/intc/loongarch_extioi: Inherit from loongarch_extioi_common
  hw/intc/loongarch_extioi: Add pre_save interface
  hw/intc/loongarch_extioi: Code cleanup about loongarch_extioi

 hw/intc/loongarch_extioi.c                | 110 +++++++--------------
 hw/intc/loongarch_extioi_common.c         | 113 ++++++++++++++++++++++
 hw/intc/meson.build                       |   2 +-
 include/hw/intc/loongarch_extioi.h        |  84 +++-------------
 include/hw/intc/loongarch_extioi_common.h |  99 +++++++++++++++++++
 5 files changed, 259 insertions(+), 149 deletions(-)
 create mode 100644 hw/intc/loongarch_extioi_common.c
 create mode 100644 include/hw/intc/loongarch_extioi_common.h


base-commit: 01dc65a3bc262ab1bec8fe89775e9bbfa627becb