linux_dsm_epyc7002/arch/powerpc/include/asm
Michael Ellerman 43c6494fa1 powerpc/io: Fix the IO workarounds code to work with Radix
Back in 2006 Ben added some workarounds for a misbehaviour in the
Spider IO bridge used on early Cell machines, see commit
014da7ff47 ("[POWERPC] Cell "Spider" MMIO workarounds"). Later these
were made to be generic, ie. not tied specifically to Spider.

The code stashes a token in the high bits (59-48) of virtual addresses
used for IO (eg. returned from ioremap()). This works fine when using
the Hash MMU, but when we're using the Radix MMU the bits used for the
token overlap with some of the bits of the virtual address.

This is because the maximum virtual address is larger with Radix, up
to c00fffffffffffff, and in fact we use that high part of the address
range for ioremap(), see RADIX_KERN_IO_START.

As it happens the bits that are used overlap with the bits that
differentiate an IO address vs a linear map address. If the resulting
address lies outside the linear mapping we will crash (see below), if
not we just corrupt memory.

  virtio-pci 0000:00:00.0: Using 64-bit direct DMA at offset 800000000000000
  Unable to handle kernel paging request for data at address 0xc000000080000014
  ...
  CFAR: c000000000626b98 DAR: c000000080000014 DSISR: 42000000 IRQMASK: 0
  GPR00: c0000000006c54fc c00000003e523378 c0000000016de600 0000000000000000
  GPR04: c00c000080000014 0000000000000007 0fffffff000affff 0000000000000030
         ^^^^
  ...
  NIP [c000000000626c5c] .iowrite8+0xec/0x100
  LR [c0000000006c992c] .vp_reset+0x2c/0x90
  Call Trace:
    .pci_bus_read_config_dword+0xc4/0x120 (unreliable)
    .register_virtio_device+0x13c/0x1c0
    .virtio_pci_probe+0x148/0x1f0
    .local_pci_probe+0x68/0x140
    .pci_device_probe+0x164/0x220
    .really_probe+0x274/0x3b0
    .driver_probe_device+0x80/0x170
    .__driver_attach+0x14c/0x150
    .bus_for_each_dev+0xb8/0x130
    .driver_attach+0x34/0x50
    .bus_add_driver+0x178/0x2f0
    .driver_register+0x90/0x1a0
    .__pci_register_driver+0x6c/0x90
    .virtio_pci_driver_init+0x2c/0x40
    .do_one_initcall+0x64/0x280
    .kernel_init_freeable+0x36c/0x474
    .kernel_init+0x24/0x160
    .ret_from_kernel_thread+0x58/0x7c

This hasn't been a problem because CONFIG_PPC_IO_WORKAROUNDS which
enables this code is usually not enabled. It is only enabled when it's
selected by PPC_CELL_NATIVE which is only selected by
PPC_IBM_CELL_BLADE and that in turn depends on BIG_ENDIAN. So in order
to hit the bug you need to build a big endian kernel, with IBM Cell
Blade support enabled, as well as Radix MMU support, and then boot
that on Power9 using Radix MMU.

Still we can fix the bug, so let's do that. We simply use fewer bits
for the token, taking the union of the restrictions on the address
from both Hash and Radix, we end up with 8 bits we can use for the
token. The only user of the token is iowa_mem_find_bus() which only
supports 8 token values, so 8 bits is plenty for that.

