1 /* 2 * SPDX-License-Identifier: BSD-2-Clause 3 */ 4 5 #ifndef _C910_PLATFORM_H_ 6 #define _C910_PLATFORM_H_ 7 8 #define C910_HART_COUNT 16 9 10 #define SBI_THEAD_FEATURES \ 11 (SBI_PLATFORM_HAS_MFAULTS_DELEGATION | \ 12 SBI_PLATFORM_HAS_HART_SECONDARY_BOOT) 13 14 #define CSR_MCOR 0x7c2 15 #define CSR_MHCR 0x7c1 16 #define CSR_MCCR2 0x7c3 17 #define CSR_MHINT 0x7c5 18 #define CSR_MXSTATUS 0x7c0 19 #define CSR_PLIC_BASE 0xfc1 20 #define CSR_MRMR 0x7c6 21 #define CSR_MRVBR 0x7c7 22 23 #define C910_PLIC_CLINT_OFFSET 0x04000000 /* 64M */ 24 #define C910_PLIC_DELEG_OFFSET 0x001ffffc 25 #define C910_PLIC_DELEG_ENABLE 0x1 26 27 struct c910_regs_struct { 28 u64 pmpaddr0; 29 u64 pmpaddr1; 30 u64 pmpaddr2; 31 u64 pmpaddr3; 32 u64 pmpaddr4; 33 u64 pmpaddr5; 34 u64 pmpaddr6; 35 u64 pmpaddr7; 36 u64 pmpcfg0; 37 u64 mcor; 38 u64 mhcr; 39 u64 mccr2; 40 u64 mhint; 41 u64 mxstatus; 42 u64 plic_base_addr; 43 u64 clint_base_addr; 44 }; 45 46 #endif /* _C910_PLATFORM_H_ */ 47