📄 hal_conf.h
字号:
/* $Id: //depot/software/SDK/Triscend/a7hal/include/hal_conf.h#36 $ */#ifndef _HAL_CONF_H#define _HAL_CONF_H/* ********************************************************** * hal_conf.h * Copyright(C) 2001-2003 Triscend Corporation. All Rights Reserved. * This file is licensed under the terms of Triscend SDK License Agreement. ********************************************************** *//** * \mainpage A7HAL API Guide * * \image html "./Setup.bmp" * <H2>Abstract</H2> * This document describes all of the user callable functions available in the A7HAL. * The functions are grouped by device driver type. To see a complete list of A7HAL device * drivers, click the Modules heading in the document index on the left. * \note This documentation is best viewed with Microsoft Internet Explorer or Netscape 7.x. * Earlier versions of Netscape may not display the documentation correctly. *//** * \file * A7HAL device driver and memory map configuration file. */#ifdef __KERNEL__#include <linux/autoconf.h>#endif#undef YES#undef YES#ifndef YES#define YES 1#endif#ifndef NO#define NO 0#endif/* * Modify the definitions below to include or exclude * A7HAL device drivers from the final application * image. *//* * Device drivers shared by the A7S and A7V */#define A7HAL_USE_ICU YES#define A7HAL_USE_UART YES#define A7HAL_USE_DMA YES#define A7HAL_USE_WATCHDOG YES#define A7HAL_USE_TIMER YES#define A7HAL_USE_SDRAM YES#define A7HAL_USE_LED YES#define A7HAL_USE_MPU YES#define A7HAL_USE_CLOCK YES#define A7HAL_USE_LAN YES#define A7HAL_USE_POWER YES#define A7HAL_USE_CFG YES#define A7HAL_USE_CSL YES/* * Device drivers specific to the A7V */#if defined(A7VE) || defined(A7VC) || defined(A7VT) || defined(A7VL)#define SCRATCHPAD_WORKAROUND YES#define A7HAL_USE_MFTA YES#define A7HAL_USE_SSI YES#else#define A7HAL_USE_MFTA NO#define A7HAL_USE_SSI NO#endif#if defined(A7VE) || defined(A7VC) || defined(A7VT)#define A7HAL_USE_ADC YES#define A7HAL_USE_LANA7V YES#define A7HAL_USE_TWSI YES#else#define A7HAL_USE_ADC NO#define A7HAL_USE_LANA7V NO#define A7HAL_USE_TWSI NO#endif#if defined(A7VE) || defined(A7VT)#define A7HAL_USE_USB YES#else#define A7HAL_USE_USB NO#endif#if defined(A7VC) || defined(A7VT)#define A7HAL_USE_CAN YES#else#define A7HAL_USE_CAN NO#endif/* * Disable the #defines for uClinux. */#ifndef __KERNEL__/* * The two defines below should be changed to match * the physical amount of FLASH and SDRAM on the * target development system. */#define SDRAM_SIZE 0x02000000 /* Size of SDRAM */#define FLASH_SIZE 0x00200000 /* Size of FLASH *//* * These definitions are specific to the ARM ADS tool * suite. They define the address where the top of the * stack space is (normally the very end of RW memory). * This defines must be updated if the SDRAM_SIZE or * FLASH_SIZE values change. * * Only use absolute values, do not use #defines since * these values are used to create the scatter and * symdefs files, which do not support values defined * as 'BASE+SIZE' or '0x02000000+0x4000' etc. */#define RAM_STACK_TOP 0x02000000 /* Aliased RAM base + size */#define FLASH_STACK_TOP 0x02000000 /* Aliased FLASH base + size */#if defined(A7VE) || defined(A7VC) || defined(A7VT) || defined(A7VL)#define INTERNAL_STACK_TOP 0x00008000 /* Aliased scratchpad base + size */#define FLASH_INTERNAL_STACK_TOP 0x00008000 /* Aliased scratchpad base + size */#define FLASH_EXEC_INTERNAL_STACK_TOP 0xd1038000 /* Scratchpad base + size */#else#define INTERNAL_STACK_TOP 0x00004000 /* Aliased scratchpad base + size */#define FLASH_INTERNAL_STACK_TOP 0x00004000 /* Aliased scratchpad base + size */#define FLASH_EXEC_INTERNAL_STACK_TOP 0xd1034000 /* Scratchpad base + size */#endif#define FLASH_EXEC_STACK_TOP 0xc2000000 /* RAM base + size *//* * The definitions below are used to set the amount of space * reserved for the ARM stack pointers. These definitions * can be changed as needed. *//* * Definitions specific to creating ram.elf */#define RAM_STACK_SIZE 0x4000 /* Size of each stack pointer *//* * Definitions specific to creating flash.elf */#define FLASH_STACK_SIZE 0x4000 /* Size of each stack pointer *//* * Definitions specific to creating flash_exec.elf */#define FLASH_EXEC_STACK_SIZE 0x4000 /* Size of each stack pointer *//* * Definitions specific to creating internal.elf */#define INTERNAL_STACK_SIZE 0x100 /* Size of each stack pointer *//* * Definitions specific to creating flash_exec_internal.elf */#define FLASH_EXEC_INTERNAL_STACK_SIZE 0x100 /* Size of each stack pointer *//* * Definitions specific to creating flash_internal.elf */#define FLASH_INTERNAL_STACK_SIZE 0x100 /* Size of each stack pointer *//* * Target Memory Map * These definitions should match the physical memory * layout of the A7 as defined in triscend_a7s.h and * triscend_a7v.h and should not be changed. */#define SDRAM_BASE 0x00000000 /* Aliased SDRAM base address */#define SDRAM_PHYS_BASE 0xc0000000 /* Physical SDRAM base address */#define FLASH_BASE 0x00000000 /* Aliased FLASH base address */#define FLASH_PHYS_BASE 0xd0000000 /* Physical FLASH base address */#define SCRATCHPAD_BASE 0x00000000 /* Aliased SRAM base address */#define SCRATCHPAD_PHYS_BASE 0xd1030000 /* Physical SDRAM base addr */#if defined(A7VE) || defined(A7VC) || defined(A7VT) || defined(A7VL)#define SCRATCHPAD_SIZE 0x00008000 /* Size of SRAM */#else#define SCRATCHPAD_SIZE 0x00004000 /* Size of SRAM */#endif/* * We initialize 5 stack pointers, INT, FIQ, ABT, SVC, USR * the defines below are used to calculate the total amount * of RW memory used for stack space and should not be * changed. */#define RAM_TOTAL_STACK (RAM_STACK_SIZE*5)#define FLASH_TOTAL_STACK (FLASH_STACK_SIZE*5)#define FLASH_EXEC_TOTAL_STACK (FLASH_EXEC_STACK_SIZE*5)#define INTERNAL_TOTAL_STACK (INTERNAL_STACK_SIZE*5)#define FLASH_EXEC_INTERNAL_TOTAL_STACK (FLASH_EXEC_INTERNAL_STACK_SIZE*5)#define FLASH_INTERNAL_TOTAL_STACK (FLASH_INTERNAL_STACK_SIZE*5)#endif /* #ifndef __KERNEL__ */#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -