mirror of
https://github.com/izzy2lost/xemu.git
synced 2026-07-06 00:20:22 -07:00
block: Eliminate DriveInfo member bdrv, use blk_by_legacy_dinfo()
The patch is big, but all it really does is replacing
dinfo->bdrv
by
blk_bs(blk_by_legacy_dinfo(dinfo))
The replacement is repetitive, but the conversion of device models to
BlockBackend is imminent, and will shorten it to just
blk_legacy_dinfo(dinfo).
Line wrapping muddies the waters a bit. I also omit tests whether
dinfo->bdrv is null, because it never is.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Reviewed-by: Benoît Canet <benoit.canet@nodalink.com>
Reviewed-by: Max Reitz <mreitz@redhat.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
committed by
Kevin Wolf
parent
7f06d47eff
commit
fa1d36df74
+3
-4
@@ -220,11 +220,11 @@ bool drive_check_orphaned(void)
|
||||
dinfo = blk_legacy_dinfo(blk);
|
||||
/* If dinfo->bdrv->dev is NULL, it has no device attached. */
|
||||
/* Unless this is a default drive, this may be an oversight. */
|
||||
if (!dinfo->bdrv->dev && !dinfo->is_default &&
|
||||
if (!blk_bs(blk)->dev && !dinfo->is_default &&
|
||||
dinfo->type != IF_NONE) {
|
||||
fprintf(stderr, "Warning: Orphaned drive without device: "
|
||||
"id=%s,file=%s,if=%s,bus=%d,unit=%d\n",
|
||||
dinfo->id, dinfo->bdrv->filename, if_name[dinfo->type],
|
||||
dinfo->id, blk_bs(blk)->filename, if_name[dinfo->type],
|
||||
dinfo->bus, dinfo->unit);
|
||||
rs = true;
|
||||
}
|
||||
@@ -526,7 +526,6 @@ static BlockBackend *blockdev_init(const char *file, QDict *bs_opts,
|
||||
|
||||
dinfo = g_malloc0(sizeof(*dinfo));
|
||||
dinfo->id = g_strdup(qemu_opts_id(opts));
|
||||
dinfo->bdrv = bs;
|
||||
blk_set_legacy_dinfo(blk, dinfo);
|
||||
|
||||
if (!file || !*file) {
|
||||
@@ -556,7 +555,7 @@ static BlockBackend *blockdev_init(const char *file, QDict *bs_opts,
|
||||
|
||||
QINCREF(bs_opts);
|
||||
ret = bdrv_open(&bs, file, NULL, bs_opts, bdrv_flags, drv, &error);
|
||||
assert(bs == dinfo->bdrv);
|
||||
assert(bs == blk_bs(blk));
|
||||
|
||||
if (ret < 0) {
|
||||
error_setg(errp, "could not open disk image %s: %s",
|
||||
|
||||
+5
-4
@@ -15,6 +15,7 @@
|
||||
#include "strongarm.h"
|
||||
#include "hw/arm/arm.h"
|
||||
#include "hw/block/flash.h"
|
||||
#include "sysemu/block-backend.h"
|
||||
#include "sysemu/blockdev.h"
|
||||
#include "exec/address-spaces.h"
|
||||
|
||||
@@ -41,13 +42,13 @@ static void collie_init(MachineState *machine)
|
||||
|
||||
dinfo = drive_get(IF_PFLASH, 0, 0);
|
||||
pflash_cfi01_register(SA_CS0, NULL, "collie.fl1", 0x02000000,
|
||||
dinfo ? dinfo->bdrv : NULL, (64 * 1024),
|
||||
512, 4, 0x00, 0x00, 0x00, 0x00, 0);
|
||||
dinfo ? blk_bs(blk_by_legacy_dinfo(dinfo)) : NULL,
|
||||
(64 * 1024), 512, 4, 0x00, 0x00, 0x00, 0x00, 0);
|
||||
|
||||
dinfo = drive_get(IF_PFLASH, 0, 1);
|
||||
pflash_cfi01_register(SA_CS1, NULL, "collie.fl2", 0x02000000,
|
||||
dinfo ? dinfo->bdrv : NULL, (64 * 1024),
|
||||
512, 4, 0x00, 0x00, 0x00, 0x00, 0);
|
||||
dinfo ? blk_bs(blk_by_legacy_dinfo(dinfo)) : NULL,
|
||||
(64 * 1024), 512, 4, 0x00, 0x00, 0x00, 0x00, 0);
|
||||
|
||||
sysbus_create_simple("scoop", 0x40800000, NULL);
|
||||
|
||||
|
||||
+3
-2
@@ -40,6 +40,7 @@
|
||||
#include "hw/block/flash.h"
|
||||
#include "hw/devices.h"
|
||||
#include "hw/boards.h"
|
||||
#include "sysemu/block-backend.h"
|
||||
#include "sysemu/blockdev.h"
|
||||
#include "exec/address-spaces.h"
|
||||
#include "sysemu/qtest.h"
|
||||
@@ -71,7 +72,7 @@ static void connex_init(MachineState *machine)
|
||||
be = 0;
|
||||
#endif
|
||||
if (!pflash_cfi01_register(0x00000000, NULL, "connext.rom", connex_rom,
|
||||
dinfo ? dinfo->bdrv : NULL,
|
||||
dinfo ? blk_bs(blk_by_legacy_dinfo(dinfo)) : NULL,
|
||||
sector_len, connex_rom / sector_len,
|
||||
2, 0, 0, 0, 0, be)) {
|
||||
fprintf(stderr, "qemu: Error registering flash memory.\n");
|
||||
@@ -109,7 +110,7 @@ static void verdex_init(MachineState *machine)
|
||||
be = 0;
|
||||
#endif
|
||||
if (!pflash_cfi01_register(0x00000000, NULL, "verdex.rom", verdex_rom,
|
||||
dinfo ? dinfo->bdrv : NULL,
|
||||
dinfo ? blk_bs(blk_by_legacy_dinfo(dinfo)) : NULL,
|
||||
sector_len, verdex_rom / sector_len,
|
||||
2, 0, 0, 0, 0, be)) {
|
||||
fprintf(stderr, "qemu: Error registering flash memory.\n");
|
||||
|
||||
+4
-4
@@ -18,7 +18,7 @@
|
||||
#include "hw/devices.h"
|
||||
#include "hw/boards.h"
|
||||
#include "hw/block/flash.h"
|
||||
#include "sysemu/blockdev.h"
|
||||
#include "sysemu/block-backend.h"
|
||||
#include "hw/sysbus.h"
|
||||
#include "exec/address-spaces.h"
|
||||
#include "sysemu/qtest.h"
|
||||
@@ -149,9 +149,9 @@ static void mainstone_common_init(MemoryRegion *address_space_mem,
|
||||
if (!pflash_cfi01_register(mainstone_flash_base[i], NULL,
|
||||
i ? "mainstone.flash1" : "mainstone.flash0",
|
||||
MAINSTONE_FLASH,
|
||||
dinfo->bdrv, sector_len,
|
||||
MAINSTONE_FLASH / sector_len, 4, 0, 0, 0, 0,
|
||||
be)) {
|
||||
blk_bs(blk_by_legacy_dinfo(dinfo)),
|
||||
sector_len, MAINSTONE_FLASH / sector_len,
|
||||
4, 0, 0, 0, 0, be)) {
|
||||
fprintf(stderr, "qemu: Error registering flash memory.\n");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
+6
-5
@@ -22,6 +22,7 @@
|
||||
#include "hw/block/flash.h"
|
||||
#include "ui/console.h"
|
||||
#include "hw/i2c/i2c.h"
|
||||
#include "sysemu/block-backend.h"
|
||||
#include "sysemu/blockdev.h"
|
||||
#include "exec/address-spaces.h"
|
||||
#include "ui/pixel_ops.h"
|
||||
@@ -1632,7 +1633,9 @@ static void musicpal_init(MachineState *machine)
|
||||
/* Register flash */
|
||||
dinfo = drive_get(IF_PFLASH, 0, 0);
|
||||
if (dinfo) {
|
||||
flash_size = bdrv_getlength(dinfo->bdrv);
|
||||
BlockDriverState *bs = blk_bs(blk_by_legacy_dinfo(dinfo));
|
||||
|
||||
flash_size = bdrv_getlength(bs);
|
||||
if (flash_size != 8*1024*1024 && flash_size != 16*1024*1024 &&
|
||||
flash_size != 32*1024*1024) {
|
||||
fprintf(stderr, "Invalid flash image size\n");
|
||||
@@ -1647,16 +1650,14 @@ static void musicpal_init(MachineState *machine)
|
||||
#ifdef TARGET_WORDS_BIGENDIAN
|
||||
pflash_cfi02_register(0x100000000ULL-MP_FLASH_SIZE_MAX, NULL,
|
||||
"musicpal.flash", flash_size,
|
||||
dinfo->bdrv, 0x10000,
|
||||
(flash_size + 0xffff) >> 16,
|
||||
bs, 0x10000, (flash_size + 0xffff) >> 16,
|
||||
MP_FLASH_SIZE_MAX / flash_size,
|
||||
2, 0x00BF, 0x236D, 0x0000, 0x0000,
|
||||
0x5555, 0x2AAA, 1);
|
||||
#else
|
||||
pflash_cfi02_register(0x100000000ULL-MP_FLASH_SIZE_MAX, NULL,
|
||||
"musicpal.flash", flash_size,
|
||||
dinfo->bdrv, 0x10000,
|
||||
(flash_size + 0xffff) >> 16,
|
||||
bs, 0x10000, (flash_size + 0xffff) >> 16,
|
||||
MP_FLASH_SIZE_MAX / flash_size,
|
||||
2, 0x00BF, 0x236D, 0x0000, 0x0000,
|
||||
0x5555, 0x2AAA, 0);
|
||||
|
||||
+4
-2
@@ -31,6 +31,7 @@
|
||||
#include "hw/hw.h"
|
||||
#include "hw/bt.h"
|
||||
#include "hw/loader.h"
|
||||
#include "sysemu/block-backend.h"
|
||||
#include "sysemu/blockdev.h"
|
||||
#include "hw/sysbus.h"
|
||||
#include "exec/address-spaces.h"
|
||||
@@ -172,8 +173,9 @@ static void n8x0_nand_setup(struct n800_s *s)
|
||||
qdev_prop_set_uint16(s->nand, "version_id", 0);
|
||||
qdev_prop_set_int32(s->nand, "shift", 1);
|
||||
dinfo = drive_get(IF_MTD, 0, 0);
|
||||
if (dinfo && dinfo->bdrv) {
|
||||
qdev_prop_set_drive_nofail(s->nand, "drive", dinfo->bdrv);
|
||||
if (dinfo) {
|
||||
qdev_prop_set_drive_nofail(s->nand, "drive",
|
||||
blk_bs(blk_by_legacy_dinfo(dinfo)));
|
||||
}
|
||||
qdev_init_nofail(s->nand);
|
||||
sysbus_connect_irq(SYS_BUS_DEVICE(s->nand), 0,
|
||||
|
||||
+3
-1
@@ -21,6 +21,7 @@
|
||||
#include "hw/arm/omap.h"
|
||||
#include "sysemu/sysemu.h"
|
||||
#include "hw/arm/soc_dma.h"
|
||||
#include "sysemu/block-backend.h"
|
||||
#include "sysemu/blockdev.h"
|
||||
#include "qemu/range.h"
|
||||
#include "hw/sysbus.h"
|
||||
@@ -3978,7 +3979,8 @@ struct omap_mpu_state_s *omap310_mpu_init(MemoryRegion *system_memory,
|
||||
fprintf(stderr, "qemu: missing SecureDigital device\n");
|
||||
exit(1);
|
||||
}
|
||||
s->mmc = omap_mmc_init(0xfffb7800, system_memory, dinfo->bdrv,
|
||||
s->mmc = omap_mmc_init(0xfffb7800, system_memory,
|
||||
blk_bs(blk_by_legacy_dinfo(dinfo)),
|
||||
qdev_get_gpio_in(s->ih[1], OMAP_INT_OQN),
|
||||
&s->drq[OMAP_DMA_MMC_TX],
|
||||
omap_findclk(s, "mmc_ck"));
|
||||
|
||||
+3
-1
@@ -18,6 +18,7 @@
|
||||
* with this program; if not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "sysemu/block-backend.h"
|
||||
#include "sysemu/blockdev.h"
|
||||
#include "hw/hw.h"
|
||||
#include "hw/arm/arm.h"
|
||||
@@ -2461,7 +2462,8 @@ struct omap_mpu_state_s *omap2420_mpu_init(MemoryRegion *sysmem,
|
||||
fprintf(stderr, "qemu: missing SecureDigital device\n");
|
||||
exit(1);
|
||||
}
|
||||
s->mmc = omap2_mmc_init(omap_l4tao(s->l4, 9), dinfo->bdrv,
|
||||
s->mmc = omap2_mmc_init(omap_l4tao(s->l4, 9),
|
||||
blk_bs(blk_by_legacy_dinfo(dinfo)),
|
||||
qdev_get_gpio_in(s->ih[0], OMAP_INT_24XX_MMC_IRQ),
|
||||
&s->drq[OMAP24XX_DMA_MMC1_TX],
|
||||
omap_findclk(s, "mmc_fclk"), omap_findclk(s, "mmc_iclk"));
|
||||
|
||||
+5
-4
@@ -31,6 +31,7 @@
|
||||
#include "hw/boards.h"
|
||||
#include "hw/arm/arm.h"
|
||||
#include "hw/block/flash.h"
|
||||
#include "sysemu/block-backend.h"
|
||||
#include "sysemu/blockdev.h"
|
||||
#include "sysemu/qtest.h"
|
||||
#include "exec/address-spaces.h"
|
||||
@@ -154,8 +155,8 @@ static void sx1_init(MachineState *machine, const int version)
|
||||
if ((dinfo = drive_get(IF_PFLASH, 0, fl_idx)) != NULL) {
|
||||
if (!pflash_cfi01_register(OMAP_CS0_BASE, NULL,
|
||||
"omap_sx1.flash0-1", flash_size,
|
||||
dinfo->bdrv, sector_size,
|
||||
flash_size / sector_size,
|
||||
blk_bs(blk_by_legacy_dinfo(dinfo)),
|
||||
sector_size, flash_size / sector_size,
|
||||
4, 0, 0, 0, 0, be)) {
|
||||
fprintf(stderr, "qemu: Error registering flash memory %d.\n",
|
||||
fl_idx);
|
||||
@@ -178,8 +179,8 @@ static void sx1_init(MachineState *machine, const int version)
|
||||
|
||||
if (!pflash_cfi01_register(OMAP_CS1_BASE, NULL,
|
||||
"omap_sx1.flash1-1", flash1_size,
|
||||
dinfo->bdrv, sector_size,
|
||||
flash1_size / sector_size,
|
||||
blk_bs(blk_by_legacy_dinfo(dinfo)),
|
||||
sector_size, flash1_size / sector_size,
|
||||
4, 0, 0, 0, 0, be)) {
|
||||
fprintf(stderr, "qemu: Error registering flash memory %d.\n",
|
||||
fl_idx);
|
||||
|
||||
+5
-2
@@ -14,6 +14,7 @@
|
||||
#include "hw/i2c/i2c.h"
|
||||
#include "hw/ssi.h"
|
||||
#include "sysemu/char.h"
|
||||
#include "sysemu/block-backend.h"
|
||||
#include "sysemu/blockdev.h"
|
||||
|
||||
static struct {
|
||||
@@ -2085,7 +2086,8 @@ PXA2xxState *pxa270_init(MemoryRegion *address_space,
|
||||
fprintf(stderr, "qemu: missing SecureDigital device\n");
|
||||
exit(1);
|
||||
}
|
||||
s->mmc = pxa2xx_mmci_init(address_space, 0x41100000, dinfo->bdrv,
|
||||
s->mmc = pxa2xx_mmci_init(address_space, 0x41100000,
|
||||
blk_bs(blk_by_legacy_dinfo(dinfo)),
|
||||
qdev_get_gpio_in(s->pic, PXA2XX_PIC_MMC),
|
||||
qdev_get_gpio_in(s->dma, PXA2XX_RX_RQ_MMCI),
|
||||
qdev_get_gpio_in(s->dma, PXA2XX_TX_RQ_MMCI));
|
||||
@@ -2217,7 +2219,8 @@ PXA2xxState *pxa255_init(MemoryRegion *address_space, unsigned int sdram_size)
|
||||
fprintf(stderr, "qemu: missing SecureDigital device\n");
|
||||
exit(1);
|
||||
}
|
||||
s->mmc = pxa2xx_mmci_init(address_space, 0x41100000, dinfo->bdrv,
|
||||
s->mmc = pxa2xx_mmci_init(address_space, 0x41100000,
|
||||
blk_bs(blk_by_legacy_dinfo(dinfo)),
|
||||
qdev_get_gpio_in(s->pic, PXA2XX_PIC_MMC),
|
||||
qdev_get_gpio_in(s->dma, PXA2XX_RX_RQ_MMCI),
|
||||
qdev_get_gpio_in(s->dma, PXA2XX_TX_RQ_MMCI));
|
||||
|
||||
+3
-1
@@ -25,6 +25,7 @@
|
||||
#include "block/block.h"
|
||||
#include "audio/audio.h"
|
||||
#include "hw/boards.h"
|
||||
#include "sysemu/block-backend.h"
|
||||
#include "sysemu/blockdev.h"
|
||||
#include "hw/sysbus.h"
|
||||
#include "exec/address-spaces.h"
|
||||
@@ -170,7 +171,8 @@ static int sl_nand_init(SysBusDevice *dev)
|
||||
|
||||
s->ctl = 0;
|
||||
nand = drive_get(IF_MTD, 0, 0);
|
||||
s->nand = nand_init(nand ? nand->bdrv : NULL, s->manf_id, s->chip_id);
|
||||
s->nand = nand_init(nand ? blk_bs(blk_by_legacy_dinfo(nand)) : NULL,
|
||||
s->manf_id, s->chip_id);
|
||||
|
||||
memory_region_init_io(&s->iomem, OBJECT(s), &sl_ops, s, "sl", 0x40);
|
||||
sysbus_init_mmio(dev, &s->iomem);
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
#include "hw/pci/pci.h"
|
||||
#include "hw/i2c/i2c.h"
|
||||
#include "hw/boards.h"
|
||||
#include "sysemu/block-backend.h"
|
||||
#include "sysemu/blockdev.h"
|
||||
#include "exec/address-spaces.h"
|
||||
#include "hw/block/flash.h"
|
||||
@@ -338,7 +339,8 @@ static void versatile_init(MachineState *machine, int board_id)
|
||||
|
||||
dinfo = drive_get(IF_PFLASH, 0, 0);
|
||||
if (!pflash_cfi01_register(VERSATILE_FLASH_ADDR, NULL, "versatile.flash",
|
||||
VERSATILE_FLASH_SIZE, dinfo ? dinfo->bdrv : NULL,
|
||||
VERSATILE_FLASH_SIZE,
|
||||
dinfo ? blk_bs(blk_by_legacy_dinfo(dinfo)) : NULL,
|
||||
VERSATILE_FLASH_SECT_SIZE,
|
||||
VERSATILE_FLASH_SIZE / VERSATILE_FLASH_SECT_SIZE,
|
||||
4, 0x0089, 0x0018, 0x0000, 0x0, 0)) {
|
||||
|
||||
+3
-1
@@ -30,6 +30,7 @@
|
||||
#include "hw/boards.h"
|
||||
#include "hw/loader.h"
|
||||
#include "exec/address-spaces.h"
|
||||
#include "sysemu/block-backend.h"
|
||||
#include "sysemu/blockdev.h"
|
||||
#include "hw/block/flash.h"
|
||||
#include "sysemu/device_tree.h"
|
||||
@@ -491,7 +492,8 @@ static pflash_t *ve_pflash_cfi01_register(hwaddr base, const char *name,
|
||||
{
|
||||
DeviceState *dev = qdev_create(NULL, "cfi.pflash01");
|
||||
|
||||
if (di && qdev_prop_set_drive(dev, "drive", di->bdrv)) {
|
||||
if (di && qdev_prop_set_drive(dev, "drive",
|
||||
blk_bs(blk_by_legacy_dinfo(di)))) {
|
||||
abort();
|
||||
}
|
||||
|
||||
|
||||
+3
-1
@@ -33,6 +33,7 @@
|
||||
#include "hw/arm/primecell.h"
|
||||
#include "hw/devices.h"
|
||||
#include "net/net.h"
|
||||
#include "sysemu/block-backend.h"
|
||||
#include "sysemu/device_tree.h"
|
||||
#include "sysemu/sysemu.h"
|
||||
#include "sysemu/kvm.h"
|
||||
@@ -450,7 +451,8 @@ static void create_one_flash(const char *name, hwaddr flashbase,
|
||||
DeviceState *dev = qdev_create(NULL, "cfi.pflash01");
|
||||
const uint64_t sectorlength = 256 * 1024;
|
||||
|
||||
if (dinfo && qdev_prop_set_drive(dev, "drive", dinfo->bdrv)) {
|
||||
if (dinfo && qdev_prop_set_drive(dev, "drive",
|
||||
blk_bs(blk_by_legacy_dinfo(dinfo)))) {
|
||||
abort();
|
||||
}
|
||||
|
||||
|
||||
@@ -22,6 +22,7 @@
|
||||
#include "sysemu/sysemu.h"
|
||||
#include "hw/boards.h"
|
||||
#include "hw/block/flash.h"
|
||||
#include "sysemu/block-backend.h"
|
||||
#include "sysemu/blockdev.h"
|
||||
#include "hw/loader.h"
|
||||
#include "hw/ssi.h"
|
||||
@@ -164,7 +165,8 @@ static void zynq_init(MachineState *machine)
|
||||
|
||||
/* AMD */
|
||||
pflash_cfi02_register(0xe2000000, NULL, "zynq.pflash", FLASH_SIZE,
|
||||
dinfo ? dinfo->bdrv : NULL, FLASH_SECTOR_SIZE,
|
||||
dinfo ? blk_bs(blk_by_legacy_dinfo(dinfo)) : NULL,
|
||||
FLASH_SECTOR_SIZE,
|
||||
FLASH_SIZE/FLASH_SECTOR_SIZE, 1,
|
||||
1, 0x0066, 0x0022, 0x0000, 0x0000, 0x0555, 0x2aa,
|
||||
0);
|
||||
|
||||
+4
-3
@@ -20,6 +20,7 @@
|
||||
#include "hw/boards.h"
|
||||
#include "sysemu/sysemu.h"
|
||||
#include "hw/block/flash.h"
|
||||
#include "sysemu/block-backend.h"
|
||||
#include "sysemu/blockdev.h"
|
||||
#include "ui/console.h"
|
||||
#include "audio/audio.h"
|
||||
@@ -336,9 +337,9 @@ static void z2_init(MachineState *machine)
|
||||
|
||||
if (!pflash_cfi01_register(Z2_FLASH_BASE,
|
||||
NULL, "z2.flash0", Z2_FLASH_SIZE,
|
||||
dinfo ? dinfo->bdrv : NULL, sector_len,
|
||||
Z2_FLASH_SIZE / sector_len, 4, 0, 0, 0, 0,
|
||||
be)) {
|
||||
dinfo ? blk_bs(blk_by_legacy_dinfo(dinfo)) : NULL,
|
||||
sector_len, Z2_FLASH_SIZE / sector_len,
|
||||
4, 0, 0, 0, 0, be)) {
|
||||
fprintf(stderr, "qemu: Error registering flash memory.\n");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
+11
-5
@@ -33,6 +33,7 @@
|
||||
#include "qemu/timer.h"
|
||||
#include "hw/isa/isa.h"
|
||||
#include "hw/sysbus.h"
|
||||
#include "sysemu/block-backend.h"
|
||||
#include "sysemu/blockdev.h"
|
||||
#include "sysemu/sysemu.h"
|
||||
#include "qemu/log.h"
|
||||
@@ -2107,10 +2108,12 @@ ISADevice *fdctrl_init_isa(ISABus *bus, DriveInfo **fds)
|
||||
dev = DEVICE(isadev);
|
||||
|
||||
if (fds[0]) {
|
||||
qdev_prop_set_drive_nofail(dev, "driveA", fds[0]->bdrv);
|
||||
qdev_prop_set_drive_nofail(dev, "driveA",
|
||||
blk_bs(blk_by_legacy_dinfo(fds[0])));
|
||||
}
|
||||
if (fds[1]) {
|
||||
qdev_prop_set_drive_nofail(dev, "driveB", fds[1]->bdrv);
|
||||
qdev_prop_set_drive_nofail(dev, "driveB",
|
||||
blk_bs(blk_by_legacy_dinfo(fds[1])));
|
||||
}
|
||||
qdev_init_nofail(dev);
|
||||
|
||||
@@ -2130,10 +2133,12 @@ void fdctrl_init_sysbus(qemu_irq irq, int dma_chann,
|
||||
fdctrl = &sys->state;
|
||||
fdctrl->dma_chann = dma_chann; /* FIXME */
|
||||
if (fds[0]) {
|
||||
qdev_prop_set_drive_nofail(dev, "driveA", fds[0]->bdrv);
|
||||
qdev_prop_set_drive_nofail(dev, "driveA",
|
||||
blk_bs(blk_by_legacy_dinfo(fds[0])));
|
||||
}
|
||||
if (fds[1]) {
|
||||
qdev_prop_set_drive_nofail(dev, "driveB", fds[1]->bdrv);
|
||||
qdev_prop_set_drive_nofail(dev, "driveB",
|
||||
blk_bs(blk_by_legacy_dinfo(fds[1])));
|
||||
}
|
||||
qdev_init_nofail(dev);
|
||||
sbd = SYS_BUS_DEVICE(dev);
|
||||
@@ -2149,7 +2154,8 @@ void sun4m_fdctrl_init(qemu_irq irq, hwaddr io_base,
|
||||
|
||||
dev = qdev_create(NULL, "SUNW,fdtwo");
|
||||
if (fds[0]) {
|
||||
qdev_prop_set_drive_nofail(dev, "drive", fds[0]->bdrv);
|
||||
qdev_prop_set_drive_nofail(dev, "drive",
|
||||
blk_bs(blk_by_legacy_dinfo(fds[0])));
|
||||
}
|
||||
qdev_init_nofail(dev);
|
||||
sys = SYSBUS_FDC(dev);
|
||||
|
||||
+3
-2
@@ -22,6 +22,7 @@
|
||||
*/
|
||||
|
||||
#include "hw/hw.h"
|
||||
#include "sysemu/block-backend.h"
|
||||
#include "sysemu/blockdev.h"
|
||||
#include "hw/ssi.h"
|
||||
|
||||
@@ -624,9 +625,9 @@ static int m25p80_init(SSISlave *ss)
|
||||
|
||||
dinfo = drive_get_next(IF_MTD);
|
||||
|
||||
if (dinfo && dinfo->bdrv) {
|
||||
if (dinfo) {
|
||||
DB_PRINT_L(0, "Binding to IF_MTD drive\n");
|
||||
s->bdrv = dinfo->bdrv;
|
||||
s->bdrv = blk_bs(blk_by_legacy_dinfo(dinfo));
|
||||
|
||||
/* FIXME: Move to late init */
|
||||
if (bdrv_read(s->bdrv, 0, s->storage, DIV_ROUND_UP(s->size,
|
||||
|
||||
+1
-1
@@ -879,7 +879,7 @@ static int blk_connect(struct XenDevice *xendev)
|
||||
} else {
|
||||
/* setup via qemu cmdline -> already setup for us */
|
||||
xen_be_printf(&blkdev->xendev, 2, "get configured bdrv (cmdline setup)\n");
|
||||
blkdev->bs = blkdev->dinfo->bdrv;
|
||||
blkdev->bs = blk_bs(blk_by_legacy_dinfo(blkdev->dinfo));
|
||||
if (bdrv_is_read_only(blkdev->bs) && !readonly) {
|
||||
xen_be_printf(&blkdev->xendev, 0, "Unexpected read-only drive");
|
||||
blkdev->bs = NULL;
|
||||
|
||||
@@ -30,6 +30,7 @@
|
||||
#include "hw/loader.h"
|
||||
#include "elf.h"
|
||||
#include "boot.h"
|
||||
#include "sysemu/block-backend.h"
|
||||
#include "sysemu/blockdev.h"
|
||||
#include "exec/address-spaces.h"
|
||||
#include "sysemu/qtest.h"
|
||||
@@ -284,7 +285,7 @@ void axisdev88_init(MachineState *machine)
|
||||
|
||||
/* Attach a NAND flash to CS1. */
|
||||
nand = drive_get(IF_MTD, 0, 0);
|
||||
nand_state.nand = nand_init(nand ? nand->bdrv : NULL,
|
||||
nand_state.nand = nand_init(nand ? blk_bs(blk_by_legacy_dinfo(nand)) : NULL,
|
||||
NAND_MFR_STMICRO, 0x39);
|
||||
memory_region_init_io(&nand_state.iomem, NULL, &nand_ops, &nand_state,
|
||||
"nand", 0x05000000);
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user