summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorJiri Pirko <jiri@mellanox.com>2016-02-25 15:31:57 +0100
committerJason Wang <jasowang@redhat.com>2016-03-08 15:34:18 +0800
commit031143c8d5ad9d82623a252551ef323219cbe642 (patch)
tree6c6ceb8161071e54c8a7b36a31b39572256ed4ee
parent39e0c4f47d263453cd10920d0c372b370ffaf990 (diff)
downloadfocaccia-qemu-031143c8d5ad9d82623a252551ef323219cbe642.tar.gz
focaccia-qemu-031143c8d5ad9d82623a252551ef323219cbe642.zip
rocker: add name field into WorldOps ale let world specify its name
Also use this in world_name getter function.

Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
-rw-r--r--hw/net/rocker/rocker_of_dpa.c1
-rw-r--r--hw/net/rocker/rocker_world.c7
-rw-r--r--hw/net/rocker/rocker_world.h1
3 files changed, 3 insertions, 6 deletions
diff --git a/hw/net/rocker/rocker_of_dpa.c b/hw/net/rocker/rocker_of_dpa.c
index da3fc541d8..0a134ebca8 100644
--- a/hw/net/rocker/rocker_of_dpa.c
+++ b/hw/net/rocker/rocker_of_dpa.c
@@ -2614,6 +2614,7 @@ RockerOfDpaGroupList *qmp_query_rocker_of_dpa_groups(const char *name,
 }
 
 static WorldOps of_dpa_ops = {
+    .name = "ofdpa",
     .init = of_dpa_init,
     .uninit = of_dpa_uninit,
     .ig = of_dpa_ig,
diff --git a/hw/net/rocker/rocker_world.c b/hw/net/rocker/rocker_world.c
index 1ed0fcd163..89777e9684 100644
--- a/hw/net/rocker/rocker_world.c
+++ b/hw/net/rocker/rocker_world.c
@@ -98,10 +98,5 @@ enum rocker_world_type world_type(World *world)
 
 const char *world_name(World *world)
 {
-    switch (world->type) {
-    case ROCKER_WORLD_TYPE_OF_DPA:
-        return "OF_DPA";
-    default:
-        return "unknown";
-    }
+    return world->ops->name;
 }
diff --git a/hw/net/rocker/rocker_world.h b/hw/net/rocker/rocker_world.h
index 18d277b927..58ade47335 100644
--- a/hw/net/rocker/rocker_world.h
+++ b/hw/net/rocker/rocker_world.h
@@ -33,6 +33,7 @@ typedef int (world_cmd)(World *world, DescInfo *info,
                         RockerTlv *cmd_info_tlv);
 
 typedef struct world_ops {
+    const char *name;
     world_init *init;
     world_uninit *uninit;
     world_ig *ig;