linux_dsm_epyc7002/arch/arc/include/asm
Eugeniy Paltsev 3624379d90 ARC: IOC: panic if kernel was started with previously enabled IOC
If IOC was already enabled (due to bootloader) it technically needs to
be reconfigured with aperture base,size corresponding to Linux memory map
which will certainly be different than uboot's. But disabling and
reenabling IOC when DMA might be potentially active is tricky business.
To avoid random memory issues later, just panic here and ask user to
upgrade bootloader to one which doesn't enable IOC

This was actually seen as issue on some of the HSDK board with a version
of uboot which enabled IOC. There were random issues later with starting
of X or peripherals etc.

Also while I'm at it, replace hardcoded bits in ARC_REG_IO_COH_PARTIAL
and ARC_REG_IO_COH_ENABLE registers by definitions.

Inspired by: https://lkml.org/lkml/2018/1/19/557
Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
2018-11-12 10:38:27 -08:00
..
arcregs.h ARCv2: boot log: updates for HS48: dual-issue, ECC, Loop Buffer 2017-11-13 14:37:39 -08:00
asm-offsets.h
atomic.h ARC: atomics: unbork atomic_fetch_##op() 2018-08-31 10:14:51 -07:00
barrier.h
bitops.h
bug.h bug.h: work around GCC PR82365 in BUG() 2018-02-21 15:35:43 -08:00
cache.h ARC: IOC: panic if kernel was started with previously enabled IOC 2018-11-12 10:38:27 -08:00
cacheflush.h
checksum.h
cmpxchg.h
current.h
delay.h arc: fix build errors in arc/include/asm/delay.h 2018-07-30 11:48:50 -07:00
disasm.h
dma-mapping.h ARC: dma [IOC] Enable per device io coherency 2018-09-04 13:21:37 -07:00
dma.h
dwarf.h
elf.h
entry-arcv2.h ARCv2: Don't pretend we may set L-bit in STATUS32 with kflag instruction 2018-01-18 10:51:26 -08:00
entry-compact.h ARC: [arcompact] entry.S: minor code movement 2018-07-09 11:25:45 -07:00
entry.h ARC: [arcompact] entry.S: minor code movement 2018-07-09 11:25:45 -07:00
exec.h
fb.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
futex.h futex: Remove duplicated code and fix undefined behaviour 2017-08-25 22:49:59 +02:00
highmem.h
hugepage.h arc: use generic_pmdp_establish as pmdp_establish 2018-01-31 17:18:37 -08:00
io.h
irq.h
irqflags-arcv2.h ARC: create cpu specific version of arch_cpu_idle() 2017-08-28 15:17:36 -07:00
irqflags-compact.h ARC: create cpu specific version of arch_cpu_idle() 2017-08-28 15:17:36 -07:00
irqflags.h
Kbuild Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2018-06-04 20:27:54 -07:00
kdebug.h
kgdb.h
kmap_types.h
kprobes.h ARC/kprobes: Remove jprobe implementation 2018-06-21 12:33:06 +02:00
linkage.h
mach_desc.h ARC: Enable machine_desc->init_per_cpu for !CONFIG_SMP 2018-06-20 16:12:06 -07:00
mmu_context.h
mmu.h ARCv2: PAE40: set MSB even if !CONFIG_ARC_HAS_PAE40 but PAE exists in SoC 2017-08-04 13:56:35 +05:30
mmzone.h
module.h
page.h ARC: mm: allow mprotect to make stack mappings executable 2018-07-11 11:03:06 -07:00
pci.h PCI: remove PCI_DMA_BUS_IS_PHYS 2018-05-07 07:15:41 +02:00
perf_event.h
pgalloc.h
pgtable.h ARC fixes for 4.18-rc6 2018-07-20 11:33:22 -07:00
processor.h treewide: remove current_text_addr 2018-10-31 08:54:12 -07:00
ptrace.h ARC: [plat-eznps] handle extra aux regs #2: kernel/entry exit 2017-08-28 15:17:36 -07:00
sections.h
segment.h
serial.h
setup.h
shmparam.h
smp.h
spinlock_types.h
spinlock.h locking/arch: Remove dummy arch_{read,spin,write}_lock_flags() implementations 2017-10-10 11:50:19 +02:00
stacktrace.h
string.h
switch_to.h ARC: [plat-eznps] handle extra aux regs #1: save/restore on context switch 2017-08-28 15:17:36 -07:00
syscall.h
syscalls.h
thread_info.h Construct init thread stack in the linker script rather than by union 2018-01-09 23:21:02 +00:00
timex.h
tlb-mmu1.h
tlb.h
tlbflush.h
uaccess.h ARC: uaccess: dont use "l" gcc inline asm constraint modifier 2017-12-20 12:41:46 -08:00
unaligned.h
unwind.h