Re: [PATCH v2 7/8] aspeed: Make aspeed_board_init_flashes public
On 6/24/22 02:37, Peter Delevoryas wrote: Signed-off-by: Peter Delevoryas Reviewed-by: Cédric Le Goater Thanks, C. --- hw/arm/aspeed.c | 25 - hw/arm/aspeed_soc.c | 26 ++ include/hw/arm/aspeed_soc.h | 2 ++ 3 files changed, 28 insertions(+), 25 deletions(-) diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c index b43dc0fda8..a7352ca837 100644 --- a/hw/arm/aspeed.c +++ b/hw/arm/aspeed.c @@ -257,31 +257,6 @@ static void write_boot_rom(DriveInfo *dinfo, hwaddr addr, size_t rom_size, rom_add_blob_fixed("aspeed.boot_rom", storage, rom_size, addr); } -static void aspeed_board_init_flashes(AspeedSMCState *s, const char *flashtype, - unsigned int count, int unit0) -{ -int i; - -if (!flashtype) { -return; -} - -for (i = 0; i < count; ++i) { -DriveInfo *dinfo = drive_get(IF_MTD, 0, unit0 + i); -qemu_irq cs_line; -DeviceState *dev; - -dev = qdev_new(flashtype); -if (dinfo) { -qdev_prop_set_drive(dev, "drive", blk_by_legacy_dinfo(dinfo)); -} -qdev_realize_and_unref(dev, BUS(s->spi), _fatal); - -cs_line = qdev_get_gpio_in_named(dev, SSI_GPIO_CS, 0); -sysbus_connect_irq(SYS_BUS_DEVICE(s), i + 1, cs_line); -} -} - static void sdhci_attach_drive(SDHCIState *sdhci, DriveInfo *dinfo) { DeviceState *card; diff --git a/hw/arm/aspeed_soc.c b/hw/arm/aspeed_soc.c index 16394c8e0b..4183f5ffbf 100644 --- a/hw/arm/aspeed_soc.c +++ b/hw/arm/aspeed_soc.c @@ -21,6 +21,7 @@ #include "hw/i2c/aspeed_i2c.h" #include "net/net.h" #include "sysemu/sysemu.h" +#include "sysemu/blockdev.h" #define ASPEED_SOC_IOMEM_SIZE 0x0020 @@ -626,3 +627,28 @@ void aspeed_mmio_map_unimplemented(AspeedSoCState *s, SysBusDevice *dev, memory_region_add_subregion_overlap(s->memory, addr, sysbus_mmio_get_region(dev, 0), -1000); } + +void aspeed_board_init_flashes(AspeedSMCState *s, const char *flashtype, + unsigned int count, int unit0) +{ +int i; + +if (!flashtype) { +return; +} + +for (i = 0; i < count; ++i) { +DriveInfo *dinfo = drive_get(IF_MTD, 0, unit0 + i); +qemu_irq cs_line; +DeviceState *dev; + +dev = qdev_new(flashtype); +if (dinfo) { +qdev_prop_set_drive(dev, "drive", blk_by_legacy_dinfo(dinfo)); +} +qdev_realize_and_unref(dev, BUS(s->spi), _fatal); + +cs_line = qdev_get_gpio_in_named(dev, SSI_GPIO_CS, 0); +sysbus_connect_irq(SYS_BUS_DEVICE(s), i + 1, cs_line); +} +} diff --git a/include/hw/arm/aspeed_soc.h b/include/hw/arm/aspeed_soc.h index 6cfc063985..5cd31c1306 100644 --- a/include/hw/arm/aspeed_soc.h +++ b/include/hw/arm/aspeed_soc.h @@ -178,5 +178,7 @@ void aspeed_mmio_map(AspeedSoCState *s, SysBusDevice *dev, int n, hwaddr addr); void aspeed_mmio_map_unimplemented(AspeedSoCState *s, SysBusDevice *dev, const char *name, hwaddr addr, uint64_t size); +void aspeed_board_init_flashes(AspeedSMCState *s, const char *flashtype, + unsigned int count, int unit0); #endif /* ASPEED_SOC_H */
[PATCH v2 7/8] aspeed: Make aspeed_board_init_flashes public
Signed-off-by: Peter Delevoryas --- hw/arm/aspeed.c | 25 - hw/arm/aspeed_soc.c | 26 ++ include/hw/arm/aspeed_soc.h | 2 ++ 3 files changed, 28 insertions(+), 25 deletions(-) diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c index b43dc0fda8..a7352ca837 100644 --- a/hw/arm/aspeed.c +++ b/hw/arm/aspeed.c @@ -257,31 +257,6 @@ static void write_boot_rom(DriveInfo *dinfo, hwaddr addr, size_t rom_size, rom_add_blob_fixed("aspeed.boot_rom", storage, rom_size, addr); } -static void aspeed_board_init_flashes(AspeedSMCState *s, const char *flashtype, - unsigned int count, int unit0) -{ -int i; - -if (!flashtype) { -return; -} - -for (i = 0; i < count; ++i) { -DriveInfo *dinfo = drive_get(IF_MTD, 0, unit0 + i); -qemu_irq cs_line; -DeviceState *dev; - -dev = qdev_new(flashtype); -if (dinfo) { -qdev_prop_set_drive(dev, "drive", blk_by_legacy_dinfo(dinfo)); -} -qdev_realize_and_unref(dev, BUS(s->spi), _fatal); - -cs_line = qdev_get_gpio_in_named(dev, SSI_GPIO_CS, 0); -sysbus_connect_irq(SYS_BUS_DEVICE(s), i + 1, cs_line); -} -} - static void sdhci_attach_drive(SDHCIState *sdhci, DriveInfo *dinfo) { DeviceState *card; diff --git a/hw/arm/aspeed_soc.c b/hw/arm/aspeed_soc.c index 16394c8e0b..4183f5ffbf 100644 --- a/hw/arm/aspeed_soc.c +++ b/hw/arm/aspeed_soc.c @@ -21,6 +21,7 @@ #include "hw/i2c/aspeed_i2c.h" #include "net/net.h" #include "sysemu/sysemu.h" +#include "sysemu/blockdev.h" #define ASPEED_SOC_IOMEM_SIZE 0x0020 @@ -626,3 +627,28 @@ void aspeed_mmio_map_unimplemented(AspeedSoCState *s, SysBusDevice *dev, memory_region_add_subregion_overlap(s->memory, addr, sysbus_mmio_get_region(dev, 0), -1000); } + +void aspeed_board_init_flashes(AspeedSMCState *s, const char *flashtype, + unsigned int count, int unit0) +{ +int i; + +if (!flashtype) { +return; +} + +for (i = 0; i < count; ++i) { +DriveInfo *dinfo = drive_get(IF_MTD, 0, unit0 + i); +qemu_irq cs_line; +DeviceState *dev; + +dev = qdev_new(flashtype); +if (dinfo) { +qdev_prop_set_drive(dev, "drive", blk_by_legacy_dinfo(dinfo)); +} +qdev_realize_and_unref(dev, BUS(s->spi), _fatal); + +cs_line = qdev_get_gpio_in_named(dev, SSI_GPIO_CS, 0); +sysbus_connect_irq(SYS_BUS_DEVICE(s), i + 1, cs_line); +} +} diff --git a/include/hw/arm/aspeed_soc.h b/include/hw/arm/aspeed_soc.h index 6cfc063985..5cd31c1306 100644 --- a/include/hw/arm/aspeed_soc.h +++ b/include/hw/arm/aspeed_soc.h @@ -178,5 +178,7 @@ void aspeed_mmio_map(AspeedSoCState *s, SysBusDevice *dev, int n, hwaddr addr); void aspeed_mmio_map_unimplemented(AspeedSoCState *s, SysBusDevice *dev, const char *name, hwaddr addr, uint64_t size); +void aspeed_board_init_flashes(AspeedSMCState *s, const char *flashtype, + unsigned int count, int unit0); #endif /* ASPEED_SOC_H */ -- 2.30.2