RWTCSRA
while (readb_relaxed(priv->base + RWTCSRA) & RWTCSRA_WRFLG)
rwdt_write(priv, priv->cks | RWTCSRA_TME, RWTCSRA);
rwdt_write(priv, priv->cks, RWTCSRA);
val = readb_relaxed(priv->base + RWTCSRA) & ~RWTCSRA_TME;
rwdt_write(priv, val, RWTCSRA);
rwdt_write(priv, 0, RWTCSRA);
readb_poll_timeout_atomic(priv->base + RWTCSRA, val,
rwdt_write(priv, RWTCSRA_TME, RWTCSRA);
csra = readb_relaxed(priv->base + RWTCSRA);
val = readb_relaxed(priv->base + RWTCSRA) & ~RWTCSRA_TME;
rwdt_write(priv, val, RWTCSRA);
rwdt_write(priv, priv->cks, RWTCSRA);