diff options
author | Cédric Le Goater <clg@kaod.org> | 2021-05-01 10:03:52 +0200 |
---|---|---|
committer | Cédric Le Goater <clg@kaod.org> | 2021-05-01 10:03:52 +0200 |
commit | 8efbee28f4729f16cae5cbf93a029bfa55198fc2 (patch) | |
tree | 4a761c405160178414222fc663ba44cbe3a8865d /hw/arm | |
parent | 224f010ba81ff25c972c33c1e13d79c85ed40e35 (diff) | |
download | qemu-8efbee28f4729f16cae5cbf93a029bfa55198fc2.zip qemu-8efbee28f4729f16cae5cbf93a029bfa55198fc2.tar.gz qemu-8efbee28f4729f16cae5cbf93a029bfa55198fc2.tar.bz2 |
hw/misc/aspeed_xdma: Add AST2600 support
When we introduced support for the AST2600 SoC, the XDMA controller
was forgotten. It went unnoticed because it's not used under emulation.
But the register layout being different, the reset procedure is bogus
and this breaks kexec.
Add a AspeedXDMAClass to take into account the register differences.
Cc: Eddie James <eajames@linux.ibm.com>
Signed-off-by: Cédric Le Goater <clg@kaod.org>
Reviewed-by: Eddie James <eajames@linux.ibm.com>
Message-Id: <20210407171637.777743-14-clg@kaod.org>
Signed-off-by: Cédric Le Goater <clg@kaod.org>
Diffstat (limited to 'hw/arm')
-rw-r--r-- | hw/arm/aspeed_ast2600.c | 3 | ||||
-rw-r--r-- | hw/arm/aspeed_soc.c | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/hw/arm/aspeed_ast2600.c b/hw/arm/aspeed_ast2600.c index e0fbb02..c60824b 100644 --- a/hw/arm/aspeed_ast2600.c +++ b/hw/arm/aspeed_ast2600.c @@ -187,7 +187,8 @@ static void aspeed_soc_ast2600_init(Object *obj) object_initialize_child(obj, "mii[*]", &s->mii[i], TYPE_ASPEED_MII); } - object_initialize_child(obj, "xdma", &s->xdma, TYPE_ASPEED_XDMA); + snprintf(typename, sizeof(typename), TYPE_ASPEED_XDMA "-%s", socname); + object_initialize_child(obj, "xdma", &s->xdma, typename); snprintf(typename, sizeof(typename), "aspeed.gpio-%s", socname); object_initialize_child(obj, "gpio", &s->gpio, typename); diff --git a/hw/arm/aspeed_soc.c b/hw/arm/aspeed_soc.c index 8ed2911..4a95d27 100644 --- a/hw/arm/aspeed_soc.c +++ b/hw/arm/aspeed_soc.c @@ -199,7 +199,8 @@ static void aspeed_soc_init(Object *obj) TYPE_FTGMAC100); } - object_initialize_child(obj, "xdma", &s->xdma, TYPE_ASPEED_XDMA); + snprintf(typename, sizeof(typename), TYPE_ASPEED_XDMA "-%s", socname); + object_initialize_child(obj, "xdma", &s->xdma, typename); snprintf(typename, sizeof(typename), "aspeed.gpio-%s", socname); object_initialize_child(obj, "gpio", &s->gpio, typename); |