Hi Pascal,

Just a small comment below,

On Wed, Jul 31, 2019 at 05:29:19PM +0200, Pascal van Leeuwen wrote:
> 
> -     /* Release engine from reset */
> -     val = readl(EIP197_PE(priv) + ctrl);
> -     val &= ~EIP197_PE_ICE_x_CTRL_SW_RESET;
> -     writel(val, EIP197_PE(priv) + ctrl);
> +     for (pe = 0; pe < priv->config.pes; pe++) {
> +             base = EIP197_PE_ICE_SCRATCH_RAM(pe);
> +             pollcnt = EIP197_FW_START_POLLCNT;
> +             while (pollcnt &&
> +                    (readl_relaxed(EIP197_PE(priv) + base +
> +                           pollofs) != 1)) {
> +                     pollcnt--;

You might want to use readl_relaxed_poll_timeout() here, instead of a
busy polling.

Thanks,
Antoine

-- 
Antoine Ténart, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

Reply via email to