@samitouri / QOSamiQemu / commits / 49ec283f15

hw/arm: catalina: model PCA9555 IO expanders with their own type

The Catalina BMC device tree describes several IO expanders as nxp,pca9555. These were previously instantiated as PCA9552 devices as no PCA9555 model existed. Now that a dedicated PCA9555 device is available, use it so the emulated IO expanders match the hardware. Signed-off-by: Emmanuel Blot <emmanuel.blot@free.fr> Reviewed-by: Cédric Le Goater <clg@redhat.com> Link: https://lore.kernel.org/qemu-devel/20260709-catalina-upgrade-v1-24-82a63fead90c@free.fr Signed-off-by: Cédric Le Goater <clg@redhat.com>

Emmanuel Blot committed Jul 9, 2026 at 17:23 UTC 49ec283f15868eae0094f94844db9c5a171c7592
1 file changed +12 -12
hw/arm/aspeed_ast2600_catalina.c
+12 -12
@@ -533,7 +533,7 @@ static void catalina_bmc_i2c_init(AspeedMachineState *bmc)
533 TYPE_PCA9554, 0x27);
534 /* io_expander6 - pca9555@25 */
535 i2c_slave_create_simple(pca954x_i2c_get_bus(i2c_mux, 6),
536 - TYPE_PCA9552, 0x25);
536 + TYPE_PCA9555, 0x25);
537 /* eeprom@51 */
538 at24c_eeprom_init_rom(pca954x_i2c_get_bus(i2c_mux, 6), 0x51, 8 * KiB,
539 osfp_eeprom, osfp_eeprom_len);
@@ -547,11 +547,11 @@ static void catalina_bmc_i2c_init(AspeedMachineState *bmc)
547
548 /* &i2c2 */
549 /* io_expander0 - pca9555@20 */
550 - i2c_slave_create_simple(i2c[2], TYPE_PCA9552, 0x20);
550 + i2c_slave_create_simple(i2c[2], TYPE_PCA9555, 0x20);
551 /* io_expander0 - pca9555@21 */
552 - i2c_slave_create_simple(i2c[2], TYPE_PCA9552, 0x21);
552 + i2c_slave_create_simple(i2c[2], TYPE_PCA9555, 0x21);
553 /* io_expander0 - pca9555@27 */
554 - i2c_slave_create_simple(i2c[2], TYPE_PCA9552, 0x27);
554 + i2c_slave_create_simple(i2c[2], TYPE_PCA9555, 0x27);
555 /* eeprom@50 */
556 at24c_eeprom_init(i2c[2], 0x50, 8 * KiB);
557 /* eeprom@51 */
@@ -572,13 +572,13 @@ static void catalina_bmc_i2c_init(AspeedMachineState *bmc)
572
573 /* &i2c6 */
574 /* io_expander3 - pca9555@21 */
575 - i2c_slave_create_simple(i2c[6], TYPE_PCA9552, 0x21);
575 + i2c_slave_create_simple(i2c[6], TYPE_PCA9555, 0x21);
576 /* rtc@6f - nct3018y */
577 i2c_slave_create_simple(i2c[6], TYPE_DS1338, 0x6f);
578
579 /* &i2c9 */
580 /* io_expander4 - pca9555@4f */
581 - i2c_slave_create_simple(i2c[9], TYPE_PCA9552, 0x4f);
581 + i2c_slave_create_simple(i2c[9], TYPE_PCA9555, 0x4f);
582 /* temperature-sensor@4b - tpm75 */
583 i2c_slave_create_simple(i2c[9], TYPE_TMP75, 0x4b);
584 /* eeprom@50 */
@@ -615,17 +615,17 @@ static void catalina_bmc_i2c_init(AspeedMachineState *bmc)
615
616 /* &i2c14 */
617 /* io_expander9 - pca9555@10 */
618 - i2c_slave_create_simple(i2c[14], TYPE_PCA9552, 0x10);
618 + i2c_slave_create_simple(i2c[14], TYPE_PCA9555, 0x10);
619 /* io_expander10 - pca9555@11 */
620 - i2c_slave_create_simple(i2c[14], TYPE_PCA9552, 0x11);
620 + i2c_slave_create_simple(i2c[14], TYPE_PCA9555, 0x11);
621 /* io_expander11 - pca9555@12 */
622 - i2c_slave_create_simple(i2c[14], TYPE_PCA9552, 0x12);
622 + i2c_slave_create_simple(i2c[14], TYPE_PCA9555, 0x12);
623 /* io_expander12 - pca9555@13 */
624 - i2c_slave_create_simple(i2c[14], TYPE_PCA9552, 0x13);
624 + i2c_slave_create_simple(i2c[14], TYPE_PCA9555, 0x13);
625 /* io_expander13 - pca9555@14 */
626 - i2c_slave_create_simple(i2c[14], TYPE_PCA9552, 0x14);
626 + i2c_slave_create_simple(i2c[14], TYPE_PCA9555, 0x14);
627 /* io_expander14 - pca9555@15 */
628 - i2c_slave_create_simple(i2c[14], TYPE_PCA9552, 0x15);
628 + i2c_slave_create_simple(i2c[14], TYPE_PCA9555, 0x15);
629
630 /* &i2c15 */
631 /* temperature-sensor@1f - tmp421 */