All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 0/8] guest exploitation of the XIVE interrupt controller
@ 2017-08-30 19:46 Cédric Le Goater
  2017-08-30 19:46 ` [PATCH v3 1/8] powerpc/xive: introduce a common routine xive_queue_page_alloc() Cédric Le Goater
                   ` (7 more replies)
  0 siblings, 8 replies; 17+ messages in thread
From: Cédric Le Goater @ 2017-08-30 19:46 UTC (permalink / raw)
  To: linuxppc-dev
  Cc: Benjamin Herrenschmidt, Michael Ellerman, Paul Mackerras,
	David Gibson, Cédric Le Goater

Hello,

On a POWER9 sPAPR machine, the Client Architecture Support (CAS)
negotiation process determines whether the guest operates with an
interrupt controller using the legacy model, as found on POWER8, or in
XIVE exploitation mode, the newer POWER9 interrupt model. This
patchset is the latest proposal to add XIVE support in the sPAPR
machine.

Tested with a QEMU XIVE model for sPAPR machine and with the Power
hypervisor.

Code is here:

  https://github.com/legoater/linux/commits/xive
  https://github.com/legoater/qemu/commits/xive       

Thanks,

C.

Changes since v2 :

 - changed H_INT_SYNC hcall to reflect new api from the specs
 - added some Reviewed-by's

Changes since v1 :

 - introduced a common subroutine xive_queue_page_alloc()
 - introduced a xive_teardown_cpu() routine
 - removed P9 doorbell support when xive is enabled.
 - fixed xive_esb_read() naming
 - fixed XIVE mode parsing in CAS (just got the final specs)

Changes since RFC :

 - renamed backend to 'spapr'
 - fixed hotplug support
 - fixed kexec support
 - fixed src_chip value (XIVE_INVALID_CHIP_ID)
 - added doorbell support
 - added some debug logs
 - added  H_INT_ESB hcall
 - took into account '/ibm,plat-res-int-priorities'
 - fixed WARNING in xive_find_target_in_mask()

Cédric Le Goater (8):
  powerpc/xive: introduce a common routine xive_queue_page_alloc()
  powerpc/xive: guest exploitation of the XIVE interrupt controller
  powerpc/xive: rename xive_poke_esb() in xive_esb_read()
  powerpc/xive: introduce xive_esb_write()
  powerpc/xive: add the HW IRQ number under xive_irq_data
  powerpc/xive: introduce H_INT_ESB hcall
  powerpc/xive: add XIVE Exploitation Mode to CAS
  powerpc/xive: improve debugging macros

 arch/powerpc/include/asm/hvcall.h            |  13 +-
 arch/powerpc/include/asm/prom.h              |   5 +-
 arch/powerpc/include/asm/xive.h              |   5 +
 arch/powerpc/kernel/prom_init.c              |  34 +-
 arch/powerpc/platforms/pseries/Kconfig       |   1 +
 arch/powerpc/platforms/pseries/hotplug-cpu.c |  11 +-
 arch/powerpc/platforms/pseries/kexec.c       |   6 +-
 arch/powerpc/platforms/pseries/setup.c       |   8 +-
 arch/powerpc/platforms/pseries/smp.c         |  27 +-
 arch/powerpc/sysdev/xive/Kconfig             |   5 +
 arch/powerpc/sysdev/xive/Makefile            |   1 +
 arch/powerpc/sysdev/xive/common.c            |  76 ++-
 arch/powerpc/sysdev/xive/native.c            |  18 +-
 arch/powerpc/sysdev/xive/spapr.c             | 662 +++++++++++++++++++++++++++
 arch/powerpc/sysdev/xive/xive-internal.h     |   7 +
 15 files changed, 844 insertions(+), 35 deletions(-)
 create mode 100644 arch/powerpc/sysdev/xive/spapr.c

-- 
2.13.5

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

end of thread, other threads:[~2017-09-06 10:55 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-08-30 19:46 [PATCH v3 0/8] guest exploitation of the XIVE interrupt controller Cédric Le Goater
2017-08-30 19:46 ` [PATCH v3 1/8] powerpc/xive: introduce a common routine xive_queue_page_alloc() Cédric Le Goater
2017-09-01  5:26   ` Benjamin Herrenschmidt
2017-09-06 10:55   ` [v3, " Michael Ellerman
2017-08-30 19:46 ` [PATCH v3 2/8] powerpc/xive: guest exploitation of the XIVE interrupt controller Cédric Le Goater
2017-09-01  5:29   ` Benjamin Herrenschmidt
2017-08-30 19:46 ` [PATCH v3 3/8] powerpc/xive: rename xive_poke_esb() in xive_esb_read() Cédric Le Goater
2017-09-01  5:30   ` Benjamin Herrenschmidt
2017-08-30 19:46 ` [PATCH v3 4/8] powerpc/xive: introduce xive_esb_write() Cédric Le Goater
2017-09-01  5:31   ` Benjamin Herrenschmidt
2017-08-30 19:46 ` [PATCH v3 5/8] powerpc/xive: add the HW IRQ number under xive_irq_data Cédric Le Goater
2017-09-01  5:34   ` Benjamin Herrenschmidt
2017-08-30 19:46 ` [PATCH v3 6/8] powerpc/xive: introduce H_INT_ESB hcall Cédric Le Goater
2017-09-01  6:01   ` Benjamin Herrenschmidt
2017-08-30 19:46 ` [PATCH v3 7/8] powerpc/xive: add XIVE Exploitation Mode to CAS Cédric Le Goater
2017-08-30 19:46 ` [PATCH v3 8/8] powerpc/xive: improve debugging macros Cédric Le Goater
2017-09-01  5:43   ` Benjamin Herrenschmidt

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.