Changeset 17d9f5f in rtems


Ignore:
Timestamp:
Sep 18, 2008, 8:43:07 PM (11 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.10, 4.11, master
Children:
975021e7
Parents:
3a261b9b
Message:

2008-09-18 Joel Sherrill <joel.sherrill@…>

  • Makefile.am, configure.ac, startup/bspstart.c, startup/linkcmds: Use top level shared bsp_get_work_area() implementation.
Location:
c/src/lib/libbsp/i386/ts_386ex
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • c/src/lib/libbsp/i386/ts_386ex/ChangeLog

    r3a261b9b r17d9f5f  
     12008-09-18      Joel Sherrill <joel.sherrill@oarcorp.com>
     2
     3        * Makefile.am, configure.ac, startup/bspstart.c, startup/linkcmds: Use
     4        top level shared bsp_get_work_area() implementation.
     5
    162008-09-18      Joel Sherrill <joel.sherrill@oarcorp.com>
    27
  • c/src/lib/libbsp/i386/ts_386ex/Makefile.am

    r3a261b9b r17d9f5f  
    4040include_HEADERS += ../../i386/shared/comm/uart.h
    4141startup_SOURCES = ../../shared/bspclean.c ../../shared/bsplibc.c \
    42     ../../shared/bsppredriverhook.c \
     42    ../../shared/bsppredriverhook.c ../../shared/bsppretaskinghook.c \
     43    ../../shared/bspgetworkarea.c \
    4344    ../../shared/bsppost.c startup/bspstart.c ../../shared/bootcard.c \
    4445    ../../shared/sbrk.c ../../i386/shared/irq/idt.c \
  • c/src/lib/libbsp/i386/ts_386ex/configure.ac

    r3a261b9b r17d9f5f  
    4141[Enables some debugging in the BSP's uart.])
    4242
     43RTEMS_BSP_BOOTCARD_HANDLES_RAM_ALLOCATION
     44
    4345# Explicitly list all Makefiles here
    4446AC_CONFIG_FILES([Makefile])
  • c/src/lib/libbsp/i386/ts_386ex/startup/bspstart.c

    r3a261b9b r17d9f5f  
    55 *  before this routine is invoked.
    66 *
    7  *  COPYRIGHT (c) 1989-1999.
     7 *  COPYRIGHT (c) 1989-2008.
    88 *  On-Line Applications Research Corporation (OAR).
    99 *
     
    2121 */
    2222
    23 void bsp_clean_up(void);
    24 
    2523#include <bsp.h>
    2624
    27 /*
    28  *  Tells us where to put the workspace in case remote debugger is present.
    29  */
    30 
    31 extern uint32_t          rdb_start;
    32 
    33 /*
    34  *  Use the shared implementations of the following routines
    35  */
    36 
    37 void bsp_libc_init( void *, uint32_t, int );
    38 
    39 /*
    40  *  Function:   bsp_pretasking_hook
    41  *  Created:    95/03/10
    42  *
    43  *  Description:
    44  *      BSP pretasking hook.  Called just before drivers are initialized.
    45  *      Used to setup libc and install any BSP extensions.
    46  *
    47  *  NOTES:
    48  *      Must not use libc (to do io) from here, since drivers are
    49  *      not yet initialized.
    50  *
    51  */
    52 
    53 void bsp_pretasking_hook(void)
    54 {
    55     extern int heap_bottom;
    56     uint32_t         heap_start;
    57     uint32_t         heap_size;
    58 
    59     heap_start = (uint32_t) &heap_bottom;
    60     if (heap_start & (CPU_ALIGNMENT-1))
    61       heap_start = (heap_start + CPU_ALIGNMENT) & ~(CPU_ALIGNMENT-1);
    62 
    63     heap_size = Configuration.work_space_start -(void *) heap_start ;
    64     heap_size &= 0xfffffff0;  /* keep it as a multiple of 16 bytes */
    65 
    66     bsp_libc_init((void *) heap_start, heap_size, 0);
    67 }
     25extern void rtems_irq_mngt_init(void);
    6826
    6927/*
     
    7230 *  This routine does the bulk of the system initialization.
    7331 */
    74 
    7532void bsp_start( void )
    7633{
    77   extern void rtems_irq_mngt_init(void);
    78 
    79   Configuration.work_space_start = (void *)
    80      RAM_END - rtems_configuration_get_work_space_size();
    8134
    8235  /*
     
    8942   */
    9043  rtems_exception_init_mngt();
    91 
    92   /*
    93    *  The following information is very useful when debugging.
    94    */
    95 
    96 #ifdef BSP_DEBUG
    97   printk( "RAM_START = 0x%x\nRAM_END = 0x%x\n", RAM_START, RAM_END );
    98   printk( "work_space_start = 0x%x\n",
    99      Configuration.work_space_start );
    100   printk( "work_space_size = 0x%x\n",
    101      rtems_configuration_get_work_space_size() );
    102   printk( "microseconds_per_tick = 0x%x\n",
    103      rtems_configuration_get_microseconds_per_tick() );
    104   printk( "ticks_per_timeslice = 0x%x\n",
    105      rtems_configuration_get_ticks_per_timeslice() );
    106 
    107   /*  printk( "_heap_size = 0x%x\n", _heap_size );
    108       printk( "_stack_size = 0x%x\n", _stack_size ); */
    109 #endif
    11044}
    111 
    112 void bsp_clean_up(void) {
    113   printk("bsp_cleanup called\n");
    114 }
  • c/src/lib/libbsp/i386/ts_386ex/startup/linkcmds

    r3a261b9b r17d9f5f  
    2020 */
    2121
    22         ENTRY(_init_i386ex) ;
     22RamBase = DEFINED(RamBase) ? RamBase : 0x00100000;
     23RamSize = DEFINED(RamSize) ? RamSize : 512K;
     24HeapSize = DEFINED(HeapSize) ? HeapSize : 0x0;
     25
     26ENTRY(_init_i386ex);
    2327
    2428SECTIONS
     
    170174        stack_origin = _ebss + stack_size ;
    171175        heap_bottom  = stack_origin + 4 ; 
     176        . = ALIGN(0x10);
     177        WorkAreaBase = .;
    172178
    173179
Note: See TracChangeset for help on using the changeset viewer.