/* bsp.h * * This include file contains some definitions specific to the * BSVC simulator BSP. * * COPYRIGHT (c) 1989-2000. * On-Line Applications Research Corporation (OAR). * * The license and distribution terms for this file may be * found in the file LICENSE in this distribution or at * http://www.rtems.com/license/LICENSE. * * $Id$ */ #ifndef __BSVC_SIM #define __BSVC_SIM #ifdef __cplusplus extern "C" { #endif #include #include #include #include #include /* * Define some hardware constants here */ /* * Simple spin delay in microsecond units for device drivers. * This is very dependent on the clock speed of the target. */ #define rtems_bsp_delay( microseconds ) \ { register uint32_t _delay=(microseconds); \ register uint32_t _tmp = 0; /* initialized to avoid warning */ \ __asm__ volatile( "0: \ remo 3,31,%0 ; \ cmpo 0,%0 ; \ subo 1,%1,%1 ; \ cmpobne.t 0,%1,0b " \ : "=d" (_tmp), "=d" (_delay) \ : "0" (_tmp), "1" (_delay) ); \ } /* functions */ rtems_isr_entry set_vector( rtems_isr_entry, rtems_vector_number, int ); #ifdef __cplusplus } #endif #endif