|
@@ -1176,6 +1176,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);
|
|
@@ -1183,6 +1206,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)
|