qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/4] Reconstruct loongson ipi driver
@ 2024-07-04  3:37 Bibo Mao
  2024-07-04  3:37 ` [PATCH v2 1/4] hw/intc/loongson_ipi_common: Add loongson ipi common class Bibo Mao
                   ` (5 more replies)
  0 siblings, 6 replies; 17+ messages in thread
From: Bibo Mao @ 2024-07-04  3:37 UTC (permalink / raw)
  To: Paolo Bonzini, Jiaxun Yang, Philippe Mathieu-Daudé, Song Gao
  Cc: qemu-devel

Now loongson ipi and loongarch ipi share the same code with different
macro, loongson ipi has its separate function such mmio region,
loongarch ipi has other requirement such as irqchip in kernel.

Interrupt irqchip has strong relationship with architecture, since
it sends irq to vcpu and interfaces to get irqchip register is also
architecture specific. 

Here like other architectures, base class TYPE_LOONGSON_IPI_COMMON
is added, it comes from loongson ipi mostly. And it defined four abstract
interfaces which can be used for MIPS 3A4000 and Loongarch 3A5000 machine,
also can be used for 3A5000 irqchip in kernel mode soon.

Also Loongarch ipi and loongson ipi device are added here, it inherits
from base class TYPE_LOONGSON_IPI_COMMON. Loongarch ipi is tested,
loongson ipi device only passes to compile and make check, it is not
tested.

Bibo Mao (4):
  hw/intc/loongson_ipi_common: Add loongson ipi common class
  hw/intc/loongarch_ipi: Add loongarch ipi support
  hw/loongarch/virt: Replace loongson ipi with loongarch ipi
  hw/intc/loongson_ipi: reconstruct driver inherit from common class

 hw/intc/Kconfig                       |   3 +
 hw/intc/loongarch_ipi.c               |  80 ++++++
 hw/intc/loongson_ipi.c                | 330 ++-------------------
 hw/intc/loongson_ipi_common.c         | 394 ++++++++++++++++++++++++++
 hw/intc/meson.build                   |   3 +-
 hw/loongarch/Kconfig                  |   2 +-
 hw/loongarch/virt.c                   |   4 +-
 include/hw/intc/loongarch_ipi.h       |  33 +++
 include/hw/intc/loongson_ipi.h        |  54 ++--
 include/hw/intc/loongson_ipi_common.h |  77 +++++
 include/hw/loongarch/virt.h           |   1 -
 11 files changed, 632 insertions(+), 349 deletions(-)
 create mode 100644 hw/intc/loongarch_ipi.c
 create mode 100644 hw/intc/loongson_ipi_common.c
 create mode 100644 include/hw/intc/loongarch_ipi.h
 create mode 100644 include/hw/intc/loongson_ipi_common.h


base-commit: 6746482d12da3b6e4d3cdf06481a0027a797f719
-- 
2.39.3



^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2024-07-17 21:42 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-04  3:37 [PATCH v2 0/4] Reconstruct loongson ipi driver Bibo Mao
2024-07-04  3:37 ` [PATCH v2 1/4] hw/intc/loongson_ipi_common: Add loongson ipi common class Bibo Mao
2024-07-15 15:31   ` Philippe Mathieu-Daudé
2024-07-16  1:11     ` maobibo
2024-07-04  3:38 ` [PATCH v2 2/4] hw/intc/loongarch_ipi: Add loongarch ipi support Bibo Mao
2024-07-04  3:38 ` [PATCH v2 3/4] hw/loongarch/virt: Replace loongson ipi with loongarch ipi Bibo Mao
2024-07-04  3:38 ` [PATCH v2 4/4] hw/intc/loongson_ipi: reconstruct driver inherit from common class Bibo Mao
2024-07-09 12:04 ` [PATCH v2 0/4] Reconstruct loongson ipi driver maobibo
2024-07-10  4:00   ` Jiaxun Yang
2024-07-10  6:08     ` maobibo
2024-07-15 15:17 ` Philippe Mathieu-Daudé
2024-07-16  1:04   ` maobibo
2024-07-16  1:29     ` maobibo
2024-07-16  6:40       ` Philippe Mathieu-Daudé
2024-07-17  9:22         ` maobibo
2024-07-17 11:53           ` Jiaxun Yang
2024-07-17 21:41             ` Philippe Mathieu-Daudé

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).