}
 
 static const struct ide_port_info buddha_port_info = {
-       .host_flags             = IDE_HFLAG_NO_DMA,
+       .host_flags             = IDE_HFLAG_MMIO | IDE_HFLAG_NO_DMA,
 };
 
     /*
                
                board = z->resource.start;
 
-/*
- * FIXME: we now have selectable mmio v/s iomio transports.
- */
-
                if(type != BOARD_XSURF) {
                        if (!request_mem_region(board+BUDDHA_BASE1, 0x800, "IDE"))
                                continue;
 
        .get_lock               = falconide_get_lock,
        .release_lock           = falconide_release_lock,
        .tp_ops                 = &falconide_tp_ops,
-       .host_flags             = IDE_HFLAG_NO_DMA | IDE_HFLAG_SERIALIZE,
+       .host_flags             = IDE_HFLAG_MMIO | IDE_HFLAG_SERIALIZE |
+                                 IDE_HFLAG_NO_DMA,
 };
 
 static void __init falconide_setup_ports(hw_regs_t *hw)
 
 }
 
 static const struct ide_port_info gayle_port_info = {
-       .host_flags             = IDE_HFLAG_SERIALIZE | IDE_HFLAG_NO_DMA,
+       .host_flags             = IDE_HFLAG_MMIO | IDE_HFLAG_SERIALIZE |
+                                 IDE_HFLAG_NO_DMA,
 };
 
     /*
            irqport = (unsigned long)ZTWO_VADDR(GAYLE_IRQ_1200);
            ack_intr = gayle_ack_intr_a1200;
        }
-/*
- * FIXME: we now have selectable modes between mmio v/s iomio
- */
 
        res_start = ((unsigned long)phys_base) & ~(GAYLE_NEXT_PORT-1);
        res_n = GAYLE_IDEREG_SIZE;
 
 }
 
 static const struct ide_port_info macide_port_info = {
-       .host_flags             = IDE_HFLAG_NO_DMA,
+       .host_flags             = IDE_HFLAG_MMIO | IDE_HFLAG_NO_DMA,
 };
 
 static const char *mac_ide_name[] =
 
 
 static const struct ide_port_info q40ide_port_info = {
        .tp_ops                 = &q40ide_tp_ops,
-       .host_flags             = IDE_HFLAG_NO_DMA,
+       .host_flags             = IDE_HFLAG_MMIO | IDE_HFLAG_NO_DMA,
 };
 
 /*