e5a32b5b21
An overview of the general architecture changes: - Massive DMA ops refactoring from Christoph Hellwig (huzzah for deleting crufty code!). - We introduce NT_MIPS_DSP & NT_MIPS_FP_MODE ELF notes & corresponding regsets to expose DSP ASE & floating point mode state respectively, both for live debugging & core dumps. - We better optimize our code by hard-coding cpu_has_* macros at compile time where their values are known due to the ISA revision that the kernel build is targeting. - The EJTAG exception handler now better handles SMP systems, where it was previously possible for CPUs to clobber a register value saved by another CPU. - Our implementation of memset() gained a couple of fixes for MIPSr6 systems to return correct values in some cases where stores fault. - We now implement ioremap_wc() using the uncached-accelerated cache coherency attribute where supported, which is detected during boot, and fall back to plain uncached access where necessary. The MIPS-specific (and unused in tree) ioremap_uncached_accelerated() & ioremap_cacheable_cow() are removed. - The prctl(PR_SET_FP_MODE, ...) syscall is better supported for SMP systems by reworking the way we ensure remote CPUs that may be running threads within the affected process switch mode. - Systems using the MIPS Coherence Manager will now set the MIPS_IC_SNOOPS_REMOTE flag to avoid some unnecessary cache maintenance overhead when flushing the icache. - A few fixes were made for building with clang/LLVM, which now sucessfully builds kernels for many of our platforms. - Miscellaneous cleanups all over. And some platform-specific changes: - ar7 gained stubs for a few clock API functions to fix build failures for some drivers. - ath79 gained support for a few new SoCs, a few fixes & better gpio-keys support. - Ci20 now exposes its SPI bus using the spi-gpio driver. - The generic platform can now auto-detect a suitable value for PHYS_OFFSET based upon the memory map described by the device tree, allowing us to avoid wasting memory on page book-keeping for systems where RAM starts at a non-zero physical address. - Ingenic systems using the jz4740 platform code now link their vmlinuz higher to allow for kernels of a realistic size. - Loongson32 now builds the kernel targeting MIPSr1 rather than MIPSr2 to avoid CPU errata. - Loongson64 gains a couple of fixes, a workaround for a write buffering issue & support for the Loongson 3A R3.1 CPU. - Malta now uses the piix4-poweroff driver to handle powering down. - Microsemi Ocelot gained support for its SPI bus & NOR flash, its second MDIO bus and can now be supported by a FIT/.itb image. - Octeon saw a bunch of header cleanups which remove a lot of duplicate or unused code. -----BEGIN PGP SIGNATURE----- iIsEABYIADMWIQRgLjeFAZEXQzy86/s+p5+stXUA3QUCW3G6JxUccGF1bC5idXJ0 b25AbWlwcy5jb20ACgkQPqefrLV1AN0n/gD/Rpdgay31G/4eTTKBmBrcaju6Shjt /2Iu6WC5Sj4hDHUBAJSbuI+B9YjcNsjekBYxB/LLD7ImcLBl6nLMIvKmXLAL =cUiF -----END PGP SIGNATURE----- Merge tag 'mips_4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux Pull MIPS updates from Paul Burton: "Here are the main MIPS changes for 4.19. An overview of the general architecture changes: - Massive DMA ops refactoring from Christoph Hellwig (huzzah for deleting crufty code!). - We introduce NT_MIPS_DSP & NT_MIPS_FP_MODE ELF notes & corresponding regsets to expose DSP ASE & floating point mode state respectively, both for live debugging & core dumps. - We better optimize our code by hard-coding cpu_has_* macros at compile time where their values are known due to the ISA revision that the kernel build is targeting. - The EJTAG exception handler now better handles SMP systems, where it was previously possible for CPUs to clobber a register value saved by another CPU. - Our implementation of memset() gained a couple of fixes for MIPSr6 systems to return correct values in some cases where stores fault. - We now implement ioremap_wc() using the uncached-accelerated cache coherency attribute where supported, which is detected during boot, and fall back to plain uncached access where necessary. The MIPS-specific (and unused in tree) ioremap_uncached_accelerated() & ioremap_cacheable_cow() are removed. - The prctl(PR_SET_FP_MODE, ...) syscall is better supported for SMP systems by reworking the way we ensure remote CPUs that may be running threads within the affected process switch mode. - Systems using the MIPS Coherence Manager will now set the MIPS_IC_SNOOPS_REMOTE flag to avoid some unnecessary cache maintenance overhead when flushing the icache. - A few fixes were made for building with clang/LLVM, which now sucessfully builds kernels for many of our platforms. - Miscellaneous cleanups all over. And some platform-specific changes: - ar7 gained stubs for a few clock API functions to fix build failures for some drivers. - ath79 gained support for a few new SoCs, a few fixes & better gpio-keys support. - Ci20 now exposes its SPI bus using the spi-gpio driver. - The generic platform can now auto-detect a suitable value for PHYS_OFFSET based upon the memory map described by the device tree, allowing us to avoid wasting memory on page book-keeping for systems where RAM starts at a non-zero physical address. - Ingenic systems using the jz4740 platform code now link their vmlinuz higher to allow for kernels of a realistic size. - Loongson32 now builds the kernel targeting MIPSr1 rather than MIPSr2 to avoid CPU errata. - Loongson64 gains a couple of fixes, a workaround for a write buffering issue & support for the Loongson 3A R3.1 CPU. - Malta now uses the piix4-poweroff driver to handle powering down. - Microsemi Ocelot gained support for its SPI bus & NOR flash, its second MDIO bus and can now be supported by a FIT/.itb image. - Octeon saw a bunch of header cleanups which remove a lot of duplicate or unused code" * tag 'mips_4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/mips/linux: (123 commits) MIPS: Remove remnants of UASM_ISA MIPS: netlogic: xlr: Remove erroneous check in nlm_fmn_send() MIPS: VDSO: Force link endianness MIPS: Always specify -EB or -EL when using clang MIPS: Use dins to simplify __write_64bit_c0_split() MIPS: Use read-write output operand in __write_64bit_c0_split() MIPS: Avoid using array as parameter to write_c0_kpgd() MIPS: vdso: Allow clang's --target flag in VDSO cflags MIPS: genvdso: Remove GOT checks MIPS: Remove obsolete MIPS checks for DST node "chosen@0" MIPS: generic: Remove input symbols from defconfig MIPS: Delete unused code in linux32.c MIPS: Remove unused sys_32_mmap2 MIPS: Remove nabi_no_regargs mips: dts: mscc: enable spi and NOR flash support on ocelot PCB123 mips: dts: mscc: Add spi on Ocelot MIPS: Loongson: Merge load addresses MIPS: Loongson: Set Loongson32 to MIPS32R1 MIPS: mscc: ocelot: add interrupt controller properties to GPIO controller MIPS: generic: Select MIPS_AUTO_PFN_OFFSET ... |
||
---|---|---|
.. | ||
dec | ||
emma | ||
fw | ||
ip32 | ||
lasat | ||
mach-ar7 | ||
mach-ath25 | ||
mach-ath79 | ||
mach-au1x00 | ||
mach-bcm47xx | ||
mach-bcm63xx | ||
mach-bmips | ||
mach-cavium-octeon | ||
mach-cobalt | ||
mach-db1x00 | ||
mach-dec | ||
mach-emma2rh | ||
mach-generic | ||
mach-ip22 | ||
mach-ip27 | ||
mach-ip28 | ||
mach-ip32 | ||
mach-jazz | ||
mach-jz4740 | ||
mach-lantiq | ||
mach-lasat | ||
mach-loongson32 | ||
mach-loongson64 | ||
mach-malta | ||
mach-netlogic | ||
mach-paravirt | ||
mach-pic32 | ||
mach-pistachio | ||
mach-pmcs-msp71xx | ||
mach-pnx833x | ||
mach-ralink | ||
mach-rc32434 | ||
mach-rm | ||
mach-sibyte | ||
mach-tx39xx | ||
mach-tx49xx | ||
mach-vr41xx | ||
mach-xilfpga | ||
mips-boards | ||
netlogic | ||
octeon | ||
pci | ||
sgi | ||
sibyte | ||
sn | ||
txx9 | ||
vr41xx | ||
xtalk | ||
abi.h | ||
addrspace.h | ||
amon.h | ||
arch_hweight.h | ||
asm-eva.h | ||
asm-offsets.h | ||
asm-prototypes.h | ||
asm.h | ||
asmmacro-32.h | ||
asmmacro-64.h | ||
asmmacro.h | ||
atomic.h | ||
barrier.h | ||
bcache.h | ||
bitops.h | ||
bitrev.h | ||
bmips-spaces.h | ||
bmips.h | ||
bootinfo.h | ||
branch.h | ||
break.h | ||
bug.h | ||
bugs.h | ||
cache.h | ||
cacheflush.h | ||
cacheops.h | ||
cdmm.h | ||
cevt-r4k.h | ||
checksum.h | ||
clock.h | ||
clocksource.h | ||
cmp.h | ||
cmpxchg.h | ||
compat-signal.h | ||
compat.h | ||
compiler.h | ||
cop2.h | ||
cpu-features.h | ||
cpu-info.h | ||
cpu-type.h | ||
cpu.h | ||
cpufeature.h | ||
debug.h | ||
delay.h | ||
device.h | ||
div64.h | ||
dma-coherence.h | ||
dma-direct.h | ||
dma-mapping.h | ||
dma.h | ||
ds1287.h | ||
dsemul.h | ||
dsp.h | ||
edac.h | ||
elf.h | ||
errno.h | ||
eva.h | ||
exec.h | ||
extable.h | ||
fb.h | ||
fixmap.h | ||
floppy.h | ||
fpregdef.h | ||
fpu_emulator.h | ||
fpu.h | ||
ftrace.h | ||
futex.h | ||
gio_device.h | ||
gt64120.h | ||
hardirq.h | ||
hazards.h | ||
highmem.h | ||
hpet.h | ||
hugetlb.h | ||
hw_irq.h | ||
i8259.h | ||
ide.h | ||
idle.h | ||
inst.h | ||
io.h | ||
irq_cpu.h | ||
irq_gt641xx.h | ||
irq_regs.h | ||
irq.h | ||
irqflags.h | ||
isa-rev.h | ||
isadep.h | ||
jazz.h | ||
jazzdma.h | ||
jump_label.h | ||
Kbuild | ||
kdebug.h | ||
kexec.h | ||
kgdb.h | ||
kmap_types.h | ||
kprobes.h | ||
kvm_host.h | ||
kvm_para.h | ||
linkage.h | ||
llsc.h | ||
local.h | ||
m48t37.h | ||
maar.h | ||
machine.h | ||
mc146818-time.h | ||
mc146818rtc.h | ||
mips_machine.h | ||
mips_mt.h | ||
mips-cm.h | ||
mips-cpc.h | ||
mips-cps.h | ||
mips-gic.h | ||
mips-r2-to-r6-emul.h | ||
mipsmtregs.h | ||
mipsprom.h | ||
mipsregs.h | ||
mmu_context.h | ||
mmu.h | ||
mmzone.h | ||
module.h | ||
msa.h | ||
msc01_ic.h | ||
nile4.h | ||
paccess.h | ||
page.h | ||
pci.h | ||
perf_event.h | ||
pgalloc.h | ||
pgtable-32.h | ||
pgtable-64.h | ||
pgtable-bits.h | ||
pgtable.h | ||
pm-cps.h | ||
pm.h | ||
pmon.h | ||
prefetch.h | ||
processor.h | ||
prom.h | ||
ptrace.h | ||
r4k-timer.h | ||
r4kcache.h | ||
reboot.h | ||
reg.h | ||
regdef.h | ||
rtlx.h | ||
seccomp.h | ||
serial.h | ||
setup.h | ||
sgialib.h | ||
sgiarcs.h | ||
shmparam.h | ||
sigcontext.h | ||
signal.h | ||
sim.h | ||
smp-cps.h | ||
smp-ops.h | ||
smp.h | ||
sni.h | ||
socket.h | ||
sparsemem.h | ||
spinlock_types.h | ||
spinlock.h | ||
spram.h | ||
stackframe.h | ||
stackprotector.h | ||
stacktrace.h | ||
string.h | ||
switch_to.h | ||
syscall.h | ||
termios.h | ||
thread_info.h | ||
time.h | ||
timex.h | ||
tlb.h | ||
tlbdebug.h | ||
tlbex.h | ||
tlbflush.h | ||
tlbmisc.h | ||
topology.h | ||
traps.h | ||
txx9irq.h | ||
txx9pio.h | ||
txx9tmr.h | ||
types.h | ||
uaccess.h | ||
uasm.h | ||
unistd.h | ||
uprobes.h | ||
vdso.h | ||
vga.h | ||
vpe.h | ||
war.h | ||
watch.h | ||
wbflush.h | ||
yamon-dt.h |