mirror of
https://bitbucket.org/librepilot/librepilot.git
synced 2024-11-30 08:24:11 +01:00
918250868b
The previous fix in r652 was _almost_ right. There was still a one word (4-byte) overlap between _irq_stack_top and the start of the data segment. _irq_stack_end + _irq_stack_size leaves the '.' pointer at the word immediatly after the stack. This commit corrects this error and places _irq_stack_top on the last word _inside_ the reserved space for the irq stack. [Before] $ ./tools/arm-2009q3/bin/arm-none-eabi-nm -n ./build/openpilot/OpenPilot.elf ... 20000000 A SRAM_BASE 20000000 B _irq_stack_end 20000400 d LED_GPIO_PORT <--- overlap 20000400 B _irq_stack_top <--- overlap 20000400 D _sdata 20000408 d ADC_GPIO_PORT ... [After] $ ./tools/arm-2009q3/bin/arm-none-eabi-nm -n ./build/openpilot/OpenPilot.elf ... 20000000 A SRAM_BASE 20000000 B _irq_stack_end 200003fc B _irq_stack_top 20000400 d LED_GPIO_PORT 20000400 D _sdata 20000408 d ADC_GPIO_PORT ... git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@668 ebee16cc-31ac-478f-84a7-5cbb03baadba |
||
---|---|---|
.. | ||
Libraries | ||
link_stm32f10x_HD_BL.ld | ||
link_stm32f10x_HD_NB.ld | ||
link_stm32f10x_HD.ld | ||
link_stm32f10x_MD.ld | ||
pios_adc.c | ||
pios_debug.c | ||
pios_delay.c | ||
pios_exti.c | ||
pios_gpio.c | ||
pios_i2c.c | ||
pios_irq.c | ||
pios_led.c | ||
pios_ppm.c | ||
pios_pwm.c | ||
pios_servo.c | ||
pios_spektrum.c | ||
pios_spi.c | ||
pios_sys.c | ||
pios_usart.c | ||
pios_usb_com.c | ||
pios_usb_hid.c | ||
pios_usb.c | ||
startup_stm32f10x_HD_BL.S | ||
startup_stm32f10x_HD_NB.S | ||
startup_stm32f10x_HD.S | ||
startup_stm32f10x_MD.S |