From: "Cédric Le Goater" <clg@kaod.org>
To: qemu-arm@nongnu.org, qemu-devel@nongnu.org
Cc: "Peter Maydell" <peter.maydell@linaro.org>,
"Andrew Jeffery" <andrew@aj.id.au>,
"Joel Stanley" <joel@jms.id.au>,
"Cédric Le Goater" <clg@kaod.org>,
"Peter Delevoryas" <peter@pjd.dev>
Subject: [PATCH for 7.1 2/2] aspeed/fby35: Fix owner of the BMC RAM memory region
Date: Wed, 27 Jul 2022 12:27:14 +0200 [thread overview]
Message-ID: <20220727102714.803041-3-clg@kaod.org> (raw)
In-Reply-To: <20220727102714.803041-1-clg@kaod.org>
A MachineState object is used as a owner of the RAM region and this
asserts in memory_region_init_ram() when QEMU is built with
CONFIG_QOM_CAST_DEBUG :
/* This will assert if owner is neither NULL nor a DeviceState.
* We only want the owner here for the purposes of defining a
* unique name for migration. TODO: Ideally we should implement
* a naming scheme for Objects which are not DeviceStates, in
* which case we can relax this restriction.
*/
owner_dev = DEVICE(owner);
Use the BMC and BIC objects as the owners of their memory regions.
Cc: Peter Delevoryas <peter@pjd.dev>
Fixes: 778e14cc5cd5 ("aspeed: Add AST2600 (BMC) to fby35")
Signed-off-by: Cédric Le Goater <clg@kaod.org>
---
hw/arm/fby35.c | 14 +++++++++-----
1 file changed, 9 insertions(+), 5 deletions(-)
diff --git a/hw/arm/fby35.c b/hw/arm/fby35.c
index 79605f306462..90c04bbc3389 100644
--- a/hw/arm/fby35.c
+++ b/hw/arm/fby35.c
@@ -72,11 +72,13 @@ static void fby35_bmc_init(Fby35State *s)
{
DriveInfo *drive0 = drive_get(IF_MTD, 0, 0);
- memory_region_init(&s->bmc_memory, OBJECT(s), "bmc-memory", UINT64_MAX);
- memory_region_init_ram(&s->bmc_dram, OBJECT(s), "bmc-dram",
+ object_initialize_child(OBJECT(s), "bmc", &s->bmc, "ast2600-a3");
+
+ memory_region_init(&s->bmc_memory, OBJECT(&s->bmc), "bmc-memory",
+ UINT64_MAX);
+ memory_region_init_ram(&s->bmc_dram, OBJECT(&s->bmc), "bmc-dram",
FBY35_BMC_RAM_SIZE, &error_abort);
- object_initialize_child(OBJECT(s), "bmc", &s->bmc, "ast2600-a3");
object_property_set_int(OBJECT(&s->bmc), "ram-size", FBY35_BMC_RAM_SIZE,
&error_abort);
object_property_set_link(OBJECT(&s->bmc), "memory", OBJECT(&s->bmc_memory),
@@ -120,9 +122,11 @@ static void fby35_bic_init(Fby35State *s)
s->bic_sysclk = clock_new(OBJECT(s), "SYSCLK");
clock_set_hz(s->bic_sysclk, 200000000ULL);
- memory_region_init(&s->bic_memory, OBJECT(s), "bic-memory", UINT64_MAX);
-
object_initialize_child(OBJECT(s), "bic", &s->bic, "ast1030-a1");
+
+ memory_region_init(&s->bic_memory, OBJECT(&s->bic), "bic-memory",
+ UINT64_MAX);
+
qdev_connect_clock_in(DEVICE(&s->bic), "sysclk", s->bic_sysclk);
object_property_set_link(OBJECT(&s->bic), "memory", OBJECT(&s->bic_memory),
&error_abort);
--
2.37.1
next prev parent reply other threads:[~2022-07-27 10:37 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-27 10:27 [PATCH for 7.1 0/2] aspeed: QOM fixes Cédric Le Goater
2022-07-27 10:27 ` [PATCH for 7.1 1/2] aspeed: Remove unused fields from AspeedMachineState Cédric Le Goater
2022-07-27 10:27 ` Cédric Le Goater [this message]
2022-07-27 18:11 ` [PATCH for 7.1 2/2] aspeed/fby35: Fix owner of the BMC RAM memory region Peter Delevoryas
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=20220727102714.803041-3-clg@kaod.org \
--to=clg@kaod.org \
--cc=andrew@aj.id.au \
--cc=joel@jms.id.au \
--cc=peter.maydell@linaro.org \
--cc=peter@pjd.dev \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.org \
/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: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).