kernel-ark/arch/powerpc/platforms/pseries
Milton Miller 8d3d589a79 powerpc/pseries: Software invalidatation of TCEs
Some pseries IOMMUs cache TCEs but don't snoop when the TCEs are changed
in memory, hence we need manually invalidate in software.

This adds code to do the invalidate.  It keys off a device tree property
to say where the to do the MMIO for the invalidate and some information
on what the format of the invalidate including some magic routing info.

it_busno get overloaded with this magic routing info and it_index with
the MMIO address for the invalidate command.

This then gets hooked into the building and freeing of TCEs.

This is only useful on bare metal pseries.  pHyp takes care of this when
virtualised.

Based on patch from Milton with cleanups from Mikey.

Signed-off-by: Milton Miller <miltonm@bga.com>
Signed-off-by: Michael Neuling <mikey@neuling.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2011-11-25 14:11:26 +11:00
..
cmm.c powerpc/pseries: Cleanup use of notifier_from_errno() 2011-03-02 16:50:06 +11:00
dlpar.c powerpc/pseries: Avoid spurious error during hotplug CPU add 2011-09-20 09:20:00 +10:00
dtl.c powerpc/pseries: Fix kexec on recent firmware versions 2011-08-05 14:47:57 +10:00
eeh_cache.c atomic: use <linux/atomic.h> 2011-07-26 16:49:47 -07:00
eeh_driver.c powerpc/eeh: Display eeh error location for bus and device 2011-05-06 13:32:31 +10:00
eeh_event.c powerpc: Fix up implicit sched.h users 2011-10-31 19:30:40 -04:00
eeh_sysfs.c powerpc: Fix up implicit stat.h users 2011-10-31 19:30:39 -04:00
eeh.c Merge branch 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux 2011-11-06 19:44:47 -08:00
event_sources.c powerpc/pseries: Add WARN_ON() to request_event_sources_irqs() on irq allocation/request failure 2010-07-09 11:28:32 +10:00
firmware.c powerpc: Add VPHN firmware feature 2010-11-29 15:48:22 +11:00
hotplug-cpu.c powerpc: Fix up implicit sched.h users 2011-10-31 19:30:40 -04:00
hotplug-memory.c Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc 2011-07-25 22:59:39 -07:00
hvCall_inst.c powerpc: remove cast from void* 2010-11-03 10:23:26 -04:00
hvCall.S powerpc: Remove second definition of STACK_FRAME_OVERHEAD 2010-11-29 15:48:23 +11:00
hvconsole.c powerpc: convert hvconsole.c to export.h ; fix implicit use of errno.h 2011-10-31 19:30:43 -04:00
hvcserver.c
io_event_irq.c powerpc: various straight conversions from module.h --> export.h 2011-10-31 19:30:44 -04:00
iommu.c powerpc/pseries: Software invalidatation of TCEs 2011-11-25 14:11:26 +11:00
Kconfig powerpc/nvram: Add compression to fit more oops output into NVRAM 2011-09-20 09:19:46 +10:00
kexec.c powerpc/pseries: Simplify vpa deregistration functions 2011-08-05 14:47:58 +10:00
lpar.c powerpc: add export.h to files making use of EXPORT_SYMBOL 2011-10-31 19:30:37 -04:00
Makefile powerpc/pseries: Add support for IO event interrupts 2011-05-06 13:19:01 +10:00
mobility.c powerpc: Fix up implicit stat.h users 2011-10-31 19:30:39 -04:00
msi.c powerpc: Convert to new irq_* function names 2011-03-29 14:48:12 +02:00
nvram.c powerpc/nvram: Add compression to fit more oops output into NVRAM 2011-09-20 09:19:46 +10:00
offline_states.h powerpc/smp: soft-replugged CPUs must go back to start_secondary 2011-04-01 15:37:09 +11:00
pci_dlpar.c powerpc: include export.h for files using EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:30:38 -04:00
pci.c
phyp_dump.c lmb: rename to memblock 2010-07-14 17:14:00 +10:00
plpar_wrappers.h powerpc: fix two implicit header uses in pseries/plpar_wrappers.h 2011-10-31 19:30:42 -04:00
power.c [POWERPC] Fix warning in pseries/power.c 2008-02-20 13:33:37 +11:00
pseries_energy.c powerpc: Add support for new hcall H_BEST_ENERGY 2010-11-29 15:48:19 +11:00
pseries.h powerpc/pseries: Re-implement HVSI as part of hvc_vio 2011-06-29 17:48:35 +10:00
ras.c powerpc/pseries: Print corrupt r3 in FWNMI code 2011-05-19 14:30:43 +10:00
reconfig.c powerpc/pseries: Improve error code on reconfiguration notifier failure 2011-06-29 17:48:24 +10:00
scanlog.c llseek: automatically add .llseek fop 2010-10-15 15:53:27 +02:00
setup.c powerpc: various straight conversions from module.h --> export.h 2011-10-31 19:30:44 -04:00
smp.c powerpc: remove non-required uses of include <linux/module.h> 2011-10-31 19:30:44 -04:00
suspend.c powerpc: Fix up implicit stat.h users 2011-10-31 19:30:39 -04:00