Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/arch/riscv/include The supervisor status register is the...



details:   https://anonhg.NetBSD.org/src/rev/8e47ea7028e3
branches:  trunk
changeset: 372302:8e47ea7028e3
user:      simonb <simonb%NetBSD.org@localhost>
date:      Fri Nov 11 01:18:32 2022 +0000

description:
The supervisor status register is the native word width, not fixed
at 32 bits.

diffstat:

 sys/arch/riscv/include/sysreg.h |  18 +++++++++---------
 1 files changed, 9 insertions(+), 9 deletions(-)

diffs (47 lines):

diff -r b83bb0d61451 -r 8e47ea7028e3 sys/arch/riscv/include/sysreg.h
--- a/sys/arch/riscv/include/sysreg.h   Thu Nov 10 10:55:00 2022 +0000
+++ b/sys/arch/riscv/include/sysreg.h   Fri Nov 11 01:18:32 2022 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: sysreg.h,v 1.21 2022/11/08 13:47:09 simonb Exp $ */
+/* $NetBSD: sysreg.h,v 1.22 2022/11/11 01:18:32 simonb Exp $ */
 
 /*
  * Copyright (c) 2014 The NetBSD Foundation, Inc.
@@ -177,18 +177,18 @@
 #define        SR_KERNEL       (SR_SIE | SR_UIE)
 #endif
 
-static inline uint32_t
+static inline register_t
 riscvreg_status_read(void)
 {
-       uint32_t __sr;
+       register_t __sr;
        __asm("csrr\t%0, sstatus" : "=r"(__sr));
        return __sr;
 }
 
-static inline uint32_t
-riscvreg_status_clear(uint32_t __mask)
+static inline register_t
+riscvreg_status_clear(register_t __mask)
 {
-       uint32_t __sr;
+       register_t __sr;
        if (__builtin_constant_p(__mask) && __mask < 0x20) {
                __asm("csrrci\t%0, sstatus, %1" : "=r"(__sr) : "i"(__mask));
        } else {
@@ -197,10 +197,10 @@
        return __sr;
 }
 
-static inline uint32_t
-riscvreg_status_set(uint32_t __mask)
+static inline register_t
+riscvreg_status_set(register_t __mask)
 {
-       uint32_t __sr;
+       register_t __sr;
        if (__builtin_constant_p(__mask) && __mask < 0x20) {
                __asm("csrrsi\t%0, sstatus, %1" : "=r"(__sr) : "i"(__mask));
        } else {



Home | Main Index | Thread Index | Old Index