Patchwork [v2,2/2] qdev: Drop taddr properties

login
register
mail settings
Submitter Peter Maydell
Date April 9, 2013, 11:27 a.m.
Message ID <1365506873-21324-3-git-send-email-peter.maydell@linaro.org>
Download mbox | patch
Permalink /patch/235052/
State New
Headers show

Comments

Peter Maydell - April 9, 2013, 11:27 a.m.
Drop all the infrastructure for taddr properties (ie ones which
are 'hwaddr' sized). These are now unused, and any further desired
use would be rather questionable since device properties shouldn't
generally depend on a type that is conceptually variable based on
the target CPU. 32 or 64 bit integer properties should be used instead
as appropriate for the specific device.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
---
 hw/block/fdc.c              |    1 -
 hw/core/Makefile.objs       |    1 -
 hw/core/qdev-addr.c         |   78 -------------------------------------------
 hw/display/sm501.c          |    1 -
 hw/display/tcx.c            |    1 -
 hw/dma/xilinx_axidma.c      |    1 -
 hw/lm32/milkymist-hw.h      |    1 -
 hw/net/milkymist-minimac2.c |    1 -
 hw/sparc/sun4m.c            |    1 -
 include/hw/qdev-addr.h      |   10 ------
 10 files changed, 96 deletions(-)
 delete mode 100644 hw/core/qdev-addr.c
 delete mode 100644 include/hw/qdev-addr.h
Blue Swirl - April 20, 2013, 12:44 p.m.
Patch does not apply, please rebase:

Applying: qdev: Drop taddr properties
error: patch failed: hw/display/sm501.c:28
error: hw/display/sm501.c: patch does not apply
error: patch failed: hw/dma/xilinx_axidma.c:26
error: hw/dma/xilinx_axidma.c: patch does not apply
Patch failed at 0002 qdev: Drop taddr properties

