HOST_CTL
ctl = readl(mmio + HOST_CTL);
writel(ctl, mmio + HOST_CTL);
readl(mmio + HOST_CTL); /* flush */
ctl = readl(mmio + HOST_CTL);
writel(ctl, mmio + HOST_CTL);
readl(mmio + HOST_CTL); /* flush */
if (!(readl(hpriv->mmio + HOST_CTL) & HOST_MRSM)) {
ctl = readl(mmio + HOST_CTL);
writel(ctl, mmio + HOST_CTL);
readl(mmio + HOST_CTL); /* flush */
ctl = readl(mmio + HOST_CTL);
writel(ctl, mmio + HOST_CTL);
readl(mmio + HOST_CTL); /* flush */
tmp = readl(mmio + HOST_CTL);
writel(tmp, mmio + HOST_CTL);
tmp = ata_wait_register(NULL, mmio + HOST_CTL, HOST_RESET,
tmp = readl(mmio + HOST_CTL);
writel(tmp | HOST_IRQ_EN, mmio + HOST_CTL);
tmp = readl(mmio + HOST_CTL);
tmp = readl(mmio + HOST_CTL);
writel(tmp, mmio + HOST_CTL);
tmp = readl(mmio + HOST_CTL); /* flush && sanity check */
tmp = readl(mmio + HOST_CTL);
writel(tmp | HOST_RESET, mmio + HOST_CTL);
readl(mmio + HOST_CTL); /* flush */
writel(readl(mmio + HOST_CTL) & ~HOST_IRQ_EN, mmio + HOST_CTL);
readl(mmio + HOST_CTL); /* flush */
ctl = readl(mmio + HOST_CTL);
writel(ctl, mmio + HOST_CTL);
readl(mmio + HOST_CTL); /* flush */
ctl = readl(mmio + HOST_CTL);
writel(ctl, mmio + HOST_CTL);
readl(mmio + HOST_CTL); /* flush */
writew(HCTL_FTHD0 | HCTL_LEDEN, port_base + HOST_CTL);
writew(hctl | HCTL_SOFTRST, mmio_base + HOST_CTL);
readw(mmio_base + HOST_CTL); /* flush */
val = readw(mmio_base + HOST_CTL);
writew(hctl & ~HCTL_IRQOFF, mmio_base + HOST_CTL);
hpriv->cached_hctl = readw(hpriv->mmio_base + HOST_CTL);
writel(HOST_RESET, dd->mmio + HOST_CTL);
readl(dd->mmio + HOST_CTL);
} while ((readl(dd->mmio + HOST_CTL) & HOST_RESET)
if (readl(dd->mmio + HOST_CTL) & HOST_RESET)
writel(readl(dd->mmio + HOST_CTL) | HOST_IRQ_EN,
dd->mmio + HOST_CTL);
writel(readl(dd->mmio + HOST_CTL) & ~HOST_IRQ_EN,
dd->mmio + HOST_CTL);
writel(readl(dd->mmio + HOST_CTL) & ~HOST_IRQ_EN,
dd->mmio + HOST_CTL);
writel(readl(dd->mmio + HOST_CTL) & ~HOST_IRQ_EN,
dd->mmio + HOST_CTL);
writel(readl(dd->mmio + HOST_CTL) | HOST_IRQ_EN,
dd->mmio + HOST_CTL);
writel(readl(dd->mmio + HOST_CTL) | HOST_IRQ_EN,
dd->mmio + HOST_CTL);