RTEMS  5.1
Files | Macros | Typedefs | Functions | Variables

ERC32 Board Support Package. More...

Files

file  bsp.h
 Global BSP definitions.
 

Macros

#define BSP_IDLE_TASK_BODY   bsp_idle_thread
 
#define RTEMS_BSP_NETWORK_DRIVER_NAME   "sonic1"
 
#define RTEMS_BSP_NETWORK_DRIVER_ATTACH   rtems_erc32_sonic_driver_attach
 

Typedefs

typedef void(* bsp_shared_isr) (void *arg)
 

Functions

void * bsp_idle_thread (uintptr_t ignored)
 Optimized idle task. More...
 
int rtems_erc32_sonic_driver_attach (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)
 
void console_outbyte_polled (int port, unsigned char ch)
 
int console_inbyte_nonblocking (int port)
 

Variables

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

ERC32 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