[TG3]: Increase 5906 firmware poll time.
[TG3]: Increase 5906 firmware poll time. From: Gary Zambrano [EMAIL PROTECTED] Newer 5906 bootcode needs about 7ms to finish resetting so the poll firmware loop was changed to maximum 20ms. Signed-off-by: Gary Zambrano [EMAIL PROTECTED] Signed-off-by: Michael Chan [EMAIL PROTECTED] diff --git a/drivers/net/tg3.c b/drivers/net/tg3.c index 8f059b7..d4b211c 100644 --- a/drivers/net/tg3.c +++ b/drivers/net/tg3.c @@ -4728,10 +4728,11 @@ static int tg3_poll_fw(struct tg3 *tp) u32 val; if (GET_ASIC_REV(tp-pci_chip_rev_id) == ASIC_REV_5906) { - for (i = 0; i 400; i++) { + /* Wait up to 20ms for init done. */ + for (i = 0; i 200; i++) { if (tr32(VCPU_STATUS) VCPU_STATUS_INIT_DONE) return 0; - udelay(10); + udelay(100); } return -ENODEV; } - To unsubscribe from this list: send the line unsubscribe netdev in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [TG3]: Increase 5906 firmware poll time.
Michael Chan wrote: [TG3]: Increase 5906 firmware poll time. From: Gary Zambrano [EMAIL PROTECTED] Newer 5906 bootcode needs about 7ms to finish resetting so the poll firmware loop was changed to maximum 20ms. Signed-off-by: Gary Zambrano [EMAIL PROTECTED] Signed-off-by: Michael Chan [EMAIL PROTECTED] ACK, of course, but this brings up something else: what's the status of moving chip reset outside of a spinlock? Currently a reset during operation can trigger the CPU lockup detector and other doo-dads, because you can easily spend a second or two with a spinlock held (a loong time, to hold a spinlock) Jeff - To unsubscribe from this list: send the line unsubscribe netdev in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [TG3]: Increase 5906 firmware poll time.
On Tue, 2006-11-14 at 18:05 -0500, Jeff Garzik wrote: ACK, of course, but this brings up something else: what's the status of moving chip reset outside of a spinlock? Currently a reset during operation can trigger the CPU lockup detector and other doo-dads, because you can easily spend a second or two with a spinlock held (a loong time, to hold a spinlock) Yeah, I will put this in my queue. I have done some of that in the PHY routines and will continue to do more, as those are even worse. - To unsubscribe from this list: send the line unsubscribe netdev in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [TG3]: Increase 5906 firmware poll time.
From: Michael Chan [EMAIL PROTECTED] Date: Tue, 14 Nov 2006 16:05:50 -0800 On Tue, 2006-11-14 at 18:05 -0500, Jeff Garzik wrote: ACK, of course, but this brings up something else: what's the status of moving chip reset outside of a spinlock? Currently a reset during operation can trigger the CPU lockup detector and other doo-dads, because you can easily spend a second or two with a spinlock held (a loong time, to hold a spinlock) Yeah, I will put this in my queue. I have done some of that in the PHY routines and will continue to do more, as those are even worse. Great. I applied this patch, thanks everyone. - To unsubscribe from this list: send the line unsubscribe netdev in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html