Changeset 4daebbd in rtems for cpukit/score/cpu/bfin/cpu.c


Ignore:
Timestamp:
Aug 14, 2008, 3:25:14 PM (12 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.10, 4.11, 4.9, master
Children:
e73f9f6b
Parents:
b281e42
Message:

2008-08-14 Sebastian Huber <sebastian.huber@…>

  • rtems/include/rtems/rtems/ratemon.h, rtems/include/rtems/rtems/status.h, score/include/rtems/score/coremutex.h, score/include/rtems/score/object.h: Removed extraneous commas.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • cpukit/score/cpu/bfin/cpu.c

    rb281e42 r4daebbd  
    3030 */
    3131
     32
     33extern void _ISR15_Handler(void);
     34extern void _CPU_Emulation_handler(void);
     35extern void _CPU_Reset_handler(void);
     36extern void _CPU_NMI_handler(void);
     37extern void _CPU_Exception_handler(void);
     38extern void _CPU_Unhandled_Interrupt_handler(void);
    3239
    3340void _CPU_Initialize(
     
    4653   */
    4754
    48   _CPU_Thread_dispatch_pointer = thread_dispatch;
     55  /*_CPU_Thread_dispatch_pointer = thread_dispatch;*/
    4956
    5057  /*
     
    5663
    5764  /* FP context initialization support goes here */
    58 }
     65
     66
     67
     68  proc_ptr ignored;
     69
     70#if 0
     71  /* occassionally useful debug stuff */
     72  int i;
     73  _CPU_ISR_install_raw_handler(0, _CPU_Emulation_handler, &ignored);
     74  _CPU_ISR_install_raw_handler(1, _CPU_Reset_handler, &ignored);
     75  _CPU_ISR_install_raw_handler(2, _CPU_NMI_handler, &ignored);
     76  _CPU_ISR_install_raw_handler(3, _CPU_Exception_handler, &ignored);
     77  for (i = 5; i < 15; i++)
     78    _CPU_ISR_install_raw_handler(i, _CPU_Unhandled_Interrupt_handler, &ignored);
     79#endif
     80
     81  /* install handler that will be used to call _Thread_Dispatch */
     82  _CPU_ISR_install_raw_handler( 15, _ISR15_Handler, &ignored );
     83  /* enable self nesting */
     84  __asm__ __volatile__ ("syscfg = %0" : : "d" (0x00000004));
     85}
     86
     87
     88
    5989
    6090/*PAGE
     
    79109    _tmpimask = *((uint32_t*)IMASK);
    80110
    81     return _tmpimask;
     111    return (_tmpimask & 0xffe0) ? 0 : 1;
    82112}
    83113
     
    137167)
    138168{
     169   proc_ptr ignored;
     170
    139171   *old_handler = _ISR_Vector_table[ vector ];
    140 
    141    /*
    142     *  If the interrupt vector table is a table of pointer to isr entry
    143     *  points, then we need to install the appropriate RTEMS interrupt
    144     *  handler for this vector number.
    145     */
    146 
    147    _CPU_ISR_install_raw_handler( vector, _ISR_Handler, old_handler );
    148172
    149173   /*
     
    153177
    154178    _ISR_Vector_table[ vector ] = new_handler;
    155 }
     179
     180    _CPU_ISR_install_raw_handler( vector, _ISR_Handler, &ignored );
     181}
     182
     183#if (CPU_PROVIDES_IDLE_THREAD_BODY == TRUE)
     184void *_CPU_Thread_Idle_body(uint32_t ignored) {
     185
     186    while (1) {
     187        __asm__ __volatile__("ssync; idle; ssync");
     188    }
     189}
     190#endif
    156191
    157192/*
     
    171206
    172207    the_context->register_sp = stack_high;
    173     // gcc/config/bfin/bfin.h defines CPU_MINIMUM_STACK_FRAME_SIZE = 0 thus we do sp=fp
    174     // is this correct ?????
    175     the_context->register_fp = stack_high;
    176208    the_context->register_rets = (uint32_t) entry_point;
    177 
    178     //mask the interrupt level
     209    the_context->imask = new_level ? 0 : 0xffff;
    179210}
    180211
Note: See TracChangeset for help on using the changeset viewer.