[SeaBIOS] [PATCH 1/2] Populate drive_g->desc prior to calling add_bcv_internal().
Kevin O'Connor
kevin at koconnor.net
Mon Dec 27 05:28:24 CET 2010
Make sure the description is populated before registering a drive.
---
src/usb-msc.c | 5 ++---
src/virtio-blk.c | 8 +++-----
2 files changed, 5 insertions(+), 8 deletions(-)
diff --git a/src/usb-msc.c b/src/usb-msc.c
index 080efdc..48635d9 100644
--- a/src/usb-msc.c
+++ b/src/usb-msc.c
@@ -235,6 +235,8 @@ usb_msc_init(struct usb_pipe *pipe
, strtcpy(rev, data.rev, sizeof(rev))
, pdt, removable);
udrive_g->drive.removable = removable;
+ snprintf(desc, MAXDESCSIZE, "USB Drive %s %s %s", vendor, product, rev);
+ udrive_g->drive.desc = desc;
if (pdt == USB_MSC_TYPE_CDROM)
ret = setup_drive_cdrom(&dop);
@@ -243,9 +245,6 @@ usb_msc_init(struct usb_pipe *pipe
if (ret)
goto fail;
- snprintf(desc, MAXDESCSIZE, "USB Drive %s %s %s", vendor, product, rev);
- udrive_g->drive.desc = desc;
-
return 0;
fail:
dprintf(1, "Unable to configure USB MSC device.\n");
diff --git a/src/virtio-blk.c b/src/virtio-blk.c
index 7a25826..9c9ed83 100644
--- a/src/virtio-blk.c
+++ b/src/virtio-blk.c
@@ -151,15 +151,13 @@ init_virtio_blk(u16 bdf)
vdrive_g->drive.pchs.cylinders = cfg.cylinders;
vdrive_g->drive.pchs.heads = cfg.heads;
vdrive_g->drive.pchs.spt = cfg.sectors;
-
- setup_translation(&vdrive_g->drive);
- add_bcv_internal(&vdrive_g->drive);
-
snprintf(desc, MAXDESCSIZE, "Virtio disk PCI:%x:%x",
pci_bdf_to_bus(bdf), pci_bdf_to_dev(bdf));
-
vdrive_g->drive.desc = desc;
+ setup_translation(&vdrive_g->drive);
+ add_bcv_internal(&vdrive_g->drive);
+
vp_set_status(ioaddr, VIRTIO_CONFIG_S_ACKNOWLEDGE |
VIRTIO_CONFIG_S_DRIVER | VIRTIO_CONFIG_S_DRIVER_OK);
return;
--
1.7.3.4
More information about the SeaBIOS
mailing list