Changeset 59d5575 in rtems


Ignore:
Timestamp:
Oct 5, 2005, 7:30:18 PM (15 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Children:
eefbe35
Parents:
3ffa814
Message:

2005-10-05 Jiri Gaisler <jiri@…>

Edvin Catovic <edvin@…>
Konrad Eisele <konrad@…>

PR 827/bsps

  • ChangeLog?, cpu.c, cpu_asm.S, rtems/score/cpu.h: Portion of large update of SPARC BSPs. Includes addition of sis, leon2 and leon3 BSPs, deletion of leon BSP, addition of SMC91111 NIC driver and much more.
Location:
cpukit/score/cpu/sparc
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • cpukit/score/cpu/sparc/ChangeLog

    r3ffa814 r59d5575  
     12005-10-05  Jiri Gaisler <jiri@gaisler.com>
     2            Edvin Catovic <edvin@gaisler.com>
     3            Konrad Eisele <konrad@gaisler.com>
     4
     5        PR 827/bsps
     6        * ChangeLog, cpu.c, cpu_asm.S, rtems/score/cpu.h: Portion of large
     7        update of SPARC BSPs. Includes addition of sis, leon2 and leon3 BSPs,
     8        deletion of leon BSP, addition of SMC91111 NIC driver and much more.
     9
     102004-06-16      Edvin Catovic <edvin@gaisler.com>
     11
     12        * cpu_asm.S: Added FP context initialization routine
     13        _CPU_Context_initialize_fp
     14        * cpu.c: Changed FP context initialization.
     15        * rtems/score/sparc.h: Defined SPARC_HAS_FPU to be 1 (Non-FP BSPs
     16        erc32nfp and leon1 are removed)
     17
    1182004-02-26      Andreas Karlsson <andreas.karlsson@space.se>
    219
  • cpukit/score/cpu/sparc/cpu.c

    r3ffa814 r59d5575  
    5454)
    5555{
    56 #if (SPARC_HAS_FPU == 1)
    5756  void                  *pointer;
    5857
    5958  /*
    60    *  This seems to be the most appropriate way to obtain an initial
    61    *  FP context on the SPARC.  The NULL fp context is copied it to
     59   *  FP context is initialized.  The NULL fp context is copied it to
    6260   *  the task's FP context during Context_Initialize.
    6361   */
    6462
    6563  pointer = &_CPU_Null_fp_context;
    66   _CPU_Context_save_fp( &pointer );
    67 #endif
     64  _CPU_Context_initialize_fp(pointer);
    6865
    6966  /*
     
    317314    tmp_psr &= ~SPARC_PSR_EF_MASK;      /* disabled by default */
    318315   
    319 #if (SPARC_HAS_FPU == 1)
    320316    /*
    321317     *  If this bit is not set, then a task gets a fault when it accesses
     
    326322    if ( is_fp )
    327323      tmp_psr |= SPARC_PSR_EF_MASK;
    328 #endif
     324
    329325    the_context->psr = tmp_psr;
    330326}
  • cpukit/score/cpu/sparc/cpu_asm.S

    r3ffa814 r59d5575  
    2424#include <asm.h>
    2525
    26 #if (SPARC_HAS_FPU == 1)
     26/*
     27 *  void _CPU_Context_initialize_fp(
     28 *    void *fp_context_ptr
     29 *  )
     30 *
     31 *  This routine is responsible for initializing the FP context
     32 *  at *fp_context_ptr. All registers and FSR in the FP context
     33 *  are initailized to 0. 
     34 * 
     35 */
     36
     37        .align 4
     38        PUBLIC(_CPU_Context_initialize_fp)
     39SYM(_CPU_Context_initialize_fp):
     40        set     0, %l1
     41fpcontextinit: 
     42        std     %g0, [%o0]              ! write register fields of the FP context
     43        add     %l1, 1, %l1
     44        cmp     %l1, 16
     45        bne     fpcontextinit                                                   
     46        add     %o0, 8, %o0
     47        retl           
     48        st      %g0, [%o0]              ! write fsr field of the FP context
     49               
     50       
    2751
    2852/*
     
    123147        ret
    124148        restore
    125 
    126 #endif /* SPARC_HAS_FPU */
    127149
    128150/*
  • cpukit/score/cpu/sparc/rtems/score/cpu.h

    r3ffa814 r59d5575  
    155155 */
    156156
    157 #define CPU_PROVIDES_IDLE_THREAD_BODY    FALSE
     157#define CPU_PROVIDES_IDLE_THREAD_BODY    TRUE
    158158
    159159/*
Note: See TracChangeset for help on using the changeset viewer.