Fixes: 566ca99af0 ("powerpc/mm/radix: Add dummy radix_enabled()")
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
2018-11-12 13:22:10 +11:00
..
book3s Merge branch 'xarray' of git://git.infradead.org/users/willy/linux-dax 2018-10-28 11:35:40 -07:00
nohash Merge branch 'xarray' of git://git.infradead.org/users/willy/linux-dax 2018-10-28 11:35:40 -07:00
8xx_immap.h
accounting.h powerpc/time: Only set CONFIG_ARCH_HAS_SCALED_CPUTIME on PPC64 2018-10-20 13:26:47 +11:00
agp.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
archrandom.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
asm-405.h powerpc/405: move PPC405_ERR77 in asm-405.h 2018-07-30 22:48:13 +10:00
asm-compat.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
asm-const.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
asm-offsets.h
asm-prototypes.h powerpc updates for 4.20 2018-10-26 14:36:21 -07:00
async_tx.h
atomic.h powerpc updates for 4.19 2018-08-17 11:32:50 -07:00
backlight.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
barrier.h powerpc/fsl: Add barrier_nospec implementation for NXP PowerPC Book3E 2018-08-08 00:32:24 +10:00
bitops.h powerpc/405: move PPC405_ERR77 in asm-405.h 2018-07-30 22:48:13 +10:00
bootx.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
btext.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
bug.h signal/powerpc: Specialize _exception_pkey for handling pkey exceptions 2018-09-21 15:52:43 +02:00
bugs.h
cache.h powerpc/lib: Adjust .balign inside string functions for PPC32 2018-06-04 00:39:19 +10:00
cacheflush.h powerpc: remove unneeded inclusions of cpu_has_feature.h 2018-07-30 22:47:54 +10:00
cell-pmu.h
cell-regs.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
checksum.h powerpc: Implement csum_ipv6_magic in assembly 2018-06-04 00:39:19 +10:00
cmpxchg.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
code-patching-asm.h powerpc/asm: Add a patch_site macro & helpers for patching instructions 2018-08-08 00:32:25 +10:00
code-patching.h powerpc/code-patching: Add a helper to get the address of a patch_site 2018-10-26 21:58:58 +11:00
compat.h asm-generic: Move common compat types to asm-generic/compat.h 2018-08-29 15:42:20 +02:00
context_tracking.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
copro.h mm: convert return type of handle_mm_fault() caller to vm_fault_t 2018-08-17 16:20:28 -07:00
cpm1.h powerpc/sysdev: change CPM GPIO to platform_device 2018-01-20 23:29:02 -06:00
cpm2.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
cpm.h powerpc/sysdev: change CPM GPIO to platform_device 2018-01-20 23:29:02 -06:00
cpu_has_feature.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
cpufeature.h powerpc: Add module autoloading based on CPU features 2016-07-21 20:33:57 +10:00
cpuidle.h powernv/cpuidle: Use parsed device tree values for cpuidle_init 2018-07-31 19:56:44 +10:00
cputable.h powerpc: clean inclusions of asm/feature-fixups.h 2018-07-30 22:48:17 +10:00
cputhreads.h powerpc: Detect the presence of big-cores via "ibm, thread-groups" 2018-10-13 22:21:25 +11:00
cputime.h powerpc/time: Only set CONFIG_ARCH_HAS_SCALED_CPUTIME on PPC64 2018-10-20 13:26:47 +11:00
current.h
dbdma.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
dbell.h powerpc: clean inclusions of asm/feature-fixups.h 2018-07-30 22:48:17 +10:00
dcr-generic.h
dcr-mmio.h
dcr-native.h powerpc: clean the inclusion of stringify.h 2018-07-30 22:48:17 +10:00
dcr-regs.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
dcr.h
debug.h powerpc: declare set_breakpoint() static 2018-07-30 22:48:18 +10:00
debugfs.h powerpc: Create asm/debugfs.h and move powerpc_debugfs_root there 2017-04-11 07:46:03 +10:00
delay.h powerpc: use spin loop primitives in some functions 2017-07-02 20:40:24 +10:00
device.h treewide: Move dma_ops from struct dev_archdata into struct device 2017-01-24 12:23:35 -05:00
disassemble.h KVM: PPC: Book3S: Add MMIO emulation for FP and VSX instructions 2017-04-20 11:36:41 +10:00
dma-direct.h dma/direct: Handle the memory encryption bit in common code 2018-03-20 10:01:59 +01:00
dma-mapping.h powerpc: rename dma_direct_ to dma_nommu_ 2018-01-10 16:41:14 +01:00
dma.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
drmem.h powerpc/pseries/memory-hotplug: Only update DT once per memory DLPAR request 2018-09-19 22:08:12 +10:00
dt_cpu_ftrs.h powerpc: clean inclusions of asm/feature-fixups.h 2018-07-30 22:48:17 +10:00
edac.h
eeh_event.h powerpc/eeh: Manage EEH_PE_RECOVERING inside eeh_handle_normal_event() 2018-03-27 23:44:58 +11:00
eeh.h powerpc/eeh: Cleanup eeh_ops.wait_state() 2018-10-13 22:21:25 +11:00
ehv_pic.h
elf.h powerpc: move ELF_ET_DYN_BASE to 4GB / 4MB 2017-07-10 16:32:36 -07:00
emergency-restart.h
emulated_ops.h powerpc/64s: Add workaround for P9 vector CI load issue 2017-09-27 08:23:22 +10:00
epapr_hcalls.h powerpc/epapr: Move register keyword at the beginning of declaration 2018-03-13 15:50:32 +11:00
error-injection.h powerpc: Add support for function error injection 2018-10-20 13:26:43 +11:00
exception-64e.h powerpc/64: Add macros for annotating the destination of rfid/hrfid 2018-01-10 03:07:30 +11:00
exception-64s.h powerpc/64s/hash: Convert SLB miss handlers to C 2018-10-14 18:04:09 +11:00
exec.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
extable.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
fadump.h powerpc/fadump: handle crash memory ranges array index overflow 2018-08-10 22:12:34 +10:00
fb.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
feature-fixups.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
firmware.h powerpc/pseries: PAPR persistent memory support 2018-10-19 00:56:17 +11:00
fixmap.h powerpc: handover page flags with a pgprot_t parameter 2018-10-14 18:04:09 +11:00
floppy.h floppy: consolidate the dummy fd_cacheflush definition 2017-10-19 16:37:08 +02:00
fs_pd.h powerpc/8xx: Getting rid of remaining use of CONFIG_8xx 2017-08-10 23:32:12 +10:00
fsl_85xx_cache_sram.h
fsl_gtm.h
fsl_hcalls.h scripts/spelling.txt: add "partiton" pattern and fix typo instances 2017-02-27 18:43:46 -08:00
fsl_lbc.h
fsl_pamu_stash.h
fsl_pm.h powerpc/rcpm: add RCPM driver 2016-03-04 23:50:27 -06:00
ftrace.h Merge branch 'fixes' into next 2018-06-03 20:32:02 +10:00
futex.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
grackle.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
hardirq.h powerpc updates for 4.18 2018-06-07 10:23:33 -07:00
head-64.h powerpc/64s: Drop unused loc parameter to MASKABLE_EXCEPTION macros 2018-08-07 21:49:38 +10:00
heathrow.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
highmem.h powerpc: remove unnecessary inclusion of asm/tlbflush.h 2018-07-30 22:48:20 +10:00
hmi.h KVM: PPC: Book3S HV: Improve handling of debug-trigger HMIs on POWER9 2018-01-18 15:31:25 +11:00
hugetlb.h hugetlb: introduce generic version of huge_ptep_get 2018-10-26 16:26:34 -07:00
hvcall.h powerpc updates for 4.20 2018-10-26 14:36:21 -07:00
hvconsole.h
hvcserver.h
hvsi.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
hw_breakpoint.h powerpc updates for 4.19 2018-08-17 11:32:50 -07:00
hw_irq.h powerpc/64s: make PACA_IRQ_HARD_DIS track MSR[EE] closely 2018-07-24 22:03:14 +10:00
hydra.h powerpc: Fix misspellings in comments. 2016-03-01 19:27:20 +11:00
i8259.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ibmebus.h
icswx.h crypto/nx: Add P9 NX specific error codes for 842 engine 2017-09-01 16:42:50 +10:00
ide.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ima.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
imc-pmu.h powerpc/perf: Unregister thread-imc if core-imc not supported 2018-06-03 20:43:37 +10:00
immap_cpm2.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
io_event_irq.h
io-defs.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
io-workarounds.h
io.h powerpc/io: Fix the IO workarounds code to work with Radix 2018-11-12 13:22:10 +11:00
iommu.h KVM: PPC: Optimize clearing TCEs for sparse tables 2018-10-20 20:47:02 +11:00
ipic.h
irq_work.h powerpc: Add missing prototype for arch_irq_work_raise() 2018-03-13 15:50:37 +11:00
irq.h powerpc: Add missing prototype for init_IRQ() 2018-03-13 15:50:38 +11:00
irqflags.h powerpc/64: Rename soft_enabled to irq_soft_mask 2018-01-19 22:37:01 +11:00
isa-bridge.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
jump_label.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
Kbuild arch: Remove clkdev.h asm-generic from Kbuild 2018-01-03 09:02:11 -08:00
kdebug.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
kdump.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
kexec.h kexec_file,x86,powerpc: factor out kexec_file_ops functions 2018-04-13 17:10:27 -07:00
keylargo.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
kgdb.h powerpc/kgdb: add kgdb_arch_set/remove_breakpoint() 2018-10-20 13:26:47 +11:00
kmap_types.h
kprobes.h powerpc/kprobes: Don't call the ->break_handler() in powerpc kprobes code 2018-06-21 12:33:15 +02:00
kvm_asm.h KVM: PPC: Book3S: Simplify external interrupt handling 2018-10-09 16:04:27 +11:00
kvm_book3s_32.h
kvm_book3s_64.h KVM: PPC: Book3S HV: Add nested shadow page tables to debugfs 2018-10-09 16:04:27 +11:00
kvm_book3s_asm.h KVM: PPC: Book3S HV: Framework and hcall stubs for nested virtualization 2018-10-09 16:04:27 +11:00
kvm_book3s.h KVM: PPC: Book3S HV: Implement H_TLB_INVALIDATE hcall 2018-10-09 16:04:27 +11:00
kvm_booke_hv_asm.h powerpc: clean inclusions of asm/feature-fixups.h 2018-07-30 22:48:17 +10:00
kvm_booke.h KVM: PPC: Use ccr field in pt_regs struct embedded in vcpu struct 2018-10-09 16:04:27 +11:00
kvm_fpu.h
kvm_host.h KVM: PPC: Book3S HV: Handle page fault for a nested guest 2018-10-09 16:04:27 +11:00
kvm_para.h KVM: Introduce paravirtualization hints and KVM_HINTS_DEDICATED 2018-03-06 18:40:44 +01:00
kvm_ppc.h KVM: PPC: Book3S HV: Add a VM capability to enable nested virtualization 2018-10-09 16:14:47 +11:00
libata-portmap.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
linkage.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
livepatch.h powerpc/livepatch: Remove klp_write_module_reloc() stub 2016-12-19 11:15:25 +01:00
local.h powerpc/64s: Implement local_t using irq soft masking 2018-01-19 22:37:04 +11:00
lppaca.h powerpc: Fix oops due to bad access of lppaca on bare metal 2018-04-03 21:50:07 +10:00
lv1call.h
machdep.h powerpc: handover page flags with a pgprot_t parameter 2018-10-14 18:04:09 +11:00
macio.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mc146818rtc.h
mce.h powerpc/pseries: Flush SLB contents on SLB MCE errors. 2018-09-19 21:59:22 +10:00
mediabay.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
membarrier.h membarrier: Provide GLOBAL_EXPEDITED command 2018-02-05 21:34:31 +01:00
mm-arch-hooks.h
mman.h mm: Add address parameter to arch_validate_prot() 2018-03-18 07:38:47 -07:00
mmu_context.h powerpc updates for 4.20 2018-10-26 14:36:21 -07:00
mmu-8xx.h powerpc/8xx: Use patch_site for perf counters setup 2018-10-26 21:58:58 +11:00
mmu-40x.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mmu-44x.h powerpc/44x: remove page.h from mmu-44x.h 2018-07-30 22:48:20 +10:00
mmu-book3e.h powerpc/mm/book3e/64: Remove unsupported 64Kpage size from 64bit booke 2018-05-15 22:29:10 +10:00
mmu.h powerpc/mm: Increase the max addressable memory to 2PB 2018-10-14 18:04:09 +11:00
mmzone.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
module.h powerpc/kbuild: move -mprofile-kernel check to Kconfig 2018-06-11 09:16:29 +09:00
mpc5xxx.h
mpc6xx.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mpc52xx_psc.h
mpc52xx.h powerpc/52xx: Add missing functions prototypes 2018-05-25 12:04:42 +10:00
mpc85xx.h
mpc5121.h
mpc8260.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mpic_msgr.h powerpc: Remove all usages of NO_IRQ 2016-09-20 20:57:12 +10:00
mpic_timer.h powerpc/mpic_timer: avoid struct timeval 2018-01-21 15:06:16 +11:00
mpic.h powerpc/msi: Fix compile error on mpc83xx 2018-10-21 19:32:07 +11:00
msi_bitmap.h
nmi.h powerpc/64s: Fix build failures with CONFIG_NMI_IPI=n 2018-06-19 23:03:50 +10:00
nvram.h
ohare.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
opal-api.h powerpc/powernv: Make possible for user to force a full ipl cec reboot 2018-10-03 15:39:45 +10:00
opal.h powerpc/powernv: provide a console flush operation for opal hvc driver 2018-08-20 20:19:54 +10:00
oprofile_impl.h
paca.h powerpc/64s/hash: Add some SLB debugging tests 2018-10-14 18:04:09 +11:00
page_32.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
page_64.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
page.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
parport.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
pasemi_dma.h
pci-bridge.h powerpc/powernv/idoa: Remove unnecessary pcidev from pci_dn 2018-01-27 20:39:01 +11:00
pci.h PCI: remove PCI_DMA_BUS_IS_PHYS 2018-05-07 07:15:41 +02:00
percpu.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
perf_event_fsl_emb.h
perf_event_server.h powerpc/perf: Infrastructure to support addition of blacklisted events 2018-03-27 19:25:10 +11:00
perf_event.h
pgalloc.h kmemcheck: stop using GFP_NOTRACK and SLAB_NOTRACK 2017-11-15 18:21:04 -08:00
pgtable-be-types.h powerpc updates for 4.15 2017-11-16 12:47:46 -08:00
pgtable-types.h powerpc updates for 4.15 2017-11-16 12:47:46 -08:00
pgtable.h powerpc/mm: Make pte_pgprot return all pte bits 2018-10-19 00:56:17 +11:00
pkeys.h powerpc/pkeys: make protection key 0 less special 2018-07-24 21:43:24 +10:00
plpar_wrappers.h powerpc/pseries: put cede MSR[EE] check under IRQ_SOFT_MASK_DEBUG 2018-06-03 20:40:25 +10:00
pmac_feature.h powerpc: Various typo fixes 2016-06-14 13:58:26 +10:00
pmac_low_i2c.h
pmac_pfunc.h powerpc/powermac: Move pmac_pfunc_base_install prototype to header file 2018-05-25 12:04:41 +10:00
pmc.h powerpc/64s: Do not allocate lppaca if we are not virtualized 2018-03-30 23:34:22 +11:00
pmi.h
pnv-ocxl.h ocxl: Rename pnv_ocxl_spa_remove_pe to clarify it's action 2018-06-03 20:40:32 +10:00
pnv-pci.h PCI: hotplug: Drop hotplug_slot_info 2018-09-18 17:52:15 -05:00
powernv.h powerpc/powernv/npu: Prevent overwriting of pnv_npu2_init_contex() callback parameters 2018-04-24 09:46:57 +10:00
ppc4xx_ocm.h
ppc4xx.h powerpc: Make ppc_md.{halt, restart} __noreturn 2016-07-14 21:12:06 +10:00
ppc_asm.h powerpc: clean inclusions of asm/feature-fixups.h 2018-07-30 22:48:17 +10:00
ppc-opcode.h powerpc/mm/64s: Use PPC_SLBFEE macro 2018-11-06 19:29:52 +11:00
ppc-pci.h powerpc/eeh: Cleanup eeh_pe_state_mark() 2018-10-13 22:21:25 +11:00
probes.h
processor.h treewide: remove current_text_addr 2018-10-31 08:54:12 -07:00
prom.h pseries/drc-info: Search DRC properties for CPU indexes 2018-01-21 16:21:46 +11:00
ps3.h treewide: Consolidate get_dma_ops() implementations 2017-01-24 12:23:35 -05:00
ps3av.h powerpc: Various typo fixes 2016-06-14 13:58:26 +10:00
ps3gpu.h
ps3stor.h
pte-walk.h powerpc/mm: Rename find_linux_pte_or_hugepte() 2017-08-17 23:13:46 +10:00
ptrace.h powerpc updates for 4.20 2018-10-26 14:36:21 -07:00
reg_8xx.h powerpc/8xx: Remove CPU6 ERRATA Workaround 2018-01-16 23:47:12 +11:00
reg_a2.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
reg_booke.h powerpc: Remove old unused icswx based coprocessor support 2017-08-03 16:06:52 +10:00
reg_fsl_emb.h powerpc: clean the inclusion of stringify.h 2018-07-30 22:48:17 +10:00
reg.h powerpc updates for 4.20 2018-10-26 14:36:21 -07:00
rheap.h powerpc: Add missing prototype 2018-05-25 12:04:43 +10:00
rio.h
rtas.h powerpc/pseries: add missing cpumask.h include file 2018-10-26 21:58:58 +11:00
runlatch.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
scom.h
seccomp.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
sections.h powerpc64: Add .opd based function descriptor dereference 2018-01-09 10:45:37 +01:00
security_features.h powerpc/64s: Add support for software count cache flush 2018-08-08 00:32:26 +10:00
serial.h
setjmp.h
setup.h powerpc: Avoid code patching freed init sections 2018-09-18 22:42:54 +10:00
sfp-machine.h
shmparam.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
signal.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
slice.h powerpc/64s/hash: Provide arch_setup_exec() hooks for hash slice setup 2018-10-14 18:04:09 +11:00
smp.h powerpc: Detect the presence of big-cores via "ibm, thread-groups" 2018-10-13 22:21:25 +11:00
smu.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
sparsemem.h powerpc/mm: Increase the max addressable memory to 2PB 2018-10-14 18:04:09 +11:00
spinlock_types.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
spinlock.h powerpc: move ASM_CONST and stringify_in_c() into asm-const.h 2018-07-30 22:48:16 +10:00
spu_csa.h
spu_info.h
spu_priv1.h
spu.h
sstep.h powerpc/sstep: Introduce GETTYPE macro 2018-06-03 21:19:40 +10:00
stackprotector.h powerpc/64: add stack protector support 2018-10-03 15:40:03 +10:00
stacktrace.h powerpc: Add show_user_instructions() 2018-08-08 00:32:30 +10:00
string.h powerpc/lib: Implement strlen() in assembly for PPC32 2018-08-07 21:49:30 +10:00
swab.h
swiotlb.h powerpc: rename swiotlb_dma_ops 2018-01-15 09:35:26 +01:00
switch_to.h powerpc: use task_pid_nr() for TID allocation 2018-06-03 20:40:31 +10:00
synch.h powerpc: clean the inclusion of stringify.h 2018-07-30 22:48:17 +10:00
syscall.h
syscalls.h powerpc/syscalls: switch rtas(2) to SYSCALL_DEFINE 2018-05-10 23:25:14 +10:00
systbl.h powerpc: Wire up io_pgetevents 2018-06-23 21:43:21 +10:00
tce.h powerpc/powernv/pci: Remove SWINV constants and obsolete TCE code 2016-07-17 16:42:47 +10:00
termios.h
thread_info.h powerpc/64s/hash: Add a SLB preload cache 2018-10-14 18:04:09 +11:00
time.h powerpc: remove unused to_tm() helper 2018-06-03 20:43:34 +10:00
timex.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
tlb.h powerpc/mm/tlbflush: update the mmu_gather page size while iterating address range 2018-08-10 22:12:39 +10:00
tlbflush.h powerpc: split asm/tlbflush.h 2018-07-30 22:48:21 +10:00
tm.h powerpc: Export tm_enable()/tm_disable/tm_abort() APIs 2018-05-24 16:04:02 +10:00
topology.h powerpc/topology: Get topology for shared processors at boot 2018-08-21 16:01:59 +10:00
trace_clock.h
trace.h powerpc/mm: Trace tlbia instruction 2018-10-20 13:26:47 +11:00
tsi108_irq.h
tsi108_pci.h
tsi108.h powerpc: Various typo fixes 2016-06-14 13:58:26 +10:00
types.h powerpc: Define and use PPC64_ELF_ABI_v2/v1 2016-06-14 13:58:27 +10:00
uaccess.h powerpc: Fix duplicate const clang warning in user access code 2018-09-19 22:08:12 +10:00
udbg.h
uic.h
unaligned.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
uninorth.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
unistd.h y2038: utimes: Rework #ifdef guards for compat syscalls 2018-08-29 15:42:23 +02:00
uprobes.h
user.h powerpc/aout: Fix struct user definition to use user_pt_regs 2018-10-19 15:09:04 +11:00
vas.h powerpc/vas: Define vas_win_id() 2017-11-12 09:03:10 +11:00
vdso_datapage.h
vdso.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
vga.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
vio.h
word-at-a-time.h powerpc: EX_TABLE macro for exception tables 2016-11-14 11:11:51 +11:00
xics.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
xilinx_intc.h powerpc/virtex: Use generic xilinx irqchip driver 2016-11-29 09:14:50 +00:00
xilinx_pci.h
xive-regs.h powerpc/xive: Remove (almost) unused macros 2018-06-03 20:43:35 +10:00
xive.h powerpc/xive: Remove xive_kexec_teardown_cpu() 2018-08-07 21:49:28 +10:00
xmon.h powerpc/xmon: Add __printf annotation to xmon_printf() 2018-05-25 12:04:36 +10:00
xor_altivec.h powerpc/altivec: Add missing prototypes for altivec 2018-05-25 12:04:38 +10:00
xor.h powerpc/altivec: Add missing prototypes for altivec 2018-05-25 12:04:38 +10:00