ide: add IDE_HFLAG_MMIO host flag
PATCH 5/6 ide: add IDE_HFLAG_MMIO host flag
Add IDE_HFLAG_MMIO host flag and set it for hosts which use default_hwif_mmiops().
Signed-off-by Bartlomiej Zolnierkiewicz <[email protected]>
--- drivers/ide/arm/icside.c | 2 +- drivers/ide/arm/palm_bk3710.c | 1 + drivers/ide/arm/rapide.c | 1 + drivers/ide/legacy/ide_platform.c | 4 +++- drivers/ide/mips/swarm.c | 1 + drivers/ide/pci/sgiioc4.c | 1 + drivers/ide/pci/siimage.c | 1 + drivers/ide/ppc/pmac.c | 1 + include/linux/ide.h | 2 ++ 9 files changed, 12 insertions(+), 2 deletions(-)
drivers/ide/arm/icside.c +1 -1
@@ -481,7 +481,7 @@ static const struct ide_port_info icside .init_dma = icside_dma_off_init, .port_ops = &icside_v6_no_dma_port_ops, .dma_ops = &icside_v6_dma_ops, - .host_flags = IDE_HFLAG_SERIALIZE, + .host_flags = IDE_HFLAG_SERIALIZE | IDE_HFLAG_MMIO, .mwdma_mask = ATA_MWDMA2, .swdma_mask = ATA_SWDMA2, };
drivers/ide/arm/palm_bk3710.c +1 -0
@@ -342,6 +342,7 @@ static const struct ide_port_ops palm_bkstatic const struct ide_port_info __devinitdata palm_bk3710_port_info = { .init_dma = palm_bk3710_init_dma, .port_ops = &palm_bk3710_ports_ops, + .host_flags =IDE_HFLAG_MMIO , .pio_mask =ATA_PIO4 , .udma_mask =ATA_UDMA4 ,/* (input clk 99MHz) */ .mwdma_mask =ATA_MWDMA2 ,
drivers/ide/arm/rapide.c +1 -0
@@ -53,6 +53,7 @@ rapide_probe(struct expansion_card *ec,ide_init_port_hw (hwif, &hw); + hwif->host_flags =IDE_HFLAG_MMIO ;default_hwif_mmiops (hwif); idx[0 ] = hwif->index;
drivers/ide/legacy/ide_platform.c +3 -1
@@ -101,8 +101,10 @@ static int __devinit plat_ide_probe(struide_init_port_hw (hwif, &hw); -if (mmio) +if (mmio) { + hwif->host_flags =IDE_HFLAG_MMIO ;default_hwif_mmiops (hwif); + } idx[0 ] = hwif->index;
drivers/ide/mips/swarm.c +1 -0
@@ -109,6 +109,7 @@ static int __devinit swarm_ide_probe(str base =ioremap (offset, size);/* Setup MMIO ops. */ + hwif->host_flags =IDE_HFLAG_MMIO ;default_hwif_mmiops (hwif); hwif->chipset = ide_generic;
drivers/ide/pci/sgiioc4.c +1 -0
@@ -573,6 +573,7 @@ static const struct ide_port_info sgiioc .init_dma = ide_dma_sgiioc4, .port_ops = &sgiioc4_port_ops, .dma_ops = &sgiioc4_dma_ops, + .host_flags = IDE_HFLAG_MMIO, .mwdma_mask = ATA_MWDMA2_ONLY, };
drivers/ide/pci/siimage.c +1 -0
@@ -630,6 +630,7 @@ static void __devinit init_mmio_iops_sii* Fill in the basic HWIF bits */ + hwif->host_flags |=IDE_HFLAG_MMIO ;default_hwif_mmiops (hwif); hwif->hwif_data = addr;
drivers/ide/ppc/pmac.c +1 -0
@@ -942,6 +942,7 @@ static const struct ide_port_info pmac_p .host_flags = IDE_HFLAG_SET_PIO_MODE_KEEP_DMA |IDE_HFLAG_POST_SET_MODE |IDE_HFLAG_UNMASK_IRQS , +IDE_HFLAG_MMIO , .pio_mask = ATA_PIO4, .mwdma_mask = ATA_MWDMA2, };
include/linux/ide.h +2 -0
@@ -1057,6 +1057,8 @@ enum {IDE_HFLAG_NO_DMA = (1 <<14 ),/* check if host is PCI IDE device before allowing DMA */ IDE_HFLAG_NO_AUTODMA = (1 <<15 ), +/* host uses MMIO */ +IDE_HFLAG_MMIO = (1 <<16 ),/* host is CS5510/CS5520 */ IDE_HFLAG_CS5520 = IDE_HFLAG_VDMA,/* no LBA48 */