This series of patches add a new interface to qemu to define storages. The new parameter is "-disk":
-disk file[,if=type][,index=i][,bus=n][,unit=m][,media=d][,cyls=c,heads=h,secs=s[,trans=t]][snapshot=on|off] where: file is the disk image type is the interface type (ide, scsi, floppy, pflash, mtd, sd) i is the index of the disk on the interface (0, 1, 2, ...) n is the bus number of the given type m is the unit number on the the given bus d is the type of the media (disk, cdrom) c,h,s,t are the parameters usually given by -hdachs snapshot allows to enable or not the snapshot for this disk "-cdrom file" is an alias for "-disk file,index=2,media=cdrom" "-hda file" is an alias for "-disk file,index=0,media=disk" "-hdb file" is an alias for "-disk file,index=1,media=disk" "-hdc file" is an alias for "-disk file,index=2,media=disk" "-hdd file" is an alias for "-disk file,index=3,media=disk" "-hda file -hdachs a,b,c" is an alias for "-disk file,index=0,cyls=a,heads=b,secs=c" "-fda file" is an alias for "-disk file,index=0,if=floppy" "-fdb file" is an alias for "-disk file,index=1,if=floppy" "-pflash file" is an alias for "-disk file,if=pflash" "-mtdblock file" is an alias for "-disk file,if=mtd" "-sd file" becomes the alias of "-disk file,if=sd" You can also define a cdrom on the slave of ide0 with: "-disk file,if=ide,bus=0,unit=1,media=cdrom" You can define a cdrom on the scsi bus 0 with unit id 3: "-disk file,if=scsi,bus=0,unit=3,media=cdrom" You can define a scsi disk on bus 0 with unit id 6 with: "-disk file,if=scsi,bus=0,unit=6" You can define disks with default ordering: "-disk a.img -disk b.img -disk c.img" is equal to "-hda a.img -hdb b.img -hdc c.img" [PATCH 1/7] Add arg -disk to define new disk with more features Define -disk, support interface type "ide" [PATCH 2/7] Add scsi support for the target PC support interface type "scsi" [PATCH 3/7] Add floppy support by -disk support interface type "floppy" [PATCH 4/7] remove fd_filename from the machine init interface change machine init interface to remove fd_filename [PATCH 5/7] Add parallel flash support by -disk support interface type "pflash" [PATCH 6/7] Add flash support by -disk support interface type "mtd" [PATCH 7/7] Add SecureDigital support by -disk support interface type "sd"