On Tue, Feb 16, 2016 at 05:29:13PM -0800, Andrey Smirnov wrote: > Don't wait for more than one second for IP block to finish resetting. If > the block is dead it makes more sence to continue execution in hopes > that the rest of the processor is fine, rather than spin indefinetly > inside of the fec_probe function > > Signed-off-by: Andrey Smirnov <andrew.smirnov@xxxxxxxxx> > --- > drivers/net/fec_imx.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/drivers/net/fec_imx.c b/drivers/net/fec_imx.c > index 46932fe..99bd179 100644 > --- a/drivers/net/fec_imx.c > +++ b/drivers/net/fec_imx.c > @@ -687,6 +687,7 @@ static int fec_probe(struct device_d *dev) > int phy_reset; > u32 msec = 1; > struct resource *res; > + u64 start; > > ret = dev_get_drvdata(dev, (const void **)&type); > if (ret) > @@ -739,9 +740,14 @@ static int fec_probe(struct device_d *dev) > } > > /* Reset chip. */ > + start = get_time_ns(); > writel(FEC_ECNTRL_RESET, fec->regs + FEC_ECNTRL); > while(readl(fec->regs + FEC_ECNTRL) & FEC_ECNTRL_RESET) { > udelay(10); While at it you can drop the udelay here. Sascha -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox