]> oss.titaniummirror.com Git - tinyos-2.x.git/commitdiff
Fix USCI hanging caused by clearing the TXIFG bit.
authorR. Steve McKown <rsmckown@gmail.com>
Thu, 8 Apr 2010 00:12:00 +0000 (18:12 -0600)
committerR. Steve McKown <rsmckown@gmail.com>
Tue, 13 Apr 2010 20:18:26 +0000 (14:18 -0600)
Also removed the commands that allow set/clear of TXIFG, as there is never a
valid reason to do so.

tos/chips/msp430/usci/HplMsp430UsciReg.nc
tos/chips/msp430/usci/HplMsp430UsciRegP.nc
tos/chips/msp430/usci/Msp430UartP.nc

index 09c0f1be2fe090d5086fec630ff2ee9f66946b5e..1d80fdaf25647464b8ae519a8fe3f577742d1251 100644 (file)
@@ -263,10 +263,6 @@ interface HplMsp430UsciReg {
    * UCxxCTL0 for more information.
    */
   async command bool getIfgRx();
-  async command void setIfgRx();
   async command void clrIfgRx();
   async command bool getIfgTx();
-  async command void setIfgTx();
-  async command void clrIfgTx();
-
 }
index a9994ade7cddbd9305ff0bdbae34c7c609225e4c..b46a1c4f35815b51fdc7fbc83a5914007fe2c1c4 100644 (file)
@@ -276,11 +276,6 @@ implementation
     return READ_FLAG(UCxxIfg, UCxxRXIFG);
   }
 
-  async command void Registers.setIfgRx()
-  {
-    SET_FLAG(UCxxIfg, UCxxRXIFG);
-  }
-
   async command void Registers.clrIfgRx()
   {
     CLR_FLAG(UCxxIfg, UCxxRXIFG);
@@ -290,14 +285,4 @@ implementation
   {
     return READ_FLAG(UCxxIfg, UCxxTXIFG);
   }
-
-  async command void Registers.setIfgTx()
-  {
-    SET_FLAG(UCxxIfg, UCxxTXIFG);
-  }
-
-  async command void Registers.clrIfgTx()
-  {
-    CLR_FLAG(UCxxIfg, UCxxTXIFG);
-  }
 }
index ddf074bdd0952100c4319207af6fcdb2a6d3a5ff..1b595bfdbd9af40369beceb8128264f6f6620183 100644 (file)
@@ -123,7 +123,6 @@ implementation {
       call Registers.clrIeRx();
       call Registers.clrIeTx();
       call Registers.clrIfgRx();
-      call Registers.clrIfgTx();
 
       /* Restore pins to their pre-configure state */
       if (m_pins & PINS_RXD)
@@ -171,7 +170,6 @@ implementation {
     }
     if (m_slen == 0 && m_sobuf) {
       call Registers.clrIeTx();
-      call Registers.clrIfgTx();
       m_sobuf = 0;
       signal UartStream.sendDone(m_sobuf, m_solen, SUCCESS);
     }