Changeset 6273201 in rtems for c/src/lib/libbsp


Ignore:
Timestamp:
May 31, 2012, 2:37:02 PM (8 years ago)
Author:
Sebastian Huber <sebastian.huber@…>
Branches:
4.11, master
Children:
39ee704e
Parents:
105ccdd5
git-author:
Sebastian Huber <sebastian.huber@…> (05/31/12 14:37:02)
git-committer:
Sebastian Huber <sebastian.huber@…> (06/04/12 07:54:31)
Message:

bsps/powerpc: Add load section for .nocache

Location:
c/src/lib/libbsp/powerpc
Files:
13 edited

Legend:

Unmodified
Added
Removed
  • c/src/lib/libbsp/powerpc/mpc55xxevb/startup/linkcmds.gwlcfm

    r105ccdd5 r6273201  
    2323REGION_ALIAS ("REGION_STACK", RAM);
    2424REGION_ALIAS ("REGION_NOCACHE", NOCACHE);
     25REGION_ALIAS ("REGION_NOCACHE_LOAD", NOCACHE);
    2526
    2627INCLUDE linkcmds.mpc55xx
  • c/src/lib/libbsp/powerpc/mpc55xxevb/startup/linkcmds.mpc5566evb

    r105ccdd5 r6273201  
    2323REGION_ALIAS ("REGION_STACK", RAM);
    2424REGION_ALIAS ("REGION_NOCACHE", NOCACHE);
     25REGION_ALIAS ("REGION_NOCACHE_LOAD", NOCACHE);
    2526
    2627INCLUDE linkcmds.mpc55xx
  • c/src/lib/libbsp/powerpc/mpc55xxevb/startup/linkcmds.mpc5674fevb

    r105ccdd5 r6273201  
    2323REGION_ALIAS ("REGION_STACK", RAM);
    2424REGION_ALIAS ("REGION_NOCACHE", NOCACHE);
     25REGION_ALIAS ("REGION_NOCACHE_LOAD", ROM);
    2526
    2627INCLUDE linkcmds.mpc55xx
  • c/src/lib/libbsp/powerpc/mpc55xxevb/startup/linkcmds.phycore_mpc5554

    r105ccdd5 r6273201  
    3232REGION_ALIAS ("REGION_STACK", RAM);
    3333REGION_ALIAS ("REGION_NOCACHE", NOCACHE);
     34REGION_ALIAS ("REGION_NOCACHE_LOAD", NOCACHE);
    3435
    3536INCLUDE linkcmds.mpc55xx
  • c/src/lib/libbsp/powerpc/mpc55xxevb/startup/linkcmds.xkt564levb

    r105ccdd5 r6273201  
    2828REGION_ALIAS ("REGION_STACK", RAM_1);
    2929REGION_ALIAS ("REGION_NOCACHE", NOCACHE);
     30REGION_ALIAS ("REGION_NOCACHE_LOAD", NOCACHE);
    3031
    3132INCLUDE linkcmds.mpc55xx
  • c/src/lib/libbsp/powerpc/mpc55xxevb/startup/start-early.c

    r105ccdd5 r6273201  
    88
    99/*
    10  * Copyright (c) 2008-2011 embedded brains GmbH.  All rights reserved.
     10 * Copyright (c) 2008-2012 embedded brains GmbH.  All rights reserved.
    1111 *
    1212 *  embedded brains GmbH
     
    2424#include <bsp/start.h>
    2525#include <bsp/mpc55xx-config.h>
     26#include <bsp/linker-symbols.h>
     27
     28/* This function is defined in start.S */
     29BSP_START_TEXT_SECTION void mpc55xx_start_load_section(
     30  void *dst,
     31  const void *src,
     32  size_t n
     33);
    2634
    2735static BSP_START_TEXT_SECTION void mpc55xx_start_mmu(void)
     
    5260    bsp_start_zero(&bsp_ram_1_start [0], (size_t) bsp_ram_1_size);
    5361  #endif
     62}
     63
     64static BSP_START_TEXT_SECTION void mpc55xx_start_load_nocache_section(void)
     65{
     66  mpc55xx_start_load_section(
     67    bsp_section_nocache_begin,
     68    bsp_section_nocache_load_begin,
     69    (size_t) bsp_section_nocache_size
     70  );
     71  rtems_cache_flush_multiple_data_lines(
     72    bsp_section_nocache_begin,
     73    (size_t) bsp_section_nocache_size
     74  );
    5475}
    5576
     
    168189  #endif
    169190  mpc55xx_start_internal_ram();
     191  mpc55xx_start_load_nocache_section();
    170192  mpc55xx_start_mmu();
    171193  mpc55xx_start_mode_change();
  • c/src/lib/libbsp/powerpc/mpc55xxevb/startup/start.S

    r105ccdd5 r6273201  
    88
    99/*
    10  * Copyright (c) 2008-2011 embedded brains GmbH.  All rights reserved.
     10 * Copyright (c) 2008-2012 embedded brains GmbH.  All rights reserved.
    1111 *
    1212 *  embedded brains GmbH
     
    2222
    2323#include <bspopts.h>
    24 
     24#include <bsp/linker-symbols.h>
    2525#include <libcpu/powerpc-utility.h>
    2626
     
    4242        .extern boot_card
    4343        .extern bsp_ram_start
    44         .extern bsp_section_data_begin
    45         .extern bsp_section_data_load_begin
    46         .extern bsp_section_data_size
    47         .extern bsp_section_fast_data_begin
    48         .extern bsp_section_fast_data_load_begin
    49         .extern bsp_section_fast_data_size
    50         .extern bsp_section_fast_text_begin
    51         .extern bsp_section_fast_text_load_begin
    52         .extern bsp_section_fast_text_size
    5344        .extern mpc55xx_start_config_mmu_early
    5445        .extern mpc55xx_start_config_mmu_early_count
     
    5647
    5748        .globl  _start
     49        .globl  mpc55xx_start_load_section
    5850        .globl  mpc55xx_start_mmu_apply_config
    5951
     
    226218        LA      r4, bsp_section_fast_text_load_begin
    227219        LA      r5, bsp_section_fast_text_size
    228         bl      load_section
     220        bl      mpc55xx_start_load_section
    229221        LA      r3, bsp_section_fast_data_begin
    230222        LA      r4, bsp_section_fast_data_load_begin
    231223        LA      r5, bsp_section_fast_data_size
    232         bl      load_section
     224        bl      mpc55xx_start_load_section
    233225        LA      r3, bsp_section_data_begin
    234226        LA      r4, bsp_section_data_load_begin
    235227        LA      r5, bsp_section_data_size
    236         bl      load_section
     228        bl      mpc55xx_start_load_section
    237229
    238230        /* Set up EABI and SYSV environment */
     
    271263        blr
    272264
    273 load_section:
     265mpc55xx_start_load_section:
    274266        cmpw    cr7, r3, r4
    275267        beqlr   cr7
  • c/src/lib/libbsp/powerpc/qoriq/startup/linkcmds.qoriq_core_0

    r105ccdd5 r6273201  
    2626REGION_ALIAS ("REGION_WORK", HIGH);
    2727REGION_ALIAS ("REGION_STACK", HIGH);
    28 REGION_ALIAS ("REGION_NOCACHE", HIGH);
     28REGION_ALIAS ("REGION_NOCACHE", NIRVANA);
     29REGION_ALIAS ("REGION_NOCACHE_LOAD", NIRVANA);
    2930
    3031bsp_section_robarrier_align = 0x1000000;
  • c/src/lib/libbsp/powerpc/qoriq/startup/linkcmds.qoriq_core_1

    r105ccdd5 r6273201  
    2525REGION_ALIAS ("REGION_WORK", RAM);
    2626REGION_ALIAS ("REGION_STACK", RAM);
    27 REGION_ALIAS ("REGION_NOCACHE", RAM);
     27REGION_ALIAS ("REGION_NOCACHE", NIRVANA);
     28REGION_ALIAS ("REGION_NOCACHE_LOAD", NIRVANA);
    2829
    2930bsp_section_robarrier_align = 0x1000000;
  • c/src/lib/libbsp/powerpc/qoriq/startup/linkcmds.qoriq_p1020rdb

    r105ccdd5 r6273201  
    2626REGION_ALIAS ("REGION_WORK", HIGH);
    2727REGION_ALIAS ("REGION_STACK", HIGH);
    28 REGION_ALIAS ("REGION_NOCACHE", HIGH);
     28REGION_ALIAS ("REGION_NOCACHE", NIRVANA);
     29REGION_ALIAS ("REGION_NOCACHE_LOAD", NIRVANA);
    2930
    3031bsp_section_robarrier_align = 0x1000000;
  • c/src/lib/libbsp/powerpc/shared/include/linker-symbols.h

    r105ccdd5 r6273201  
    9797LINKER_SYMBOL(bsp_section_nocache_end)
    9898LINKER_SYMBOL(bsp_section_nocache_size)
     99LINKER_SYMBOL(bsp_section_nocache_load_begin)
     100LINKER_SYMBOL(bsp_section_nocache_load_end)
    99101
    100102#define BSP_FAST_TEXT_SECTION __attribute__((section(".bsp_fast_text")))
  • c/src/lib/libbsp/powerpc/shared/startup/linkcmds.base

    r105ccdd5 r6273201  
    329329                *(.bsp_nocache)
    330330                bsp_section_nocache_end = .;
    331         } > REGION_NOCACHE AT > REGION_NOCACHE
     331        } > REGION_NOCACHE AT > REGION_NOCACHE_LOAD
    332332        bsp_section_nocache_size = bsp_section_nocache_end - bsp_section_nocache_begin;
     333        bsp_section_nocache_load_begin = LOADADDR (.nocache);
     334        bsp_section_nocache_load_end = bsp_section_nocache_load_begin + bsp_section_nocache_size;
    333335
    334336        /* FIXME */
  • c/src/lib/libbsp/powerpc/t32mppc/startup/linkcmds.t32mppc

    r105ccdd5 r6273201  
    1919REGION_ALIAS ("REGION_WORK", RAM);
    2020REGION_ALIAS ("REGION_STACK", RAM);
    21 REGION_ALIAS ("REGION_NOCACHE", RAM);
     21REGION_ALIAS ("REGION_NOCACHE", NIRVANA);
     22REGION_ALIAS ("REGION_NOCACHE_LOAD", NIRVANA);
    2223
    2324INCLUDE linkcmds.base
Note: See TracChangeset for help on using the changeset viewer.