From: Tuomas Tynkkynen <tuomas.tynkky...@iki.fi>

This adds a new block interface type for VirtIO block devices.

Signed-off-by: Tuomas Tynkkynen <tuomas.tynkky...@iki.fi>
Signed-off-by: Bin Meng <bmeng...@gmail.com>
---

 disk/part.c                | 6 ++++++
 drivers/block/blk-uclass.c | 2 ++
 include/blk.h              | 1 +
 3 files changed, 9 insertions(+)

diff --git a/disk/part.c b/disk/part.c
index 9e457a6..f30f9e9 100644
--- a/disk/part.c
+++ b/disk/part.c
@@ -150,6 +150,9 @@ void dev_print (struct blk_desc *dev_desc)
                        dev_desc->revision,
                        dev_desc->product);
                break;
+       case IF_TYPE_VIRTIO:
+               printf("%s VirtIO Block Device\n", dev_desc->vendor);
+               break;
        case IF_TYPE_DOC:
                puts("device type DOC\n");
                return;
@@ -281,6 +284,9 @@ static void print_part_header(const char *type, struct 
blk_desc *dev_desc)
        case IF_TYPE_NVME:
                puts ("NVMe");
                break;
+       case IF_TYPE_VIRTIO:
+               puts("VirtIO");
+               break;
        default:
                puts ("UNKNOWN");
                break;
diff --git a/drivers/block/blk-uclass.c b/drivers/block/blk-uclass.c
index c14da1f..dda1f58 100644
--- a/drivers/block/blk-uclass.c
+++ b/drivers/block/blk-uclass.c
@@ -23,6 +23,7 @@ static const char *if_typename_str[IF_TYPE_COUNT] = {
        [IF_TYPE_HOST]          = "host",
        [IF_TYPE_NVME]          = "nvme",
        [IF_TYPE_EFI]           = "efi",
+       [IF_TYPE_VIRTIO]        = "virtio",
 };
 
 static enum uclass_id if_type_uclass_id[IF_TYPE_COUNT] = {
@@ -37,6 +38,7 @@ static enum uclass_id if_type_uclass_id[IF_TYPE_COUNT] = {
        [IF_TYPE_HOST]          = UCLASS_ROOT,
        [IF_TYPE_NVME]          = UCLASS_NVME,
        [IF_TYPE_EFI]           = UCLASS_EFI,
+       [IF_TYPE_VIRTIO]        = UCLASS_VIRTIO,
 };
 
 static enum if_type if_typename_to_iftype(const char *if_typename)
diff --git a/include/blk.h b/include/blk.h
index 9787a20..170ed19 100644
--- a/include/blk.h
+++ b/include/blk.h
@@ -33,6 +33,7 @@ enum if_type {
        IF_TYPE_HOST,
        IF_TYPE_NVME,
        IF_TYPE_EFI,
+       IF_TYPE_VIRTIO,
 
        IF_TYPE_COUNT,                  /* Number of interface types */
 };
-- 
2.7.4

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to