From: Jamin Lin Date: Tue, 4 Nov 2025 03:13:07 +0000 (+0800) Subject: hw/arm/aspeed: Rename and export connect_serial_hds_to_uarts() as aspeed_connect_seri... X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=fcbcfb5afe3603b8edad0b046946b9b66eb26271;p=thirdparty%2Fqemu.git hw/arm/aspeed: Rename and export connect_serial_hds_to_uarts() as aspeed_connect_serial_hds_to_uarts() The helper function connect_serial_hds_to_uarts() has been renamed to aspeed_connect_serial_hds_to_uarts() and promoted to a public Aspeed machine API. Previously, this function was declared static within aspeed.c and only used internally. Renaming it with the aspeed_ prefix and exporting its declaration in aspeed.h makes the function accessible to other Aspeed machine implementations that need to attach host serial devices to SoC UARTs. No functional changes. Signed-off-by: Jamin Lin Reviewed-by: Cédric Le Goater Link: https://lore.kernel.org/qemu-devel/20251104031325.146374-30-jamin_lin@aspeedtech.com Signed-off-by: Cédric Le Goater --- diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c index 924c02bcb8..7e9cd532d1 100644 --- a/hw/arm/aspeed.c +++ b/hw/arm/aspeed.c @@ -118,7 +118,7 @@ static void sdhci_attach_drive(SDHCIState *sdhci, DriveInfo *dinfo, bool emmc, &error_fatal); } -static void connect_serial_hds_to_uarts(AspeedMachineState *bmc) +void aspeed_connect_serial_hds_to_uarts(AspeedMachineState *bmc) { AspeedMachineClass *amc = ASPEED_MACHINE_GET_CLASS(bmc); AspeedSoCState *s = bmc->soc; @@ -189,7 +189,7 @@ static void aspeed_machine_init(MachineState *machine) object_property_set_int(OBJECT(bmc->soc), "hw-prot-key", ASPEED_SCU_PROT_KEY, &error_abort); } - connect_serial_hds_to_uarts(bmc); + aspeed_connect_serial_hds_to_uarts(bmc); qdev_realize(DEVICE(bmc->soc), NULL, &error_abort); if (defaults_enabled()) { @@ -444,7 +444,7 @@ static void aspeed_minibmc_machine_init(MachineState *machine) object_property_set_link(OBJECT(bmc->soc), "memory", OBJECT(get_system_memory()), &error_abort); - connect_serial_hds_to_uarts(bmc); + aspeed_connect_serial_hds_to_uarts(bmc); qdev_realize(DEVICE(bmc->soc), NULL, &error_abort); if (defaults_enabled()) { diff --git a/include/hw/arm/aspeed.h b/include/hw/arm/aspeed.h index 87dcadab26..714bbd326c 100644 --- a/include/hw/arm/aspeed.h +++ b/include/hw/arm/aspeed.h @@ -111,4 +111,18 @@ I2CSlave *aspeed_create_pca9554(AspeedSoCState *soc, int bus_id, int addr); */ void aspeed_machine_ast2600_class_emmc_init(ObjectClass *oc); +/* + * aspeed_connect_serial_hds_to_uarts: + * @bmc: pointer to the #AspeedMachineState. + * + * Connect host serial backends (character devices) to the UART interfaces + * of the Aspeed SoC used by the given BMC machine. + * + * The function assigns `serial_hd(0)` to the primary UART channel + * (either chosen via `bmc->uart_chosen` or the machine class default), + * and iteratively connects remaining serial ports to other available UARTs + * on the SoC based on their index. + */ +void aspeed_connect_serial_hds_to_uarts(AspeedMachineState *bmc); + #endif