RTEMS  5.1
Files | Macros | Typedefs | Functions | Variables

LEON2 Board Support Package. More...

Files

file  btimer.c
 Implement a benchmark timer using timer 2.
 
file  ckinit.c
 Clock Tick Device Driver.
 
file  console.c
 TTY driver driver for the serial ports on the LEON console.
 
file  debugputs.c
 TTY driver for the serial ports on the LEON.
 
file  gnatsupp.c
 Support for gnat/rtems iterrupts and exception handling.
 
file  irq.h
 Interrupts definitions.
 
file  bsp.h
 Global BSP definitions.
 
file  leon.h
 
file  tm27.h
 Implementations for interrupt mechanisms for Time Test 27.
 
file  leon_open_eth.c
 LEON2 Opencores Ethernet MAC Configuration Information.
 
file  leon_smc91111.c
 SMC91111 Driver.
 
file  bspdelay.c
 LEON2 BSP Delay Method.
 
file  bspidle.c
 LEON2 Idle Thread.
 
file  bspstart.c
 LEON2 Cache Snooping Support.
 
file  setvec.c
 Installs an interrupt vector on the SPARC simulator.
 
file  spurious.c
 LEON Spurious Trap Handler.
 

Macros

#define LEON2   1
 
#define BSP_IDLE_TASK_BODY   bsp_idle_thread
 
#define RTEMS_BSP_NETWORK_DRIVER_NAME   "open_eth1"
 
#define RTEMS_BSP_NETWORK_DRIVER_ATTACH_OPENETH   rtems_leon_open_eth_driver_attach
 
#define RTEMS_BSP_NETWORK_DRIVER_ATTACH_SMC91111   rtems_smc91111_driver_attach_leon2
 
#define HAS_SMC91111
 
#define GRETH_SUPPORTED
 
#define GRETH_MEM_LOAD(addr)   leon_r32_no_cache((uintptr_t) addr)
 
#define BSP_PCI_BIG_ENDIAN
 
#define AMBAPPBUS_INFO_AVAIL   /* AMBAPP Bus driver */
 
#define GPTIMER_INFO_AVAIL   /* GPTIMER Timer driver */
 
#define GRETH_INFO_AVAIL   /* GRETH Ethernet driver */
 

Typedefs

typedef void(* bsp_shared_isr) (void *arg)
 

Functions

void * bsp_idle_thread (uintptr_t ignored)
 Optimized idle task. More...
 
int rtems_leon_open_eth_driver_attach (struct rtems_bsdnet_ifconfig *config)
 
int rtems_smc91111_driver_attach_leon2 (struct rtems_bsdnet_ifconfig *config)
 
rtems_isr_entry set_vector (rtems_isr_entry handler, rtems_vector_number vector, int type)
 Install an interrupt handler. More...
 
void BSP_fatal_exit (uint32_t error)
 
void bsp_spurious_initialize (void)
 
void BSP_shared_interrupt_init (void)
 
void bsp_isr_handler (rtems_vector_number vector)
 
void BSP_shared_interrupt_clear (int irq)
 
void BSP_shared_interrupt_unmask (int irq)
 
void BSP_shared_interrupt_mask (int irq)
 
void rtems_bsp_delay (int usecs)
 
int cchip1_register (void)
 
void console_outbyte_polled (int port, unsigned char ch)
 
int console_inbyte_nonblocking (int port)
 

Variables

int CPU_SPARC_HAS_SNOOPING
 
int RAM_START
 
int RAM_END
 
int RAM_SIZE
 
int PROM_START
 
int PROM_END
 
int PROM_SIZE
 
int CLOCK_SPEED
 
int end
 

Detailed Description

LEON2 Board Support Package.

Function Documentation

◆ bsp_idle_thread()

void* bsp_idle_thread ( uintptr_t  ignored)

Optimized idle task.

This BSP provides its own IDLE thread to override the RTEMS one.

This idle task sets the power mode to idle. This causes the processor clock to be stopped, while on-chip peripherals remain active. Any enabled interrupt from a peripheral or an external interrupt source will cause the processor to resume execution.

To enable the idle task use the following in the system configuration:

#include <bsp.h>
#define CONFIGURE_INIT
#define CONFIGURE_IDLE_TASK_BODY bsp_idle_thread
#include <confdefs.h>

This BSP provides its own IDLE thread to override the RTEMS one.

Optimized idle task.

The MSR[POW] bit is set to put the CPU into the low power mode defined in HID0. HID0 is set during starup in start.S.

This BSP provides its own IDLE thread to override the RTEMS one.

This idle task sets the power mode to idle. This causes the processor clock to be stopped, while on-chip peripherals remain active. Any enabled interrupt from a peripheral or an external interrupt source will cause the processor to resume execution.

To enable the idle task use the following in the system configuration:

#include <bsp.h>
#define CONFIGURE_INIT
#define CONFIGURE_IDLE_TASK_BODY bsp_idle_thread
#include <confdefs.h>

Optimized idle task.

The MSR[POW] bit is set to put the CPU into the low power mode defined in HID0. HID0 is set during starup in start.S.

◆ console_inbyte_nonblocking()

int console_inbyte_nonblocking ( int  port)

This method polls the specified port for an input character. console port.

Parameters
[in]portis the input port
Returns
This method returns the character read of -1 if there is no data.

◆ set_vector()

rtems_isr_entry set_vector ( rtems_isr_entry  handler,
rtems_vector_number  vector,
int  type 
)

Install an interrupt handler.

This method installs an interrupt handle.

Parameters
[in]handleris the isr routine
[in]vectoris the vector number
[in]typeindicates whether RTEMS or RAW intr
Returns
returns old vector