qmod eeprom/i2c: Re-start watchdog while slow bit-banging
diff --git a/firmware/libboard/qmod/source/board_qmod.c b/firmware/libboard/qmod/source/board_qmod.c
index e05a454..3e6ec52 100644
--- a/firmware/libboard/qmod/source/board_qmod.c
+++ b/firmware/libboard/qmod/source/board_qmod.c
@@ -26,7 +26,11 @@
}
const unsigned char __eeprom_bin[256] = {
- 0x23, 0x42, 0x17, 0x25, 0x00, 0x00, 0x9b, 0x20, 0x01, 0x00, 0x00, 0x00, 0x32, 0x32, 0x32, 0x32, /* 0x00 - 0x0f */
+ USB_VENDOR_OPENMOKO & 0xff,
+ USB_VENDOR_OPENMOKO >> 8,
+ USB_PRODUCT_QMOD_HUB & 0xff,
+ USB_PRODUCT_QMOD_HUB >> 8,
+ 0x00, 0x00, 0x9b, 0x20, 0x01, 0x00, 0x00, 0x00, 0x32, 0x32, 0x32, 0x32, /* 0x00 - 0x0f */
0x32, 0x04, 0x09, 0x18, 0x0d, 0x00, 0x73, 0x00, 0x79, 0x00, 0x73, 0x00, 0x6d, 0x00, 0x6f, 0x00, /* 0x10 - 0x1f */
0x63, 0x00, 0x6f, 0x00, 0x6d, 0x00, 0x20, 0x00, 0x2d, 0x00, 0x20, 0x00, 0x73, 0x00, 0x2e, 0x00, /* 0x20 - 0x2f */
0x66, 0x00, 0x2e, 0x00, 0x6d, 0x00, 0x2e, 0x00, 0x63, 0x00, 0x2e, 0x00, 0x20, 0x00, 0x47, 0x00, /* 0x30 - 0x3f */
diff --git a/firmware/libboard/qmod/source/i2c.c b/firmware/libboard/qmod/source/i2c.c
index 0549da1..607f247 100644
--- a/firmware/libboard/qmod/source/i2c.c
+++ b/firmware/libboard/qmod/source/i2c.c
@@ -157,6 +157,8 @@
{
bool nack;
+ WDT_Restart(WDT);
+
/* Write slave address */
nack = i2c_write_byte(true, false, slave << 1);
if (nack)
@@ -180,6 +182,8 @@
{
bool nack;
+ WDT_Restart(WDT);
+
/* dummy write cycle */
nack = i2c_write_byte(true, false, slave << 1);
if (nack)