open-ameba/RTL00_SDKV35a/component/soc/realtek/common/bsp/section_config.h
2017-02-18 07:46:36 +03:00

325 lines
9.2 KiB
C

/*
* Routines to access hardware
*
* Copyright (c) 2013 Realtek Semiconductor Corp.
*
* This module is a confidential and proprietary property of RealTek and
* possession or use of this module requires written permission of RealTek.
*/
#ifndef _SECTION_CONFIG_H_
#define _SECTION_CONFIG_H_
#include "basic_types.h"
#include "platform_autoconf.h"
#define RAM_DEDECATED_VECTOR_TABLE_SECTION \
SECTION(".ram_dedecated_vector_table")
#define RAM_USER_IRQ_FUN_TABLE_SECTION \
SECTION(".ram_user_define_irq_table")
#define RAM_USER_IRQ_DATA_TABLE_SECTION \
SECTION(".ram_user_define_data_table")
//3 Timer Section
#define SECTION_RAM_TIMER2TO7_VECTOR_TABLE \
SECTION(".timer2_7_vector_table.data")
#define SECTION_RAM_BSS_TIMER_RECORDER_TABLE \
SECTION(".timer.ram.data")
#define TIMER_ROM_TEXT_SECTION \
SECTION(".timer.rom.text")
#define TIMER_ROM_DATA_SECTION \
SECTION(".timer.rom.rodata")
#define TIMER_RAM_TEXT_SECTION \
SECTION(".timer.ram.text")
#define TIMER_RAM_DATA_SECTION \
SECTION(".timer.ram.data")
//3 Wifi Section
#define WIFI_ROM_TEXT_SECTION \
SECTION(".wifi.rom.text")
#define WIFI_ROM_DATA_SECTION \
SECTION(".wifi.rom.rodata")
#define WIFI_RAM_TEXT_SECTION \
SECTION(".wifi.ram.text")
#define WIFI_RAM_DATA_SECTION \
SECTION(".wifi.ram.data")
//3 Hal Section
#define HAL_ROM_TEXT_SECTION \
SECTION(".hal.rom.text")
#define HAL_ROM_DATA_SECTION \
SECTION(".hal.rom.rodata")
#define HAL_RAM_TEXT_SECTION \
SECTION(".hal.ram.text")
#define HAL_FLASH_TEXT_SECTION \
SECTION(".hal.flash.text")
#define HAL_FLASH_DATA_SECTION \
SECTION(".hal.flash.data")
#define HAL_SDRC_TEXT_SECTION \
SECTION(".hal.sdrc.text")
#define HAL_SDRC_DATA_SECTION \
SECTION(".hal.sdrc.data")
#define HAL_CUT_B_RAM_DATA_SECTION \
SECTION(".cutb.ram.data")
#define HAL_CUT_C_RAM_DATA_SECTION \
SECTION(".cutc.ram.data")
#define HAL_RAM_DATA_SECTION \
SECTION(".hal.ram.data")
#define HAL_RAM_BSS_SECTION \
SECTION(".hal.ram.bss")
#define HAL_ROM_OP_SECTION \
SECTION(".halop.rom.rodata")
#define HAL_GPIO_TEXT_SECTION \
SECTION(".hal.gpio.text")
#define HAL_GPIO_DATA_SECTION \
SECTION(".hal.gpio.data")
#define FWU_DATA_SECTION \
SECTION(".fwu.data")
#define FWU_RODATA_SECTION \
SECTION(".fwu.rodata")
#define FWU_TEXT_SECTION \
SECTION(".fwu.text")
//3 C-Cut ROM Patch/New functions location
#define C_CUT_ROM_TEXT_SECTION \
SECTION(".cutc.rom.text")
#define C_CUT_ROM_RODATA_SECTION \
SECTION(".cutc.rom.rodata")
#define C_CUT_ROM_DATA_SECTION \
SECTION(".cutc.ram.data")
//3 No ROM code changed for D_Cut, so no D-Cut section
//3 E-Cut ROM Patch/New functions location
#define E_CUT_ROM_TEXT_SECTION \
SECTION(".cute.rom.text")
#define E_CUT_ROM_RODATA_SECTION \
SECTION(".cute.rom.rodata")
#define E_CUT_ROM_DATA_SECTION \
SECTION(".cute.ram.data")
/* #define FWUROM_DATA_SECTION \
SECTION(".fwurom.data") */
/* #define FWUROM_RODATA_SECTION \
SECTION(".fwurom.rodata") */
#define FWUROM_TEXT_SECTION \
SECTION(".fwurom.text")
#define XMPORT_ROM_TEXT_SECTION \
SECTION(".xmportrom.text")
#define XDMROM_TEXT_SECTION \
SECTION(".xmodemrom.text")
//3 Store the Image 1 validate code
#define IMAGE1_VALID_PATTEN_SECTION \
SECTION(".image1.validate.rodata")
#define IMAGE2_VALID_PATTEN_SECTION \
SECTION(".image2.validate.rodata")
//3 Infra Section
#define INFRA_ROM_TEXT_SECTION \
SECTION(".infra.rom.text")
#define INFRA_ROM_DATA_SECTION \
SECTION(".infra.rom.rodata")
#define INFRA_RAM_TEXT_SECTION \
SECTION(".infra.ram.text")
#define INFRA_RAM_DATA_SECTION \
SECTION(".infra.ram.data")
#define INFRA_RAM_BSS_SECTION \
SECTION(".infra.ram.bss")
#define INFRA_START_SECTION \
SECTION(".infra.ram.start")
//3 Pin Mutex Section
#define PINMUX_ROM_TEXT_SECTION \
SECTION(".hal.rom.text")
#define PINMUX_ROM_DATA_SECTION \
SECTION(".hal.rom.rodata")
#define PINMUX_RAM_TEXT_SECTION \
SECTION(".hal.ram.text")
#define PINMUX_RAM_DATA_SECTION \
SECTION(".hal.ram.data")
#define PINMUX_RAM_BSS_SECTION \
SECTION(".hal.ram.bss")
//3 Monitor App Section
#define MON_ROM_TEXT_SECTION \
SECTION(".mon.rom.text")
#define MON_ROM_DATA_SECTION \
SECTION(".mon.rom.rodata")
#define MON_RAM_TEXT_SECTION \
SECTION(".mon.ram.text")
#define MON_RAM_DATA_SECTION \
SECTION(".mon.ram.data")
#define MON_RAM_BSS_SECTION \
SECTION(".mon.ram.bss")
//3 SDIO Section
#define SECTION_SDIO_RAM
#define SECTION_SDIO_ROM
#define SDIO_ROM_BSS_SECTION \
SECTION(".sdio.rom.bss")
#define SDIO_ROM_TEXT_SECTION \
SECTION(".sdio.rom.text")
//3 SRAM Config Section
#define SRAM_BD_DATA_SECTION \
SECTION(".bdsram.data")
#define SRAM_BF_DATA_SECTION \
SECTION(".bfsram.data")
#define SRAM_HEAP_SECTION \
SECTION(".sram.heap")
#define START_RAM_FUN_SECTION \
SECTION(".start.ram.data")
#define START_RAM_FUN_A_SECTION \
SECTION(".start.ram.data.a")
#define START_RAM_FUN_B_SECTION \
SECTION(".start.ram.data.b")
#define START_RAM_FUN_C_SECTION \
SECTION(".start.ram.data.c")
#define START_RAM_FUN_D_SECTION \
SECTION(".start.ram.data.d")
#define START_RAM_FUN_E_SECTION \
SECTION(".start.ram.data.e")
//Non-Flash Boot Section
#define NON_FLASH_BOOT_DATA_SECTION \
SECTION(".nonflash.data")
#define NON_FLASH_BOOT_HEAP_SECTION \
SECTION(".nonflash.heap")
// USB OTG Section
#define OTG_ROM_BSS_SECTION \
SECTION(".otg.rom.bss")
#if defined(CONFIG_CHIP_E_CUT) || defined(CONFIG_USB_BOOT_SIM)
#define OTG_ROM_TEXT_SECTION \
SECTION(".otg.rom.text")
#define OTG_ROM_DATA_SECTION \
SECTION(".otg.rom.rodata")
#define START_OTG_RAM_FUN_SECTION \
SECTION(".ram.otg.data.a")
#define START_OTG_RAM_DATA_SECTION \
SECTION(".ram.otg.data.b")
#else
#define OTG_ROM_TEXT_SECTION \
// SECTION(".otg.ram.text")
#define OTG_ROM_DATA_SECTION \
// SECTION(".otg.ram.rodata")
#define START_OTG_RAM_FUN_SECTION \
// SECTION(".ram.otg.data.a")
#define START_OTG_RAM_DATA_SECTION \
// SECTION(".ram.otg.data.b")
#endif
#define IMAGE2_START_RAM_FUN_SECTION \
SECTION(".image2.ram.data")
#define SDRAM_DATA_SECTION \
SECTION(".sdram.data")
//3 Wlan Section
#define WLAN_ROM_TEXT_SECTION \
SECTION(".wlan.rom.text")
#define WLAN_ROM_DATA_SECTION \
SECTION(".wlan.rom.rodata")
#define WLAN_RAM_MAP_SECTION \
SECTION(".wlan_ram_map")
//3 Apple Section
#define APPLE_ROM_TEXT_SECTION \
SECTION(".apple.rom.text")
#define APPLE_ROM_DATA_SECTION \
SECTION(".apple.rom.rodata")
//3 Libc Section
#define LIBC_ROM_TEXT_SECTION \
SECTION(".libc.rom.text")
#define LIBC_ROM_DATA_SECTION \
SECTION(".libc.rom.rodata")
#define LIBC_RAM_BSS_SECTION \
SECTION(".libc.ram.bss")
//3 SSL Section
#define SSL_ROM_TEXT_SECTION \
SECTION(".ssl.rom.text")
#define SSL_ROM_DATA_SECTION \
SECTION(".ssl.rom.rodata")
#define SSL_RAM_MAP_SECTION \
SECTION(".ssl_ram_map")
#endif //_SECTION_CONFIG_H_