Changeset 0ba477ea in rtems


Ignore:
Timestamp:
Sep 16, 2008, 7:03:19 PM (11 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.10, 4.11, master
Children:
7b18d2f
Parents:
2a0726aa
Message:

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

  • Makefile.am, configure.ac, include/bspopts.h.in, startup/bspstart.c, startup/linkcmds, startup/linkcmds.m5484FireEngine.flash: Add use of bsp_get_work_area() in its own file and rely on BSP Framework to perform more initialization. Remove unnecessary includes of rtems/libio.h and rtems/libcsupport.h.
Location:
c/src/lib/libbsp/m68k/genmcf548x
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • c/src/lib/libbsp/m68k/genmcf548x/ChangeLog

    r2a0726aa r0ba477ea  
     12008-09-16      Joel Sherrill <joel.sherrill@oarcorp.com>
     2
     3        * Makefile.am, configure.ac, include/bspopts.h.in, startup/bspstart.c,
     4        startup/linkcmds, startup/linkcmds.m5484FireEngine.flash: Add use of
     5        bsp_get_work_area() in its own file and rely on BSP Framework to
     6        perform more initialization. Remove unnecessary includes of
     7        rtems/libio.h and rtems/libcsupport.h.
     8
    192008-09-10      Joel Sherrill <joel.sherrill@oarcorp.com>
    210
  • c/src/lib/libbsp/m68k/genmcf548x/Makefile.am

    r2a0726aa r0ba477ea  
    2727
    2828startup_SOURCES = startup/bspclean.c ../../shared/bsplibc.c  \
    29   ../../shared/bsppost.c ../../m68k/shared/m68kpretaskinghook.c \
     29  ../../shared/bsppost.c ../../m68k/shared/m68kbspgetworkarea.c \
     30  ../../shared/bsppretaskinghook.c ../../shared/bsppredriverhook.c \
    3031  startup/init548x.c startup/bspstart.c ../../shared/bootcard.c \
    3132  ../../shared/sbrk.c ../../m68k/shared/setvec.c \
  • c/src/lib/libbsp/m68k/genmcf548x/configure.ac

    r2a0726aa r0ba477ea  
    2525[Use a clock speed of 100000000 for the m5484FireEngine board])
    2626
     27RTEMS_BSP_BOOTCARD_HANDLES_RAM_ALLOCATION
     28
    2729# Explicitly list all Makefiles here
    2830AC_CONFIG_FILES([Makefile])
  • c/src/lib/libbsp/m68k/genmcf548x/include/bspopts.h.in

    r2a0726aa r0ba477ea  
    11/* include/bspopts.h.in.  Generated from configure.ac by autoheader.  */
     2
     3/* BSP uses shared logic in bootcard.c */
     4#undef BSP_BOOTCARD_HANDLES_RAM_ALLOCATION
    25
    36/* Use a clock speed of 100000000 for the m5484FireEngine board */
    47#undef BSP_CPU_CLOCK_SPEED
     8
     9/* If defined, then PSIM will put a non-zero pattern into the RTEMS Workspace
     10   and C program heap. This should assist in finding code that assumes memory
     11   starts set to zero. */
     12#undef BSP_DIRTY_MEMORY
    513
    614/* Define to the address where bug reports for this package should be sent. */
  • c/src/lib/libbsp/m68k/genmcf548x/startup/bspstart.c

    r2a0726aa r0ba477ea  
    4545
    4646#include <bsp.h>
    47 #include <rtems/libio.h>
    48 #include <rtems/libcsupport.h>
    49 #include <string.h>
    50 
    51 char *HeapStart, *HeapEnd;
    52 unsigned long _HeapSize;
    5347
    5448extern uint32_t _CPU_cacr_shadow;
    55 
    56 extern unsigned long  _M68k_Ramsize;
    5749
    5850/*
     
    7163extern char _TopRamReserved [];
    7264extern char _WorkspaceBase [];
    73 extern char _RamSize[];
    7465
    7566/*
     
    198189
    199190/*
    200  *  Use the shared implementations of the following routines
    201  */
    202 
    203 void bsp_predriver_hook(void)
    204 {
    205         /* Do nothing */
    206 }
    207 
    208 void bsp_postdriver_hook(void);
    209 void bsp_libc_init( void *, uint32_t, int );
    210 void bsp_pretasking_hook(void);         /* m68k version */
    211 
    212 void bsp_calc_mem_layout(void)
    213 {
    214   /*
    215    * compute the memory layout:
    216    * - first unused address is Workspace start
    217    * - Heap starts at end of workspace
    218    * - Heap ends at end of memory - reserved memory area
    219    */
    220   Configuration.work_space_start = _WorkspaceBase;
    221 
    222   HeapStart = ((char *)Configuration.work_space_start +
    223                     Configuration.work_space_size);
    224 
    225   HeapEnd = (void *)(RAM_END - (uint32_t)_TopRamReserved);
    226 
    227   _HeapSize = HeapEnd - HeapStart;
    228 }
    229 
    230 
    231 /*
    232191 * Coldfire acr and mmu settings
    233192 */
     
    289248void bsp_start( void )
    290249{
    291   _M68k_Ramsize = (unsigned long)_RamSize;              /* RAM size set in linker script */
    292 
    293   /*
    294    *  Allocate the memory for the RTEMS Work Space and Heap.  This can come from
    295    *  a variety of places: hard coded address, malloc'ed from outside
    296    *  RTEMS world (e.g. simulator or primitive memory manager), or (as
    297    *  typically done by stock BSPs) by subtracting the required amount
    298    *  of work space from the last physical address on the CPU board.
    299    */
    300   bsp_calc_mem_layout();
    301 
    302250  /*
    303251   * do mapping of acr's and/or mmu
  • c/src/lib/libbsp/m68k/genmcf548x/startup/linkcmds

    r2a0726aa r0ba477ea  
    4949 * Location and size of on-chip devices
    5050 */
    51 _SdramBase          = DEFINED(_SdramBase)        ? _SdramBase        : 0x00000000;
    52 _SdramSize          = DEFINED(_SdramSize)        ? _SdramSize        : (64 * 1024 * 1024);
    53 _SysSramBase        = DEFINED(_SysSramBase)      ? _SysSramBase      : __MBAR + 0x00010000;
    54 _SysSramSize        = DEFINED(_SysSramSize)      ? _SysSramSize      : (32 * 1024);
    55 _McdapiBase         = DEFINED(_McdapiBase)       ? _McdapiBase       : _SysSramBase;                 
    56 _McdapiSize         = DEFINED(_McdapiSize)       ? _McdapiSize       : (12 * 1024);                 
    57 _CoreSramBase0      = DEFINED(_CoreSramBase0)    ? _CoreSramBase0    : 0x20000000;
    58 _CoreSramBase1      = DEFINED(_CoreSramBase1)    ? _CoreSramBase1    : 0x20001000;
    59 _CoreSramSize0      = DEFINED(_CoreSramSize0)    ? _CoreSramSize0    : (4 * 1024);
    60 _CoreSramSize1      = DEFINED(_CoreSramSize1)    ? _CoreSramSize1    : (4 * 1024);
    61 _BootFlashBase      = DEFINED(_BootFlashBase)    ? _BootFlashBase    : 0xFF800000;
    62 _BootFlashSize      = DEFINED(_BootFlashSize)    ? _BootFlashSize    : (2 * 1024 * 1024);
    63 _CodeFlashBase      = DEFINED(_CodeFlashBase)    ? _CodeFlashBase    : 0xE0000000;
    64 _CodeFlashSize      = DEFINED(_CodeFlashSize)    ? _CodeFlashSize    : (16 * 1024 * 1024);
    65 
    66 _VectorRam          = DEFINED(_VectorRam)        ? _VectorRam        : _SdramBase;
    67 _DataRam            = DEFINED(_DataRam)          ? _DataRam          : _data_dest_start;
    68 _DataRom            = DEFINED(_DataRom)          ? _DataRom          : _data_src_start;
    69 _DataEnd            = DEFINED(_DataEnd)          ? _DataEnd          : _data_dest_end;
    70 _BssStart           = DEFINED(_BssStart)         ? _BssStart         : _clear_start;
    71 _BssEnd             = DEFINED(_BssEnd)           ? _BssEnd           : _clear_end;
    72 _SpInit             = DEFINED(_SpInit)           ? _SpInit           : _EndInitStackSpace;
    73 _InitPc             = DEFINED(_InitPc)           ? _InitPc           : _SdramBase + 0x400;
    74 
    75 _InitStackSize      = DEFINED(StackSize)         ? StackSize         : 0x800;  /* 2 kB   */
    76 _TopRamReserved     = DEFINED(_TopRamReserved)   ? _TopRamReserved   : 0;
    77 
    78 _RamBase            = DEFINED(_SdramBase)        ? _SdramBase        : _SdramBase;
    79 _RamSize            = DEFINED(_SdramSize)        ? _SdramSize        : _SdramSize;
    80 _VBR                = DEFINED(_VBR)              ? _VBR              : _RamBase;
    81 
    82 __MBAR              = DEFINED(__MBAR)            ? __MBAR            : 0x10000000;
     51_SdramBase      = DEFINED(_SdramBase)      ? _SdramBase   : 0x00000000;
     52_SdramSize      = DEFINED(_SdramSize)      ? _SdramSize   : (64 * 1024*1024);
     53_SysSramBase    = DEFINED(_SysSramBase)    ? _SysSramBase : __MBAR + 0x00010000;
     54_SysSramSize    = DEFINED(_SysSramSize)    ? _SysSramSize : (32 * 1024);
     55_McdapiBase     = DEFINED(_McdapiBase)     ? _McdapiBase  : _SysSramBase;                 
     56_McdapiSize     = DEFINED(_McdapiSize)     ? _McdapiSize  : (12 * 1024);                 
     57_CoreSramBase0  = DEFINED(_CoreSramBase0)  ? _CoreSramBase0 : 0x20000000;
     58_CoreSramBase1  = DEFINED(_CoreSramBase1)  ? _CoreSramBase1 : 0x20001000;
     59_CoreSramSize0  = DEFINED(_CoreSramSize0)  ? _CoreSramSize0 : (4 * 1024);
     60_CoreSramSize1  = DEFINED(_CoreSramSize1)  ? _CoreSramSize1 : (4 * 1024);
     61_BootFlashBase  = DEFINED(_BootFlashBase)  ? _BootFlashBase : 0xFF800000;
     62_BootFlashSize  = DEFINED(_BootFlashSize)  ? _BootFlashSize : (2 * 1024*1024);
     63_CodeFlashBase  = DEFINED(_CodeFlashBase)  ? _CodeFlashBase : 0xE0000000;
     64_CodeFlashSize  = DEFINED(_CodeFlashSize)  ? _CodeFlashSize : (16 * 1024*1024);
     65
     66_VectorRam      = DEFINED(_VectorRam)      ? _VectorRam : _SdramBase;
     67_DataRam        = DEFINED(_DataRam)        ? _DataRam   : _data_dest_start;
     68_DataRom        = DEFINED(_DataRom)        ? _DataRom   : _data_src_start;
     69_DataEnd        = DEFINED(_DataEnd)        ? _DataEnd   : _data_dest_end;
     70_BssStart       = DEFINED(_BssStart)       ? _BssStart  : _clear_start;
     71_BssEnd         = DEFINED(_BssEnd)         ? _BssEnd    : _clear_end;
     72_SpInit         = DEFINED(_SpInit)         ? _SpInit    : _EndInitStackSpace;
     73_InitPc         = DEFINED(_InitPc)         ? _InitPc    : _SdramBase + 0x400;
     74
     75_InitStackSize  = DEFINED(StackSize)       ? StackSize  : 0x800;  /* 2 kB   */
     76_TopRamReserved = DEFINED(_TopRamReserved) ? _TopRamReserved : 0;
     77
     78_RamBase        = DEFINED(_SdramBase)      ? _SdramBase : _SdramBase;
     79_RamSize        = DEFINED(_SdramSize)      ? _SdramSize : _SdramSize;
     80_HeapSize       = DEFINED(_HeapSize)       ? _HeapSize   : 0x0;
     81_VBR            = DEFINED(_VBR)            ? _VBR       : _RamBase;
     82
     83__MBAR          = DEFINED(__MBAR)          ? __MBAR     : 0x10000000;
    8384
    8485ENTRY(start)
  • c/src/lib/libbsp/m68k/genmcf548x/startup/linkcmds.m5484FireEngine.flash

    r2a0726aa r0ba477ea  
    4949 * Location and size of on-chip devices
    5050 */
    51 _SdramBase          = DEFINED(_SdramBase)        ? _SdramBase        : 0x00000000;
    52 _SdramSize          = DEFINED(_SdramSize)        ? _SdramSize        : (64 * 1024 * 1024);
    53 _SysSramBase        = DEFINED(_SysSramBase)      ? _SysSramBase      : __MBAR + 0x00010000;
    54 _SysSramSize        = DEFINED(_SysSramSize)      ? _SysSramSize      : (32 * 1024);
    55 _McdapiBase         = DEFINED(_McdapiBase)       ? _McdapiBase       : _SysSramBase;                 
    56 _McdapiSize         = DEFINED(_McdapiSize)       ? _McdapiSize       : (12 * 1024);                 
    57 _CoreSramBase0      = DEFINED(_CoreSramBase0)    ? _CoreSramBase0    : 0x20000000;
    58 _CoreSramBase1      = DEFINED(_CoreSramBase1)    ? _CoreSramBase1    : 0x20001000;
    59 _CoreSramSize0      = DEFINED(_CoreSramSize0)    ? _CoreSramSize0    : (4 * 1024);
    60 _CoreSramSize1      = DEFINED(_CoreSramSize1)    ? _CoreSramSize1    : (4 * 1024);
    61 _BootFlashBase      = DEFINED(_BootFlashBase)    ? _BootFlashBase    : 0xFF800000;
    62 _BootFlashSize      = DEFINED(_BootFlashSize)    ? _BootFlashSize    : (2 * 1024 * 1024);
    63 _CodeFlashBase      = DEFINED(_CodeFlashBase)    ? _CodeFlashBase    : 0xE0000000;
    64 _CodeFlashSize      = DEFINED(_CodeFlashSize)    ? _CodeFlashSize    : (16 * 1024 * 1024);
    65 
    66 _VectorRam          = DEFINED(_VectorRam)        ? _VectorRam        : _SdramBase;
    67 _DataRam            = DEFINED(_DataRam)          ? _DataRam          : _data_dest_start;
    68 _DataRom            = DEFINED(_DataRom)          ? _DataRom          : _data_src_start;
    69 _DataEnd            = DEFINED(_DataEnd)          ? _DataEnd          : _data_dest_end;
    70 _BssStart           = DEFINED(_BssStart)         ? _BssStart         : _clear_start;
    71 _BssEnd             = DEFINED(_BssEnd)           ? _BssEnd           : _clear_end;
    72 _SpInit             = DEFINED(_SpInit)           ? _SpInit           : _EndInitStackSpace;
    73 _InitPc             = DEFINED(_InitPc)           ? _InitPc           : _SdramBase + 0x400;
    74 
    75 _InitStackSize      = DEFINED(StackSize)         ? StackSize         : 0x2000;  /* 8 kB   */
    76 _TopRamReserved     = DEFINED(_TopRamReserved)   ? _TopRamReserved   : 0;
    77 
    78 _RamBase            = DEFINED(_SdramBase)        ? _SdramBase        : _SdramBase;
    79 _RamSize            = DEFINED(_SdramSize)        ? _SdramSize        : _SdramSize;
    80 _VBR                = DEFINED(_VBR)              ? _VBR              : _RamBase;
    81 
    82 __MBAR              = DEFINED(__MBAR)            ? __MBAR            : 0x10000000;
     51_SdramBase     = DEFINED(_SdramBase)      ? _SdramBase     : 0x00000000;
     52_SdramSize     = DEFINED(_SdramSize)      ? _SdramSize     : (64 * 1024 * 1024);
     53_SysSramBase   = DEFINED(_SysSramBase)    ? _SysSramBase   : __MBAR + 0x00010000;
     54_SysSramSize   = DEFINED(_SysSramSize)    ? _SysSramSize   : (32 * 1024);
     55_McdapiBase    = DEFINED(_McdapiBase)     ? _McdapiBase    : _SysSramBase;                 
     56_McdapiSize    = DEFINED(_McdapiSize)     ? _McdapiSize    : (12 * 1024);                 
     57_CoreSramBase0 = DEFINED(_CoreSramBase0)  ? _CoreSramBase0 : 0x20000000;
     58_CoreSramBase1 = DEFINED(_CoreSramBase1)  ? _CoreSramBase1 : 0x20001000;
     59_CoreSramSize0 = DEFINED(_CoreSramSize0)  ? _CoreSramSize0 : (4 * 1024);
     60_CoreSramSize1 = DEFINED(_CoreSramSize1)  ? _CoreSramSize1 : (4 * 1024);
     61_BootFlashBase = DEFINED(_BootFlashBase)  ? _BootFlashBase : 0xFF800000;
     62_BootFlashSize = DEFINED(_BootFlashSize)  ? _BootFlashSize : (2 * 1024 * 1024);
     63_CodeFlashBase = DEFINED(_CodeFlashBase)  ? _CodeFlashBase : 0xE0000000;
     64_CodeFlashSize = DEFINED(_CodeFlashSize)  ? _CodeFlashSize : (16 * 1024 * 1024);
     65
     66_VectorRam     = DEFINED(_VectorRam)      ? _VectorRam     : _SdramBase;
     67_DataRam       = DEFINED(_DataRam)        ? _DataRam       : _data_dest_start;
     68_DataRom       = DEFINED(_DataRom)        ? _DataRom       : _data_src_start;
     69_DataEnd       = DEFINED(_DataEnd)        ? _DataEnd       : _data_dest_end;
     70_BssStart      = DEFINED(_BssStart)       ? _BssStart      : _clear_start;
     71_BssEnd        = DEFINED(_BssEnd)         ? _BssEnd        : _clear_end;
     72_SpInit        = DEFINED(_SpInit)         ? _SpInit        : _EndInitStackSpace;
     73_InitPc        = DEFINED(_InitPc)         ? _InitPc        : _SdramBase + 0x400;
     74_InitStackSize = DEFINED(StackSize)       ? StackSize      : 0x2000;  /* 8 kB   */
     75_TopRamReserved= DEFINED(_TopRamReserved) ? _TopRamReserved : 0;
     76
     77_RamBase       = DEFINED(_SdramBase)      ? _SdramBase      : _SdramBase;
     78_RamSize       = DEFINED(_SdramSize)      ? _SdramSize      : _SdramSize;
     79_HeapSize      = DEFINED(_HeapSize)       ? _HeapSize       : 0x0;
     80_VBR           = DEFINED(_VBR)            ? _VBR            : _RamBase;
     81
     82__MBAR         = DEFINED(__MBAR)          ? __MBAR          : 0x10000000;
    8383
    8484ENTRY(start)
Note: See TracChangeset for help on using the changeset viewer.