powerpc/xics: Rewrite XICS driver
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>
Mon, 4 Apr 2011 03:46:58 +0000 (13:46 +1000)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Wed, 20 Apr 2011 01:02:35 +0000 (11:02 +1000)
commit0b05ac6e24807f0c26f763b3a546c0bcbf84125f
tree9c1a113a050583e564dcd78a7aa80fde6320d8e1
parentf0e615c3cb72b42191b558c130409335812621d8
powerpc/xics: Rewrite XICS driver

This is a significant rework of the XICS driver, too significant to
conveniently break it up into a series of smaller patches to be honest.

The driver is moved to a more generic location to allow new platforms
to use it, and is broken up into separate ICP and ICS "backends". For
now we have the native and "hypervisor" ICP backends and one common
RTAS ICS backend.

The driver supports one ICP backend instanciation, and many ICS ones,
in order to accomodate future platforms with multiple possibly different
interrupt "sources" mechanisms.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
19 files changed:
arch/powerpc/include/asm/irq.h
arch/powerpc/include/asm/xics.h [new file with mode: 0644]
arch/powerpc/platforms/pseries/Kconfig
arch/powerpc/platforms/pseries/Makefile
arch/powerpc/platforms/pseries/hotplug-cpu.c
arch/powerpc/platforms/pseries/kexec.c
arch/powerpc/platforms/pseries/plpar_wrappers.h
arch/powerpc/platforms/pseries/setup.c
arch/powerpc/platforms/pseries/smp.c
arch/powerpc/platforms/pseries/xics.c [deleted file]
arch/powerpc/platforms/pseries/xics.h [deleted file]
arch/powerpc/sysdev/Kconfig
arch/powerpc/sysdev/Makefile
arch/powerpc/sysdev/xics/Kconfig [new file with mode: 0644]
arch/powerpc/sysdev/xics/Makefile [new file with mode: 0644]
arch/powerpc/sysdev/xics/icp-hv.c [new file with mode: 0644]
arch/powerpc/sysdev/xics/icp-native.c [new file with mode: 0644]
arch/powerpc/sysdev/xics/ics-rtas.c [new file with mode: 0644]
arch/powerpc/sysdev/xics/xics-common.c [new file with mode: 0644]