]> oss.titaniummirror.com Git - tinyos-2.x.git/blobdiff - tos/chips/rf230/RF230LayerP.nc
updated RF230layerP, added dummy LPL
[tinyos-2.x.git] / tos / chips / rf230 / RF230LayerP.nc
index ef4c52f69f1b5613cfa54db6558d54360c069983..e1d329800a6e9032b582f19a4d37767dff4fe9c0 100644 (file)
@@ -215,7 +215,7 @@ implementation
 
                call BusyWait.wait(510);
 
-               writeRegister(RF230_IRQ_MASK, RF230_IRQ_TRX_UR | RF230_IRQ_PLL_UNLOCK | RF230_IRQ_PLL_LOCK | RF230_IRQ_TRX_END | RF230_IRQ_RX_START);
+               writeRegister(RF230_IRQ_MASK, RF230_IRQ_TRX_UR | RF230_IRQ_PLL_LOCK | RF230_IRQ_TRX_END | RF230_IRQ_RX_START);
                writeRegister(RF230_CCA_THRES, RF230_CCA_THRES_VALUE);
                writeRegister(RF230_PHY_TX_PWR, RF230_TX_AUTO_CRC_ON | RF230_TX_PWR_DEFAULT);
 
@@ -443,7 +443,10 @@ implementation
                /*
                 * There is a very small window (~1 microsecond) when the RF230 went 
                 * into PLL_ON state but was somehow not properly initialized because 
-                * of an incoming message and could not go into BUSY_TX. 
+                * of an incoming message and could not go into BUSY_TX. I think the
+                * radio can even receive a message, and generate a TRX_UR interrupt
+                * because of concurrent access, but that message probably cannot be
+                * recovered.
                 */
                if( (length & RF230_TRX_STATUS_MASK) != RF230_BUSY_TX )
                {
@@ -604,9 +607,6 @@ implementation
                        }
 #endif
 
-                       // TODO: handle this interrupt
-                       ASSERT( ! (irq & RF230_IRQ_PLL_UNLOCK) );
-
                        if( irq & RF230_IRQ_PLL_LOCK )
                        {
                                if( cmd == CMD_TURNON || cmd == CMD_CHANNEL )