+ cli();
+ while (i2c_done) {
+ len = i2c_len;
+ memcpy(buf, (unsigned char*)i2c_databuf, len);
+ i2c_done = 0x00;
+ sei();
+
+ decode_ipmb_pkt(buf, len);
+
+ cli();
+ }
+
+#ifdef SLEEP_MODE
+ sleep_enable();
+#endif
+ sei();
+#ifdef SLEEP_MODE
+ sleep_cpu();
+ sleep_disable();
+#endif