浏览代码

resolve i2c-driver err handler bug

zhangbo 3 年之前
父节点
当前提交
0fa3ea71fc
共有 8 个文件被更改,包括 5 次插入3 次删除
  1. 二进制
      app/AuthLicense/authlicense
  2. 二进制
      app/NCP81111_Config/ncp81111_cfg
  3. 二进制
      app/UpdateFirmware/updateFW_app
  4. 二进制
      app/driver/I2C/i2c.ko
  5. 5 3
      app/driver/I2C/i2c_main.c
  6. 二进制
      app/i2c_scan/i2c-scan
  7. 二进制
      app/ipmitool-1.8.18/ipmitool
  8. 二进制
      app/test_app/test_app

二进制
app/AuthLicense/authlicense


二进制
app/NCP81111_Config/ncp81111_cfg


二进制
app/UpdateFirmware/updateFW_app


二进制
app/driver/I2C/i2c.ko


+ 5 - 3
app/driver/I2C/i2c_main.c

@@ -125,15 +125,15 @@ irqreturn_t i2cErrIRQHandler(int irqno, void *dev_id)
 	I2C_HandleTypeDef hi2c; 
 	switch(irqno)
 	{
-	case I2C1_EV_IRQn:
+	case I2C1_ER_IRQn:
 		hi2c.Instance = I2C1;
 		printk("i2c1 Error, restart...\n");
 		break;
-	case I2C2_EV_IRQn:
+	case I2C2_ER_IRQn:
 		hi2c.Instance = I2C2;
 		printk("i2c2 Error, restart...\n");
 		break;
-	case I2C3_EV_IRQn:
+	case I2C3_ER_IRQn:
 		hi2c.Instance = I2C3;
 		printk("i2c3 Error, restart...\n");
 		break;
@@ -142,6 +142,8 @@ irqreturn_t i2cErrIRQHandler(int irqno, void *dev_id)
 		return IRQ_HANDLED;
 	}
 
+	printk("SR1: %#x, SR2: %#x\n", hi2c.Instance->SR1, hi2c.Instance->SR2);
+
 	//restart i2c
 	hi2c.State	= HAL_I2C_STATE_READY;
 	__HAL_I2C_DISABLE(&hi2c);

二进制
app/i2c_scan/i2c-scan


二进制
app/ipmitool-1.8.18/ipmitool


二进制
app/test_app/test_app