[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 4/5] aspeed/smc: Use a container for the flash mmio address sp
From: |
Cédric Le Goater |
Subject: |
[PATCH v2 4/5] aspeed/smc: Use a container for the flash mmio address space |
Date: |
Mon, 18 Oct 2021 15:26:08 +0200 |
Because AddressSpaces must not be sysbus-mapped, commit e9c568dbc225
("hw/arm/aspeed: Do not sysbus-map mmio flash region directly, use
alias") introduced an alias for the flash mmio region.
Using a container is cleaner.
Cc: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Cédric Le Goater <clg@kaod.org>
---
include/hw/ssi/aspeed_smc.h | 2 +-
hw/ssi/aspeed_smc.c | 11 +++++++----
2 files changed, 8 insertions(+), 5 deletions(-)
diff --git a/include/hw/ssi/aspeed_smc.h b/include/hw/ssi/aspeed_smc.h
index ad3c80f2d809..61d23ec1f13e 100644
--- a/include/hw/ssi/aspeed_smc.h
+++ b/include/hw/ssi/aspeed_smc.h
@@ -52,8 +52,8 @@ struct AspeedSMCState {
SysBusDevice parent_obj;
MemoryRegion mmio;
+ MemoryRegion mmio_flash_container;
MemoryRegion mmio_flash;
- MemoryRegion mmio_flash_alias;
qemu_irq irq;
diff --git a/hw/ssi/aspeed_smc.c b/hw/ssi/aspeed_smc.c
index 1770985230b0..d4f03881ddf5 100644
--- a/hw/ssi/aspeed_smc.c
+++ b/hw/ssi/aspeed_smc.c
@@ -1218,14 +1218,17 @@ static void aspeed_smc_realize(DeviceState *dev, Error
**errp)
* window in which the flash modules are mapped. The size and
* address depends on the SoC model and controller type.
*/
+ memory_region_init(&s->mmio_flash_container, OBJECT(s),
+ TYPE_ASPEED_SMC ".container",
+ asc->flash_window_size);
+ sysbus_init_mmio(sbd, &s->mmio_flash_container);
+
memory_region_init_io(&s->mmio_flash, OBJECT(s),
&aspeed_smc_flash_default_ops, s,
TYPE_ASPEED_SMC ".flash",
asc->flash_window_size);
- memory_region_init_alias(&s->mmio_flash_alias, OBJECT(s),
- TYPE_ASPEED_SMC ".flash",
- &s->mmio_flash, 0, asc->flash_window_size);
- sysbus_init_mmio(sbd, &s->mmio_flash_alias);
+ memory_region_add_subregion(&s->mmio_flash_container, 0x0,
+ &s->mmio_flash);
/*
* Let's create a sub memory region for each possible peripheral. All
--
2.31.1
- [PATCH v2 0/5] aspeed/smc: Improve support for the alternate boot function, Cédric Le Goater, 2021/10/18
- [PATCH v2 1/5] aspeed/wdt: Introduce a container for the MMIO region, Cédric Le Goater, 2021/10/18
- [PATCH v2 4/5] aspeed/smc: Use a container for the flash mmio address space,
Cédric Le Goater <=
- [PATCH v2 2/5] aspeed: Initialize the watchdog device models before the FMC models, Cédric Le Goater, 2021/10/18
- [PATCH v2 5/5] speed/sdhci: Add trace events, Cédric Le Goater, 2021/10/18
- [PATCH v2 3/5] aspeed/smc: Improve support for the alternate boot function, Cédric Le Goater, 2021/10/18
- Re: [PATCH v2 0/5] aspeed/smc: Improve support for the alternate boot function, Peter Delevoryas, 2021/10/20