Forgotten example-led/stack-def.h.

This commit is contained in:
NIIBE Yutaka
2017-11-21 13:16:50 +09:00
parent 14c4256337
commit 63974743b4
2 changed files with 59 additions and 5 deletions

11
NEWS
View File

@@ -11,10 +11,11 @@ is due to the change of chx_sched interface, introduced for GNU/Linux
emulation. This bug is fixed.
** New feature: sleep mode
New function chopstx_conf_idle is added to support core sleep. Use of
sleep by this feature requires careful preparation. Enabling sleep, a
board with no RESET pin cannot be debugged by JTAG/SWD. Setting of
DBGMCU_CR (0xE0042004) is required beforehand (default is zero).
New function chopstx_conf_idle is added to support sleep. Use of
sleep by this feature requires careful preparation. For example,
enabling sleep, a board with no RESET pin cannot be debugged by
JTAG/SWD. Setting of DBGMCU_CR (0xE0042004) is required beforehand
(default is zero).
** API change: chopstx_poll
This is a kind of clarification. The third argument is now an array
@@ -27,7 +28,7 @@ INTR_REQ_USB is now defined by usb_lld.h. Enumeration type of
DEVICE_STATE now has USB_DEVICE_STATE_ prefix.
** USB driver change
USB suspend/resume is supported for STM32F103.
USB suspend and wakeup events are supported for STM32F103.
* Major changes in Chopstx 1.5

53
example-led/stack-def.h Normal file
View File

@@ -0,0 +1,53 @@
#define MAIN_SIZE 0x0080 /* Idle+Exception handlers */
#define SIZE_0 0x0100 /* Main program */
#define SIZE_1 0x0100 /* first thread program */
#define SIZE_2 0x0100 /* second thread program */
#if defined(STACK_MAIN)
/*
* The terminology of "main" is confusing in ARM architecture.
* Here, "main_base" is for exception handlers.
*/
/* Idle+Exception handlers */
char __main_stack_end__[0] __attribute__ ((section(".main_stack")));
char main_base[MAIN_SIZE] __attribute__ ((section(".main_stack")));
/* Main program */
char __process0_stack_end__[0] __attribute__ ((section(".process_stack.0")));
char process0_base[SIZE_0] __attribute__ ((section(".process_stack.0")));
#endif
/* First thread program */
#if defined(STACK_PROCESS_1)
char process1_base[SIZE_1] __attribute__ ((section(".process_stack.1")));
#endif
/* Second thread program */
#if defined(STACK_PROCESS_2)
char process2_base[SIZE_2] __attribute__ ((section(".process_stack.2")));
#endif
/* Third thread program */
#if defined(STACK_PROCESS_3)
char process3_base[SIZE_3] __attribute__ ((section(".process_stack.3")));
#endif
/* Fourth thread program */
#if defined(STACK_PROCESS_4)
char process4_base[SIZE_4] __attribute__ ((section(".process_stack.4")));
#endif
/* Fifth thread program */
#if defined(STACK_PROCESS_5)
char process5_base[SIZE_5] __attribute__ ((section(".process_stack.5")));
#endif
/* Sixth thread program */
#if defined(STACK_PROCESS_6)
char process6_base[SIZE_6] __attribute__ ((section(".process_stack.6")));
#endif
/* Seventh thread program */
#if defined(STACK_PROCESS_7)
char process7_base[SIZE_7] __attribute__ ((section(".process_stack.7")));
#endif