aspeed/fby35: Fix owner of the BMC RAM memory region
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: 778e14cc5c
("aspeed: Add AST2600 (BMC) to fby35")
Reviewed-by: Peter Delevoryas <peter@pjd.dev>
Message-Id: <20220727102714.803041-3-clg@kaod.org>
Signed-off-by: Cédric Le Goater <clg@kaod.org>
This commit is contained in:
parent
3867c1c5fd
commit
398c01da9c
@ -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);
|
||||
|
Loading…
Reference in New Issue
Block a user