summary refs log tree commit diff stats
path: root/scripts
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2015-06-22 12:50:30 +0100
committerPeter Maydell <peter.maydell@linaro.org>2015-06-22 12:50:30 +0100
commit0a3346f5dea0a679322df804e1e78d7c10d12a9f (patch)
treec3357e42d47b35f6b2631d16b83c14450ac4f924 /scripts
parentcb4e0f9ddf7d45de7e4716cbab661ea568bd0b6c (diff)
parentdaeba9699d41ad79e2f3d34acea9c85c5d67a2ac (diff)
downloadfocaccia-qemu-0a3346f5dea0a679322df804e1e78d7c10d12a9f.tar.gz
focaccia-qemu-0a3346f5dea0a679322df804e1e78d7c10d12a9f.zip
Merge remote-tracking branch 'remotes/afaerber/tags/qom-devices-for-peter' into staging
QOM infrastructure fixes and device conversions

* Changes to name string ownership for alias properties
* Improvements around enum properties
* Cleanups around -object handling
* New helper functions
* Cleanups of qdev init helper functions
* Add path argument to qom-tree script
* QTest cleanup to use new qtest_add_data_func() consistently

# gpg: Signature made Fri Jun 19 18:14:38 2015 BST using RSA key ID 3E7E013F
# gpg: Good signature from "Andreas Färber <afaerber@suse.de>"
# gpg:                 aka "Andreas Färber <afaerber@suse.com>"

* remotes/afaerber/tags/qom-devices-for-peter:
  qdev: Un-deprecate qdev_init_nofail()
  qdev: Deprecated qdev_init() is finally unused, drop
  qom: Don't pass string table to object_get_enum() function
  qom: Add an object_property_add_enum() helper function
  qom: Make enum string tables const-correct
  qom: Add object_new_with_props() / object_new_withpropv() helpers
  qom: Add helper function for getting user objects root
  vl: Create (most) objects before creating chardev backends
  doc: Document user creatable object types in help text
  backends: Fix typename of 'policy' enum property in hostmem obj
  scripts: Add support for path as argument of qom-tree
  tests: Use qtest_add_data_func() consistently
  qdev: Free property names after registering gpio aliases
  qom: strdup() target property name on object_property_add_alias()

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'scripts')
-rw-r--r--scripts/qapi-types.py4
-rwxr-xr-xscripts/qmp/qom-tree9
2 files changed, 9 insertions, 4 deletions
diff --git a/scripts/qapi-types.py b/scripts/qapi-types.py
index d28a6b07be..e6eb4b613a 100644
--- a/scripts/qapi-types.py
+++ b/scripts/qapi-types.py
@@ -105,7 +105,7 @@ struct %(name)s
 
 def generate_enum_lookup(name, values):
     ret = mcgen('''
-const char *%(name)s_lookup[] = {
+const char * const %(name)s_lookup[] = {
 ''',
                 name=c_name(name))
     i = 0
@@ -128,7 +128,7 @@ const char *%(name)s_lookup[] = {
 def generate_enum(name, values):
     name = c_name(name)
     lookup_decl = mcgen('''
-extern const char *%(name)s_lookup[];
+extern const char * const %(name)s_lookup[];
 ''',
                 name=name)
 
diff --git a/scripts/qmp/qom-tree b/scripts/qmp/qom-tree
index aea11d4b1a..906fcd2640 100755
--- a/scripts/qmp/qom-tree
+++ b/scripts/qmp/qom-tree
@@ -65,6 +65,11 @@ def list_node(path):
     print ''
     for item in items:
         if item['type'].startswith('child<'):
-            list_node(path + '/' + item['name'])
+            list_node((path if (path != '/') else '')  + '/' + item['name'])
 
-list_node('/machine')
+if len(args) == 0:
+    path = '/'
+else:
+    path = args[0]
+
+list_node(path)