diff options
author | Jakob Odersky <jodersky@gmail.com> | 2015-05-05 20:57:20 +0200 |
---|---|---|
committer | Jakob Odersky <jodersky@gmail.com> | 2015-05-05 20:57:20 +0200 |
commit | f573c78fc173cfba41f00958230d141e7136e625 (patch) | |
tree | c511aaba4d28009256046916f44c8dff84c878be | |
parent | 63912680ba89e8583c2c3ec82899f5bc2d7ffdcd (diff) | |
download | px4-nuttx-f573c78fc173cfba41f00958230d141e7136e625.tar.gz px4-nuttx-f573c78fc173cfba41f00958230d141e7136e625.tar.bz2 px4-nuttx-f573c78fc173cfba41f00958230d141e7136e625.zip |
bug: warn about requiring -Os for setting clock
-rw-r--r-- | nuttx/arch/arm/src/kinetis/kinetis_clockconfig.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/nuttx/arch/arm/src/kinetis/kinetis_clockconfig.c b/nuttx/arch/arm/src/kinetis/kinetis_clockconfig.c index 8d383523a..9bc6c1659 100644 --- a/nuttx/arch/arm/src/kinetis/kinetis_clockconfig.c +++ b/nuttx/arch/arm/src/kinetis/kinetis_clockconfig.c @@ -362,6 +362,12 @@ kinesis_setdividers(uint32_t div1, uint32_t div2, uint32_t div3, uint32_t div4) /* Set clock dividers to desired value */ + /* XXX: WARNING! + * + * For some reason, if the optimization level is not set for size + * (-Os) on GCC 4.8.4, the below register assignment will cause this + * function to never return. + */ putreg32(SIM_CLKDIV1_OUTDIV1(div1) | SIM_CLKDIV1_OUTDIV2(div2) | SIM_CLKDIV1_OUTDIV3(div3) | SIM_CLKDIV1_OUTDIV4(div4), KINETIS_SIM_CLKDIV1); |