Messages in this thread |  | | From | Alan Kao <> | Subject | [PATCH v4 0/5] riscv: Add support to no-FPU systems | Date | Wed, 8 Aug 2018 11:24:40 +0800 |
| |
This patchset adds an option, CONFIG_FPU, to enable/disable floating- point procedures.
Kernel's new behavior will be as follows:
* with CONFIG_FPU=y All FPU codes are reserved. If no FPU is found during booting, a global flag will be set, and those functions will be bypassed with condition check to that flag.
* with CONFIG_FPU=n No floating-point instructions in kernel and all related settings are excluded.
Changes in v4: - Append a new patch to detect existence of FPU and followups. - Add SPDX header to newly created fpu.S. - Fix a build error, sorry for that. - Fix wording, style, etc.
Changes in v3: - Refactor the whole patch into independent ones.
Changes in v2: - Various code cleanups and style fixes.
Alan Kao (5): Extract FPU context operations from entry.S Refactor FPU code in signal setup/return procedures Cleanup ISA string setting Allow to disable FPU support Auto-detect whether a FPU exists
arch/riscv/Kconfig | 9 +++ arch/riscv/Makefile | 19 +++--- arch/riscv/include/asm/hwcap.h | 3 + arch/riscv/include/asm/switch_to.h | 21 ++++++ arch/riscv/kernel/Makefile | 1 + arch/riscv/kernel/cpufeature.c | 11 +++ arch/riscv/kernel/entry.S | 87 ----------------------- arch/riscv/kernel/fpu.S | 106 +++++++++++++++++++++++++++++ arch/riscv/kernel/process.c | 4 +- arch/riscv/kernel/signal.c | 79 +++++++++++++-------- 10 files changed, 214 insertions(+), 126 deletions(-) create mode 100644 arch/riscv/kernel/fpu.S
-- 2.18.0
|  |