On Mon, 6 Jun 2022 at 15:09, Cédric Le Goater <c...@kaod.org> wrote: > > Based on : > https://lists.nongnu.org/archive/html/qemu-devel/2022-03/msg06017.html
Perhaps use the link to lore (which also includes the message id): https://lore.kernel.org/qemu-devel/20220324100439.478317-2-troy_...@aspeedtech.com/ Reviewed-by: Joel Stanley <j...@jms.id.au> > > Cc: Troy Lee <troy_...@aspeedtech.com> > Cc: Jamin Lin <jamin_...@aspeedtech.com> > Cc: Steven Lee <steven_...@aspeedtech.com> > Signed-off-by: Cédric Le Goater <c...@kaod.org> > --- > include/hw/i2c/aspeed_i2c.h | 1 + > hw/i2c/aspeed_i2c.c | 24 ++++++++++++++++++++++++ > 2 files changed, 25 insertions(+) > > diff --git a/include/hw/i2c/aspeed_i2c.h b/include/hw/i2c/aspeed_i2c.h > index 506bcf1a9daf..79c6779c6c1e 100644 > --- a/include/hw/i2c/aspeed_i2c.h > +++ b/include/hw/i2c/aspeed_i2c.h > @@ -30,6 +30,7 @@ > #define TYPE_ASPEED_2400_I2C TYPE_ASPEED_I2C "-ast2400" > #define TYPE_ASPEED_2500_I2C TYPE_ASPEED_I2C "-ast2500" > #define TYPE_ASPEED_2600_I2C TYPE_ASPEED_I2C "-ast2600" > +#define TYPE_ASPEED_1030_I2C TYPE_ASPEED_I2C "-ast1030" > OBJECT_DECLARE_TYPE(AspeedI2CState, AspeedI2CClass, ASPEED_I2C) > > #define ASPEED_I2C_NR_BUSSES 16 > diff --git a/hw/i2c/aspeed_i2c.c b/hw/i2c/aspeed_i2c.c > index 8425e928890a..5fce516517a5 100644 > --- a/hw/i2c/aspeed_i2c.c > +++ b/hw/i2c/aspeed_i2c.c > @@ -1185,6 +1185,29 @@ static const TypeInfo aspeed_2600_i2c_info = { > .class_init = aspeed_2600_i2c_class_init, > }; > > +static void aspeed_1030_i2c_class_init(ObjectClass *klass, void *data) > +{ > + DeviceClass *dc = DEVICE_CLASS(klass); > + AspeedI2CClass *aic = ASPEED_I2C_CLASS(klass); > + > + dc->desc = "ASPEED 1030 I2C Controller"; > + > + aic->num_busses = 14; > + aic->reg_size = 0x80; > + aic->gap = -1; /* no gap */ > + aic->bus_get_irq = aspeed_2600_i2c_bus_get_irq; > + aic->pool_size = 0x200; > + aic->pool_base = 0xC00; > + aic->bus_pool_base = aspeed_2600_i2c_bus_pool_base; > + aic->has_dma = true; > +} > + > +static const TypeInfo aspeed_1030_i2c_info = { > + .name = TYPE_ASPEED_1030_I2C, > + .parent = TYPE_ASPEED_I2C, > + .class_init = aspeed_1030_i2c_class_init, > +}; > + > static void aspeed_i2c_register_types(void) > { > type_register_static(&aspeed_i2c_bus_info); > @@ -1192,6 +1215,7 @@ static void aspeed_i2c_register_types(void) > type_register_static(&aspeed_2400_i2c_info); > type_register_static(&aspeed_2500_i2c_info); > type_register_static(&aspeed_2600_i2c_info); > + type_register_static(&aspeed_1030_i2c_info); > } > > type_init(aspeed_i2c_register_types) > -- > 2.35.3 >