linux/arch/mips
Paul Burton 183b40f992
MIPS: Allow FP support to be disabled
Allow the user to configure the kernel to omit support for floating
point, by setting CONFIG_MIPS_FP_SUPPORT=n. In an attempt to avoid
problems for users who don't understand the impact of this, only expose
the option when CONFIG_EXPERT=y.

When CONFIG_MIPS_FP_SUPPORT=n all support for FPU hardware, FPU
emulation & FP context will be removed from the kernel. If a userland
program attempts to execute a floating point instruction it will receive
a SIGILL.

Setting CONFIG_MIPS_FP_SUPPORT=n shaves around 112KB from a
64r6el_defconfig build using GCC 8.1.0.

This also helps prepare us for supporting the nanoMIPS ISA, for which
floating point support has not been finalized.

Signed-off-by: Paul Burton <paul.burton@mips.com>
Patchwork: https://patchwork.linux-mips.org/patch/21014/
Cc: linux-mips@linux-mips.org
2018-11-09 10:23:19 -08:00
..
alchemy mtd: rawnand: Move platform_nand_xxx definitions out of rawnand.h 2018-10-03 11:12:25 +02:00
ar7 mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
ath25 mips: unify prom_putchar() declarations 2018-07-17 09:40:17 -07:00
ath79 mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
bcm47xx MIPS: BCM47XX: Enable USB power on Netgear WNDR3400v3 2018-08-29 11:11:00 -07:00
bcm63xx mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
bmips mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
boot Here are the main MIPS updates for 4.20: 2018-10-26 14:43:48 -07:00
cavium-octeon mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
cobalt
configs MIPS: DEC: Add 64-bit DECstation defconfig 2018-11-06 15:37:24 -08:00
crypto MIPS: crypto: Add crc32 and crc32c hw accelerated module 2018-02-19 20:50:36 +00:00
dec mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
emma mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
fw mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
generic MIPS: mscc: add PCB120 to the ocelot fitImage 2018-10-09 10:38:29 -07:00
include MIPS: Remove struct task_struct fpu state when CONFIG_MIPS_FP_SUPPORT=n 2018-11-09 10:23:19 -08:00
jazz mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
jz4740 JFFS2 changes: 2018-08-14 10:57:44 -07:00
kernel MIPS: Remove struct task_struct fpu state when CONFIG_MIPS_FP_SUPPORT=n 2018-11-09 10:23:19 -08:00
kvm MIPS: Introduce CONFIG_MIPS_FP_SUPPORT 2018-11-09 10:23:15 -08:00
lantiq mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
lasat mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
lib MIPS: lib: Use kernel_pref & user_pref in memcpy() 2018-10-15 23:11:14 -07:00
loongson32 MIPS: Loongson: Merge load addresses 2018-07-30 18:59:01 -07:00
loongson64 MIPS: Simplify FP context initialization 2018-11-09 10:23:13 -08:00
math-emu MIPS: Ensure emulated FP sets PF_USED_MATH 2018-11-09 10:23:14 -08:00
mm mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
mti-malta mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
net bpf, mips: remove unused function 2018-05-14 19:11:45 -07:00
netlogic mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
oprofile MIPS: perf: More robustly probe for the presence of per-tc counters 2018-05-15 15:16:16 +01:00
paravirt mips: unify prom_putchar() declarations 2018-07-17 09:40:17 -07:00
pci mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
pic32 mips: unify prom_putchar() declarations 2018-07-17 09:40:17 -07:00
pistachio License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
pmcs-msp71xx MIPS: Remove no-op/identity casts 2018-08-31 11:49:20 -07:00
pnx833x mtd: rawnand: Move platform_nand_xxx definitions out of rawnand.h 2018-10-03 11:12:25 +02:00
power License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
ralink mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
rb532 mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
sgi-ip22 MIPS: Remove no-op/identity casts 2018-08-31 11:49:20 -07:00
sgi-ip27 mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
sgi-ip32 MIPS: IP32: use generic dma noncoherent ops 2018-06-24 09:27:27 -07:00
sibyte mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
sni MIPS: sni: Remove the read_persistent_clock() 2018-05-14 23:58:25 +01:00
tools MIPS: Use a custom elf-entry program to find kernel entry point 2018-08-30 09:39:22 -07:00
txx9 mm: remove include/linux/bootmem.h 2018-10-31 08:54:16 -07:00
vdso kbuild: replace cc-name test with CONFIG_CC_IS_CLANG 2018-11-02 22:49:00 +09:00
vr41xx MIPS: Annotate cpu_wait implementations with __cpuidle 2018-06-28 14:18:54 -07:00
Kbuild MIPS: Disable Werror when W= is set 2017-04-10 11:56:07 +02:00
Kbuild.platforms MIPS: Xilfpga: Switch to using generic defconfigs 2017-11-08 22:54:14 +00:00
Kconfig MIPS: Allow FP support to be disabled 2018-11-09 10:23:19 -08:00
Kconfig.debug Kconfig: consolidate the "Kernel hacking" menu 2018-08-02 08:06:48 +09:00
Makefile MIPS: Don't compile math-emu when CONFIG_MIPS_FP_SUPPORT=n 2018-11-09 10:23:18 -08:00
Makefile.postlink License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00