summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2018-07-31 09:15:00 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2018-08-01 10:08:59 +0200
commit529154bad207a42a6d0f03343c7e215eab97ced5 (patch)
tree36aa2259646b7b7305ede17450a7fca0b4ddd11b
parentbsp/riscv: Fix clock driver (diff)
downloadrtems-529154bad207a42a6d0f03343c7e215eab97ced5.tar.bz2
bsp/riscv: Initialize FPU depending on ISA
Initialize fcsr to zero for a defined rounding mode. Update #3433.
-rw-r--r--bsps/riscv/riscv/start/start.S5
1 files changed, 4 insertions, 1 deletions
diff --git a/bsps/riscv/riscv/start/start.S b/bsps/riscv/riscv/start/start.S
index 290c95a166..feb07feedf 100644
--- a/bsps/riscv/riscv/start/start.S
+++ b/bsps/riscv/riscv/start/start.S
@@ -48,9 +48,12 @@ SYM(_start):
LADDR gp, __global_pointer$
.option pop
- /* Init FPU unit if it's there */
+ /* Init FPU */
+#ifdef __riscv_flen
li t0, MSTATUS_FS
csrs mstatus, t0
+ csrw fcsr, zero
+#endif
/* Set exception handler */
LADDR t0, _RISCV_Exception_handler