From: Jamin Lin via <qemu-devel@nongnu.org>
To: "Cédric Le Goater" <clg@kaod.org>,
"Peter Maydell" <peter.maydell@linaro.org>,
"Steven Lee" <steven_lee@aspeedtech.com>,
"Troy Lee" <leetroy@gmail.com>,
"Andrew Jeffery" <andrew@codeconstruct.com.au>,
"Joel Stanley" <joel@jms.id.au>,
"open list:All patches CC here" <qemu-devel@nongnu.org>,
"open list:ASPEED BMCs" <qemu-arm@nongnu.org>
Cc: <jamin_lin@aspeedtech.com>, <troy_lee@aspeedtech.com>,
<kane_chen@aspeedtech.com>
Subject: [PATCH v4 04/30] hw/arm/aspeed: Rename and export create_pca9554() as aspeed_create_pca9554()
Date: Tue, 4 Nov 2025 11:12:42 +0800 [thread overview]
Message-ID: <20251104031325.146374-5-jamin_lin@aspeedtech.com> (raw)
In-Reply-To: <20251104031325.146374-1-jamin_lin@aspeedtech.com>
The helper function create_pca9554() has been renamed to
aspeed_create_pca9554() and made globally available.
Previously, the function was declared static inside aspeed.c, restricting
its visibility to that file. As more Aspeed machine implementations
require PCA9554 I2C expander setup, it makes sense to rename it with the
aspeed_ prefix and export its declaration in aspeed.h for shared use.
No functional changes.
Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com>
---
include/hw/arm/aspeed.h | 14 ++++++++++++++
hw/arm/aspeed.c | 8 ++++----
2 files changed, 18 insertions(+), 4 deletions(-)
diff --git a/include/hw/arm/aspeed.h b/include/hw/arm/aspeed.h
index 9b765295d9..16b24e6887 100644
--- a/include/hw/arm/aspeed.h
+++ b/include/hw/arm/aspeed.h
@@ -80,4 +80,18 @@ void aspeed_machine_class_init_cpus_defaults(MachineClass *mc);
*/
void aspeed_create_pca9552(AspeedSoCState *soc, int bus_id, int addr);
+/*
+ * aspeed_create_pca9554:
+ * @soc: pointer to the #AspeedSoCState.
+ * @bus_id: the I2C bus index to attach the device.
+ * @addr: the I2C address of the PCA9554 device.
+ *
+ * Create and attach a PCA9554 I/O expander to the specified I2C bus
+ * of the given Aspeed SoC. The device is created via
+ * i2c_slave_create_simple() and returned as an #I2CSlave pointer.
+ *
+ * Returns: a pointer to the newly created #I2CSlave instance.
+ */
+I2CSlave *aspeed_create_pca9554(AspeedSoCState *soc, int bus_id, int addr);
+
#endif
diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c
index c6f272d986..59416eb5ae 100644
--- a/hw/arm/aspeed.c
+++ b/hw/arm/aspeed.c
@@ -543,7 +543,7 @@ void aspeed_create_pca9552(AspeedSoCState *soc, int bus_id, int addr)
TYPE_PCA9552, addr);
}
-static I2CSlave *create_pca9554(AspeedSoCState *soc, int bus_id, int addr)
+I2CSlave *aspeed_create_pca9554(AspeedSoCState *soc, int bus_id, int addr)
{
return i2c_slave_create_simple(aspeed_i2c_get_bus(&soc->i2c, bus_id),
TYPE_PCA9554, addr);
@@ -1142,7 +1142,7 @@ static void gb200nvl_bmc_i2c_init(AspeedMachineState *bmc)
}
/* Bus 5 Expander */
- create_pca9554(soc, 4, 0x21);
+ aspeed_create_pca9554(soc, 4, 0x21);
/* Mux I2c Expanders */
i2c_slave_create_simple(i2c[5], "pca9546", 0x71);
@@ -1153,12 +1153,12 @@ static void gb200nvl_bmc_i2c_init(AspeedMachineState *bmc)
i2c_slave_create_simple(i2c[5], "pca9546", 0x77);
/* Bus 10 */
- dev = DEVICE(create_pca9554(soc, 9, 0x20));
+ dev = DEVICE(aspeed_create_pca9554(soc, 9, 0x20));
/* Set FPGA_READY */
object_property_set_str(OBJECT(dev), "pin1", "high", &error_fatal);
- create_pca9554(soc, 9, 0x21);
+ aspeed_create_pca9554(soc, 9, 0x21);
at24c_eeprom_init(i2c[9], 0x50, 64 * KiB);
at24c_eeprom_init(i2c[9], 0x51, 64 * KiB);
--
2.43.0
next prev parent reply other threads:[~2025-11-04 3:14 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-11-04 3:12 [PATCH v4 00/30] Split AST2400, AST2500, AST2600, AST2700 and AST1030 SoC machines into separate source files for maintainability Jamin Lin via
2025-11-04 3:12 ` [PATCH v4 01/30] hw/arm/aspeed: Move AspeedMachineState definition to common header for reuse Jamin Lin via
2025-11-04 3:12 ` [PATCH v4 02/30] hw/arm/aspeed: Make aspeed_machine_class_init_cpus_defaults() globally accessible Jamin Lin via
2025-11-04 3:12 ` [PATCH v4 03/30] hw/arm/aspeed: Export and rename create_pca9552() for reuse Jamin Lin via
2025-11-04 3:12 ` Jamin Lin via [this message]
2025-11-04 3:12 ` [PATCH v4 05/30] hw/arm/aspeed: Split FP5280G2 machine into a separate source file for maintenance Jamin Lin via
2025-11-04 3:12 ` [PATCH v4 06/30] hw/arm/aspeed: Split G220A machine into a separate source file for better maintenance Jamin Lin via
2025-11-04 3:12 ` [PATCH v4 07/30] hw/arm/aspeed: Split Tiogapass machine into a separate source file for cleanup Jamin Lin via
2025-11-04 3:12 ` [PATCH v4 08/30] hw/arm/aspeed: Split YosemiteV2 machine into a separate source file for maintainability Jamin Lin via
2025-11-04 3:12 ` [PATCH v4 09/30] hw/arm/aspeed: Split Witherspoon " Jamin Lin via
2025-11-04 3:12 ` [PATCH v4 10/30] hw/arm/aspeed: Split Sonorapass " Jamin Lin via
2025-11-04 3:12 ` [PATCH v4 11/30] hw/arm/aspeed: Split Romulus " Jamin Lin via
2025-11-04 3:12 ` [PATCH v4 12/30] hw/arm/aspeed: Split Supermicro X11SPI machine into a separate " Jamin Lin via
2025-11-04 3:12 ` [PATCH v4 13/30] hw/arm/aspeed: Split AST2500 EVB machine into a separate source " Jamin Lin via
2025-11-04 3:12 ` [PATCH v4 14/30] hw/arm/aspeed: Split Quanta-Q71L " Jamin Lin via
2025-11-04 3:12 ` [PATCH v4 15/30] hw/arm/aspeed: Split Supermicro X11 " Jamin Lin via
2025-11-04 3:12 ` [PATCH v4 16/30] hw/arm/aspeed: Split Palmetto " Jamin Lin via
2025-11-04 3:12 ` [PATCH v4 17/30] hw/arm/aspeed: Move ASPEED_RAM_SIZE() macro to common header for reuse Jamin Lin via
2025-11-04 3:12 ` [PATCH v4 18/30] hw/arm/aspeed: Split Bletchley machine into a separate source file for maintainability Jamin Lin via
2025-11-04 3:12 ` [PATCH v4 19/30] hw/arm/aspeed: Split FBY35 BMC " Jamin Lin via
2025-11-04 3:12 ` [PATCH v4 20/30] hw/arm/aspeed: Split Fuji " Jamin Lin via
2025-11-04 3:12 ` [PATCH v4 21/30] hw/arm/aspeed: Split QCOM Firework " Jamin Lin via
2025-11-04 3:13 ` [PATCH v4 22/30] hw/arm/aspeed: Split QCOM DC-SCM V1 " Jamin Lin via
2025-11-04 3:13 ` [PATCH v4 23/30] hw/arm/aspeed: Make aspeed_machine_ast2600_class_emmc_init() a common API for eMMC boot setup Jamin Lin via
2025-11-04 3:13 ` [PATCH v4 24/30] hw/arm/aspeed: Split GB200NVL machine into a separate source file for maintainability Jamin Lin via
2025-11-04 3:13 ` [PATCH v4 25/30] hw/arm/aspeed: Split Rainier " Jamin Lin via
2025-11-04 3:13 ` [PATCH v4 26/30] hw/arm/aspeed: Split Catalina " Jamin Lin via
2025-11-04 3:13 ` [PATCH v4 27/30] hw/arm/aspeed: Split AST2600 EVB " Jamin Lin via
2025-11-04 3:13 ` [PATCH v4 28/30] hw/arm/aspeed: Split AST2700 " Jamin Lin via
2025-11-04 3:13 ` [PATCH v4 29/30] hw/arm/aspeed: Rename and export connect_serial_hds_to_uarts() as aspeed_connect_serial_hds_to_uarts() Jamin Lin via
2025-11-04 3:13 ` [PATCH v4 30/30] hw/arm/aspeed: Split AST1030 EVB machine into a separate source file for maintainability Jamin Lin via
2025-11-04 6:52 ` [SPAM] [PATCH v4 00/30] Split AST2400, AST2500, AST2600, AST2700 and AST1030 SoC machines into separate source files " Cédric Le Goater
2025-11-04 8:14 ` Cédric Le Goater
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20251104031325.146374-5-jamin_lin@aspeedtech.com \
--to=qemu-devel@nongnu.org \
--cc=andrew@codeconstruct.com.au \
--cc=clg@kaod.org \
--cc=jamin_lin@aspeedtech.com \
--cc=joel@jms.id.au \
--cc=kane_chen@aspeedtech.com \
--cc=leetroy@gmail.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-arm@nongnu.org \
--cc=steven_lee@aspeedtech.com \
--cc=troy_lee@aspeedtech.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).