>From: David Brownell [mailto:david-b@xxxxxxxxxxx] >Sent: Friday, October 10, 2008 7:33 PM >To: Pandita, Vikram >Cc: Steve Sakoman; linux-omap@xxxxxxxxxxxxxxx List >Subject: Re: Git tree updated to v2.6.27, some issues remain > >On Friday 10 October 2008, Pandita, Vikram wrote: >> Somewhere for the T2 interrupts following function has to be run: >> set_irq_flags(i, IRQF_VALID); > >Why do you think that's not being done? > >On Beagle, it's clearly done. And the init sequence is >the same on Overo. So I see no reason to think it's not >being done there too... > I did not have your following patch. Without this patch, the pwrirq does not initialize TWL-USB flag: set_irq_flags(i, IRQF_VALID); And hence the failure. With your patch, you delay the i2c writing and then the set_irq_flags() gets called. Index: l-o/drivers/i2c/chips/twl4030-pwrirq.c =================================================================== --- l-o.orig/drivers/i2c/chips/twl4030-pwrirq.c 2008-10-10 13:45:21.000000000 -0500 +++ l-o/drivers/i2c/chips/twl4030-pwrirq.c 2008-10-10 18:14:42.000000000 -0500 @@ -128,14 +128,24 @@ static int twl4030_pwrirq_thread(void *d return 0; } +#include <linux/delay.h> + static int __init twl4030_pwrirq_init(void) { int i, err; twl4030_pwrirq_mask = 0xff; +/* HEY: core already did this. + * But that's surely not why we + * sometimes see timeouts here ... + */ +for (i = 0; i < 5; i++) { err = twl4030_i2c_write_u8(TWL4030_MODULE_INT, twl4030_pwrirq_mask, TWL4030_INT_PWR_IMR1); +if (!err) break; +msleep(10); +} if (err) return err; -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html