summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2009-03-27 12:46:17 +0100
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2009-03-27 12:46:17 +0100
commit33050ec7a2b83bc048b2322c79af25df6fdcb879 (patch)
tree9b49b2f4e69a516f0f2d451639b92a9bd7763281
parentbe0ea69674ed95e1e98cb3687a241badc756d228 (diff)
downloadlinux-stable-33050ec7a2b83bc048b2322c79af25df6fdcb879.tar.gz
linux-stable-33050ec7a2b83bc048b2322c79af25df6fdcb879.tar.bz2
linux-stable-33050ec7a2b83bc048b2322c79af25df6fdcb879.zip
icside: use struct ide_port_info also for PCB version 5 (v2)
This fixes hwif->channel and drive->dn assignments. v2: Fix v5/v6 mismatch noticed by Russell. Cc: Russell King <rmk@arm.linux.org.uk> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
-rw-r--r--drivers/ide/icside.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/ide/icside.c b/drivers/ide/icside.c
index 415d7e24f2b6..0cf47e6e9793 100644
--- a/drivers/ide/icside.c
+++ b/drivers/ide/icside.c
@@ -419,6 +419,10 @@ static void icside_setup_ports(hw_regs_t *hw, void __iomem *base,
hw->chipset = ide_acorn;
}
+static const struct ide_port_info icside_v5_port_info = {
+ .host_flags = IDE_HFLAG_NO_DMA,
+};
+
static int __devinit
icside_register_v5(struct icside_state *state, struct expansion_card *ec)
{
@@ -445,7 +449,7 @@ icside_register_v5(struct icside_state *state, struct expansion_card *ec)
icside_setup_ports(&hw, base, &icside_cardinfo_v5, ec);
- host = ide_host_alloc(NULL, hws);
+ host = ide_host_alloc(&icside_v5_port_info, hws);
if (host == NULL)
return -ENODEV;
@@ -453,7 +457,7 @@ icside_register_v5(struct icside_state *state, struct expansion_card *ec)
ecard_set_drvdata(ec, state);
- ret = ide_host_register(host, NULL, hws);
+ ret = ide_host_register(host, &icside_v5_port_info, hws);
if (ret)
goto err_free;