소스 검색

i2c: mxs: Fix TIMING2 register value

According to FSL, the value in the TIMING2 register shall be 0x00300030
instead of what's written in the datasheet. This new value correlates
with older STMP36xx datasheet. Issues were detected in Linux when this
register was misconfigured, so write this correct value.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Marek Vasut 12 년 전
부모
커밋
aff36ea92e
1개의 변경된 파일2개의 추가작업 그리고 2개의 파일을 삭제
  1. 2 2
      drivers/i2c/mxs_i2c.c

+ 2 - 2
drivers/i2c/mxs_i2c.c

@@ -267,8 +267,8 @@ int i2c_set_bus_speed(unsigned int speed)
 	writel(spd->timing0, &i2c_regs->hw_i2c_timing0);
 	writel(spd->timing1, &i2c_regs->hw_i2c_timing1);
 
-	writel((0x0015 << I2C_TIMING2_BUS_FREE_OFFSET) |
-		(0x000d << I2C_TIMING2_LEADIN_COUNT_OFFSET),
+	writel((0x0030 << I2C_TIMING2_BUS_FREE_OFFSET) |
+		(0x0030 << I2C_TIMING2_LEADIN_COUNT_OFFSET),
 		&i2c_regs->hw_i2c_timing2);
 
 	return 0;