lib: More small fixes.

This commit is contained in:
Uwe Hermann 2011-11-16 21:53:27 +01:00
parent 0d25aa3fcd
commit d97c937b8e
5 changed files with 10 additions and 13 deletions

View File

@ -19,7 +19,7 @@
#define WEAK __attribute__ ((weak)) #define WEAK __attribute__ ((weak))
/* Symbols exported by linker script */ /* Symbols exported by the linker script(s): */
extern unsigned _etext, _data, _edata, _ebss, _stack; extern unsigned _etext, _data, _edata, _ebss, _stack;
void main(void); void main(void);
@ -61,7 +61,7 @@ void (*const vector_table[]) (void) = {
void reset_handler(void) void reset_handler(void)
{ {
volatile unsigned *src, *dest; volatile unsigned *src, *dest;
asm("MSR msp, %0" : : "r"(&_stack)); __asm__("MSR msp, %0" : : "r"(&_stack));
for (src = &_etext, dest = &_data; dest < &_edata; src++, dest++) for (src = &_etext, dest = &_data; dest < &_edata; src++, dest++)
*dest = *src; *dest = *src;
@ -93,4 +93,3 @@ void null_handler(void)
#pragma weak pend_sv_handler = null_handler #pragma weak pend_sv_handler = null_handler
#pragma weak sys_tick_handler = null_handler #pragma weak sys_tick_handler = null_handler
/* TODO: Interrupt handler weak aliases */ /* TODO: Interrupt handler weak aliases */

View File

@ -22,7 +22,7 @@
#include <libopencm3/stm32/f1/rcc.h> #include <libopencm3/stm32/f1/rcc.h>
#include <libopencm3/stm32/f1/flash.h> #include <libopencm3/stm32/f1/flash.h>
/* Set the default ppre1 and ppre2 peripheral clock frequencies after reset */ /* Set the default ppre1 and ppre2 peripheral clock frequencies after reset. */
u32 rcc_ppre1_frequency = 8000000; u32 rcc_ppre1_frequency = 8000000;
u32 rcc_ppre2_frequency = 8000000; u32 rcc_ppre2_frequency = 8000000;

View File

@ -19,7 +19,7 @@
#define WEAK __attribute__ ((weak)) #define WEAK __attribute__ ((weak))
/* Symbols exported by linker script */ /* Symbols exported by the linker script(s). */
extern unsigned _etext, _data, _edata, _ebss, _stack; extern unsigned _etext, _data, _edata, _ebss, _stack;
void main(void); void main(void);

View File

@ -402,16 +402,14 @@ void rcc_clock_setup_hse_3v3(const clock_scale_t *clock)
rcc_set_ppre1(clock->ppre1); rcc_set_ppre1(clock->ppre1);
rcc_set_ppre2(clock->ppre2); rcc_set_ppre2(clock->ppre2);
rcc_set_main_pll_hse(clock->pllm, rcc_set_main_pll_hse(clock->pllm, clock->plln,
clock->plln, clock->pllp, clock->pllq);
clock->pllp,
clock->pllq);
/* Enable PLL oscillator and wait for it to stabilize. */ /* Enable PLL oscillator and wait for it to stabilize. */
rcc_osc_on(PLL); rcc_osc_on(PLL);
rcc_wait_for_osc_ready(PLL); rcc_wait_for_osc_ready(PLL);
/* Configure flash settings */ /* Configure flash settings. */
flash_set_ws(clock->flash_config); flash_set_ws(clock->flash_config);
/* Select PLL as SYSCLK source. */ /* Select PLL as SYSCLK source. */
@ -420,7 +418,7 @@ void rcc_clock_setup_hse_3v3(const clock_scale_t *clock)
/* Wait for PLL clock to be selected. */ /* Wait for PLL clock to be selected. */
rcc_wait_for_sysclk_status(PLL); rcc_wait_for_sysclk_status(PLL);
/* Set the peripheral clock frequencies used */ /* Set the peripheral clock frequencies used. */
rcc_ppre1_frequency = clock->apb1_frequency; rcc_ppre1_frequency = clock->apb1_frequency;
rcc_ppre2_frequency = clock->apb2_frequency; rcc_ppre2_frequency = clock->apb2_frequency;
} }