From ac55fc28ee6aa68cddcac00f6b76398cd8c0b541 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A1szl=C3=B3=20Monda?= Date: Thu, 21 Sep 2017 21:34:23 +0200 Subject: [PATCH] Add I2C_Watchdog variable that gets incremented upon I2C slave operations. --- devices/MKL03Z4/drivers/fsl_i2c.c | 4 ++++ devices/MKL03Z4/drivers/fsl_i2c.h | 2 ++ 2 files changed, 6 insertions(+) diff --git a/devices/MKL03Z4/drivers/fsl_i2c.c b/devices/MKL03Z4/drivers/fsl_i2c.c index 6fc75f4..c7c76f8 100644 --- a/devices/MKL03Z4/drivers/fsl_i2c.c +++ b/devices/MKL03Z4/drivers/fsl_i2c.c @@ -146,6 +146,9 @@ static i2c_isr_t s_i2cMasterIsr; /*! @brief Pointer to slave IRQ handler for each instance. */ static i2c_isr_t s_i2cSlaveIsr; +/* @brief Extern counter to ensure that I2C is always alive */ +volatile uint32_t I2C_Watchdog; + /******************************************************************************* * Codes ******************************************************************************/ @@ -1386,6 +1389,7 @@ void I2C_SlaveTransferHandleIRQ(I2C_Type *base, void *i2cHandle) /* Add this to avoid build warning. */ dummy++; + I2C_Watchdog++; status = I2C_SlaveGetStatusFlags(base); xfer = &(handle->transfer); diff --git a/devices/MKL03Z4/drivers/fsl_i2c.h b/devices/MKL03Z4/drivers/fsl_i2c.h index 7117fd5..21f330b 100644 --- a/devices/MKL03Z4/drivers/fsl_i2c.h +++ b/devices/MKL03Z4/drivers/fsl_i2c.h @@ -32,6 +32,8 @@ #include "fsl_common.h" +extern volatile uint32_t I2C_Watchdog; + /*! * @addtogroup i2c_driver * @{