android_kernel_xiaomi_sdm845/arch/powerpc/sysdev
Robert Jennings 6490c4903d powerpc/pseries: iommu enablement for CMO
To support Cooperative Memory Overcommitment (CMO), we need to check
for failure from some of the tce hcalls.

These changes for the pseries platform affect the powerpc architecture;
patches for the other affected platforms are included in this patch.

pSeries platform IOMMU code changes:
 * platform TCE functions must handle H_NOT_ENOUGH_RESOURCES errors and
   return an error.

Architecture IOMMU code changes:
 * Calls to ppc_md.tce_build need to check return values and return
   DMA_MAPPING_ERROR for transient errors.

Architecture changes:
 * struct machdep_calls for tce_build*_pSeriesLP functions need to change
   to indicate failure.
 * all other platforms will need updates to iommu functions to match the new
   calling semantics; they will return 0 on success.  The other platforms
   default configs have been built, but no further testing was performed.

Signed-off-by: Robert Jennings <rcj@linux.vnet.ibm.com>
Acked-by: Olof Johansson <olof@lixom.net>
Acked-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2008-07-25 15:44:43 +10:00
..
bestcomm powerpc/mpc5200: fix compile warnings in bestcomm driver 2008-07-12 12:10:53 -06:00
qe_lib powerpc: Fix a bunch of sparse warnings in the qe_lib 2008-07-16 17:57:45 -05:00
6xx-suspend.S [POWERPC] Add 6xx-style HID0_SLEEP support. 2008-05-16 23:22:28 +10:00
axonram.c powerpc/axonram: Enable partitioning of the Axons DDR2 DIMMs 2008-07-22 10:39:31 +10:00
cpm1.c powerpc: Fix irq_alloc_host() reference counting and callers 2008-06-09 13:51:16 +10:00
cpm2_pic.c powerpc: Fix irq_alloc_host() reference counting and callers 2008-06-09 13:51:16 +10:00
cpm2_pic.h [POWERPC] cpm2: CPM2 interrupt controller fix 2007-02-07 14:03:20 +11:00
cpm2.c [POWERPC] CPM: Always use new binding. 2008-04-17 01:01:40 -05:00
cpm_common.c powerpc/CPM: Minor cosmetic changes to udbg_putc 2008-07-14 07:55:35 -05:00
dart_iommu.c powerpc/pseries: iommu enablement for CMO 2008-07-25 15:44:43 +10:00
dart.h [POWERPC] Use 4kB iommu pages even on 64kB-page systems 2006-11-01 14:52:48 +11:00
dcr-low.S [POWERPC] Generic DCR infrastructure 2006-12-04 16:08:25 +11:00
dcr.c [POWERPC] 4xx: Fix compiler warning on DCR_NATIVE only builds 2008-05-29 07:06:56 -05:00
fsl_gtm.c powerpc/sysdev: implement FSL GTM support 2008-06-10 10:38:50 -05:00
fsl_lbc.c [POWERPC] fsl_lbc: implement few UPM routines 2008-04-17 01:01:38 -05:00
fsl_msi.c [POWERPC] fsl_msi: few (mostly cosmetic) fixes 2008-06-02 14:44:25 -05:00
fsl_msi.h [POWERPC] fsl: PCIe MSI support for 83xx/85xx/86xx processors. 2008-06-02 14:44:24 -05:00
fsl_pci.c powerpc: Move mpc83xx_add_bridge to fsl_pci.c 2008-07-16 17:57:35 -05:00
fsl_pci.h powerpc: Move mpc83xx_add_bridge to fsl_pci.c 2008-07-16 17:57:35 -05:00
fsl_rio.c [RAPIDIO] fix current kernel-doc notation 2008-05-01 23:01:54 -05:00
fsl_soc.c gianfar: Add magic packet and suspend/resume support. 2008-07-16 17:57:47 -05:00
fsl_soc.h powerpc/mpc83xx: Power Management support 2008-07-16 17:57:30 -05:00
grackle.c [POWERPC] pci32: Add flags modifying the PCI code behaviour 2007-12-20 16:18:07 +11:00
i8259.c powerpc: Fix irq_alloc_host() reference counting and callers 2008-06-09 13:51:16 +10:00
indirect_pci.c powerpc/4xx: Workaround for PPC440EPx/GRx PCI_28 Errata 2008-06-17 19:01:38 -04:00
ipic.c powerpc/mpc83xx: Power Management support 2008-07-16 17:57:30 -05:00
ipic.h [POWERPC] ipic: ack only for edge interrupts 2007-12-12 01:53:07 -06:00
Kconfig [POWERPC] 4xx: PLB to PCI Express support 2007-12-23 13:12:34 -06:00
Makefile powerpc/QE: switch to the cpm_muram implementation 2008-06-10 11:11:21 -05:00
micropatch.c [POWERPC] CPM: Rename commproc to cpm1 and cpm2_common.c to cpm2.c 2008-01-28 08:31:05 -06:00
mmio_nvram.c [POWERPC] arch/powerpc/: Spelling fixes 2007-12-20 16:15:51 +11:00
mpc8xx_pic.c [POWERPC] arch/powerpc/sysdev: Add missing of_node_put 2008-02-06 22:06:59 +11:00
mpc8xx_pic.h [POWERPC] 8xx: mpc885ads pcmcia support 2007-07-10 00:33:51 -05:00
mpic_msi.c [POWERPC] sysdev/mpic_msi.c should include sysdev/mpic.h 2008-05-14 22:31:50 +10:00
mpic_pasemi_msi.c [POWERPC] mpic_pasemi_msi: Failed allocation unnoticed 2008-05-14 22:31:20 +10:00
mpic_u3msi.c [POWERPC] mpic_u3msi: Failed allocation unnoticed 2008-05-14 22:31:25 +10:00
mpic.c Merge commit 'origin/master' 2008-07-16 11:07:59 +10:00
mpic.h [POWERPC] pasemi: Implement NMI support 2007-12-28 09:22:24 -06:00
mv64x60_dev.c [POWERPC] Create of_buses for MV64x60 devices 2008-05-14 22:31:41 +10:00
mv64x60_pci.c [POWERPC] mv64x60: Fix FDT compatible names: mv64x60 => mv64360 2008-04-15 21:21:24 +10:00
mv64x60_pic.c [POWERPC] mv64x60: Fix FDT compatible names: mv64x60 => mv64360 2008-04-15 21:21:24 +10:00
mv64x60_udbg.c [POWERPC] Fix mv64x60 early console code to use cell-index property 2008-04-24 20:57:34 +10:00
mv64x60.h [POWERPC] Add Marvell mv64x60 udbg putc/getc functions 2007-09-22 14:49:21 +10:00
of_rtc.c [POWERPC] Enable RTC for Ebony and Walnut (v2) 2008-01-25 07:07:26 -06:00
pmi.c [POWERPC] Clean out asm/of_{platform, device}.h from sysdev/ 2007-12-06 14:44:30 +11:00
ppc4xx_pci.c powerpc/4xx: Workaround for PPC440EPx/GRx PCI_28 Errata 2008-06-17 19:01:38 -04:00
ppc4xx_pci.h [POWERPC] 4xx: Add 460EX PCIe support to 4xx pci driver 2008-03-26 07:19:16 -05:00
ppc4xx_soc.c [POWERPC] 4xx: Create common ppc4xx_reset_system() in ppc4xx_soc.c 2008-04-02 20:44:56 -05:00
rtc_cmos_setup.c [POWERPC] Add MODULE_LICENSE to powerpc/sysdev/rtc_cmos_setup.c 2008-04-17 07:46:12 +10:00
tsi108_dev.c [POWERPC] Replace remaining __FUNCTION__ occurrences 2008-04-01 20:43:09 +11:00
tsi108_pci.c powerpc: Fix irq_alloc_host() reference counting and callers 2008-06-09 13:51:16 +10:00
uic.c powerpc: Fix irq_alloc_host() reference counting and callers 2008-06-09 13:51:16 +10:00
xilinx_intc.c [POWERPC] Xilinx: Fix compile warnings 2008-05-01 23:09:42 -05:00