diff options
author | John Snow <jsnow@redhat.com> | 2014-10-01 14:19:27 -0400 |
---|---|---|
committer | Stefan Hajnoczi <stefanha@redhat.com> | 2014-10-03 10:30:33 +0100 |
commit | d8f94e1bb275ab6a14a15220fd6afd0d04324aeb (patch) | |
tree | b24bbaf0487f1288af282314c817c53ff3a06bed /hw/mips/mips_r4k.c | |
parent | 1602651833c081e32366c9e534ad72e4287840c5 (diff) | |
download | qemu-d8f94e1bb275ab6a14a15220fd6afd0d04324aeb.tar.gz qemu-d8f94e1bb275ab6a14a15220fd6afd0d04324aeb.tar.bz2 qemu-d8f94e1bb275ab6a14a15220fd6afd0d04324aeb.zip |
ide: Update ide_drive_get to be HBA agnostic
Instead of duplicating the logic for the if_ide
(bus,unit) mappings, rely on the blockdev layer
for managing those mappings for us, and use the
drive_get_by_index call instead.
This allows ide_drive_get to work for AHCI HBAs
as well, and can be used in the Q35 initialization.
Lastly, change the nature of the argument to
ide_drive_get so that represents the number of
total drives we can support, and not the total
number of buses. This will prevent array overflows
if the units-per-default-bus property ever needs
to be adjusted for compatibility reasons.
Signed-off-by: John Snow <jsnow@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Message-id: 1412187569-23452-5-git-send-email-jsnow@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Diffstat (limited to 'hw/mips/mips_r4k.c')
-rw-r--r-- | hw/mips/mips_r4k.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/hw/mips/mips_r4k.c b/hw/mips/mips_r4k.c index e219766f3e..93606a490c 100644 --- a/hw/mips/mips_r4k.c +++ b/hw/mips/mips_r4k.c @@ -294,7 +294,7 @@ void mips_r4k_init(MachineState *machine) if (nd_table[0].used) isa_ne2000_init(isa_bus, 0x300, 9, &nd_table[0]); - ide_drive_get(hd, MAX_IDE_BUS); + ide_drive_get(hd, ARRAY_SIZE(hd)); for(i = 0; i < MAX_IDE_BUS; i++) isa_ide_init(isa_bus, ide_iobase[i], ide_iobase2[i], ide_irq[i], hd[MAX_IDE_DEVS * i], |