Index: firmware/target/coldfire/pcf50606-coldfire.c =================================================================== --- firmware/target/coldfire/pcf50606-coldfire.c (revision 14826) +++ firmware/target/coldfire/pcf50606-coldfire.c (working copy) @@ -87,7 +87,7 @@ inline void pcf50606_i2c_start(void) { #ifdef USE_ASM - asm ( + asm volatile ( "not.l %[sdab] \n" /* SDA_HI_IN */ "and.l %[sdab],(8,%[sdard]) \n" "not.l %[sdab] \n" @@ -137,7 +137,7 @@ inline void pcf50606_i2c_stop(void) { #ifdef USE_ASM - asm ( + asm volatile ( "or.l %[sdab],(8,%[sdard]) \n" /* SDA_LO_OUT */ "not.l %[sclb] \n" /* SCL_HI_IN */ @@ -178,7 +178,7 @@ inline void pcf50606_i2c_ack(bool ack) { #ifdef USE_ASM - asm ( + asm volatile ( "tst.b %[ack] \n" /* if (!ack) */ "bne.s 1f \n" @@ -233,7 +233,7 @@ bool ret; #ifdef USE_ASM - asm ( + asm volatile ( "not.l %[sdab] \n" /* SDA_HI_IN */ "and.l %[sdab],(8,%[sdard]) \n" "not.l %[sdab] \n" @@ -363,7 +363,7 @@ unsigned char byte = 0; #ifdef USE_ASM - asm ( + asm volatile ( "not.l %[sdab] \n" /* SDA_HI_IN */ "and.l %[sdab],(8,%[sdard]) \n" "not.l %[sdab] \n"