[U-Boot] [PATCH 2/4] i2c: i2c-cdns: Reorder timeout loop for interrupt waiting
Michal Simek
michal.simek at xilinx.com
Mon Jan 2 14:43:11 CET 2017
On 27.12.2016 23:46, Moritz Fischer wrote:
> Reorder the timeout loop such that we first check if the
> condition is already true, and then call udelay() so if
> the condition is already true, break early.
>
> Signed-off-by: Moritz Fischer <moritz.fischer at ettus.com>
> Cc: Heiko Schocher <hs at denx.de>
> Cc: Michal Simek <michal.simek at xilinx.com>
> Cc: u-boot at lists.denx.de
> ---
> drivers/i2c/i2c-cdns.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/i2c/i2c-cdns.c b/drivers/i2c/i2c-cdns.c
> index c69e7e8..9a1b520 100644
> --- a/drivers/i2c/i2c-cdns.c
> +++ b/drivers/i2c/i2c-cdns.c
> @@ -130,10 +130,10 @@ static u32 cdns_i2c_wait(struct cdns_i2c_regs *cdns_i2c, u32 mask)
> int timeout, int_status;
>
> for (timeout = 0; timeout < 100; timeout++) {
> - udelay(100);
> int_status = readl(&cdns_i2c->interrupt_status);
> if (int_status & mask)
> break;
> + udelay(100);
> }
>
> /* Clear interrupt status flags */
>
Reviewed-by: Michal Simek <michal.simek at xilinx.com>
Thanks,
Michal
More information about the U-Boot
mailing list