[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 05/12] aspeed/smc: Remove the 'flash' attribute from AspeedSMC
From: |
Cédric Le Goater |
Subject: |
[PATCH v2 05/12] aspeed/smc: Remove the 'flash' attribute from AspeedSMCFlash |
Date: |
Mon, 20 Sep 2021 18:23:02 +0200 |
There is no need to keep a reference of the flash qdev in the AspeedSMCFlash
state: the SPI bus takes ownership and will release its resources. Remove
AspeedSMCFlash::flash.
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Cédric Le Goater <clg@kaod.org>
---
include/hw/ssi/aspeed_smc.h | 1 -
hw/arm/aspeed.c | 11 +++++------
2 files changed, 5 insertions(+), 7 deletions(-)
diff --git a/include/hw/ssi/aspeed_smc.h b/include/hw/ssi/aspeed_smc.h
index 0ea536a44c3a..f32f66f9a838 100644
--- a/include/hw/ssi/aspeed_smc.h
+++ b/include/hw/ssi/aspeed_smc.h
@@ -37,7 +37,6 @@ typedef struct AspeedSMCFlash {
uint32_t size;
MemoryRegion mmio;
- DeviceState *flash;
} AspeedSMCFlash;
#define TYPE_ASPEED_SMC "aspeed.smc"
diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c
index ba5f1dc5af78..854413594d9e 100644
--- a/hw/arm/aspeed.c
+++ b/hw/arm/aspeed.c
@@ -274,18 +274,17 @@ static void aspeed_board_init_flashes(AspeedSMCState *s,
int i ;
for (i = 0; i < s->num_cs; ++i) {
- AspeedSMCFlash *fl = &s->flashes[i];
DriveInfo *dinfo = drive_get_next(IF_MTD);
qemu_irq cs_line;
+ DeviceState *dev;
- fl->flash = qdev_new(flashtype);
+ dev = qdev_new(flashtype);
if (dinfo) {
- qdev_prop_set_drive(fl->flash, "drive",
- blk_by_legacy_dinfo(dinfo));
+ qdev_prop_set_drive(dev, "drive", blk_by_legacy_dinfo(dinfo));
}
- qdev_realize_and_unref(fl->flash, BUS(s->spi), &error_fatal);
+ qdev_realize_and_unref(dev, BUS(s->spi), &error_fatal);
- cs_line = qdev_get_gpio_in_named(fl->flash, SSI_GPIO_CS, 0);
+ cs_line = qdev_get_gpio_in_named(dev, SSI_GPIO_CS, 0);
sysbus_connect_irq(SYS_BUS_DEVICE(s), i + 1, cs_line);
}
}
--
2.31.1
- [PATCH v2 00/12] aspeed: SMC cleanups and QOMification, Cédric Le Goater, 2021/09/20
- [PATCH v2 01/12] aspeed/smc: Add watchdog Control/Status Registers, Cédric Le Goater, 2021/09/20
- [PATCH v2 03/12] aspeed/smc: Stop using the model name for the memory regions, Cédric Le Goater, 2021/09/20
- [PATCH v2 02/12] aspeed/smc: Introduce aspeed_smc_error() helper, Cédric Le Goater, 2021/09/20
- [PATCH v2 05/12] aspeed/smc: Remove the 'flash' attribute from AspeedSMCFlash,
Cédric Le Goater <=
- [PATCH v2 10/12] aspeed/smc: Introduce a new addr_width() class handler, Cédric Le Goater, 2021/09/20
- [PATCH v2 04/12] aspeed/smc: Drop AspeedSMCController structure, Cédric Le Goater, 2021/09/20
- [PATCH v2 09/12] aspeed/smc: Add default reset values, Cédric Le Goater, 2021/09/20
- [PATCH v2 06/12] aspeed/smc: Remove the 'size' attribute from AspeedSMCFlash, Cédric Le Goater, 2021/09/20
- [PATCH v2 12/12] aspeed/i2c: QOMify AspeedI2CBus, Cédric Le Goater, 2021/09/20
- [PATCH v2 11/12] aspeed/smc: Remove unused attribute 'irqline', Cédric Le Goater, 2021/09/20
- [PATCH v2 07/12] aspeed/smc: Rename AspeedSMCFlash 'id' to 'cs', Cédric Le Goater, 2021/09/20
- [PATCH v2 08/12] aspeed/smc: QOMify AspeedSMCFlash, Cédric Le Goater, 2021/09/20