[U-Boot] [PATCH] cm-t35: fix Ethernet reset timing
Igor Grinberg
grinberg at compulab.co.il
Tue Apr 3 08:12:58 CEST 2012
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 <grinberg at compulab.co.il>
---
board/cm_t35/cm_t35.c | 11 ++++++-----
1 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/board/cm_t35/cm_t35.c b/board/cm_t35/cm_t35.c
index bc991c4..ee7d5a0 100644
--- a/board/cm_t35/cm_t35.c
+++ b/board/cm_t35/cm_t35.c
@@ -362,16 +362,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) {}
--
1.7.3.4
More information about the U-Boot
mailing list