Message ID | 20220307071856.1410731-2-clg@kaod.org |
---|---|
State | New |
Headers | show |
Series | aspeed/smc: 'num_cs' cleanup | expand |
On 7/3/22 08:18, Cédric Le Goater wrote: > The Aspeed SMC model uses the 'num_cs' field to allocate resources > fitting the number of devices of the machine. This is a small > optimization without real need in the controller. Simplify modelling > and use the max_peripherals field instead. "(which by the way is not very descriptive, but we are going to rename it to 'cs_num_max' in a pair of commits)." > > Signed-off-by: Cédric Le Goater <clg@kaod.org> > --- > hw/ssi/aspeed_smc.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
On Mon, Mar 7, 2022 at 5:43 PM Cédric Le Goater <clg@kaod.org> wrote: > > The Aspeed SMC model uses the 'num_cs' field to allocate resources > fitting the number of devices of the machine. This is a small > optimization without real need in the controller. Simplify modelling > and use the max_peripherals field instead. > > Signed-off-by: Cédric Le Goater <clg@kaod.org> Reviewed-by: Alistair Francis <alistair.francis@wdc.com> Alistair > --- > hw/ssi/aspeed_smc.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/hw/ssi/aspeed_smc.c b/hw/ssi/aspeed_smc.c > index d899be17fd71..a5d8bb717fc7 100644 > --- a/hw/ssi/aspeed_smc.c > +++ b/hw/ssi/aspeed_smc.c > @@ -693,7 +693,7 @@ static void aspeed_smc_reset(DeviceState *d) > } > > /* Unselect all peripherals */ > - for (i = 0; i < s->num_cs; ++i) { > + for (i = 0; i < asc->max_peripherals; ++i) { > s->regs[s->r_ctrl0 + i] |= CTRL_CE_STOP_ACTIVE; > qemu_set_irq(s->cs_lines[i], true); > } > @@ -1042,7 +1042,7 @@ static void aspeed_smc_write(void *opaque, hwaddr addr, uint64_t data, > addr < s->r_timings + asc->nregs_timings) || > addr == s->r_ce_ctrl) { > s->regs[addr] = value; > - } else if (addr >= s->r_ctrl0 && addr < s->r_ctrl0 + s->num_cs) { > + } else if (addr >= s->r_ctrl0 && addr < s->r_ctrl0 + asc->max_peripherals) { > int cs = addr - s->r_ctrl0; > aspeed_smc_flash_update_ctrl(&s->flashes[cs], value); > } else if (addr >= R_SEG_ADDR0 && > @@ -1139,9 +1139,9 @@ static void aspeed_smc_realize(DeviceState *dev, Error **errp) > s->spi = ssi_create_bus(dev, "spi"); > > /* Setup cs_lines for peripherals */ > - s->cs_lines = g_new0(qemu_irq, s->num_cs); > + s->cs_lines = g_new0(qemu_irq, asc->max_peripherals); > > - for (i = 0; i < s->num_cs; ++i) { > + for (i = 0; i < asc->max_peripherals; ++i) { > sysbus_init_irq(sbd, &s->cs_lines[i]); > } > > -- > 2.34.1 > >
diff --git a/hw/ssi/aspeed_smc.c b/hw/ssi/aspeed_smc.c index d899be17fd71..a5d8bb717fc7 100644 --- a/hw/ssi/aspeed_smc.c +++ b/hw/ssi/aspeed_smc.c @@ -693,7 +693,7 @@ static void aspeed_smc_reset(DeviceState *d) } /* Unselect all peripherals */ - for (i = 0; i < s->num_cs; ++i) { + for (i = 0; i < asc->max_peripherals; ++i) { s->regs[s->r_ctrl0 + i] |= CTRL_CE_STOP_ACTIVE; qemu_set_irq(s->cs_lines[i], true); } @@ -1042,7 +1042,7 @@ static void aspeed_smc_write(void *opaque, hwaddr addr, uint64_t data, addr < s->r_timings + asc->nregs_timings) || addr == s->r_ce_ctrl) { s->regs[addr] = value; - } else if (addr >= s->r_ctrl0 && addr < s->r_ctrl0 + s->num_cs) { + } else if (addr >= s->r_ctrl0 && addr < s->r_ctrl0 + asc->max_peripherals) { int cs = addr - s->r_ctrl0; aspeed_smc_flash_update_ctrl(&s->flashes[cs], value); } else if (addr >= R_SEG_ADDR0 && @@ -1139,9 +1139,9 @@ static void aspeed_smc_realize(DeviceState *dev, Error **errp) s->spi = ssi_create_bus(dev, "spi"); /* Setup cs_lines for peripherals */ - s->cs_lines = g_new0(qemu_irq, s->num_cs); + s->cs_lines = g_new0(qemu_irq, asc->max_peripherals); - for (i = 0; i < s->num_cs; ++i) { + for (i = 0; i < asc->max_peripherals; ++i) { sysbus_init_irq(sbd, &s->cs_lines[i]); }
The Aspeed SMC model uses the 'num_cs' field to allocate resources fitting the number of devices of the machine. This is a small optimization without real need in the controller. Simplify modelling and use the max_peripherals field instead. Signed-off-by: Cédric Le Goater <clg@kaod.org> --- hw/ssi/aspeed_smc.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)