20#ifndef LIBBSP_M68K_UC5282_BSP_H
21#define LIBBSP_M68K_UC5282_BSP_H
49#define RTEMS_MCF5282_BSP_ENABLE_DATA_CACHE
53#include <mcf5282/mcf5282.h>
57struct rtems_bsdnet_ifconfig;
58extern int rtems_fec_driver_attach (
struct rtems_bsdnet_ifconfig *
config,
int attaching );
59#define RTEMS_BSP_NETWORK_DRIVER_NAME "fs1"
60#define RTEMS_BSP_NETWORK_DRIVER_ATTACH rtems_fec_driver_attach
75#define RTEMS_BSP_PGM_ERASE_FIRST 0x1
76#define RTEMS_BSP_PGM_RESET_AFTER 0x2
77#define RTEMS_BSP_PGM_EXEC_AFTER 0x4
78#define RTEMS_BSP_PGM_HALT_AFTER 0x8
80uint32_t bsp_get_CPU_clock_speed(
void);
82int bsp_sysReset(
int flags);
84unsigned const char *bsp_gethwaddr(
int a);
85const char *bsp_getbenv(
const char *a);
86int bsp_flash_erase_range(
volatile unsigned short *flashptr,
int start,
int end);
87int bsp_flash_write_range(
volatile unsigned short *flashptr,
bsp_mnode_t *chain,
int offset);
99#define FEC_IRQ_LEVEL 4
100#define FEC_IRQ_RX_PRIORITY 7
101#define FEC_IRQ_TX_PRIORITY 6
103#define PIT3_IRQ_LEVEL 4
104#define PIT3_IRQ_PRIORITY 0
106#define UART0_IRQ_LEVEL 3
107#define UART0_IRQ_PRIORITY 7
108#define UART1_IRQ_LEVEL 3
109#define UART1_IRQ_PRIORITY 6
110#define UART2_IRQ_LEVEL 3
111#define UART2_IRQ_PRIORITY 5
117#define VME_AM_STD_SUP_ASCENDING 0x3f
118#define VME_AM_STD_SUP_PGM 0x3e
119#define VME_AM_STD_USR_ASCENDING 0x3b
120#define VME_AM_STD_USR_PGM 0x3a
121#define VME_AM_STD_SUP_DATA 0x3d
122#define VME_AM_STD_USR_DATA 0x39
123#define VME_AM_EXT_SUP_ASCENDING 0x0f
124#define VME_AM_EXT_SUP_PGM 0x0e
125#define VME_AM_EXT_USR_ASCENDING 0x0b
126#define VME_AM_EXT_USR_PGM 0x0a
127#define VME_AM_EXT_SUP_DATA 0x0d
128#define VME_AM_EXT_USR_DATA 0x09
129#define VME_AM_SUP_SHORT_IO 0x2d
130#define VME_AM_USR_SHORT_IO 0x29
136typedef void (*BSP_VME_ISR_t)(
void *usrArg,
unsigned long vector);
137BSP_VME_ISR_t BSP_getVME_isr(
unsigned long vector,
void **parg);
138int BSP_installVME_isr(
unsigned long vector, BSP_VME_ISR_t handler,
void *usrArg);
139int BSP_removeVME_isr(
unsigned long vector, BSP_VME_ISR_t handler,
void *usrArg);
140int BSP_enableVME_int_lvl(
unsigned int level);
141int BSP_disableVME_int_lvl(
unsigned int level);
142int BSP_vme2local_adrs(
unsigned am,
unsigned long vmeaddr,
unsigned long *plocaladdr);
150#define BSP_IDLE_TASK_BODY bsp_idle_thread
155int bsp_cpu_load_percentage(
void);
160void bsp_reset_cause(
char *buf,
size_t capacity);
169 volatile uint16_t status;
171 volatile void *buffer;
175 uint32_t idle_counter;
176 uint32_t filtered_idle;
177 uint32_t max_idle_count;
178 uint32_t pitc_per_tick;
179 uint32_t nsec_per_pitc;
This header file provides the kernel character input/output support API.
This header file provides the default definition of BSP_INITIAL_EXTENSION.
ISR_Handler_entry rtems_isr_entry
Interrupt service routines installed by rtems_interrupt_catch() shall have this type.
Definition: intr.h:134
ISR_Vector_number rtems_vector_number
This integer type represents interrupt vector numbers.
Definition: intr.h:102
rtems_status_code
This enumeration provides status codes for directives of the Classic API.
Definition: status.h:85
void * bsp_idle_thread(uintptr_t ignored)
Optimized idle task.
Definition: bspidle.c:39
This header file defines the RTEMS Classic API.
Definition: deflate.c:114