On Tue, Apr 9, 2013 at 11:27 AM, Peter Maydell <peter.maydell@linaro.org> wrote:
> Drop all the infrastructure for taddr properties (ie ones which
> are 'hwaddr' sized). These are now unused, and any further desired
> use would be rather questionable since device properties shouldn't
> generally depend on a type that is conceptually variable based on
> the target CPU. 32 or 64 bit integer properties should be used instead
> as appropriate for the specific device.
>
> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
> ---
>  hw/block/fdc.c              |    1 -
>  hw/core/Makefile.objs       |    1 -
>  hw/core/qdev-addr.c         |   78 -------------------------------------------
>  hw/display/sm501.c          |    1 -
>  hw/display/tcx.c            |    1 -
>  hw/dma/xilinx_axidma.c      |    1 -
>  hw/lm32/milkymist-hw.h      |    1 -
>  hw/net/milkymist-minimac2.c |    1 -
>  hw/sparc/sun4m.c            |    1 -
>  include/hw/qdev-addr.h      |   10 ------
>  10 files changed, 96 deletions(-)
>  delete mode 100644 hw/core/qdev-addr.c
>  delete mode 100644 include/hw/qdev-addr.h
>
> diff --git a/hw/block/fdc.c b/hw/block/fdc.c
> index 1ed874f..f1f1fd7 100644
> --- a/hw/block/fdc.c
> +++ b/hw/block/fdc.c
> @@ -33,7 +33,6 @@
>  #include "qemu/timer.h"
>  #include "hw/isa/isa.h"
>  #include "hw/sysbus.h"
> -#include "hw/qdev-addr.h"
>  #include "sysemu/blockdev.h"
>  #include "sysemu/sysemu.h"
>  #include "qemu/log.h"
> diff --git a/hw/core/Makefile.objs b/hw/core/Makefile.objs
> index 94109f3..950146c 100644
> --- a/hw/core/Makefile.objs
> +++ b/hw/core/Makefile.objs
> @@ -9,6 +9,5 @@ common-obj-$(CONFIG_PTIMER) += ptimer.o
>  common-obj-$(CONFIG_SOFTMMU) += sysbus.o
>  common-obj-$(CONFIG_SOFTMMU) += null-machine.o
>  common-obj-$(CONFIG_SOFTMMU) += loader.o
> -common-obj-$(CONFIG_SOFTMMU) += qdev-addr.o
>  common-obj-$(CONFIG_SOFTMMU) += qdev-properties-system.o
>
> diff --git a/hw/core/qdev-addr.c b/hw/core/qdev-addr.c
> deleted file mode 100644
> index 80a38bb..0000000
> --- a/hw/core/qdev-addr.c
> +++ /dev/null
> @@ -1,78 +0,0 @@
> -#include "hw/qdev.h"
> -#include "hw/qdev-addr.h"
> -#include "exec/hwaddr.h"
> -#include "qapi/qmp/qerror.h"
> -#include "qapi/visitor.h"
> -
> -/* --- target physical address --- */
> -
> -static int parse_taddr(DeviceState *dev, Property *prop, const char *str)
> -{
> -    hwaddr *ptr = qdev_get_prop_ptr(dev, prop);
> -
> -    *ptr = strtoull(str, NULL, 16);
> -    return 0;
> -}
> -
> -static int print_taddr(DeviceState *dev, Property *prop, char *dest, size_t len)
> -{
> -    hwaddr *ptr = qdev_get_prop_ptr(dev, prop);
> -    return snprintf(dest, len, "0x" TARGET_FMT_plx, *ptr);
> -}
> -
> -static void get_taddr(Object *obj, Visitor *v, void *opaque,
> -                      const char *name, Error **errp)
> -{
> -    DeviceState *dev = DEVICE(obj);
> -    Property *prop = opaque;
> -    hwaddr *ptr = qdev_get_prop_ptr(dev, prop);
> -    int64_t value;
> -
> -    value = *ptr;
> -    visit_type_int64(v, &value, name, errp);
> -}
> -
> -static void set_taddr(Object *obj, Visitor *v, void *opaque,
> -                      const char *name, Error **errp)
> -{
> -    DeviceState *dev = DEVICE(obj);
> -    Property *prop = opaque;
> -    hwaddr *ptr = qdev_get_prop_ptr(dev, prop);
> -    Error *local_err = NULL;
> -    int64_t value;
> -
> -    if (dev->realized) {
> -        qdev_prop_set_after_realize(dev, name, errp);
> -        return;
> -    }
> -
> -    visit_type_int64(v, &value, name, &local_err);
> -    if (local_err) {
> -        error_propagate(errp, local_err);
> -        return;
> -    }
> -    if ((uint64_t)value <= (uint64_t) ~(hwaddr)0) {
> -        *ptr = value;
> -    } else {
> -        error_set(errp, QERR_PROPERTY_VALUE_OUT_OF_RANGE,
> -                  dev->id?:"", name, value, (uint64_t) 0,
> -                  (uint64_t) ~(hwaddr)0);
> -    }
> -}
> -
> -
> -PropertyInfo qdev_prop_taddr = {
> -    .name  = "taddr",
> -    .parse = parse_taddr,
> -    .print = print_taddr,
> -    .get   = get_taddr,
> -    .set   = set_taddr,
> -};
> -
> -void qdev_prop_set_taddr(DeviceState *dev, const char *name, hwaddr value)
> -{
> -    Error *errp = NULL;
> -    object_property_set_int(OBJECT(dev), value, name, &errp);
> -    assert(!errp);
> -
> -}
> diff --git a/hw/display/sm501.c b/hw/display/sm501.c
> index 3840bce..09a819e 100644
> --- a/hw/display/sm501.c
> +++ b/hw/display/sm501.c
> @@ -28,7 +28,6 @@
>  #include "ui/console.h"
>  #include "hw/arm/devices.h"
>  #include "hw/sysbus.h"
> -#include "hw/qdev-addr.h"
>  #include "qemu/range.h"
>  #include "ui/pixel_ops.h"
>
> diff --git a/hw/display/tcx.c b/hw/display/tcx.c
> index c44068e..55abaee 100644
> --- a/hw/display/tcx.c
> +++ b/hw/display/tcx.c
> @@ -26,7 +26,6 @@
>  #include "ui/console.h"
>  #include "ui/pixel_ops.h"
>  #include "hw/sysbus.h"
> -#include "hw/qdev-addr.h"
>
>  #define MAXX 1024
>  #define MAXY 768
> diff --git a/hw/dma/xilinx_axidma.c b/hw/dma/xilinx_axidma.c
> index 8db1a74..997b06e 100644
> --- a/hw/dma/xilinx_axidma.c
> +++ b/hw/dma/xilinx_axidma.c
> @@ -26,7 +26,6 @@
>  #include "qemu/timer.h"
>  #include "hw/ptimer.h"
>  #include "qemu/log.h"
> -#include "hw/qdev-addr.h"
>
>  #include "hw/stream.h"
>
> diff --git a/hw/lm32/milkymist-hw.h b/hw/lm32/milkymist-hw.h
> index 4e86c4e..5317ce6 100644
> --- a/hw/lm32/milkymist-hw.h
> +++ b/hw/lm32/milkymist-hw.h
> @@ -2,7 +2,6 @@
>  #define QEMU_HW_MILKYMIST_H
>
>  #include "hw/qdev.h"
> -#include "hw/qdev-addr.h"
>  #include "net/net.h"
>
>  static inline DeviceState *milkymist_uart_create(hwaddr base,
> diff --git a/hw/net/milkymist-minimac2.c b/hw/net/milkymist-minimac2.c
> index 29618e8..4ef6318 100644
> --- a/hw/net/milkymist-minimac2.c
> +++ b/hw/net/milkymist-minimac2.c
> @@ -27,7 +27,6 @@
>  #include "trace.h"
>  #include "net/net.h"
>  #include "qemu/error-report.h"
> -#include "hw/qdev-addr.h"
>
>  #include <zlib.h>
>
> diff --git a/hw/sparc/sun4m.c b/hw/sparc/sun4m.c
> index 31beb32..635115f 100644
> --- a/hw/sparc/sun4m.c
> +++ b/hw/sparc/sun4m.c
> @@ -37,7 +37,6 @@
>  #include "hw/nvram/fw_cfg.h"
>  #include "hw/char/escc.h"
>  #include "hw/empty_slot.h"
> -#include "hw/qdev-addr.h"
>  #include "hw/loader.h"
>  #include "elf.h"
>  #include "sysemu/blockdev.h"
> diff --git a/include/hw/qdev-addr.h b/include/hw/qdev-addr.h
> deleted file mode 100644
> index 79708e6..0000000
> --- a/include/hw/qdev-addr.h
> +++ /dev/null
> @@ -1,10 +0,0 @@
> -#ifndef HW_QDEV_ADDR_H
> -#define HW_QDEV_ADDR_H 1
> -
> -#define DEFINE_PROP_TADDR(_n, _s, _f, _d)                               \
> -    DEFINE_PROP_DEFAULT(_n, _s, _f, _d, qdev_prop_taddr, hwaddr)
> -
> -extern PropertyInfo qdev_prop_taddr;
> -void qdev_prop_set_taddr(DeviceState *dev, const char *name, hwaddr value);
> -
> -#endif
> --
> 1.7.9.5
>
>

Patch

diff --git a/hw/block/fdc.c b/hw/block/fdc.c
index 1ed874f..f1f1fd7 100644
--- a/hw/block/fdc.c
+++ b/hw/block/fdc.c
@@ -33,7 +33,6 @@ 
 #include "qemu/timer.h"
 #include "hw/isa/isa.h"
 #include "hw/sysbus.h"
-#include "hw/qdev-addr.h"
 #include "sysemu/blockdev.h"
 #include "sysemu/sysemu.h"
 #include "qemu/log.h"
diff --git a/hw/core/Makefile.objs b/hw/core/Makefile.objs
index 94109f3..950146c 100644
--- a/hw/core/Makefile.objs
+++ b/hw/core/Makefile.objs
@@ -9,6 +9,5 @@  common-obj-$(CONFIG_PTIMER) += ptimer.o
 common-obj-$(CONFIG_SOFTMMU) += sysbus.o
 common-obj-$(CONFIG_SOFTMMU) += null-machine.o
 common-obj-$(CONFIG_SOFTMMU) += loader.o
-common-obj-$(CONFIG_SOFTMMU) += qdev-addr.o
 common-obj-$(CONFIG_SOFTMMU) += qdev-properties-system.o
 
diff --git a/hw/core/qdev-addr.c b/hw/core/qdev-addr.c
deleted file mode 100644
index 80a38bb..0000000
--- a/hw/core/qdev-addr.c
+++ /dev/null
@@ -1,78 +0,0 @@ 
-#include "hw/qdev.h"
-#include "hw/qdev-addr.h"
-#include "exec/hwaddr.h"
-#include "qapi/qmp/qerror.h"
-#include "qapi/visitor.h"
-
-/* --- target physical address --- */
-
-static int parse_taddr(DeviceState *dev, Property *prop, const char *str)
-{
-    hwaddr *ptr = qdev_get_prop_ptr(dev, prop);
-
-    *ptr = strtoull(str, NULL, 16);
-    return 0;
-}
-
-static int print_taddr(DeviceState *dev, Property *prop, char *dest, size_t len)
-{
-    hwaddr *ptr = qdev_get_prop_ptr(dev, prop);
-    return snprintf(dest, len, "0x" TARGET_FMT_plx, *ptr);
-}
-
-static void get_taddr(Object *obj, Visitor *v, void *opaque,
-                      const char *name, Error **errp)
-{
-    DeviceState *dev = DEVICE(obj);
-    Property *prop = opaque;
-    hwaddr *ptr = qdev_get_prop_ptr(dev, prop);
-    int64_t value;
-
-    value = *ptr;
-    visit_type_int64(v, &value, name, errp);
-}
-
-static void set_taddr(Object *obj, Visitor *v, void *opaque,
-                      const char *name, Error **errp)
-{
-    DeviceState *dev = DEVICE(obj);
-    Property *prop = opaque;
-    hwaddr *ptr = qdev_get_prop_ptr(dev, prop);
-    Error *local_err = NULL;
-    int64_t value;
-
-    if (dev->realized) {
-        qdev_prop_set_after_realize(dev, name, errp);
-        return;
-    }
-
-    visit_type_int64(v, &value, name, &local_err);
-    if (local_err) {
-        error_propagate(errp, local_err);
-        return;
-    }
-    if ((uint64_t)value <= (uint64_t) ~(hwaddr)0) {
-        *ptr = value;
-    } else {
-        error_set(errp, QERR_PROPERTY_VALUE_OUT_OF_RANGE,
-                  dev->id?:"", name, value, (uint64_t) 0,
-                  (uint64_t) ~(hwaddr)0);
-    }
-}
-
-
-PropertyInfo qdev_prop_taddr = {
-    .name  = "taddr",
-    .parse = parse_taddr,
-    .print = print_taddr,
-    .get   = get_taddr,
-    .set   = set_taddr,
-};
-
-void qdev_prop_set_taddr(DeviceState *dev, const char *name, hwaddr value)
-{
-    Error *errp = NULL;
-    object_property_set_int(OBJECT(dev), value, name, &errp);
-    assert(!errp);
-
-}
diff --git a/hw/display/sm501.c b/hw/display/sm501.c
index 3840bce..09a819e 100644
--- a/hw/display/sm501.c
+++ b/hw/display/sm501.c
@@ -28,7 +28,6 @@ 
 #include "ui/console.h"
 #include "hw/arm/devices.h"
 #include "hw/sysbus.h"
-#include "hw/qdev-addr.h"
 #include "qemu/range.h"
 #include "ui/pixel_ops.h"
 
diff --git a/hw/display/tcx.c b/hw/display/tcx.c
index c44068e..55abaee 100644
--- a/hw/display/tcx.c
+++ b/hw/display/tcx.c
@@ -26,7 +26,6 @@ 
 #include "ui/console.h"
 #include "ui/pixel_ops.h"
 #include "hw/sysbus.h"
-#include "hw/qdev-addr.h"
 
 #define MAXX 1024
 #define MAXY 768
diff --git a/hw/dma/xilinx_axidma.c b/hw/dma/xilinx_axidma.c
index 8db1a74..997b06e 100644
--- a/hw/dma/xilinx_axidma.c
+++ b/hw/dma/xilinx_axidma.c
@@ -26,7 +26,6 @@ 
 #include "qemu/timer.h"
 #include "hw/ptimer.h"
 #include "qemu/log.h"
-#include "hw/qdev-addr.h"
 
 #include "hw/stream.h"
 
diff --git a/hw/lm32/milkymist-hw.h b/hw/lm32/milkymist-hw.h
index 4e86c4e..5317ce6 100644
--- a/hw/lm32/milkymist-hw.h
+++ b/hw/lm32/milkymist-hw.h
@@ -2,7 +2,6 @@ 
 #define QEMU_HW_MILKYMIST_H
 
 #include "hw/qdev.h"
-#include "hw/qdev-addr.h"
 #include "net/net.h"
 
 static inline DeviceState *milkymist_uart_create(hwaddr base,
diff --git a/hw/net/milkymist-minimac2.c b/hw/net/milkymist-minimac2.c
index 29618e8..4ef6318 100644
--- a/hw/net/milkymist-minimac2.c
+++ b/hw/net/milkymist-minimac2.c
@@ -27,7 +27,6 @@ 
 #include "trace.h"
 #include "net/net.h"
 #include "qemu/error-report.h"
-#include "hw/qdev-addr.h"
 
 #include <zlib.h>
 
diff --git a/hw/sparc/sun4m.c b/hw/sparc/sun4m.c
index 31beb32..635115f 100644
--- a/hw/sparc/sun4m.c
+++ b/hw/sparc/sun4m.c
@@ -37,7 +37,6 @@ 
 #include "hw/nvram/fw_cfg.h"
 #include "hw/char/escc.h"
 #include "hw/empty_slot.h"
-#include "hw/qdev-addr.h"
 #include "hw/loader.h"
 #include "elf.h"
 #include "sysemu/blockdev.h"
diff --git a/include/hw/qdev-addr.h b/include/hw/qdev-addr.h
deleted file mode 100644
index 79708e6..0000000
--- a/include/hw/qdev-addr.h
+++ /dev/null
@@ -1,10 +0,0 @@ 
-#ifndef HW_QDEV_ADDR_H
-#define HW_QDEV_ADDR_H 1
-
-#define DEFINE_PROP_TADDR(_n, _s, _f, _d)                               \
-    DEFINE_PROP_DEFAULT(_n, _s, _f, _d, qdev_prop_taddr, hwaddr)
-
-extern PropertyInfo qdev_prop_taddr;
-void qdev_prop_set_taddr(DeviceState *dev, const char *name, hwaddr value);
-
-#endif