linux/arch/powerpc
Alexey Kardashevskiy e2f5efd0f0 powerpc: Fix early setup to make early_ioremap() work
The immediate problem is that after commit
0bd3f9e953 ("powerpc/legacy_serial: Use early_ioremap()") the kernel
silently reboots on some systems.

The reason is that early_ioremap() returns broken addresses as it uses
slot_virt[] array which initialized with offsets from FIXADDR_TOP ==
IOREMAP_END+FIXADDR_SIZE == KERN_IO_END - FIXADDR_SIZ + FIXADDR_SIZE ==
__kernel_io_end which is 0 when early_ioremap_setup() is called.
__kernel_io_end is initialized little bit later in early_init_mmu().

This fixes the initialization by swapping early_ioremap_setup() and
early_init_mmu().

Fixes: 265c3491c4 ("powerpc: Add support for GENERIC_EARLY_IOREMAP")
Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
Reviewed-by: Christophe Leroy <christophe.leroy@csgroup.eu>
[mpe: Drop unrelated cleanup & cleanup change log]
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20210520032919.358935-1-aik@ozlabs.ru
2021-05-20 16:43:26 +10:00
..
boot kbuild: replace LANG=C with LC_ALL=C 2021-05-02 00:43:35 +09:00
configs powerpc updates for 5.13 2021-04-30 12:22:28 -07:00
crypto crypto: powepc/sha1 - remove unneeded semicolon 2021-03-07 15:13:14 +11:00
include powerpc/64s: Make NMI record implicitly soft-masked code as irqs disabled 2021-05-14 17:28:52 +10:00
kernel powerpc: Fix early setup to make early_ioremap() work 2021-05-20 16:43:26 +10:00
kexec powerpc/kexec_file: Use current CPU info while setting up FDT 2021-05-04 22:26:57 +10:00
kvm KVM: PPC: Book3S HV: Fix kvm_unmap_gfn_range_hv() for Hash MMU 2021-05-12 11:07:39 +10:00
lib powerpc/64s: Fix stf mitigation patching w/strict RWX & hash 2021-05-14 17:27:37 +10:00
math-emu powerpc/math: Fix missing __user qualifier for get_user() and other sparse warnings 2021-03-29 13:22:12 +11:00
mm Merge branch 'akpm' (patches from Andrew) 2021-05-05 13:50:15 -07:00
net powerpc/ebpf32: Use standard function call for functions within 32M distance 2021-04-21 22:52:33 +10:00
perf powerpc/perf: Fix the threshold event selection for memory events in power10 2021-04-23 01:38:02 +10:00
platforms powerpc/pseries: warn if recursing into the hcall tracing code 2021-05-12 11:07:39 +10:00
purgatory powerpc/kexec: Don't use .machine ppc64 in trampoline_64.S 2021-04-08 21:17:43 +10:00
sysdev Merge branch 'akpm' (patches from Andrew) 2021-04-30 14:38:01 -07:00
tools
xmon powerpc updates for 5.13 2021-04-30 12:22:28 -07:00
Kbuild
Kconfig Merge branch 'master' into next 2021-05-08 21:12:55 +10:00
Kconfig.debug powerpc: iommu: fix build when neither PCI or IBMVIO is set 2021-04-08 21:17:46 +10:00
Makefile powerpc: Only define _TASK_CPU for 32-bit 2021-04-20 14:22:24 +10:00
Makefile.postlink