IDECTRL
IDECTRL_DIOWN, base + IDECTRL);
return !!(readl(base + IDECTRL) & IDECTRL_IORDY);
writel(IDECTRL_DIOWN | IDECTRL_DIORN | addr, base + IDECTRL);
writel(IDECTRL_DIOWN | IDECTRL_DIORN | addr, base + IDECTRL);
writel(IDECTRL_DIOWN | addr, base + IDECTRL);
writel(IDECTRL_DIORN | addr, base + IDECTRL);
writel(readl(base + IDECTRL) | IDECTRL_DIOWN | IDECTRL_DIORN |
IDECTRL_CS0N | IDECTRL_CS1N, base + IDECTRL);
if (readl(drv_data->ide_base + IDECTRL) & IDECTRL_INTRQ)