?? hal.h
字號:
implementations will vary from architecture to architecture." } cdl_option CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM { display "Use minimum thread context" parent CYGPKG_HAL_COMMON_CONTEXT description " The thread context switch code can exploit the calling conventions defined for a given architecture to reduce the amount of state that has to be saved during a context switch. Generally this improves performance and reduces code size. However it can make source-level debugging more difficult." } }}CFG_DATA */#define CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM/* {{CFG_DATA # NOTE: The requirement for kernel exception support is bogus in that # the user can supply a deliver_exception function herself. In that # case, however, it is easy to force the kernel option off while leaving # this one on. Having the requirement prevents accidental invalid # configurations of the kernel. cdl_option CYGPKG_HAL_EXCEPTIONS { display "HAL exception support" parent CYGPKG_HAL_COMMON requires CYGPKG_KERNEL_EXCEPTIONS description " When a processor exception occurs, for example an attempt to execute an illegal instruction or to perform a divide by zero, this exception may be handled in a number of different ways. If the target system has gdb support then typically the exception will be handled by gdb code. Otherwise if the HAL exception support is enabled then the HAL will invoke a routine deliver_exception(). Typically this routine will be provided by the eCos kernel, but it is possible for application code to provide its own implementation. If the HAL exception support is not enabled and a processor exception occurs then the behaviour of the system is undefined. " } }}CFG_DATA */#define CYGPKG_HAL_EXCEPTIONS/* {{CFG_DATA cdl_option CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG { display "Stop calling constructors early" description "This option supports environments where some constructors must be run in the context of a thread rather than at simple system startup time. A boolean flag named cyg_hal_stop_constructors is set to 1 when constructors should no longer be invoked. It is up to some other package to deal with the rest of the constructors. In the current version this is only possible with the C library." type boolean requires CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS parent CYGPKG_HAL_COMMON } }}CFG_DATA */#undef CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG/* --------------------------------------------------------------------- * Options related to source-level debugging and diagnostics. {{CFG_DATA cdl_component CYGPKG_HAL_DEBUG { display "Source-level debugging support" type dummy parent CYGPKG_HAL description " If the source level debugger gdb is to be used for debugging application code then it may be necessary to configure in support for this in the HAL." } cdl_option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS { display "Include GDB stubs in HAL" parent CYGPKG_HAL_DEBUG requires !CYGPKG_HAL_POWERPC_SIM requires !CYGPKG_HAL_MN10300_SIM requires !CYGPKG_HAL_TX39_SIM requires !CYGPKG_HAL_I386_LINUX requires !CYGPKG_HAL_SPARCLITE description " This option causes a set of GDB stubs to be included into the system. On some target systems the GDB support will be provided by other means, for example by a ROM monitor. On other targets, especially when building a ROM-booting system, the necessary support has to go into the target library itself." } cdl_option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT { display "Include GDB external break support" parent CYGPKG_HAL_DEBUG requires CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS requires !CYGPKG_HAL_TX39_JMR3904 requires !CYGPKG_HAL_POWERPC_FADS description " This option causes the GDB stub to add a serial interrupt handler which will listen for GDB break packets. This lets you stop the target asynchronously when using GDB, usually by hitting Control+C or pressing the STOP button." } cdl_option CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT { display "Include GDB multi-threading debug support" parent CYGPKG_HAL_DEBUG requires CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT description " This option enables some extra HAL code which is needed to support multi-threaded source level debugging." } }}CFG_DATA */#undef CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS#undef CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT#define CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT/* * NOTE: * * Right now there is no easy way to express the ROM monitor options * in CDL. The problem is that the default values depend on the * target platform and on the desired start-up. It is possible to * produce something that will work correctly in a clean world, but * not something more general. * * One possibility is to duplicate the relevant options in the various * platform HAL packages, renaming them to avoid collisions. This appears * to be feasible with the current sources because the rom monitor options * are only referenced in the HAL packages. It is not clear whether or not * this will continue to be the case. *//* * Some development boards come with a ROM monitor that provides * download and debug facilities. Such ROMs may also supply interrupt * redirection and IO facilities. The following option causes the HAL * to integrate with the ROM monitor present on the configured * platform. If this option is not defined, the monitor will not be * used. Where there is more than one ROM monitor for a specific * platform, a subsidiary define should identify the appropriate monitor * type. *///#define CYG_HAL_USE_ROM_MONITOR#if defined(CYG_HAL_TX39_JMR3904) && defined(CYG_HAL_STARTUP_RAM)#define CYG_HAL_USE_ROM_MONITOR#define CYG_HAL_USE_ROM_MONITOR_CYGMON#endif#if defined(CYG_HAL_MN10300_STDEVAL1) && defined(CYG_HAL_STARTUP_RAM)#define CYG_HAL_USE_ROM_MONITOR#define CYG_HAL_USE_ROM_MONITOR_CYGMON#endif#ifdef CYG_HAL_USE_ROM_MONITOR//#define CYG_HAL_USE_ROM_MONITOR_SLOAD//#define CYG_HAL_USE_ROM_MONITOR_GDB_STUBS//#define CYG_HAL_USE_ROM_MONITOR_CYGMON#endif/* --------------------------------------------------------------------- * * The section below deals with some inferences about package/feature * presence that are not yet supported by the full external configuration * tool; they are NOT user configuration, and you should NOT edit them. *//* * CYG_HAL_<TARGET> and CYG_HAL_<TARGET>_<PLATFORM> are generated by * pkgconf, using the information from the targets file. * * NOTE: Currently the code also needs these #defines. */#ifdef CYG_HAL_MN10300_STDEVAL1# define CYG_HAL_MN10300_MN103002#endif#ifdef CYG_HAL_MN10300_SIM# define CYG_HAL_MN10300_MN103002#endif#ifdef CYG_HAL_POWERPC_COGENT# define CYG_HAL_POWERPC_MPC8xx# define CYG_HAL_POWERPC_MPC860# undef CYG_HAL_POWERPC_MPC850# undef CYG_HAL_POWERPC_MPC823#endif#ifdef CYG_HAL_POWERPC_FADS# define CYG_HAL_POWERPC_MPC8xx# define CYG_HAL_POWERPC_MPC860#endif#ifdef CYG_HAL_POWERPC_SIM# define CYG_HAL_POWERPC_MPC603#endif#ifdef CYG_HAL_TX39_JMR3904# define CYG_HAL_MIPS# define CYG_HAL_MIPS_TX39# define CYG_HAL_MIPS_TX3904# define CYG_HAL_MIPS_JMR3904#endif#ifdef CYG_HAL_TX39_SIM# define CYG_HAL_MIPS# define CYG_HAL_MIPS_TX39# define CYG_HAL_MIPS_SIM#endif#ifdef CYG_HAL_MIPS_TX39#include <pkgconf/hal_tx39.h>#endif/* -------------------------------------------------------------------*/#endif /* CYGONCE_PKGCONF_HAL_H *//* EOF hal.h */
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -