📄 hal_arm_sa2sim.cdl
字号:
# ====================================================================## hal_arm_sa2sim.cdl## Intel StrongARM II Simulator HAL package configuration data# (sim is called "CASSA2"; architecture is called "Coyanosa")## ====================================================================#####COPYRIGHTBEGIN##### # ------------------------------------------- # The contents of this file are subject to the Red Hat eCos Public License # Version 1.1 (the "License"); you may not use this file except in # compliance with the License. You may obtain a copy of the License at # http://www.redhat.com/ # # Software distributed under the License is distributed on an "AS IS" # basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the # License for the specific language governing rights and limitations under # the License. # # The Original Code is eCos - Embedded Configurable Operating System, # released September 30, 1998. # # The Initial Developer of the Original Code is Red Hat. # Portions created by Red Hat are # Copyright (C) 1998, 1999, 2000 Red Hat, Inc. # All Rights Reserved. # ------------------------------------------- # #####COPYRIGHTEND##### ====================================================================######DESCRIPTIONBEGIN###### Author(s): hmt# Contributors:# Date: 2000-02-14######DESCRIPTIONEND###### ====================================================================cdl_package CYGPKG_HAL_ARM_SA2SIM { display "Intel StrongARM II simulator" parent CYGPKG_HAL_ARM define_header hal_arm_sa2sim.h include_dir cyg/hal hardware description " The sa2sim package provides support for eCos on an Intel StrongARM II (Coyanosa) simulator, specifically the CASSA2 Cycle-Accurate Simulator for StrongARM 2." compile hal_diag.c sa2sim_misc.c implements CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED define_proc { puts $::cdl_system_header "#define CYGBLD_HAL_TARGET_H <pkgconf/hal_arm.h>" puts $::cdl_system_header "#define CYGBLD_HAL_PLATFORM_H <pkgconf/hal_arm_sa2sim.h>" } make -priority 400 { <PREFIX>/etc/bangirq.pil: <PACKAGE>/simcfg/bangirq.pil @sh -c "mkdir -p $(dir $@)" @install -c -m 0644 $< $@ } make -priority 400 { <PREFIX>/etc/bangfiq.pil: <PACKAGE>/simcfg/bangfiq.pil @sh -c "mkdir -p $(dir $@)" @install -c -m 0644 $< $@ } make -priority 400 { <PREFIX>/etc/conf.hdl: <PACKAGE>/simcfg/conf.hdl @sh -c "mkdir -p $(dir $@)" @install -c -m 0644 $< $@ } make -priority 400 { <PREFIX>/etc/cpu.pil: <PACKAGE>/simcfg/cpu.pil @sh -c "mkdir -p $(dir $@)" @install -c -m 0644 $< $@ } make -priority 400 { <PREFIX>/bin/sa2sim-run: <PACKAGE>/simcfg/sa2sim-run @sh -c "mkdir -p $(dir $@)" @install -c -m 0755 $< $@ } make -priority 400 { <PREFIX>/bin/lilmon.elf: <PACKAGE>/lilmon/lilmon.s <PACKAGE>/lilmon/lilmon.lnk @sh -c "mkdir -p $(dir $@)" $(CC) $(LDFLAGS) -L $(dir $<) -Tlilmon.lnk -o $@ $< } cdl_component CYG_HAL_STARTUP { display "Startup type" flavor data default_value {"RAM"} legal_values {"RAM"} no_define define -file system.h CYG_HAL_STARTUP description " The Coyanosa Simulator has no ROM, only RAM, so RAM startup is the only supported startup option. The 'little monitor' lilmon.elf acts like a boot ROM even though it too is loaded into simulator RAM; it performs initial setup then jumps to app start at 0x8000, just like a board with eCos GDB Stub ROMs installed." } # Real-time clock/counter specifics cdl_component CYGNUM_HAL_RTC_CONSTANTS { display "Real-time clock constants" flavor none cdl_option CYGNUM_HAL_RTC_NUMERATOR { display "Real-time clock numerator" flavor data calculated 1000000000 } cdl_option CYGNUM_HAL_RTC_DENOMINATOR { display "Real-time clock denominator" flavor data ;# use 1000Hz not 100 so that simulations calculated 1000 ;# run faster! } cdl_option CYGNUM_HAL_RTC_PERIOD { display "Real-time clock period" flavor data calculated 100000 ;# CCLK is 100MHz for a 33MHz CLK/MCLK } } cdl_option CYGHWR_TARGET_SIMULATOR_NO_GDB_WORKING { # this is being defined as a CDLoption because it might become # untrue if/when GDB stubs or other means of interworking becomes # available for the sa2sim. display "Configure tests for shorter execution time" flavor bool calculated 1 description " The Coyanosa Simulator does not support interworking with GDB, therefore it is not possible to modify the variable that tells eCos tests to run for a shorter time. This options allows that variable to be initialized appropriately. (This information is managed using a variable because some simulators run exactly the same executable as real hardware, but you still want to reduce the execution time - hence the run-time control of this feature.)" } cdl_component CYGBLD_GLOBAL_OPTIONS { display "Global build options" flavor none description " Global build options including control over compiler flags, linker flags and choice of toolchain." parent CYGPKG_NONE cdl_option CYGBLD_GLOBAL_COMMAND_PREFIX { display "Global command prefix" flavor data no_define default_value { "arm-elf" } description " This option specifies the command prefix used when invoking the build tools." } cdl_option CYGBLD_GLOBAL_CFLAGS { display "Global compiler flags" flavor data no_define default_value { "-mcpu=strongarm -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc -finit-priority -mstructure-size-boundary=8" } description " This option controls the global compiler flags which are used to compile all packages by default. Individual packages may define options which override these global flags." } cdl_option CYGBLD_GLOBAL_LDFLAGS { display "Global linker flags" flavor data no_define default_value { "-Wl,--gc-sections -Wl,-static -g -O2 -nostdlib" } description " This option controls the global linker flags. Individual packages may define options which override these global flags." } } cdl_component CYGPKG_HAL_ARM_SA2SIM_OPTIONS { display "StrongARM II build options" flavor none description " Package specific build options including control over compiler flags used only in building this package, and details of which tests are built." cdl_option CYGPKG_HAL_ARM_SA2SIM_CFLAGS_ADD { display "Additional compiler flags" flavor data no_define default_value { "" } description " This option modifies the set of compiler flags for building the StrongARM II simulator HAL. These flags are used in addition to the set of global flags." } cdl_option CYGPKG_HAL_ARM_SA2SIM_CFLAGS_REMOVE { display "Suppressed compiler flags" flavor data no_define default_value { "" } description " This option modifies the set of compiler flags for building the StrongARM II simulator HAL. These flags are removed from the set of global flags if present." } cdl_option CYGPKG_HAL_ARM_SA2SIM_TESTS { display "StrongARM II simulator tests" flavor data no_define calculated { "" } description " This option specifies the set of tests for the StrongARM II simulator HAL." } } cdl_component CYGHWR_MEMORY_LAYOUT { display "Memory layout" flavor data no_define calculated { CYG_HAL_STARTUP == "RAM" ? "arm_sa2sim_ram" : \ "arm_sa2sim_rom" } cdl_option CYGHWR_MEMORY_LAYOUT_LDI { display "Memory layout linker script fragment" flavor data no_define define -file system.h CYGHWR_MEMORY_LAYOUT_LDI calculated { CYG_HAL_STARTUP == "RAM" ? "<pkgconf/mlt_arm_sa2sim_ram.ldi>" : \ "<pkgconf/mlt_arm_sa2sim_rom.ldi>" } } cdl_option CYGHWR_MEMORY_LAYOUT_H { display "Memory layout header file" flavor data no_define define -file system.h CYGHWR_MEMORY_LAYOUT_H calculated { CYG_HAL_STARTUP == "RAM" ? "<pkgconf/mlt_arm_sa2sim_ram.h>" : \ "<pkgconf/mlt_arm_sa2sim_rom.h>" } } }}# EOF hal_arm_sa2sim.cdl
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -