Changeset cbc433c7 in rtems


Ignore:
Timestamp:
11/25/14 07:40:20 (9 years ago)
Author:
Sebastian Huber <sebastian.huber@…>
Branches:
4.11, 5, master
Children:
79569ae
Parents:
038faca1
git-author:
Sebastian Huber <sebastian.huber@…> (11/25/14 07:40:20)
git-committer:
Sebastian Huber <sebastian.huber@…> (11/27/14 09:33:30)
Message:

bsps/arm: Add .nocache section

This section can be use to provide a cache coherent memory area via
rtems_cache_coherent_add_area().

Location:
c/src/lib/libbsp/arm
Files:
2 deleted
54 edited

Legend:

Unmodified
Added
Removed
  • c/src/lib/libbsp/arm/altera-cyclone-v/Makefile.am

    r038faca1 rcbc433c7  
    4848include_bsp_HEADERS += ../shared/include/arm-release-id.h
    4949include_bsp_HEADERS += include/irq.h
    50 include_bsp_HEADERS += include/nocache-heap.h
    5150
    5251# Altera hwlib
     
    172171libbsp_a_SOURCES += startup/bspstart.c
    173172libbsp_a_SOURCES += startup/bspstarthooks.c
    174 libbsp_a_SOURCES += startup/nocache-heap.c
    175173libbsp_a_SOURCES += startup/mmu-config.c
    176174if HAS_SMP
  • c/src/lib/libbsp/arm/altera-cyclone-v/network/network.c

    r038faca1 rcbc433c7  
    3939#include <bsp/alt_clock_manager.h>
    4040#include <bsp/alt_generalpurpose_io.h>
    41 #include <bsp/nocache-heap.h>
    4241#include "socal/alt_rstmgr.h"
    4342#include "socal/alt_sysmgr.h"
     
    10331032
    10341033  if ( memory != NULL ) {
    1035     *memory = altera_cyclone_v_nocache_malloc( size );
     1034    *memory = rtems_cache_coherent_allocate( size, 0, 0 );
    10361035
    10371036    if ( *memory != NULL ) {
     
    10581057  void *memory )
    10591058{
    1060   int eno = EINVAL;
    1061 
    10621059  (void) arg;
    10631060
    1064   assert( memory != NULL );
    1065 
    1066   if ( memory != NULL ) {
    1067     altera_cyclone_v_nocache_free( memory );
    1068     eno = 0;
    1069   }
    1070 
    1071   return eno;
     1061  free( memory );
     1062
     1063  return 0;
    10721064}
    10731065
  • c/src/lib/libbsp/arm/altera-cyclone-v/preinstall.am

    r038faca1 rcbc433c7  
    136136PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/irq.h
    137137
    138 $(PROJECT_INCLUDE)/bsp/nocache-heap.h: include/nocache-heap.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
    139         $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/nocache-heap.h
    140 PREINSTALL_FILES += $(PROJECT_INCLUDE)/bsp/nocache-heap.h
    141 
    142138$(PROJECT_INCLUDE)/bsp/alt_16550_uart.h: hwlib/include/alt_16550_uart.h $(PROJECT_INCLUDE)/bsp/$(dirstamp)
    143139        $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bsp/alt_16550_uart.h
  • c/src/lib/libbsp/arm/altera-cyclone-v/startup/bspstart.c

    r038faca1 rcbc433c7  
    1616#include <bsp/arm-a9mpcore-clock.h>
    1717#include <bsp/irq-generic.h>
    18 #include <bsp/nocache-heap.h>
     18#include <bsp/linker-symbols.h>
    1919
    2020void bsp_start( void )
     
    2222  a9mpcore_clock_initialize_early();
    2323  bsp_interrupt_initialize();
    24   altera_cyclone_v_nocache_init_heap();
     24  rtems_cache_coherent_add_area(
     25    bsp_nocache_heap_begin,
     26    (uintptr_t) bsp_nocache_heap_size
     27  );
    2528}
  • c/src/lib/libbsp/arm/altera-cyclone-v/startup/linkcmds.altcycv

    r038faca1 rcbc433c7  
    1414REGION_ALIAS ("REGION_WORK",           RAM);
    1515REGION_ALIAS ("REGION_STACK",          RAM);
     16REGION_ALIAS ("REGION_NOCACHE",        NOCACHE);
     17REGION_ALIAS ("REGION_NOCACHE_LOAD",   NOCACHE);
    1618
    1719bsp_stack_irq_size = DEFINED (bsp_stack_irq_size) ? bsp_stack_irq_size : 4096;
  • c/src/lib/libbsp/arm/altera-cyclone-v/startup/linkcmds.altcycv_devkit

    r038faca1 rcbc433c7  
    55}
    66
    7 SECTIONS {
    8   .nocache (NOLOAD) : {
    9     bsp_section_nocache_begin = .;
    10     *(SORT(.bsp_nocache*))
    11     bsp_section_nocache_end = .;
    12   } > NOCACHE AT > NOCACHE
    13   bsp_section_nocache_size = bsp_section_nocache_end - bsp_section_nocache_begin;
    14   bsp_section_nocache_load_begin = LOADADDR (.nocache);
    15   bsp_section_nocache_load_end = bsp_section_nocache_load_begin + bsp_section_nocache_size;
    16 }
    17 
    187INCLUDE linkcmds.altcycv
  • c/src/lib/libbsp/arm/altera-cyclone-v/startup/mmu-config.c

    r038faca1 rcbc433c7  
    1515#include <bsp/arm-cp15-start.h>
    1616
    17 LINKER_SYMBOL(bsp_section_nocache_end);
    18 LINKER_SYMBOL(bsp_section_nocache_begin);
    19 
    2017const arm_cp15_start_section_config arm_cp15_start_mmu_config_table[] = {
    2118  ARMV7_CP15_START_DEFAULT_SECTIONS,
    22   {
    23     .begin = (uint32_t) bsp_section_nocache_begin,
    24     .end   = (uint32_t) bsp_section_nocache_end,
    25     .flags = ARMV7_MMU_DATA_READ_WRITE
    26   }, { /* Periphery area */
     19  { /* Periphery area */
    2720    .begin = 0xFC000000U,
    2821    .end   = 0x00000000U,
  • c/src/lib/libbsp/arm/beagle/startup/linkcmds.beagle

    r038faca1 rcbc433c7  
    3131REGION_ALIAS ("REGION_WORK",           RAM);
    3232REGION_ALIAS ("REGION_STACK",          RAM);
     33REGION_ALIAS ("REGION_NOCACHE",        RAM);
     34REGION_ALIAS ("REGION_NOCACHE_LOAD",   RAM);
    3335
    3436bsp_stack_irq_size = DEFINED (bsp_stack_irq_size) ? bsp_stack_irq_size : 4096;
  • c/src/lib/libbsp/arm/csb336/startup/linkcmds

    r038faca1 rcbc433c7  
    2020REGION_ALIAS ("REGION_WORK", SDRAM);
    2121REGION_ALIAS ("REGION_STACK", SDRAM);
     22REGION_ALIAS ("REGION_NOCACHE", SDRAM);
     23REGION_ALIAS ("REGION_NOCACHE_LOAD", SDRAM);
    2224
    2325_ttbl_base = ORIGIN (SDRAM_MMU);
  • c/src/lib/libbsp/arm/csb337/startup/linkcmds.csb337

    r038faca1 rcbc433c7  
    2020REGION_ALIAS ("REGION_WORK", SDRAM);
    2121REGION_ALIAS ("REGION_STACK", SDRAM);
     22REGION_ALIAS ("REGION_NOCACHE", SDRAM);
     23REGION_ALIAS ("REGION_NOCACHE_LOAD", SDRAM);
    2224
    2325_ttbl_base = ORIGIN (SDRAM_MMU);
  • c/src/lib/libbsp/arm/csb337/startup/linkcmds.csb637

    r038faca1 rcbc433c7  
    2020REGION_ALIAS ("REGION_WORK", SDRAM);
    2121REGION_ALIAS ("REGION_STACK", SDRAM);
     22REGION_ALIAS ("REGION_NOCACHE", SDRAM);
     23REGION_ALIAS ("REGION_NOCACHE_LOAD", SDRAM);
    2224
    2325_ttbl_base = ORIGIN (SDRAM_MMU);
  • c/src/lib/libbsp/arm/edb7312/startup/linkcmds

    r038faca1 rcbc433c7  
    1818REGION_ALIAS ("REGION_WORK", SDRAM);
    1919REGION_ALIAS ("REGION_STACK", SDRAM);
     20REGION_ALIAS ("REGION_NOCACHE", SDRAM);
     21REGION_ALIAS ("REGION_NOCACHE_LOAD", SDRAM);
    2022
    2123bsp_vector_table_in_start_section = 1;
  • c/src/lib/libbsp/arm/gdbarmsim/startup/linkcmds

    r038faca1 rcbc433c7  
    1818REGION_ALIAS ("REGION_WORK", RAM);
    1919REGION_ALIAS ("REGION_STACK", RAM);
     20REGION_ALIAS ("REGION_NOCACHE", RAM);
     21REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM);
    2022
    2123INCLUDE linkcmds.armv4
  • c/src/lib/libbsp/arm/gp32/startup/linkcmds

    r038faca1 rcbc433c7  
    1919REGION_ALIAS ("REGION_WORK", SDRAM);
    2020REGION_ALIAS ("REGION_STACK", SDRAM);
     21REGION_ALIAS ("REGION_NOCACHE", SDRAM);
     22REGION_ALIAS ("REGION_NOCACHE_LOAD", SDRAM);
    2123
    2224_ttbl_base = ORIGIN (SDRAM_MMU);
  • c/src/lib/libbsp/arm/gumstix/startup/linkcmds

    r038faca1 rcbc433c7  
    2020REGION_ALIAS ("REGION_WORK", SDRAM);
    2121REGION_ALIAS ("REGION_STACK", SDRAM);
     22REGION_ALIAS ("REGION_NOCACHE", SDRAM);
     23REGION_ALIAS ("REGION_NOCACHE_LOAD", SDRAM);
    2224
    2325_ttbl_base = ORIGIN (SDRAM_MMU);
  • c/src/lib/libbsp/arm/lm3s69xx/startup/linkcmds.lm3s3749

    r038faca1 rcbc433c7  
    2525REGION_ALIAS ("REGION_WORK", RAM_INT);
    2626REGION_ALIAS ("REGION_STACK", RAM_INT);
     27REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     28REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    2729
    2830INCLUDE linkcmds.armv7m
  • c/src/lib/libbsp/arm/lm3s69xx/startup/linkcmds.lm3s6965

    r038faca1 rcbc433c7  
    2525REGION_ALIAS ("REGION_WORK", RAM_INT);
    2626REGION_ALIAS ("REGION_STACK", RAM_INT);
     27REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     28REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    2729
    2830INCLUDE linkcmds.armv7m
  • c/src/lib/libbsp/arm/lm3s69xx/startup/linkcmds.lm3s6965_qemu

    r038faca1 rcbc433c7  
    2525REGION_ALIAS ("REGION_WORK", RAM_INT);
    2626REGION_ALIAS ("REGION_STACK", RAM_INT);
     27REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     28REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    2729
    2830INCLUDE linkcmds.armv7m
  • c/src/lib/libbsp/arm/lm3s69xx/startup/linkcmds.lm4f120

    r038faca1 rcbc433c7  
    2525REGION_ALIAS ("REGION_WORK", RAM_INT);
    2626REGION_ALIAS ("REGION_STACK", RAM_INT);
     27REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     28REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    2729
    2830INCLUDE linkcmds.armv7m
  • c/src/lib/libbsp/arm/lpc176x/startup/linkcmds.lpc1768_mbed

    r038faca1 rcbc433c7  
    2121REGION_ALIAS ("REGION_WORK", RAM_INT);
    2222REGION_ALIAS ("REGION_STACK", RAM_INT);
     23REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     24REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    2325
    2426bsp_stack_main_size = DEFINED (bsp_stack_main_size) ? bsp_stack_main_size : 1024;
  • c/src/lib/libbsp/arm/lpc176x/startup/linkcmds.lpc1768_mbed_ahb_ram

    r038faca1 rcbc433c7  
    2222REGION_ALIAS ("REGION_WORK", RAM_AHB);
    2323REGION_ALIAS ("REGION_STACK", RAM_AHB);
     24REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     25REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    2426
    2527bsp_stack_main_size = DEFINED (bsp_stack_main_size) ? bsp_stack_main_size : 1024;
  • c/src/lib/libbsp/arm/lpc176x/startup/linkcmds.lpc1768_mbed_ahb_ram_eth

    r038faca1 rcbc433c7  
    2424REGION_ALIAS ("REGION_STACK", RAM_INT);
    2525REGION_ALIAS ("REGION_ETH", RAM_AHB2);
     26REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     27REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    2628
    2729bsp_stack_main_size = DEFINED (bsp_stack_main_size) ? bsp_stack_main_size : 1024;
  • c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc17xx_ea_ram

    r038faca1 rcbc433c7  
    2222REGION_ALIAS ("REGION_WORK", RAM_EXT);
    2323REGION_ALIAS ("REGION_STACK", RAM_INT);
     24REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     25REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    2426
    2527INCLUDE linkcmds.armv7m
  • c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc17xx_ea_rom_int

    r038faca1 rcbc433c7  
    2222REGION_ALIAS ("REGION_WORK", RAM_EXT);
    2323REGION_ALIAS ("REGION_STACK", RAM_EXT);
     24REGION_ALIAS ("REGION_NOCACHE", RAM_EXT);
     25REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_EXT);
    2426
    2527INCLUDE linkcmds.armv7m
  • c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc17xx_plx800_ram

    r038faca1 rcbc433c7  
    2828REGION_ALIAS ("REGION_WORK", RAM_EXT);
    2929REGION_ALIAS ("REGION_STACK", RAM_INT);
     30REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     31REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    3032
    3133INCLUDE linkcmds.armv7m
  • c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc17xx_plx800_rom_int

    r038faca1 rcbc433c7  
    2828REGION_ALIAS ("REGION_WORK", RAM_EXT);
    2929REGION_ALIAS ("REGION_STACK", RAM_INT);
     30REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     31REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    3032
    3133INCLUDE linkcmds.armv7m
  • c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc2362

    r038faca1 rcbc433c7  
    5757REGION_ALIAS ("REGION_WORK", RAM_INT);
    5858REGION_ALIAS ("REGION_STACK", RAM_INT);
     59REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     60REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    5961
    6062lpc24xx_region_heap_0_begin = ORIGIN (RAM_ETH);
  • c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc23xx_tli800

    r038faca1 rcbc433c7  
    6161REGION_ALIAS ("REGION_WORK", RAM_INT);
    6262REGION_ALIAS ("REGION_STACK", RAM_INT);
     63REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     64REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    6365
    6466lpc24xx_region_heap_0_begin = ORIGIN (RAM_ETH);
  • c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ea

    r038faca1 rcbc433c7  
    5454REGION_ALIAS ("REGION_WORK", RAM_EXT);
    5555REGION_ALIAS ("REGION_STACK", RAM_INT);
     56REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     57REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    5658
    5759INCLUDE linkcmds.armv4
  • c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ncs_ram

    r038faca1 rcbc433c7  
    5555REGION_ALIAS ("REGION_WORK", RAM_EXT);
    5656REGION_ALIAS ("REGION_STACK", RAM_INT);
     57REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     58REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    5759
    5860INCLUDE linkcmds.armv4
  • c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ncs_rom_ext

    r038faca1 rcbc433c7  
    5959REGION_ALIAS ("REGION_WORK", RAM_EXT);
    6060REGION_ALIAS ("REGION_STACK", RAM_INT);
     61REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     62REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    6163
    6264INCLUDE linkcmds.armv4
  • c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_ncs_rom_int

    r038faca1 rcbc433c7  
    5959REGION_ALIAS ("REGION_WORK", RAM_EXT);
    6060REGION_ALIAS ("REGION_STACK", RAM_INT);
     61REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     62REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    6163
    6264INCLUDE linkcmds.armv4
  • c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_plx800_ram

    r038faca1 rcbc433c7  
    2727REGION_ALIAS ("REGION_WORK", RAM_EXT);
    2828REGION_ALIAS ("REGION_STACK", RAM_INT);
     29REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     30REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    2931
    3032INCLUDE linkcmds.armv4
  • c/src/lib/libbsp/arm/lpc24xx/startup/linkcmds.lpc24xx_plx800_rom_int

    r038faca1 rcbc433c7  
    2727REGION_ALIAS ("REGION_WORK", RAM_EXT);
    2828REGION_ALIAS ("REGION_STACK", RAM_INT);
     29REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     30REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    2931
    3032INCLUDE linkcmds.armv4
  • c/src/lib/libbsp/arm/lpc32xx/startup/linkcmds.lpc32xx_mzx

    r038faca1 rcbc433c7  
    5757REGION_ALIAS ("REGION_WORK", RAM_EXT);
    5858REGION_ALIAS ("REGION_STACK", RAM_INT);
     59REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     60REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    5961
    6062lpc32xx_scratch_area = ORIGIN (RAM_SCRATCH);
  • c/src/lib/libbsp/arm/lpc32xx/startup/linkcmds.lpc32xx_mzx_stage_1

    r038faca1 rcbc433c7  
    5757REGION_ALIAS ("REGION_WORK", RAM_INT);
    5858REGION_ALIAS ("REGION_STACK", RAM_INT);
     59REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     60REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    5961
    6062lpc32xx_scratch_area = ORIGIN (RAM_SCRATCH);
  • c/src/lib/libbsp/arm/lpc32xx/startup/linkcmds.lpc32xx_mzx_stage_2

    r038faca1 rcbc433c7  
    5858REGION_ALIAS ("REGION_WORK", RAM_EXT);
    5959REGION_ALIAS ("REGION_STACK", RAM_INT);
     60REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     61REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    6062
    6163lpc32xx_scratch_area = ORIGIN (RAM_SCRATCH);
  • c/src/lib/libbsp/arm/lpc32xx/startup/linkcmds.lpc32xx_phycore

    r038faca1 rcbc433c7  
    5858REGION_ALIAS ("REGION_WORK", RAM_EXT);
    5959REGION_ALIAS ("REGION_STACK", RAM_INT);
     60REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     61REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    6062
    6163bsp_stack_irq_size = DEFINED (bsp_stack_irq_size) ? bsp_stack_irq_size : 4096;
  • c/src/lib/libbsp/arm/nds/startup/linkcmds

    r038faca1 rcbc433c7  
    2121REGION_ALIAS ("REGION_WORK", EWRAM);
    2222REGION_ALIAS ("REGION_STACK", EWRAM);
     23REGION_ALIAS ("REGION_NOCACHE", EWRAM);
     24REGION_ALIAS ("REGION_NOCACHE_LOAD", EWRAM);
    2325
    2426__dtcm_top = ORIGIN (DTCM) + LENGTH (DTCM);
  • c/src/lib/libbsp/arm/raspberrypi/startup/linkcmds

    r038faca1 rcbc433c7  
    5757REGION_ALIAS ("REGION_WORK", RAM);
    5858REGION_ALIAS ("REGION_STACK", RAM);
     59REGION_ALIAS ("REGION_NOCACHE", RAM);
     60REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM);
    5961
    6062bsp_stack_irq_size = DEFINED (bsp_stack_irq_size) ? bsp_stack_irq_size : 4096;
  • c/src/lib/libbsp/arm/realview-pbx-a9/startup/linkcmds.realview_pbx_a9_qemu

    r038faca1 rcbc433c7  
    2020REGION_ALIAS ("REGION_WORK", RAM);
    2121REGION_ALIAS ("REGION_STACK", RAM);
     22REGION_ALIAS ("REGION_NOCACHE", RAM);
     23REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM);
    2224
    2325bsp_stack_irq_size = DEFINED (bsp_stack_irq_size) ? bsp_stack_irq_size : 4096;
  • c/src/lib/libbsp/arm/rtl22xx/startup/linkcmds

    r038faca1 rcbc433c7  
    1919REGION_ALIAS ("REGION_WORK", SDRAM);
    2020REGION_ALIAS ("REGION_STACK", SDRAM);
     21REGION_ALIAS ("REGION_NOCACHE", SDRAM);
     22REGION_ALIAS ("REGION_NOCACHE_LOAD", SDRAM);
    2123
    2224INCLUDE linkcmds.armv4
  • c/src/lib/libbsp/arm/shared/include/arm-cp15-start.h

    r038faca1 rcbc433c7  
    8181    .end = (uint32_t) bsp_section_stack_end, \
    8282    .flags = ARMV7_MMU_DATA_READ_WRITE_CACHED \
     83  }, { \
     84    .begin = (uint32_t) bsp_section_nocache_begin, \
     85    .end = (uint32_t) bsp_section_nocache_end, \
     86    .flags = ARMV7_MMU_DEVICE \
    8387  }
    8488
  • c/src/lib/libbsp/arm/shared/include/linker-symbols.h

    r038faca1 rcbc433c7  
    88
    99/*
    10  * Copyright (c) 2008-2013 embedded brains GmbH.  All rights reserved.
     10 * Copyright (c) 2008-2014 embedded brains GmbH.  All rights reserved.
    1111 *
    1212 *  embedded brains GmbH
     
    114114LINKER_SYMBOL(bsp_section_stack_size)
    115115
     116LINKER_SYMBOL(bsp_section_nocache_begin)
     117LINKER_SYMBOL(bsp_section_nocache_end)
     118LINKER_SYMBOL(bsp_section_nocache_size)
     119LINKER_SYMBOL(bsp_section_nocache_load_begin)
     120LINKER_SYMBOL(bsp_section_nocache_load_end)
     121
    116122LINKER_SYMBOL(bsp_vector_table_begin)
    117123LINKER_SYMBOL(bsp_vector_table_end)
     
    125131LINKER_SYMBOL(bsp_translation_table_end)
    126132
     133LINKER_SYMBOL(bsp_nocache_heap_begin)
     134LINKER_SYMBOL(bsp_nocache_heap_end)
     135LINKER_SYMBOL(bsp_nocache_heap_size)
     136
    127137#define BSP_FAST_TEXT_SECTION __attribute__((section(".bsp_fast_text")))
    128138
    129139#define BSP_FAST_DATA_SECTION __attribute__((section(".bsp_fast_data")))
     140
     141#define BSP_NOCACHE_SECTION __attribute__((section(".bsp_nocache")))
    130142
    131143LINKER_SYMBOL(bsp_processor_count)
  • c/src/lib/libbsp/arm/shared/startup/linkcmds.base

    r038faca1 rcbc433c7  
    397397        } > REGION_STACK AT > REGION_STACK
    398398        bsp_section_stack_size = bsp_section_stack_end - bsp_section_stack_begin;
     399
     400        .nocache : ALIGN_WITH_INPUT {
     401                bsp_section_nocache_begin = .;
     402                *(SORT(.bsp_nocache*))
     403                bsp_nocache_heap_begin = .;
     404                . += ORIGIN (REGION_NOCACHE) + LENGTH (REGION_NOCACHE) - ABSOLUTE (.);
     405                bsp_nocache_heap_end = .;
     406                bsp_section_nocache_end = .;
     407        } > REGION_NOCACHE AT > REGION_NOCACHE_LOAD
     408        bsp_nocache_heap_size = bsp_nocache_heap_end - bsp_nocache_heap_begin;
     409        bsp_section_nocache_size = bsp_section_nocache_end - bsp_section_nocache_begin;
     410        bsp_section_nocache_load_begin = LOADADDR (.nocache);
     411        bsp_section_nocache_load_end = bsp_section_nocache_load_begin + bsp_section_nocache_size;
    399412
    400413        /* FIXME */
  • c/src/lib/libbsp/arm/smdk2410/startup/linkcmds

    r038faca1 rcbc433c7  
    1919REGION_ALIAS ("REGION_WORK", SDRAM);
    2020REGION_ALIAS ("REGION_STACK", SDRAM);
     21REGION_ALIAS ("REGION_NOCACHE", SDRAM);
     22REGION_ALIAS ("REGION_NOCACHE_LOAD", SDRAM);
    2123
    2224_ttbl_base = ORIGIN (SDRAM_MMU);
  • c/src/lib/libbsp/arm/stm32f4/startup/linkcmds.stm32f105rc

    r038faca1 rcbc433c7  
    1919REGION_ALIAS ("REGION_WORK", RAM_INT);
    2020REGION_ALIAS ("REGION_STACK", RAM_INT);
     21REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     22REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    2123
    2224INCLUDE linkcmds.armv7m
  • c/src/lib/libbsp/arm/stm32f4/startup/linkcmds.stm32f4

    r038faca1 rcbc433c7  
    1919REGION_ALIAS ("REGION_WORK", RAM_INT);
    2020REGION_ALIAS ("REGION_STACK", RAM_INT);
     21REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     22REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    2123
    2224INCLUDE linkcmds.armv7m
  • c/src/lib/libbsp/arm/tms570/startup/linkcmds.tms570ls3137_hdk

    r038faca1 rcbc433c7  
    2121REGION_ALIAS ("REGION_WORK", RAM_INT);
    2222REGION_ALIAS ("REGION_STACK", RAM_INT);
     23REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     24REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    2325
    2426bsp_stack_main_size = DEFINED (bsp_stack_main_size) ? bsp_stack_main_size : 1024;
  • c/src/lib/libbsp/arm/tms570/startup/linkcmds.tms570ls3137_hdk_intram

    r038faca1 rcbc433c7  
    2222REGION_ALIAS ("REGION_WORK", RAM_INT);
    2323REGION_ALIAS ("REGION_STACK", RAM_INT);
     24REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
     25REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
    2426
    2527bsp_stack_main_size = DEFINED (bsp_stack_main_size) ? bsp_stack_main_size : 1024;
  • c/src/lib/libbsp/arm/tms570/startup/linkcmds.tms570ls3137_hdk_sdram

    r038faca1 rcbc433c7  
    2121REGION_ALIAS ("REGION_WORK", RAM_EXT);
    2222REGION_ALIAS ("REGION_STACK", RAM_EXT);
     23REGION_ALIAS ("REGION_NOCACHE", RAM_EXT);
     24REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_EXT);
    2325
    2426bsp_stack_main_size = DEFINED (bsp_stack_main_size) ? bsp_stack_main_size : 1024;
  • c/src/lib/libbsp/arm/xilinx-zynq/configure.ac

    r038faca1 rcbc433c7  
    7878RTEMS_BSPOPTS_HELP([BSP_ZYNQ_RAM_LENGTH],[override a BSP's default RAM length])
    7979
     80RTEMS_BSPOPTS_SET([BSP_ZYNQ_NOCACHE_LENGTH],[*],[1M])
     81RTEMS_BSPOPTS_HELP([BSP_ZYNQ_NOCACHE_LENGTH],[length of nocache RAM region])
     82
    8083AS_IF([test "x${RTEMS_BSP}" == xxilinx_zynq_a9_qemu],
    8184      [ZYNQ_RAM_ORIGIN="0x00000000"
     
    134137ZYNQ_LINKCMD([ZYNQ_RAM_ORIGIN_AVAILABLE],[origin of available RAM],[${ZYNQ_RAM_ORIGIN_AVAILABLE}])
    135138ZYNQ_LINKCMD([ZYNQ_RAM_LENGTH_AVAILABLE],[length of available RAM],[${ZYNQ_RAM_LENGTH_AVAILABLE}])
     139ZYNQ_LINKCMD([ZYNQ_RAM_NOCACHE_LENGTH],[length of nocache RAM region],[${BSP_ZYNQ_NOCACHE_LENGTH}])
    136140ZYNQ_LINKCMD([ZYNQ_RAM_INT_0_ORIGIN],[internal 0 RAM region origin],[${ZYNQ_RAM_INT_0_ORIGIN}])
    137141ZYNQ_LINKCMD([ZYNQ_RAM_INT_0_LENGTH],[internal 0 RAM region length],[${ZYNQ_RAM_INT_0_LENGTH}])
  • c/src/lib/libbsp/arm/xilinx-zynq/startup/bspstart.c

    r038faca1 rcbc433c7  
    1717#include <bsp/arm-a9mpcore-clock.h>
    1818#include <bsp/irq-generic.h>
     19#include <bsp/linker-symbols.h>
    1920
    2021__attribute__ ((weak)) uint32_t zynq_clock_cpu_1x(void)
     
    2728  a9mpcore_clock_initialize_early();
    2829  bsp_interrupt_initialize();
     30  rtems_cache_coherent_add_area(
     31    bsp_nocache_heap_begin,
     32    (uintptr_t) bsp_nocache_heap_size
     33  );
    2934}
  • c/src/lib/libbsp/arm/xilinx-zynq/startup/linkcmds.in

    r038faca1 rcbc433c7  
    33   RAM_INT_1 : ORIGIN = @ZYNQ_RAM_INT_1_ORIGIN@, LENGTH = @ZYNQ_RAM_INT_1_LENGTH@
    44   RAM_MMU   : ORIGIN = @ZYNQ_RAM_MMU@, LENGTH = @ZYNQ_RAM_MMU_LENGTH@
    5    RAM       : ORIGIN = @ZYNQ_RAM_ORIGIN_AVAILABLE@, LENGTH = @ZYNQ_RAM_LENGTH_AVAILABLE@
     5   RAM       : ORIGIN = @ZYNQ_RAM_ORIGIN_AVAILABLE@, LENGTH = @ZYNQ_RAM_LENGTH_AVAILABLE@ - @ZYNQ_RAM_NOCACHE_LENGTH@
     6   NOCACHE   : ORIGIN = @ZYNQ_RAM_ORIGIN_AVAILABLE@ + @ZYNQ_RAM_LENGTH_AVAILABLE@ - @ZYNQ_RAM_NOCACHE_LENGTH@, LENGTH = @ZYNQ_RAM_NOCACHE_LENGTH@
    67}
    78
     
    2324REGION_ALIAS ("REGION_WORK",           RAM);
    2425REGION_ALIAS ("REGION_STACK",          RAM);
     26REGION_ALIAS ("REGION_NOCACHE",        NOCACHE);
     27REGION_ALIAS ("REGION_NOCACHE_LOAD",   NOCACHE);
    2528
    2629bsp_stack_irq_size = DEFINED (bsp_stack_irq_size) ? bsp_stack_irq_size : 4096;
Note: See TracChangeset for help on using the changeset viewer.