From 07277e740ba9422f603bbcd97d5a9ab5731fe06d Mon Sep 17 00:00:00 2001 From: Igor Grinberg Date: Mon, 2 Apr 2012 20:12:58 +0000 Subject: [PATCH] cm-t35: fix Ethernet reset timing The reset_net_chip() function has wrong timings for the reset pulse. This appeared to work until: 0607e2b (ARMV7: OMAP: Write more than 1 byte at a time in i2c_write) Fix the Ethernet support by introducing right timings. Signed-off-by: Igor Grinberg --- board/cm_t35/cm_t35.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/board/cm_t35/cm_t35.c b/board/cm_t35/cm_t35.c index 0a04994..7af1f41 100644 --- a/board/cm_t35/cm_t35.c +++ b/board/cm_t35/cm_t35.c @@ -356,16 +356,17 @@ static void reset_net_chip(void) { /* Set GPIO1 of TPS65930 as output */ twl4030_i2c_write_u8(TWL4030_CHIP_GPIO, 0x02, - TWL4030_BASEADD_GPIO+0x03); + TWL4030_BASEADD_GPIO + 0x03); /* Send a pulse on the GPIO pin */ twl4030_i2c_write_u8(TWL4030_CHIP_GPIO, 0x02, - TWL4030_BASEADD_GPIO+0x0C); + TWL4030_BASEADD_GPIO + 0x0C); udelay(1); twl4030_i2c_write_u8(TWL4030_CHIP_GPIO, 0x02, - TWL4030_BASEADD_GPIO+0x09); - udelay(1); + TWL4030_BASEADD_GPIO + 0x09); + mdelay(40); twl4030_i2c_write_u8(TWL4030_CHIP_GPIO, 0x02, - TWL4030_BASEADD_GPIO+0x0C); + TWL4030_BASEADD_GPIO + 0x0C); + mdelay(1); } #else static inline void reset_net_chip(void) {} -- 2.7.4