qemu-arm
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v3 10/17] hw/arm/xlnx-zynqmp: Use &error_abort for programmin


From: Philippe Mathieu-Daudé
Subject: Re: [PATCH v3 10/17] hw/arm/xlnx-zynqmp: Use &error_abort for programming errors
Date: Tue, 4 Feb 2025 22:34:36 +0100
User-agent: Mozilla Thunderbird

ping for trivial review?

On 8/11/24 16:43, Philippe Mathieu-Daudé wrote:
When a property value is static (not provided by QMP or CLI),
error shouldn't happen, otherwise it is a programming error.
Therefore simplify and use &error_abort as this can't fail.

Reported-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
  hw/arm/xlnx-zynqmp.c | 44 ++++++++++++++------------------------------
  1 file changed, 14 insertions(+), 30 deletions(-)

diff --git a/hw/arm/xlnx-zynqmp.c b/hw/arm/xlnx-zynqmp.c
index e735dbdf82..1770fb5402 100644
--- a/hw/arm/xlnx-zynqmp.c
+++ b/hw/arm/xlnx-zynqmp.c
@@ -689,16 +689,10 @@ static void xlnx_zynqmp_realize(DeviceState *dev, Error 
**errp)
           * - SDIO Specification Version 3.0
           * - eMMC Specification Version 4.51
           */
-        if (!object_property_set_uint(sdhci, "sd-spec-version", 3, errp)) {
-            return;
-        }
-        if (!object_property_set_uint(sdhci, "capareg", SDHCI_CAPABILITIES,
-                                      errp)) {
-            return;
-        }
-        if (!object_property_set_uint(sdhci, "uhs", UHS_I, errp)) {
-            return;
-        }
+        object_property_set_uint(sdhci, "sd-spec-version", 3, &error_abort);
+        object_property_set_uint(sdhci, "capareg", SDHCI_CAPABILITIES,
+                                 &error_abort);
+        object_property_set_uint(sdhci, "uhs", UHS_I, &error_abort);
          if (!sysbus_realize(SYS_BUS_DEVICE(sdhci), errp)) {
              return;
          }
@@ -714,10 +708,8 @@ static void xlnx_zynqmp_realize(DeviceState *dev, Error 
**errp)
      for (i = 0; i < XLNX_ZYNQMP_NUM_SPIS; i++) {
          gchar *bus_name;
- if (!object_property_set_bool(OBJECT(&s->spi[i])), "little-endian",
-                                      true, errp)) {
-            return;
-        }
+        object_property_set_bool(OBJECT(&s->spi[i]), "little-endian",
+                                 true, &error_abort);
          if (!sysbus_realize(SYS_BUS_DEVICE(&s->spi[i]), errp)) {
              return;
          }
@@ -767,14 +759,10 @@ static void xlnx_zynqmp_realize(DeviceState *dev, Error 
**errp)
      xlnx_zynqmp_create_unimp_mmio(s);
for (i = 0; i < XLNX_ZYNQMP_NUM_GDMA_CH; i++) {
-        if (!object_property_set_uint(OBJECT(&s->gdma[i]), "bus-width", 128,
-                                      errp)) {
-            return;
-        }
-        if (!object_property_set_link(OBJECT(&s->gdma[i]), "dma",
-                                      OBJECT(system_memory), errp)) {
-            return;
-        }
+        object_property_set_uint(OBJECT(&s->gdma[i]), "bus-width", 128,
+                                 &error_abort);
+        object_property_set_link(OBJECT(&s->gdma[i]), "dma",
+                                 OBJECT(system_memory), &error_abort);
          if (!sysbus_realize(SYS_BUS_DEVICE(&s->gdma[i]), errp)) {
              return;
          }
@@ -815,10 +803,8 @@ static void xlnx_zynqmp_realize(DeviceState *dev, Error 
**errp)
      sysbus_connect_irq(SYS_BUS_DEVICE(&s->qspi_dma), 0,
                         qdev_get_gpio_in(DEVICE(&s->qspi_irq_orgate), 0));
- if (!object_property_set_link(OBJECT(&s->qspi), "stream-connected-dma",
-                                  OBJECT(&s->qspi_dma), errp)) {
-         return;
-    }
+    object_property_set_link(OBJECT(&s->qspi), "stream-connected-dma",
+                             OBJECT(&s->qspi_dma), &error_abort);
      if (!sysbus_realize(SYS_BUS_DEVICE(&s->qspi), errp)) {
          return;
      }
@@ -837,10 +823,8 @@ static void xlnx_zynqmp_realize(DeviceState *dev, Error 
**errp)
      }
for (i = 0; i < XLNX_ZYNQMP_NUM_USB; i++) {
-        if (!object_property_set_link(OBJECT(&s->usb[i].sysbus_xhci), "dma",
-                                      OBJECT(system_memory), errp)) {
-            return;
-        }
+        object_property_set_link(OBJECT(&s->usb[i].sysbus_xhci), "dma",
+                                 OBJECT(system_memory), &error_abort);
qdev_prop_set_uint32(DEVICE(&s->usb[i].sysbus_xhci), "intrs", 4);
          qdev_prop_set_uint32(DEVICE(&s->usb[i].sysbus_xhci), "slots", 2);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]