[tuxdroid-svn] r1119 - firmware/tuxaudio/trunk
Status: Beta
Brought to you by:
ks156
From: jaguarondi <c2m...@c2...> - 2008-05-06 15:10:45
|
Author: jaguarondi Date: 2008-05-06 17:10:03 +0200 (Tue, 06 May 2008) New Revision: 1119 Modified: firmware/tuxaudio/trunk/communication.c firmware/tuxaudio/trunk/parser.c Log: * send_status is called within and outside interrupts so we should disable interrupts when accessing the status fifo. Modified: firmware/tuxaudio/trunk/communication.c =================================================================== --- firmware/tuxaudio/trunk/communication.c 2008-05-06 15:00:57 UTC (rev 1118) +++ firmware/tuxaudio/trunk/communication.c 2008-05-06 15:10:03 UTC (rev 1119) @@ -191,8 +191,14 @@ uint8_t i; if (FifoLength(statusFifo) <= INCOMING_BUF_SIZE - CMD_SIZE) + { + uint8_t sreg; + sreg = SREG; + cli(); for (i = 0; i < CMD_SIZE; i++) FifoPut(statusFifo, status[i]); + SREG = sreg; + } /* XXX what if stack is full? */ } Modified: firmware/tuxaudio/trunk/parser.c =================================================================== --- firmware/tuxaudio/trunk/parser.c 2008-05-06 15:00:57 UTC (rev 1118) +++ firmware/tuxaudio/trunk/parser.c 2008-05-06 15:10:03 UTC (rev 1119) @@ -64,9 +64,7 @@ cmd[1] = 0; cmd[2] = 0; cmd[3] = 0; - cli(); send_status(cmd); - sei(); /* XXX sleep commented for now */ /*pre_sleep_delay = 30; [> handle sleep in its own function <]*/ /*sleep_f = 1;*/ |