RTEMS  5.0.0
Modules | Files | Data Structures | Macros | Functions | Variables

SPARC64 Board Support Packages. More...

Modules

 MM
 MM.
 
 Niagara
 Niagara.
 
 USIII
 USIII Board Support Package.
 

Files

file  arch.h
 Various sparc64-specific macros.
 
file  boot.h
 
file  regdef.h
 
file  stack.h
 
file  arch.h
 Various sun4u-specific macros.
 

Data Structures

struct  utask_t
 
struct  taskmap_t
 
struct  memzone_t
 
struct  memmap_t
 
struct  bootinfo_t
 

Macros

#define ASI_AIUP   0x10 /** Access to primary context with user privileges. */
 
#define ASI_AIUS   0x11 /** Access to secondary context with user privileges. */
 
#define NWINDOWS   8 /** Number of register window sets. */
 
#define VMA   0x4000
 
#define LMA   VMA
 
#define TASKMAP_MAX_RECORDS   32
 
#define MEMMAP_MAX_RECORDS   32
 
#define BOOTINFO_TASK_NAME_BUFLEN   32
 
#define PSTATE_IE_BIT   (1 << 1)
 
#define PSTATE_AM_BIT   (1 << 3)
 
#define PSTATE_AG_BIT   (1 << 0)
 
#define PSTATE_IG_BIT   (1 << 11)
 
#define PSTATE_MG_BIT   (1 << 10)
 
#define PSTATE_PRIV_BIT   (1 << 2)
 
#define PSTATE_PEF_BIT   (1 << 4)
 
#define TSTATE_PSTATE_SHIFT   8
 
#define TSTATE_PRIV_BIT   (PSTATE_PRIV_BIT << TSTATE_PSTATE_SHIFT)
 
#define TSTATE_IE_BIT   (PSTATE_IE_BIT << TSTATE_PSTATE_SHIFT)
 
#define TSTATE_PEF_BIT   (PSTATE_PEF_BIT << TSTATE_PSTATE_SHIFT)
 
#define TSTATE_CWP_MASK   0x1f
 
#define WSTATE_NORMAL(n)   (n)
 
#define WSTATE_OTHER(n)   ((n) << 3)
 
#define ICBUS_CONFIG_MID_SHIFT   17
 
#define STACK_ITEM_SIZE   8
 
#define STACK_ALIGNMENT   16
 
#define STACK_WINDOW_SAVE_AREA_SIZE   (16 * STACK_ITEM_SIZE)
 
#define STACK_ARG_SAVE_AREA_SIZE   (6 * STACK_ITEM_SIZE)
 
#define STACK_BIAS   2047
 
#define STACK_ARG0   0
 
#define STACK_ARG1   8
 
#define STACK_ARG2   16
 
#define STACK_ARG3   24
 
#define STACK_ARG4   32
 
#define STACK_ARG5   40
 
#define STACK_ARG6   48
 
#define ASI_NUCLEUS_QUAD_LDD   0x24 /** ASI for 16-byte atomic loads. */
 
#define ASI_DCACHE_TAG   0x47 /** ASI D-Cache Tag. */
 
#define ASI_ICBUS_CONFIG   0x4a /** ASI of the UPA_CONFIG/FIREPLANE_CONFIG register. */
 

Functions

void arch_pre_main (void)
 

Variables

bootinfo_t bootinfo
 

Detailed Description

SPARC64 Board Support Packages.

Macro Definition Documentation

◆ STACK_ALIGNMENT

#define STACK_ALIGNMENT   16

According to SPARC Compliance Definition, every stack frame is 16-byte aligned.

◆ STACK_ARG_SAVE_AREA_SIZE

#define STACK_ARG_SAVE_AREA_SIZE   (6 * STACK_ITEM_SIZE)

Six extended words for first six arguments.

◆ STACK_BIAS

#define STACK_BIAS   2047

By convention, the actual top of the stack is sp + STACK_BIAS.

◆ STACK_WINDOW_SAVE_AREA_SIZE

#define STACK_WINDOW_SAVE_AREA_SIZE   (16 * STACK_ITEM_SIZE)

16-extended-word save area for i[0-7] and l[0-7] registers.