RTEMS 6.1-rc1
Modules | Data Structures | Macros | Functions | Variables

RISCV Architecture Support. More...

Modules

 RISC-V Assembler Support
 RISC-V Assembler Support.
 

Data Structures

union  RISCV_CLINT_timer_reg
 
struct  RISCV_CLINT_regs
 
struct  RISCV_PLIC_hart_regs
 
struct  RISCV_PLIC_regs
 
struct  CPU_Per_CPU_control
 The CPU specific per-CPU control. More...
 

Macros

#define CPU_THREAD_LOCAL_STORAGE_VARIANT   10
 
#define RISCV_CONTEXT_ISR_DISPATCH_DISABLE   4
 
#define RISCV_EXCEPTION_FRAME_MCAUSE   RISCV_EXCEPTION_FRAME_X( 0 )
 
#define RISCV_EXCEPTION_FRAME_SP   RISCV_EXCEPTION_FRAME_X( 1 )
 
#define RISCV_EXCEPTION_FRAME_GP   RISCV_EXCEPTION_FRAME_X( 2 )
 
#define RISCV_EXCEPTION_FRAME_TP   RISCV_EXCEPTION_FRAME_X( 3 )
 
#define RISCV_EXCEPTION_FRAME_S2   RISCV_EXCEPTION_FRAME_X( 4 )
 
#define RISCV_EXCEPTION_FRAME_S3   RISCV_EXCEPTION_FRAME_X( 5 )
 
#define RISCV_EXCEPTION_FRAME_S4   RISCV_EXCEPTION_FRAME_X( 6 )
 
#define RISCV_EXCEPTION_FRAME_S5   RISCV_EXCEPTION_FRAME_X( 7 )
 
#define RISCV_EXCEPTION_FRAME_S6   RISCV_EXCEPTION_FRAME_X( 8 )
 
#define RISCV_EXCEPTION_FRAME_S7   RISCV_EXCEPTION_FRAME_X( 9 )
 
#define RISCV_EXCEPTION_FRAME_S8   RISCV_EXCEPTION_FRAME_X( 10 )
 
#define RISCV_EXCEPTION_FRAME_S9   RISCV_EXCEPTION_FRAME_X( 11 )
 
#define RISCV_EXCEPTION_FRAME_S10   RISCV_EXCEPTION_FRAME_X( 12 )
 
#define RISCV_EXCEPTION_FRAME_S11   RISCV_EXCEPTION_FRAME_X( 13 )
 
#define RISCV_PLIC_MAX_INTERRUPTS   1024
 

Functions

void _RISCV_Interrupt_dispatch (uintptr_t mcause, struct Per_CPU_Control *cpu_self)
 
RTEMS_NO_RETURN void _CPU_Fatal_halt (uint32_t source, CPU_Uint32ptr error)
 
void _CPU_Context_volatile_clobber (uintptr_t pattern)
 
void _CPU_Context_validate (uintptr_t pattern)
 

Variables

volatile uint32_t * _RISCV_Counter_mutable
 
volatile uint32_t _RISCV_Counter_register
 

Detailed Description

RISCV Architecture Support.

Function Documentation

◆ _CPU_Fatal_halt()

RTEMS_NO_RETURN void _CPU_Fatal_halt ( uint32_t  source,
CPU_Uint32ptr  error 
)

COPYRIGHT (c) 2016. On-Line Applications Research Corporation (OAR).

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.