28 #ifndef LIBBSP_SPARC_LEON3_BSP_H    29 #define LIBBSP_SPARC_LEON3_BSP_H    59 #define BSP_IDLE_TASK_BODY bsp_idle_thread    62 #define BSP_NUMBER_OF_TERMIOS_PORTS 8    67 struct rtems_bsdnet_ifconfig;
    68 extern int rtems_leon_open_eth_driver_attach(
    69   struct rtems_bsdnet_ifconfig *
config,
    72 extern int rtems_smc91111_driver_attach_leon3(
    73   struct rtems_bsdnet_ifconfig *
config,
    76 extern int rtems_leon_greth_driver_attach(
    77   struct rtems_bsdnet_ifconfig *
config,
    81 #define RTEMS_BSP_NETWORK_DRIVER_NAME_OPENETH "open_eth1"    82 #define RTEMS_BSP_NETWORK_DRIVER_ATTACH_OPENETH   \    83     rtems_leon_open_eth_driver_attach    84 #define RTEMS_BSP_NETWORK_DRIVER_NAME_SMC91111 "smc_eth1"    85 #define RTEMS_BSP_NETWORK_DRIVER_ATTACH_SMC91111 \    86     rtems_smc91111_driver_attach_leon3    87 #define RTEMS_BSP_NETWORK_DRIVER_NAME_GRETH "gr_eth1"    88 #define RTEMS_BSP_NETWORK_DRIVER_ATTACH_GRETH \    89     rtems_leon_greth_driver_attach    91 #ifndef RTEMS_BSP_NETWORK_DRIVER_NAME    92 #define RTEMS_BSP_NETWORK_DRIVER_NAME   RTEMS_BSP_NETWORK_DRIVER_NAME_GRETH    93 #define RTEMS_BSP_NETWORK_DRIVER_ATTACH RTEMS_BSP_NETWORK_DRIVER_ATTACH_GRETH    99 #define GRETH_SUPPORTED   100 #define GRETH_MEM_LOAD(addr) leon_r32_no_cache((uintptr_t)addr)   102 extern int   CPU_SPARC_HAS_SNOOPING;
   110 extern int   RAM_START;
   114 extern int   PROM_START;
   116 extern int   PROM_SIZE;
   118 extern int   CLOCK_SPEED;
   125     rtems_isr_entry     handler,                
   130 void BSP_fatal_exit(uint32_t error);
   132 void bsp_spurious_initialize( 
void );
   137 void rtems_bsp_delay(
int usecs);
   140 typedef void (*bsp_shared_isr)(
void *arg);
   143 extern void BSP_shared_interrupt_init(
void);
   158 static __inline__ 
int BSP_shared_interrupt_register
   177 static __inline__ 
int BSP_shared_interrupt_unregister
   195 extern void BSP_shared_interrupt_clear(
int irq);
   204 extern void BSP_shared_interrupt_unmask(
int irq);
   213 extern void BSP_shared_interrupt_mask(
int irq);
   215 #if defined(RTEMS_SMP) || defined(RTEMS_MULTIPROCESSING)   220 extern const unsigned char LEON3_mp_irq;
   231 extern const unsigned char LEON3_irq_to_cpu[32];
   239 #define AMBAPPBUS_INFO_AVAIL             240 #define APBUART_INFO_AVAIL               241 #define GPTIMER_INFO_AVAIL               242 #define GRETH_INFO_AVAIL               Definition: deflate.c:115
 
rtems_isr_entry set_vector(rtems_isr_entry handler, rtems_vector_number vector, int type)
Install an interrupt handler.
Definition: setvec.c:28
 
#define RTEMS_INTERRUPT_SHARED
Allows that this interrupt handler may share a common interrupt vector with other handler.
Definition: irq-extension.h:50
 
rtems_status_code rtems_interrupt_handler_remove(rtems_vector_number vector, rtems_interrupt_handler handler, void *arg)
Removes the interrupt handler routine handler with argument arg for the interrupt vector with number ...
Definition: irq.c:175
 
rtems_status_code rtems_interrupt_handler_install(rtems_vector_number vector, const char *info, rtems_option options, rtems_interrupt_handler handler, void *arg)
Installs the interrupt handler routine handler for the interrupt vector with number vector.
Definition: irq.c:127
 
DEFAULT_INITIAL_EXTENSION Support.
 
ISR_Vector_number rtems_vector_number
Control block type used to manage the vectors.
Definition: intr.h:47
 
Header file for the Interrupt Manager Extension.
 
void * bsp_idle_thread(uintptr_t ignored)
Optimized idle task.
Definition: bspidle.c:26
 
LEON3 BSP data types and macros.