From: "Philippe Mathieu-Daudé" <f4bug@amsat.org> To: qemu-devel@nongnu.org Cc: "Fam Zheng" <fam@euphon.net>, "Peter Maydell" <peter.maydell@linaro.org>, "Sagar Karandikar" <sagark@eecs.berkeley.edu>, "Michael S. Tsirkin" <mst@redhat.com>, "Jeff Cody" <codyprime@gmail.com>, "Jason Wang" <jasowang@redhat.com>, "Alistair Francis" <Alistair.Francis@wdc.com>, "Edgar E. Iglesias" <edgar.iglesias@gmail.com>, "Subbaraya Sundeep" <sundeep.lkml@gmail.com>, qemu-block@nongnu.org, "Markus Armbruster" <armbru@redhat.com>, "Max Reitz" <mreitz@redhat.com>, "Joel Stanley" <joel@jms.id.au>, "Marc-André Lureau" <marcandre.lureau@redhat.com>, "Richard Henderson" <rth@twiddle.net>, "Philippe Mathieu-Daudé" <philmd@redhat.com>, "Eduardo Habkost" <ehabkost@redhat.com>, "Xie Changlong" <xiechanglong.d@gmail.com>, "Alistair Francis" <alistair@alistair23.me>, "Beniamino Galvani" <b.galvani@gmail.com>, qemu-arm@nongnu.org, "Peter Chubb" <peter.chubb@nicta.com.au>, "Cédric Le Goater" <clg@kaod.org>, "Palmer Dabbelt" <palmer@dabbelt.com>, "David Gibson" <david@gibson.dropbear.id.au>, "Kevin Wolf" <kwolf@redhat.com>, qemu-riscv@nongnu.org, "Andrew Jeffery" <andrew@aj.id.au>, "Wen Congyang" <wencongyang2@huawei.com>, "Philippe Mathieu-Daudé" <f4bug@amsat.org>, "Jean-Christophe Dubois" <jcd@tribudubois.net>, qemu-ppc@nongnu.org, "Bastian Koppelmann" <kbastian@mail.uni-paderborn.de>, "Paolo Bonzini" <pbonzini@redhat.com> Subject: [PATCH-for-5.1 v3 17/24] hw/microblaze/xlnx-zynqmp-pmu: Move some code from realize() to init() Date: Mon, 13 Apr 2020 00:36:12 +0200 [thread overview] Message-ID: <20200412223619.11284-18-f4bug@amsat.org> (raw) In-Reply-To: <20200412223619.11284-1-f4bug@amsat.org> Coccinelle reported: $ spatch ... --timeout 60 --sp-file \ scripts/coccinelle/simplify-init-realize-error_propagate.cocci HANDLING: ./hw/microblaze/xlnx-zynqmp-pmu.c >>> possible moves from xlnx_zynqmp_pmu_soc_init() to xlnx_zynqmp_pmu_soc_realize() in ./hw/microblaze/xlnx-zynqmp-pmu.c:79 Move the calls using &error_abort which don't depend on input updated before realize() to init(). Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> --- v3: Typo 'depend of' -> 'depend on' (eblake) --- hw/microblaze/xlnx-zynqmp-pmu.c | 46 ++++++++++++++++----------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/hw/microblaze/xlnx-zynqmp-pmu.c b/hw/microblaze/xlnx-zynqmp-pmu.c index 028f31894d..2aa602cf85 100644 --- a/hw/microblaze/xlnx-zynqmp-pmu.c +++ b/hw/microblaze/xlnx-zynqmp-pmu.c @@ -63,24 +63,6 @@ static void xlnx_zynqmp_pmu_soc_init(Object *obj) object_initialize_child(obj, "pmu-cpu", &s->cpu, sizeof(s->cpu), TYPE_MICROBLAZE_CPU, &error_abort, NULL); - - sysbus_init_child_obj(obj, "intc", &s->intc, sizeof(s->intc), - TYPE_XLNX_PMU_IO_INTC); - - /* Create the IPI device */ - for (int i = 0; i < XLNX_ZYNQMP_PMU_NUM_IPIS; i++) { - char *name = g_strdup_printf("ipi%d", i); - sysbus_init_child_obj(obj, name, &s->ipi[i], - sizeof(XlnxZynqMPIPI), TYPE_XLNX_ZYNQMP_IPI); - g_free(name); - } -} - -static void xlnx_zynqmp_pmu_soc_realize(DeviceState *dev, Error **errp) -{ - XlnxZynqMPPMUSoCState *s = XLNX_ZYNQMP_PMU_SOC(dev); - Error *err = NULL; - object_property_set_uint(OBJECT(&s->cpu), XLNX_ZYNQMP_PMU_ROM_ADDR, "base-vectors", &error_abort); object_property_set_bool(OBJECT(&s->cpu), true, "use-stack-protection", @@ -99,18 +81,36 @@ static void xlnx_zynqmp_pmu_soc_realize(DeviceState *dev, Error **errp) object_property_set_str(OBJECT(&s->cpu), "8.40.b", "version", &error_abort); object_property_set_uint(OBJECT(&s->cpu), 0, "pvr", &error_abort); - object_property_set_bool(OBJECT(&s->cpu), true, "realized", &err); - if (err) { - error_propagate(errp, err); - return; - } + sysbus_init_child_obj(obj, "intc", &s->intc, sizeof(s->intc), + TYPE_XLNX_PMU_IO_INTC); object_property_set_uint(OBJECT(&s->intc), 0x10, "intc-intr-size", &error_abort); object_property_set_uint(OBJECT(&s->intc), 0x0, "intc-level-edge", &error_abort); object_property_set_uint(OBJECT(&s->intc), 0xffff, "intc-positive", &error_abort); + + /* Create the IPI device */ + for (int i = 0; i < XLNX_ZYNQMP_PMU_NUM_IPIS; i++) { + char *name = g_strdup_printf("ipi%d", i); + sysbus_init_child_obj(obj, name, &s->ipi[i], + sizeof(XlnxZynqMPIPI), TYPE_XLNX_ZYNQMP_IPI); + g_free(name); + } +} + +static void xlnx_zynqmp_pmu_soc_realize(DeviceState *dev, Error **errp) +{ + XlnxZynqMPPMUSoCState *s = XLNX_ZYNQMP_PMU_SOC(dev); + Error *err = NULL; + + object_property_set_bool(OBJECT(&s->cpu), true, "realized", &err); + if (err) { + error_propagate(errp, err); + return; + } + object_property_set_bool(OBJECT(&s->intc), true, "realized", &err); if (err) { error_propagate(errp, err); -- 2.21.1
WARNING: multiple messages have this Message-ID (diff)
From: "Philippe Mathieu-Daudé" <f4bug@amsat.org> To: qemu-devel@nongnu.org Cc: "Joel Stanley" <joel@jms.id.au>, "Jean-Christophe Dubois" <jcd@tribudubois.net>, "Subbaraya Sundeep" <sundeep.lkml@gmail.com>, "Max Reitz" <mreitz@redhat.com>, "Palmer Dabbelt" <palmer@dabbelt.com>, qemu-ppc@nongnu.org, "Sagar Karandikar" <sagark@eecs.berkeley.edu>, "Markus Armbruster" <armbru@redhat.com>, "Jeff Cody" <codyprime@gmail.com>, "Peter Maydell" <peter.maydell@linaro.org>, "Xie Changlong" <xiechanglong.d@gmail.com>, "Fam Zheng" <fam@euphon.net>, "Eduardo Habkost" <ehabkost@redhat.com>, "Alistair Francis" <Alistair.Francis@wdc.com>, qemu-arm@nongnu.org, "Wen Congyang" <wencongyang2@huawei.com>, "Philippe Mathieu-Daudé" <philmd@redhat.com>, "Bastian Koppelmann" <kbastian@mail.uni-paderborn.de>, "Edgar E. Iglesias" <edgar.iglesias@gmail.com>, "Kevin Wolf" <kwolf@redhat.com>, "Marc-André Lureau" <marcandre.lureau@redhat.com>, "David Gibson" <david@gibson.dropbear.id.au>, "Jason Wang" <jasowang@redhat.com>, "Peter Chubb" <peter.chubb@nicta.com.au>, "Beniamino Galvani" <b.galvani@gmail.com>, "Alistair Francis" <alistair@alistair23.me>, qemu-riscv@nongnu.org, "Cédric Le Goater" <clg@kaod.org>, qemu-block@nongnu.org, "Paolo Bonzini" <pbonzini@redhat.com>, "Andrew Jeffery" <andrew@aj.id.au>, "Michael S. Tsirkin" <mst@redhat.com>, "Richard Henderson" <rth@twiddle.net>, "Philippe Mathieu-Daudé" <f4bug@amsat.org> Subject: [PATCH-for-5.1 v3 17/24] hw/microblaze/xlnx-zynqmp-pmu: Move some code from realize() to init() Date: Mon, 13 Apr 2020 00:36:12 +0200 [thread overview] Message-ID: <20200412223619.11284-18-f4bug@amsat.org> (raw) In-Reply-To: <20200412223619.11284-1-f4bug@amsat.org> Coccinelle reported: $ spatch ... --timeout 60 --sp-file \ scripts/coccinelle/simplify-init-realize-error_propagate.cocci HANDLING: ./hw/microblaze/xlnx-zynqmp-pmu.c >>> possible moves from xlnx_zynqmp_pmu_soc_init() to xlnx_zynqmp_pmu_soc_realize() in ./hw/microblaze/xlnx-zynqmp-pmu.c:79 Move the calls using &error_abort which don't depend on input updated before realize() to init(). Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> --- v3: Typo 'depend of' -> 'depend on' (eblake) --- hw/microblaze/xlnx-zynqmp-pmu.c | 46 ++++++++++++++++----------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/hw/microblaze/xlnx-zynqmp-pmu.c b/hw/microblaze/xlnx-zynqmp-pmu.c index 028f31894d..2aa602cf85 100644 --- a/hw/microblaze/xlnx-zynqmp-pmu.c +++ b/hw/microblaze/xlnx-zynqmp-pmu.c @@ -63,24 +63,6 @@ static void xlnx_zynqmp_pmu_soc_init(Object *obj) object_initialize_child(obj, "pmu-cpu", &s->cpu, sizeof(s->cpu), TYPE_MICROBLAZE_CPU, &error_abort, NULL); - - sysbus_init_child_obj(obj, "intc", &s->intc, sizeof(s->intc), - TYPE_XLNX_PMU_IO_INTC); - - /* Create the IPI device */ - for (int i = 0; i < XLNX_ZYNQMP_PMU_NUM_IPIS; i++) { - char *name = g_strdup_printf("ipi%d", i); - sysbus_init_child_obj(obj, name, &s->ipi[i], - sizeof(XlnxZynqMPIPI), TYPE_XLNX_ZYNQMP_IPI); - g_free(name); - } -} - -static void xlnx_zynqmp_pmu_soc_realize(DeviceState *dev, Error **errp) -{ - XlnxZynqMPPMUSoCState *s = XLNX_ZYNQMP_PMU_SOC(dev); - Error *err = NULL; - object_property_set_uint(OBJECT(&s->cpu), XLNX_ZYNQMP_PMU_ROM_ADDR, "base-vectors", &error_abort); object_property_set_bool(OBJECT(&s->cpu), true, "use-stack-protection", @@ -99,18 +81,36 @@ static void xlnx_zynqmp_pmu_soc_realize(DeviceState *dev, Error **errp) object_property_set_str(OBJECT(&s->cpu), "8.40.b", "version", &error_abort); object_property_set_uint(OBJECT(&s->cpu), 0, "pvr", &error_abort); - object_property_set_bool(OBJECT(&s->cpu), true, "realized", &err); - if (err) { - error_propagate(errp, err); - return; - } + sysbus_init_child_obj(obj, "intc", &s->intc, sizeof(s->intc), + TYPE_XLNX_PMU_IO_INTC); object_property_set_uint(OBJECT(&s->intc), 0x10, "intc-intr-size", &error_abort); object_property_set_uint(OBJECT(&s->intc), 0x0, "intc-level-edge", &error_abort); object_property_set_uint(OBJECT(&s->intc), 0xffff, "intc-positive", &error_abort); + + /* Create the IPI device */ + for (int i = 0; i < XLNX_ZYNQMP_PMU_NUM_IPIS; i++) { + char *name = g_strdup_printf("ipi%d", i); + sysbus_init_child_obj(obj, name, &s->ipi[i], + sizeof(XlnxZynqMPIPI), TYPE_XLNX_ZYNQMP_IPI); + g_free(name); + } +} + +static void xlnx_zynqmp_pmu_soc_realize(DeviceState *dev, Error **errp) +{ + XlnxZynqMPPMUSoCState *s = XLNX_ZYNQMP_PMU_SOC(dev); + Error *err = NULL; + + object_property_set_bool(OBJECT(&s->cpu), true, "realized", &err); + if (err) { + error_propagate(errp, err); + return; + } + object_property_set_bool(OBJECT(&s->intc), true, "realized", &err); if (err) { error_propagate(errp, err); -- 2.21.1
next prev parent reply other threads:[~2020-04-12 22:44 UTC|newest] Thread overview: 98+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-04-12 22:35 [PATCH-for-5.1 v3 00/24] various: Fix error-propagation with Coccinelle scripts (part 1) Philippe Mathieu-Daudé 2020-04-12 22:35 ` Philippe Mathieu-Daudé 2020-04-12 22:35 ` [PATCH-for-5.1 v3 01/24] various: Remove suspicious '\' character outside of #define in C code Philippe Mathieu-Daudé 2020-04-12 22:35 ` Philippe Mathieu-Daudé 2020-04-13 15:56 ` Alistair Francis 2020-04-13 15:56 ` Alistair Francis 2020-04-14 2:08 ` David Gibson 2020-04-14 2:08 ` David Gibson 2020-04-29 6:03 ` Markus Armbruster 2020-04-29 6:03 ` Markus Armbruster 2020-04-12 22:35 ` [PATCH-for-5.1 v3 02/24] scripts/coccinelle: Script to simplify DeviceClass error propagation Philippe Mathieu-Daudé 2020-04-12 22:35 ` Philippe Mathieu-Daudé 2020-04-14 12:24 ` Markus Armbruster 2020-04-14 12:24 ` Markus Armbruster 2020-04-14 12:30 ` Philippe Mathieu-Daudé 2020-04-14 12:30 ` Philippe Mathieu-Daudé 2020-04-14 13:17 ` Markus Armbruster 2020-04-14 13:17 ` Markus Armbruster 2020-04-15 6:16 ` Philippe Mathieu-Daudé 2020-04-15 6:16 ` Philippe Mathieu-Daudé 2020-04-12 22:35 ` [PATCH-for-5.1 v3 03/24] hw/arm/allwinner-a10: Move some code from realize() to init() Philippe Mathieu-Daudé 2020-04-12 22:35 ` Philippe Mathieu-Daudé 2020-04-13 21:02 ` Philippe Mathieu-Daudé 2020-04-13 21:02 ` Philippe Mathieu-Daudé 2020-04-12 22:35 ` [PATCH-for-5.1 v3 04/24] hw/arm/aspeed_ast2600: Simplify use of Error* Philippe Mathieu-Daudé 2020-04-12 22:35 ` Philippe Mathieu-Daudé 2020-04-12 22:36 ` [PATCH-for-5.1 v3 05/24] hw/arm/aspeed_ast2600: Move some code from realize() to init() Philippe Mathieu-Daudé 2020-04-12 22:36 ` Philippe Mathieu-Daudé 2020-04-15 7:50 ` Cédric Le Goater 2020-04-15 7:50 ` Cédric Le Goater 2020-04-12 22:36 ` [PATCH-for-5.1 v3 06/24] hw/arm/aspeed_soc: " Philippe Mathieu-Daudé 2020-04-12 22:36 ` Philippe Mathieu-Daudé 2020-04-12 22:36 ` [PATCH-for-5.1 v3 07/24] hw/arm/aspeed_soc: Simplify use of Error* Philippe Mathieu-Daudé 2020-04-12 22:36 ` Philippe Mathieu-Daudé 2020-04-12 22:36 ` [PATCH-for-5.1 v3 08/24] hw/arm/fsl-imx6: Simplify checks on 'smp_cpus' count Philippe Mathieu-Daudé 2020-04-12 22:36 ` Philippe Mathieu-Daudé 2020-04-12 22:36 ` [PATCH-for-5.1 v3 09/24] hw/arm/fsl-imx6: Move some code from realize() to init() Philippe Mathieu-Daudé 2020-04-12 22:36 ` Philippe Mathieu-Daudé 2020-04-12 22:36 ` [PATCH-for-5.1 v3 10/24] hw/arm/fsl-imx31: " Philippe Mathieu-Daudé 2020-04-12 22:36 ` Philippe Mathieu-Daudé 2020-04-12 22:36 ` [PATCH-for-5.1 v3 11/24] hw/arm/msf2-soc: Store MemoryRegion in MSF2State Philippe Mathieu-Daudé 2020-04-12 22:36 ` Philippe Mathieu-Daudé 2020-04-13 21:59 ` Alistair Francis 2020-04-13 21:59 ` Alistair Francis 2020-04-12 22:36 ` [PATCH-for-5.1 v3 12/24] hw/arm/stm32f205_soc: Store MemoryRegion in STM32F205State Philippe Mathieu-Daudé 2020-04-12 22:36 ` Philippe Mathieu-Daudé 2020-04-13 22:00 ` Alistair Francis 2020-04-13 22:00 ` Alistair Francis 2020-04-12 22:36 ` [PATCH-for-5.1 v3 13/24] hw/arm/stm32f205_soc: Move some code from realize() to init() Philippe Mathieu-Daudé 2020-04-12 22:36 ` Philippe Mathieu-Daudé 2020-04-13 22:02 ` Alistair Francis 2020-04-13 22:02 ` Alistair Francis 2020-04-12 22:36 ` [PATCH-for-5.1 v3 14/24] hw/arm/xlnx-zynqmp: Use single propagate_error() call Philippe Mathieu-Daudé 2020-04-12 22:36 ` Philippe Mathieu-Daudé 2020-04-13 22:05 ` Alistair Francis 2020-04-13 22:05 ` Alistair Francis 2020-04-12 22:36 ` [PATCH-for-5.1 v3 15/24] hw/arm/xlnx-zynqmp: Split xlnx_zynqmp_create_rpu() as init + realize Philippe Mathieu-Daudé 2020-04-12 22:36 ` Philippe Mathieu-Daudé 2020-04-12 22:36 ` [PATCH-for-5.1 v3 16/24] hw/arm/xlnx-zynqmp: Move some code from realize() to init() Philippe Mathieu-Daudé 2020-04-12 22:36 ` Philippe Mathieu-Daudé 2020-04-13 22:06 ` Alistair Francis 2020-04-13 22:06 ` Alistair Francis 2020-04-12 22:36 ` Philippe Mathieu-Daudé [this message] 2020-04-12 22:36 ` [PATCH-for-5.1 v3 17/24] hw/microblaze/xlnx-zynqmp-pmu: " Philippe Mathieu-Daudé 2020-04-13 22:19 ` Alistair Francis 2020-04-13 22:19 ` Alistair Francis 2020-04-12 22:36 ` [PATCH-for-5.1 v3 18/24] hw/pci-host/pnv_phb3: " Philippe Mathieu-Daudé 2020-04-12 22:36 ` Philippe Mathieu-Daudé 2020-04-14 2:10 ` David Gibson 2020-04-14 2:10 ` David Gibson 2020-04-15 7:51 ` Cédric Le Goater 2020-04-15 7:51 ` Cédric Le Goater 2020-04-12 22:36 ` [PATCH-for-5.1 v3 19/24] hw/riscv/sifive_e: " Philippe Mathieu-Daudé 2020-04-12 22:36 ` Philippe Mathieu-Daudé 2020-04-13 22:20 ` Alistair Francis 2020-04-13 22:20 ` Alistair Francis 2020-04-12 22:36 ` [PATCH-for-5.1 v3 20/24] hw/riscv/sifive_u: Use single type_init() Philippe Mathieu-Daudé 2020-04-12 22:36 ` Philippe Mathieu-Daudé 2020-04-13 22:10 ` Alistair Francis 2020-04-13 22:10 ` Alistair Francis 2020-04-12 22:36 ` [PATCH-for-5.1 v3 21/24] hw/riscv/sifive_u: Move some code from realize() to init() Philippe Mathieu-Daudé 2020-04-12 22:36 ` Philippe Mathieu-Daudé 2020-04-13 22:16 ` Alistair Francis 2020-04-13 22:16 ` Alistair Francis 2020-04-12 22:36 ` [PATCH-for-5.1 v3 22/24] hw/riscv/sifive_u: Store MemoryRegion in SiFiveUSoCState Philippe Mathieu-Daudé 2020-04-12 22:36 ` Philippe Mathieu-Daudé 2020-04-13 22:14 ` Alistair Francis 2020-04-13 22:14 ` Alistair Francis 2020-04-12 22:36 ` [PATCH-for-5.1 v3 23/24] hw/riscv/sifive_u: Move some code from realize() to init() Philippe Mathieu-Daudé 2020-04-12 22:36 ` Philippe Mathieu-Daudé 2020-04-13 22:15 ` Alistair Francis 2020-04-13 22:15 ` Alistair Francis 2020-04-12 22:36 ` [PATCH-for-5.1 v3 24/24] hw/riscv/sifive_u: Rename MachineClass::init() Philippe Mathieu-Daudé 2020-04-12 22:36 ` Philippe Mathieu-Daudé 2020-04-13 22:14 ` Alistair Francis 2020-04-13 22:14 ` Alistair Francis 2020-04-13 0:39 ` [PATCH-for-5.1 v3 00/24] various: Fix error-propagation with Coccinelle scripts (part 1) no-reply 2020-04-13 0:39 ` no-reply
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20200412223619.11284-18-f4bug@amsat.org \ --to=f4bug@amsat.org \ --cc=Alistair.Francis@wdc.com \ --cc=alistair@alistair23.me \ --cc=andrew@aj.id.au \ --cc=armbru@redhat.com \ --cc=b.galvani@gmail.com \ --cc=clg@kaod.org \ --cc=codyprime@gmail.com \ --cc=david@gibson.dropbear.id.au \ --cc=edgar.iglesias@gmail.com \ --cc=ehabkost@redhat.com \ --cc=fam@euphon.net \ --cc=jasowang@redhat.com \ --cc=jcd@tribudubois.net \ --cc=joel@jms.id.au \ --cc=kbastian@mail.uni-paderborn.de \ --cc=kwolf@redhat.com \ --cc=marcandre.lureau@redhat.com \ --cc=mreitz@redhat.com \ --cc=mst@redhat.com \ --cc=palmer@dabbelt.com \ --cc=pbonzini@redhat.com \ --cc=peter.chubb@nicta.com.au \ --cc=peter.maydell@linaro.org \ --cc=philmd@redhat.com \ --cc=qemu-arm@nongnu.org \ --cc=qemu-block@nongnu.org \ --cc=qemu-devel@nongnu.org \ --cc=qemu-ppc@nongnu.org \ --cc=qemu-riscv@nongnu.org \ --cc=rth@twiddle.net \ --cc=sagark@eecs.berkeley.edu \ --cc=sundeep.lkml@gmail.com \ --cc=wencongyang2@huawei.com \ --cc=xiechanglong.d@gmail.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.