diff options
author | Markus Armbruster <armbru@redhat.com> | 2011-01-28 11:21:37 +0100 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2011-01-31 10:24:11 +0100 |
commit | 13839974d14701626a2f9dcc5f8cf65783d51c11 (patch) | |
tree | 536cfb5745cf7b76304d7a01fec3d48befb59ec1 /blockdev.c | |
parent | 1869a65385e9d81f490b4203dd070cc49b7749c9 (diff) |
blockdev: New drive_get_next(), replacing qdev_init_bdrv()
qdev_init_bdrv() doesn't belong into qdev.c; it's about drives, not
qdevs. Rename to drive_get_next, move to blockdev.c, drop the bogus
DeviceState argument, and return DriveInfo instead of
BlockDriverState.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'blockdev.c')
-rw-r--r-- | blockdev.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/blockdev.c b/blockdev.c index e48d33dd29..699f312c9b 100644 --- a/blockdev.c +++ b/blockdev.c @@ -93,6 +93,16 @@ int drive_get_max_bus(BlockInterfaceType type) return max_bus; } +/* Get a block device. This should only be used for single-drive devices + (e.g. SD/Floppy/MTD). Multi-disk devices (scsi/ide) should use the + appropriate bus. */ +DriveInfo *drive_get_next(BlockInterfaceType type) +{ + static int next_block_unit[IF_COUNT]; + + return drive_get(type, 0, next_block_unit[type]++); +} + DriveInfo *drive_get_by_blockdev(BlockDriverState *bs) { DriveInfo *dinfo; |