From nobody Fri Aug 28 00:12:35 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass(p=quarantine dis=none) header.from=processmission.com ARC-Seal: i=2; a=rsa-sha256; t=1786886180; cv=pass; d=zohomail.com; s=zohoarc; b=Z0GjICiRTCbXD2nETAJt0/Y228RLZ/tbgCDSNqx68C0bwZ65d04pjhr1Nf85W0z/eezdLSNGksHG6J1h4sVsUdJdvLb9w4pMV+ub7JIngls4ZTegIe/a0gHrYyczsUSF6rWyub2mZhic9EeF26NGlcfSDJdEoa2SXd3/8odvSKg= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1786886180; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=Ap0YiwASlT8E5/SwyI3UdsWAFZw4m/209KDm3mqmbGs=; b=GfSGXLSoZQZiTmxrkd4OtZuiWIq1qdZNk+BuNqxti1GtaOwHbV0yeoqLN9EKVHo41iwb/HxVx/F98EFHRQP2+ADMXWIT3QOX+uh2MP0VR1zMrvMVnK8SgA5soGanZuodYP0YxuDtsA6446lDPSR90fs4dJNEGeLI0eZgLc50ARg= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 178688618015268.1735486282115; Sun, 16 Aug 2026 06:16:20 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wvai5-0001Yt-Mo; Sun, 16 Aug 2026 09:15:33 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvahw-0001VG-KQ; Sun, 16 Aug 2026 09:15:25 -0400 Received: from mail-koreacentralazlp170130006.outbound.protection.outlook.com ([2a01:111:f403:c40f::6] helo=SEYPR02CU001.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvahu-0005Tk-B2; Sun, 16 Aug 2026 09:15:24 -0400 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) by KUXPR02MB9310.apcprd02.prod.outlook.com (2603:1096:d10:9f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.315.17; Sun, 16 Aug 2026 13:15:08 +0000 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03]) by KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03%4]) with mapi id 15.21.0315.016; Sun, 16 Aug 2026 13:15:08 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=bEZdLCZTVwsUZHQgkYrd+DeGllgmoHKrZ8zWl7oVQfYgo9ofBJO6zxqLFqiO6qpHX4dbzrfKGr4nvmq3q7JNEAGdmRGWNoyH4lwBvZiEIX+D+tTptvT6zKp77QNwJkciwJa4hTs3T2Ch5JOfXg5Q2PgHSClxYR0AzLW+Z3UXma9I5O6uOTCnECRc0LPYl3UEJGHxYXWbI+I+yZWT94WHgnmXgQjVl8wQcH2225vpDdnzTilqnT58rhrq4rRLxWDqlOmikIH3SPmMWYkkvw1HQjIO3bXzFvF1Tc01J89u0ryg5kwrwOwIbnI6CwIiAtaEB6X5jzz8MsyjIS0JYFOhzg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Ap0YiwASlT8E5/SwyI3UdsWAFZw4m/209KDm3mqmbGs=; b=os3jy7l8fZEDDZKE0te74HlZ/JCn1kasxCWRmYWA8SFTCwUE7RyCWACrEeKUyH+whugFjU1XJS0EjP1k2GHLmV0CU099uYx/H7f5UdJAWdLhyq/tukFSdC1X0Cerdzdgex7OfcLmo/WMsws4jG11607Q1EXiDU3I+Ok+mKpMrya7xvhKLRa4OwwQ6kR0UQ/6t9T8LggOfI/uQeqZMxvipTyr7yDU72HZdp5EiQbZHww8+skedRUNNHQmABSKgSU68pdaxanOxlL5LysWnmSRVtZjhljOt7+4zDlVI4TkukpDBH5xmhY205wRtKpMIK9vtxOVLM1ljw+GCQXaWYajcw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=processmission.com; dmarc=pass action=none header.from=processmission.com; dkim=pass header.d=processmission.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=processmission.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Ap0YiwASlT8E5/SwyI3UdsWAFZw4m/209KDm3mqmbGs=; b=nLRjsD3DCjObz0hHqN9OIbjWwhXghIczYgQ4DvtwwzDs/qkvyjHlvQcsnYB9P+S9xzqXMBBMYI9ilJQvTaPP5dIBW4/hsGPwecZwnmGxMACt0GEgaOvcnS+Bh9HSeXxHruj13ZANVhnWNajshIognuRJQTDC+0wXyKq1HSCov4196QIP3j1u7pUD7VrrPP91Mb7BWkZ151vHVcmzfSQKFlgUAFnLfjuNbaAXpF4Ofu5MttDiQcgeHDS9bxofAX3w/iGquK2ucJAxkvgmrHyr7BUn3A41XjlKERrina7BULq4pYpv0qpoD6HGxZtWFc5ltmcLXwjfjNDBVpW/IaKaCw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=processmission.com; From: Bin Meng To: QEMU Cc: Andrew Jeffery , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , Jamin Lin , Joel Stanley , Kane Chen , Peter Maydell , Steven Lee , Troy Lee , qemu-arm@nongnu.org Subject: [PATCH v2 01/20] hw/arm: aspeed: Store boot info in the machine state Date: Sun, 16 Aug 2026 21:12:31 +0800 Message-ID: <20260816131300.51799-2-bin.meng@processmission.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260816131300.51799-1-bin.meng@processmission.com> References: <20260816131300.51799-1-bin.meng@processmission.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TY6P301CA0004.JPNP301.PROD.OUTLOOK.COM (2603:1096:405:3be::8) To KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: KL1PR02MB4977:EE_|KUXPR02MB9310:EE_ X-MS-Office365-Filtering-Correlation-Id: ae8a5a03-fdac-4c01-07c5-08defb986557 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|7416014|23010399003|376014|1800799024|366016|10067099003|56012099006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: QKc4zeJv5X6QK32xNDLSp47nw+y2yKXqIYdS1soF2imdxd9RdXbEq4mOkgp0yr8vDzxbqs4tWJho6YKSetKlwnKOsZ4jaSMZ0i8a1b6M+2p1tyfn0ZZoJrPJkPizLvaoySvRct9sI7y2tbb++hL+FfswxrPK+hm2Kp/ysDus7pC4tZdMVhEUtXE8PfBLRnX+L4YGBdTKcKJVYsurL+sLbqXuLXbAa75g7UcoK7lrLgllGmez+8S2McVM/Omnd5WuyosqNhH3EF2rORbfhkrEsE1RJTuqMgARa5xbb4FhRjOn5fZp0ePhhXTRmZdff+61bFWJQiq5HEDCyOnHjqRi+ew7nwX6NMTrhI7SzE2h2atn9Z6ttFKWCYwWMBm0d9Aya0jjt+153tASqS+PJaDenwqP5w+ECH6xwDe56nDzSvqrQZ6po8D3uP74l4iITBpyEp8EKaKeUXGkPb1/tkWwG5rwyGL8Y24K13h8UPXuJIlHXxPrMeP8wBT2jWmUUKPla2eUZRN70kRIb1bRHjwyxx66ozmcg4yxD0j7mti6k7gXVuSn4r70vyKyHd/zIP6Uec7V3ZrgkD0xt2jjBnXDMFS+Yo1ogQ2lESenIQ769r/VpTXIHABGk0KZmW6g9VbDSKGNrelwrGeYf+RdzKiqSY+Yr0dhB443Bu+BtzRoae8= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:KL1PR02MB4977.apcprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(7416014)(23010399003)(376014)(1800799024)(366016)(10067099003)(56012099006)(22082099003)(18002099003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?jD/jZIlq5q63/66eLRNsyNc/AeNzsF9RWNPsrPvprBVOFkaM16HYqp9D6OiL?= =?us-ascii?Q?JTzPoNJo5SPPi17SrtHZ0VMs3mmaf4Hji7z46yATcWBmzUGfos18lIILEhVF?= =?us-ascii?Q?CUf3zjQXBiTjmxLz+vDTUOgEEZU/8zyZIqYMiwKkL7+OTEVVq4JPUenEoQkY?= =?us-ascii?Q?ONNYzNQGDwqKiF7hxJVFHLhfKtUvMQcexzVXmBUC9ZxX/1MRCfVmDcr83ckI?= =?us-ascii?Q?rH2f74NIqO+GdPWLrO67C5Z+7T+3Ecaajd9iqMP+6IFUKD483wH71HGxirtD?= =?us-ascii?Q?GlmoO2/btwngCh6/YlWTgykZl4JH0VxuNLx7d1xSs+vAX5zeW4sP005mdWHy?= =?us-ascii?Q?KB5vy+eQYty5COIrCe7UPms6/jVouhhuZMq1usB3Nq2BUBt5SbhIf1owwCiM?= =?us-ascii?Q?2Z1yXiKKtxJld4gXGquz06wCeC+/lOtLXNYFOZFW+Lqj5soDnVzbmiHnSZHJ?= =?us-ascii?Q?KdkKLvZB64AhmvQCeT7vpHi/1YVLOutltHV1B48x1leqiWmw2koqBPQNhaOl?= =?us-ascii?Q?E/hCcTJj0If6aCRLgwC3oNVvaMOCLHXveQIAwbkEGfJIxAx4ywhILQ2ogF/b?= =?us-ascii?Q?I4Te+KFvY+8KP95G7QFhehG2TaUPRT7Cx/8IijLzcCkwJP26k4NzXi5BnkrQ?= =?us-ascii?Q?cxywdZ95FCvIXgYuK11EToBqsODko9iNbCDAAdp4p4HWE3ci+ptpx2e35gRL?= =?us-ascii?Q?X7RXFKfOakQraypKScXpd9YbsOBbEcNEIE6/dMoV8XAjVsIfPDpDF/7OEdEG?= =?us-ascii?Q?yWj9QPc4LW8HwHbzPHl+Y0QZeV7RwXER1bRn0YsVUkVz20Lz2CQXzWI0U4UR?= =?us-ascii?Q?cYOXTP50Wu1v5aI6JQHyZet4d0NwQFsEERv3FSIsRfV+q5bfYC+diRyQHjV8?= =?us-ascii?Q?IBB2jqaj0cZxpwbYHApwvNdy1P69dDAnc9G5VFUUgAdNkrtYIV4In4emvQQ8?= =?us-ascii?Q?xvFhhk1U17GJz41Moitt+dVgtefoqYVCmmycVsWzZ+sAeYDTLoStLzAwozY3?= =?us-ascii?Q?ubmOSX32JFusM9PxS0bJTwYN2yZvSOxjkih4g49xgkjJLFsEMv/7UvQ479xO?= =?us-ascii?Q?vAkcCj0jCVWi6cc2uTzALKfYyRKotM7aKwM84sdeN8WCSRLEoLkuUKOizczx?= =?us-ascii?Q?J7xHq2A3D73KfDm+MculDMMKzvmASJWBx0i0HzMJSEKM1FYZwYMJ3KcjpM2c?= =?us-ascii?Q?+uxLiXpgbNgbuZOj0P6t2hLM60icY8KB+O4mNiyz+S7vVn1oVq/xTIObae/+?= =?us-ascii?Q?IFdDaisK7f7HTh63aDT+SrDDPmoIKaD5coeVNI0IlK72ZlIm+1PMfZzAW3pW?= =?us-ascii?Q?z/Kh00LGqeZ2OtNdR9GiIgCRrqG8kyQ533TQ1RhO6iu4epNpPyl9YUf2ONQk?= =?us-ascii?Q?xrE7DGeMwV2V7BBhP0bU/StN8oYA/5k8Zb8JN2lG1lrW+HY6qHYOLNFkVfL/?= =?us-ascii?Q?Re1yJCdFXRVFZYkmkKYUmOUvrW+/KcXXqPZP9R2Sapa9MOkHeKnLABmw38Ky?= =?us-ascii?Q?GThRz5hVgvyARdR7IQa9Z42aMuV01Ajbh+8s8BY6Df+7ORgnlqvrY21tAkhC?= =?us-ascii?Q?cWLTAlwW9lDHxZNAvp6jSoek1WznO1rTM56IiJ9oN1DSEDSNL+p9e2itxCXZ?= =?us-ascii?Q?DLah0RYPRivRjROnwsADo1hGxGpUBbBaI9pMjHFPFEQqRQns6cSrwhL4Z2Gi?= =?us-ascii?Q?tQZRMoAmnFYT3JI010XCZ7iz+9FFPX7pZmTExHQyDLcTv2w41zmsnXy89YOX?= =?us-ascii?Q?69KzJ+MwD3UtdpZXVbPA7DYgGfbe9MA=3D?= X-OriginatorOrg: processmission.com X-MS-Exchange-CrossTenant-Network-Message-Id: ae8a5a03-fdac-4c01-07c5-08defb986557 X-MS-Exchange-CrossTenant-AuthSource: KL1PR02MB4977.apcprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2026 13:15:08.8631 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e0544bf7-9765-4630-ab69-0b266dc2169c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: hu7WYn8eoHy3kShv2Pt/ViQvE60hvIrIkEDMN6gTUw1qOMZbfxKw2jMMMGL2mfVBUFDU3VDs6LNhjpcHf++ghRD+/ZTICRtMLAyS07+z1CU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KUXPR02MB9310 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c40f::6; envelope-from=bin.meng@processmission.com; helo=SEYPR02CU001.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @processmission.com) X-ZM-MESSAGEID: 1786886182189158500 Content-Type: text/plain; charset="utf-8" arm_load_kernel() keeps a pointer to the boot info struct for the lifetime of the VM, so the struct logically belongs to the machine rather than to a file scoped static object. Move the boot info into the existing AspeedMachineState. As in the xlnx-zcu102 and raspi machines, the boot info belongs to the machine rather than to a static object: 4d1ac883a7 ("hw/arm: xlnx-zcu102: Move arm_boot_info into XlnxZCU102") 0f15c6e338 ("hw/arm/raspi: Move arm_boot_info structure to RaspiMachineStat= e") Signed-off-by: Bin Meng Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- hw/arm/aspeed.c | 17 +++++++---------- include/hw/arm/aspeed.h | 2 ++ 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/hw/arm/aspeed.c b/hw/arm/aspeed.c index a9238e6217..8fa16b3831 100644 --- a/hw/arm/aspeed.c +++ b/hw/arm/aspeed.c @@ -24,10 +24,6 @@ #include "hw/core/qdev-clock.h" #include "system/system.h" =20 -static struct arm_boot_info aspeed_board_binfo =3D { - .board_id =3D -1, /* device-tree-only board */ -}; - #define AST_SMP_MAILBOX_BASE 0x1e6e2180 #define AST_SMP_MBOX_FIELD_ENTRY (AST_SMP_MAILBOX_BASE + 0x0) #define AST_SMP_MBOX_FIELD_GOSIGN (AST_SMP_MAILBOX_BASE + 0x4) @@ -206,13 +202,14 @@ static void aspeed_machine_init(MachineState *machine) memory_region_add_subregion(get_system_memory(), AST_SMP_MAILBOX_BASE, smpboot); =20 - aspeed_board_binfo.write_secondary_boot =3D aspeed_write_smpboot; - aspeed_board_binfo.secondary_cpu_reset_hook =3D aspeed_reset_secon= dary; - aspeed_board_binfo.smp_loader_start =3D AST_SMP_MBOX_CODE; + bmc->bootinfo.write_secondary_boot =3D aspeed_write_smpboot; + bmc->bootinfo.secondary_cpu_reset_hook =3D aspeed_reset_secondary; + bmc->bootinfo.smp_loader_start =3D AST_SMP_MBOX_CODE; } =20 - aspeed_board_binfo.ram_size =3D machine->ram_size; - aspeed_board_binfo.loader_start =3D sc->memmap[ASPEED_DEV_SDRAM]; + bmc->bootinfo.board_id =3D -1; /* device-tree-only board */ + bmc->bootinfo.ram_size =3D machine->ram_size; + bmc->bootinfo.loader_start =3D sc->memmap[ASPEED_DEV_SDRAM]; =20 if (amc->i2c_init) { amc->i2c_init(bmc); @@ -248,7 +245,7 @@ static void aspeed_machine_init(MachineState *machine) aspeed_load_vbootrom(bmc->soc, bios_name, &error_abort); } =20 - arm_load_kernel(ARM_CPU(first_cpu), machine, &aspeed_board_binfo); + arm_load_kernel(ARM_CPU(first_cpu), machine, &bmc->bootinfo); } =20 void aspeed_create_pca9552(AspeedSoCState *soc, int bus_id, int addr) diff --git a/include/hw/arm/aspeed.h b/include/hw/arm/aspeed.h index a00238ed74..54f0d7643d 100644 --- a/include/hw/arm/aspeed.h +++ b/include/hw/arm/aspeed.h @@ -12,6 +12,7 @@ #include "hw/core/boards.h" #include "qom/object.h" #include "hw/arm/aspeed_soc.h" +#include "hw/arm/boot.h" =20 typedef struct AspeedMachineState AspeedMachineState; =20 @@ -42,6 +43,7 @@ struct AspeedMachineState { char *fmc_model; char *spi_model; uint32_t hw_strap1; + struct arm_boot_info bootinfo; }; =20 struct AspeedMachineClass { --=20 2.53.0 From nobody Fri Aug 28 00:12:35 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass(p=quarantine dis=none) header.from=processmission.com ARC-Seal: i=2; a=rsa-sha256; t=1786886294; cv=pass; d=zohomail.com; s=zohoarc; b=nv/2badA9yCMH3lcDyH9OsPIpzXl1xIkh61pTzUAj1ntni+GZAv0LewyCR2m/z1vt5DfjqpH9sNwCoalBQPTMV1ytHa+0ub/lzLDF4QJe9jakaoR2CbSOLlhEG2kRjivGoWzvZ5q9ti+iAsWEf3yJhwb5G0Lis2o1H3pnQNat6Q= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1786886294; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=NmlEv9nl1xY0eIcRl4LqtEwxfCVmFK4/Oq+FFSCYM2o=; b=NdD5cSoglJnHo9ukXrBzODPhsJG/1nsyaPbBi+rx1DlTs8h5gdeN11Y4Tit57rwyAramH74J9hjTK+VbfO8XIu5eh3xQOlsZpW7U93vimsXq+A08wetbh8I2Wr90pKTrF5/zjo28CYCy5SK/5KUoPNIpWf4VdRut6R10SwqBtig= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 17868862949331005.0739649226921; Sun, 16 Aug 2026 06:18:14 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wvai7-0001b1-Ay; Sun, 16 Aug 2026 09:15:35 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvaht-0001V0-Pw; Sun, 16 Aug 2026 09:15:22 -0400 Received: from mail-japanwestazlp170120003.outbound.protection.outlook.com ([2a01:111:f403:c406::3] helo=OS8PR02CU002.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvahs-0005TH-5s; Sun, 16 Aug 2026 09:15:21 -0400 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) by KUXPR02MB9310.apcprd02.prod.outlook.com (2603:1096:d10:9f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.315.17; Sun, 16 Aug 2026 13:15:11 +0000 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03]) by KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03%4]) with mapi id 15.21.0315.016; Sun, 16 Aug 2026 13:15:11 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=cEQ/YutSbdwSiA62c72mkw4RioHAcRbyRiC6/feUzcmtGYvarSiUvFfgdqv3Dpb49kLxr270+KyO412MciRDFwt43UqlxLtpeLwQVzxAoOVE0+lEg4+6eQOtfG5Qv0rxFuvIlMyGWaUCa0rY8DEcdy81W3MPlddkDi6V/KcWRpVfdET4+LnHit817fnQ/zzcSzwstG2WpXxLWotb5roZIRI0sUtnYi8g1xAhsR8tbA71izyn0kBJ/66IocW+Ar4+d0moDLL45lrwuJ7HCK4BO+0yCbN57IE4az/dcnMWECaKFLaI2l5buDBa9lsPzuJ8DKwUI/KtWfNpgcsvkvpN7A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=NmlEv9nl1xY0eIcRl4LqtEwxfCVmFK4/Oq+FFSCYM2o=; b=IRFhl2pGTUAvdzG0WX5P3JOrxNG4wzoVIcOGTgdGDRCPc+zIeApGu0I82mOKOq7HIYBC8SlNJq9VETCA1oNtk4U6hB/aDRRGdYLh7uxjN055QtGV63l/J3d+Q+8ayQLt4uHT1fq6H/nQeKLKPwuqaWFeocV3Krik2tc+mLd9skChmy1VyWUSMWeJGZCrHU0o2CGaUENiK0ZiJ4uGzQp5oNNLtlqGNo292CfgLds4EiEMGAXMOgnwsQ6vZLJG9nqZdTFbYJrlS0OYRdc8eQ/z01/yhAiuxrB8HJqjinTnPgJLoEyhrgBDWUC3cJsfqUxkOwODXkwaqot8V2m2eU6Jqw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=processmission.com; dmarc=pass action=none header.from=processmission.com; dkim=pass header.d=processmission.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=processmission.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NmlEv9nl1xY0eIcRl4LqtEwxfCVmFK4/Oq+FFSCYM2o=; b=FAxZi8aUFwCq7OZiD+ywf08ev8zDIWERSJlxDSDOblewoALs8O1BFsM8a/7px8jo6cdtvACBAr6xmp4pFpr73rsiSJ5MydMInFJvw/z+mR7XisN+MDdy0n8b8MUN+8uy8wMdX4ZqX1q6WoBvsfCmmWLBl0Pb9quiiHSSLTgrSIdV1Q05qfDpi7pAMo8oPOkMSBCChQOvT1QuqeqLlvt2FxAfofxsJx4RHv6RqFYKozbM68laCSEV3QvsnF55JubRbCYMmQ7h21LgSpL9yPEBrD2x9bGL+QHI9EF8UB7N5w7N78BUD5saJKpnfG8K51kfPGrxpIywrqPGaRXBfVQ50A== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=processmission.com; From: Bin Meng To: QEMU Cc: Andrew Jeffery , =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , Jamin Lin , Joel Stanley , Kane Chen , Peter Maydell , Steven Lee , Troy Lee , qemu-arm@nongnu.org Subject: [PATCH v2 02/20] hw/arm: aspeed_ast27x0-fc: Store boot info in the machine state Date: Sun, 16 Aug 2026 21:12:32 +0800 Message-ID: <20260816131300.51799-3-bin.meng@processmission.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260816131300.51799-1-bin.meng@processmission.com> References: <20260816131300.51799-1-bin.meng@processmission.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TY6P301CA0004.JPNP301.PROD.OUTLOOK.COM (2603:1096:405:3be::8) To KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: KL1PR02MB4977:EE_|KUXPR02MB9310:EE_ X-MS-Office365-Filtering-Correlation-Id: 52a06fc7-75ed-4a2e-11ab-08defb98671b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|7416014|23010399003|376014|1800799024|366016|10067099003|56012099006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: 2QEbw5iWp9W3+M8r2uBgcpC8iDvNeVh7pcDKh4J0gFTIIcrOz0ZXPA5CXJ+Q/FxUdATHk5pAoJK7nOQ7dVAwZCdz4HIHE8uFpGp8+BWUYP7+SfDBPXl2Md0savbssLpYXw9ZbUPkzqUXLQ7D1R7KUFwGpOufIK0ujUklTbkdrGlIQFC228AuX5/Jqsh9TnhPiTPVaJpb2yJQ++J0DQAj2rBFvXAlDWGiMaXcb3+sAx3hqyWPNaBIF8RxXnP/bt4bbljiTt2SlZdlikOrLj1FRO9pkU12zZmEVzeFBvBNtsjry5R8bD4dbl5Dyng3KHIQGTHSNQO3z1Zg57aSprS4tLEOpvyOLkazHDcz7auJtA06GBjWLcUzdEivEe5U7YGXVDzfXjaSPFjn7Q/yaP5G+ElojqkbbNdp/YclmZBq4mvcqsw2bvhziXBOIL5TKBPmhcAbzJnioaDYWB0IOHA8ajxuFHJEH/3m2kch8m42WoKJCQuppR2LQkU3cAXKdoFPow4aYTIKQ0Rtc/FUIkY7N0GyjbunWyBH93EmbfN2fd8GROEIiXQNZB3p0Sh4IcHcbiGIKC//zV0dDDHoUFt9JZ+PGgR6wwmg3zM8L8pRriLdSP2iYkBxSCEmYYliKPNHQeQIoohFhoh+iw3i5UgfdVnRU+JAMan7z73NtaUxiuo= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:KL1PR02MB4977.apcprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(7416014)(23010399003)(376014)(1800799024)(366016)(10067099003)(56012099006)(22082099003)(18002099003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?zNtP3JMU8Io38oEM2iw3rKz1yseXIas7RTpmP/uGHXgB+xOJyMkLBvDydcXh?= =?us-ascii?Q?6Yq9+31zVGeufzwC7oQAQCpCmM5qrnouC/asTHfxc97huz/DquMKaHlf2/zi?= =?us-ascii?Q?fs4I6vkBStAwf5iG2k9XOu7cSIMaKzMOhmqujjJGXRGHlNnxxUa2mP4UVpKj?= =?us-ascii?Q?JlYgEDGiyWEROjMZKmO8FuHJ/x79fYoy/WsQX8+O+lVTF+d4Gwvh7aYv2PYf?= =?us-ascii?Q?7tSCjHuvOSqYDHGPrlUsKuW32PLEBgX4FVQ9/i8JleTC+Ls+p37hP+aRohGU?= =?us-ascii?Q?dwylSGIwhbkMeAWupVLeyTBkXnDkFVRO76QS1fgdgt2Kf3jh28CCE8t1O3Ur?= =?us-ascii?Q?biU2HaGxNaa1ejUvbXVA8g+JemD9Ei6XfvCH23mbBhxzqDBl5KfwhC3T80qy?= =?us-ascii?Q?YNBzcb/X6OyRjP+6GIp99oQsYqiV8CQQsKPOb/i/6V2dI7vjC6iMnglFecn4?= =?us-ascii?Q?jsfi9S4j0ODzYq4K9GeUNLO/xpx1hKQ+OJCsdWEAn0tRkWRAljQfew0536Ft?= =?us-ascii?Q?gaxIVSPRuzqY10HKwqzLOt4kOsd643p4fLFC5OlVzWT+53h75GDQaiJO1UAf?= =?us-ascii?Q?0Le78AjLnE6oPxfU6JHSNbNAzgvHOubAIxLFQmGQpIMGJaKgWGtSM54qdWly?= =?us-ascii?Q?FalRrSFPFzWjelYJX7xSDUY9RQOclBin+Wp8Z4vEmSNY9g3kFHPTJj+BcONh?= =?us-ascii?Q?/2vajrGkVLxdewGZXeySNEU1jFrApD7p+GMDIAyMLmrJE6RkVyU560ipvzC5?= =?us-ascii?Q?5TUExgKRMsl/B7PaFyPPyt+5/NMsCjJMHDZ+xwr/+/PuV9mNBJWtHAEDm5wa?= =?us-ascii?Q?ZNC0phw5MJyKgwn2RaKrkTOtq3wMh6CC0ydjuc8OMMdrByyfcFO8n1/8EhNg?= =?us-ascii?Q?3rSNikLMSaQtSI9XRi+m0ANByt/e6MQrqxz3lQQGLwzCdT2vgXMoQOlEPaq1?= =?us-ascii?Q?uTukeO0pk9fSIZ2pQuoaE2D7WAEWTj2bdyKaoWZinjbMJr3ncD6Q//siLhWz?= =?us-ascii?Q?1qvdyAEPwsELQOwO+m6lcma/7NMdYDAQUBrlaFdNcYwvkFzbZxNYI2SMjZSm?= =?us-ascii?Q?DJSI5CsHgBY87LJhhMPeVUBCXFetaotcoRrx6sDIU1LfGiDPaQeRqudfcnoj?= =?us-ascii?Q?SiZsv9GJQQDfmz0e7dMbYFfEtC37j5zyYZKhvsBKTFlBSv0V27Ba0U+3ZZSq?= =?us-ascii?Q?0wi2vzxAcTOAz+eO9ZTnquQ5Bgq2msPWHAqreABDsQMVSyrmTfivHHPC03sf?= =?us-ascii?Q?wPyyPtDLgkZou0+fbYZxWiBlnUxMitj0TC9nFiRYn70q71CnqRIoQIT2lh8h?= =?us-ascii?Q?8KwNGnDChoIEFbMfxKtZk7SWl/rWMdqbp4BhHpCQueHDWCohmx3gvTd4Rrad?= =?us-ascii?Q?Tt2kVCH9SL6E59zKsDNC/tQlvCihs63f8F2MEY2OTRkO3ywLOGR01xz+lLBD?= =?us-ascii?Q?eud/mD9rn8QtRau9p4dVo2Ey1kmriuJ/Dsqp+LraYPhLG2ZhNKlNr8m5I6VU?= =?us-ascii?Q?l1xsF/92tl6GExnvJvoaLD0YzCHBxvzMLHQY6EtAxAMzyCVzY10o5V5lR8Q3?= =?us-ascii?Q?AsNjXD2VBLtnk6j3RkY3GyBO8JTriGuM7lknuAH0vObGdZsmV/tXeQYTzXx0?= =?us-ascii?Q?IpDzdQJ1tHw5UiuwqP814ZBd/oeUojdF0LduAgQIVB4ZPmoZevHj2gvcPjpS?= =?us-ascii?Q?AOdj50AApWhTHBNSF35bFpTkujXyXFjMQ/ftqxAjK3b5xoo/ZsKcp8H/aXHQ?= =?us-ascii?Q?ImOmGEHBQpCPlVgpGgSo5Ocv2/5/ig4=3D?= X-OriginatorOrg: processmission.com X-MS-Exchange-CrossTenant-Network-Message-Id: 52a06fc7-75ed-4a2e-11ab-08defb98671b X-MS-Exchange-CrossTenant-AuthSource: KL1PR02MB4977.apcprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2026 13:15:11.7233 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e0544bf7-9765-4630-ab69-0b266dc2169c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: nAqBe7x8FzhjDxRAn+VBN/liTLv38+eHFI3VrYW92JXLg9TNLN++jpZluX8FzwDINPF/sdo/1Hjg5ga5vvQkwPnaYvNlfI8zwdvGUEPsJ0g= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KUXPR02MB9310 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c406::3; envelope-from=bin.meng@processmission.com; helo=OS8PR02CU002.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @processmission.com) X-ZM-MESSAGEID: 1786886295949158500 Content-Type: text/plain; charset="utf-8" arm_load_kernel() keeps a pointer to the boot info struct for the lifetime of the VM, so the struct logically belongs to the machine rather than to a file scoped static object. Move the boot info into the existing Ast2700FCState. As in the xlnx-zcu102 and raspi machines, the boot info belongs to the machine rather than to a static object: 4d1ac883a7 ("hw/arm: xlnx-zcu102: Move arm_boot_info into XlnxZCU102") 0f15c6e338 ("hw/arm/raspi: Move arm_boot_info structure to RaspiMachineStat= e") Signed-off-by: Bin Meng Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- hw/arm/aspeed_ast27x0-fc.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/hw/arm/aspeed_ast27x0-fc.c b/hw/arm/aspeed_ast27x0-fc.c index 058cea42ed..ceeae336df 100644 --- a/hw/arm/aspeed_ast27x0-fc.c +++ b/hw/arm/aspeed_ast27x0-fc.c @@ -27,10 +27,6 @@ #define TYPE_AST2700FC MACHINE_TYPE_NAME("ast2700fc") OBJECT_DECLARE_SIMPLE_TYPE(Ast2700FCState, AST2700FC); =20 -static struct arm_boot_info ast2700fc_board_info =3D { - .board_id =3D -1, /* device-tree-only board */ -}; - struct Ast2700FCState { MachineState parent_obj; =20 @@ -46,6 +42,8 @@ struct Ast2700FCState { Aspeed27x0SoCState ca35; Aspeed27x0CoprocessorState ssp; Aspeed27x0CoprocessorState tsp; + + struct arm_boot_info bootinfo; }; =20 #define AST2700FC_BMC_RAM_SIZE (2 * GiB) @@ -114,8 +112,9 @@ static bool ast2700fc_ca35_init(MachineState *machine, = Error **errp) aspeed_board_init_flashes(&soc->fmc, AST2700FC_FMC_MODEL, 2, 0); aspeed_board_init_flashes(&soc->spi[0], AST2700FC_SPI_MODEL, 1, 2); =20 - ast2700fc_board_info.ram_size =3D machine->ram_size; - ast2700fc_board_info.loader_start =3D sc->memmap[ASPEED_DEV_SDRAM]; + s->bootinfo.ram_size =3D machine->ram_size; + s->bootinfo.loader_start =3D sc->memmap[ASPEED_DEV_SDRAM]; + s->bootinfo.board_id =3D -1; /* device-tree-only board */ =20 dev =3D ssi_get_cs(soc->fmc.spi, 0); fmc0 =3D dev ? m25p80_get_blk(dev) : NULL; @@ -129,7 +128,7 @@ static bool ast2700fc_ca35_init(MachineState *machine, = Error **errp) bios_name =3D machine->firmware ?: VBOOTROM_FILE_NAME; aspeed_load_vbootrom(soc, bios_name, errp); =20 - arm_load_kernel(ARM_CPU(first_cpu), machine, &ast2700fc_board_info); + arm_load_kernel(ARM_CPU(first_cpu), machine, &s->bootinfo); =20 return true; } --=20 2.53.0 From nobody Fri Aug 28 00:12:35 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass(p=quarantine dis=none) header.from=processmission.com ARC-Seal: i=2; a=rsa-sha256; t=1786886281; cv=pass; d=zohomail.com; s=zohoarc; b=HBkJ7PNoJPFExz6/qhcnlOW3pahglnfxCb4lxR13O+/hM5IFK87uCEI+S+eOjKfHUI+eMi/91NGDosNXYXeP2ClJo04iJ6lgXuL/8i9MHU8agxQbD5Ngrh3RF09oCOho3UddABNsQFNGbkF5CyS9YylPXC8wymANpcVarCU9WTk= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1786886281; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=zvjDluv1fq2pHbYvZH/0ca0W/EpPWDzvdRukuJyCuqQ=; b=AJ7piR5ILdVuehIJx1mtRkmYAJTCWgTcQnfuiUp95S6wpG+Nxsjr2t9lR8ywnwu0vmLaovuDtLGWd/CDcv9FgaPKs/U/TG9x9Hgjuc7p+UtYf0BNigGcYIMgz7Drf6oNpkdc99vSUeQYw+ExFj/a483qzJ6IZw7SkwxMUj5JsV4= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1786886281602677.6243352832059; Sun, 16 Aug 2026 06:18:01 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wvai7-0001b2-At; Sun, 16 Aug 2026 09:15:35 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvahw-0001VP-N4; Sun, 16 Aug 2026 09:15:25 -0400 Received: from mail-japanwestazlp170120003.outbound.protection.outlook.com ([2a01:111:f403:c406::3] helo=OS8PR02CU002.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvahv-0005TH-4h; Sun, 16 Aug 2026 09:15:24 -0400 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) by KUXPR02MB9310.apcprd02.prod.outlook.com (2603:1096:d10:9f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.315.17; Sun, 16 Aug 2026 13:15:13 +0000 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03]) by KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03%4]) with mapi id 15.21.0315.016; Sun, 16 Aug 2026 13:15:13 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=uvogUJRkx9dtvtSNjFFEz0Hx2IV7v15b/d+n4JjA47u7vH//py6bd4Wc0TB2Omj2AWB9yasq1foH5SWzvUWWMG5mIf8NlU906wznJDxIQGLtDj4hbVVjXQtJXggIzbAGhk+gQ/GtZi+Xu7lExgM/IJIxiN9yXpI1lELAKjyAi476JDp1KfbWXeEav5PUrd6NrV9hd6qnUB39iXj9zz1PtJ4uDHS500fEl7Pc1WSDDeGGqeZhAWgdBSGQZqOij1+iwJmQdpoaIrya55Ijhi6yR/G7T9s8s8aoky0BR06QvDOV+8PKmdwhyRP/Z6mz0j4+AgHzozyB+NxJhR6VprfDTA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=zvjDluv1fq2pHbYvZH/0ca0W/EpPWDzvdRukuJyCuqQ=; b=q5iq3eFydwvj6IoUec5cHKhUG9Tjqu8v1P5lquH/Xgoszd4DiZP50RqqV1BtLp5BVPyY2oNyyu/+RY596+NSzTYJ9ESunXEtFwUZByasinnGsksQFcUn4yFUkGajUTfhTyiY1kid9RXkq/qomJpMxq/yE0TaM6NGUfhwkxeL6nRf7uugKaLKZGp0gn0Zsg8EpQ4bO00l4T9tdyxmCwi0pIDXeOiSgUyS+5zKfHiCXeWJg/mQgQrB5TX/EGRWq6SC0qeqIBJesVQj+ygYpZRQhao6pNjSj77XJb8pZuprNBUNNznSXodJYrE1n2KDmAXx/ayP5ctcXOg0Xm/cOX4jtw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=processmission.com; dmarc=pass action=none header.from=processmission.com; dkim=pass header.d=processmission.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=processmission.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zvjDluv1fq2pHbYvZH/0ca0W/EpPWDzvdRukuJyCuqQ=; b=IBWiYpjgJASETSBJiQjuYf++7/rVRSIiiy8nsVy2NVu6kolS+nvtxQ7LZAyOVSGI1j/s0lBlhmxseUuS3Mpv3B+grfR+e6kj5K81hf91Nz8GoSD9Tz37t+LNISBLIPGBHUpgA+Zm40u4QPggIPmewSNJpI/Q9JK194+eep36KdTQT00V/AW3QVdW98Nf6BD6VZmPK2C8ZmZIw8vV2DmlLEm9rkCk86AXsjIBhc5JWcF9hw3I3MbnFSq22YFZ7Bh9BHcAjWDgg/duVWv9EnYuup+PmG3f0I10d7QwWjM0aTRmSCyDZ+RS0T/9R0wlroGrEFBZNd2z8EcqGGDMs+aOTg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=processmission.com; From: Bin Meng To: QEMU Cc: Peter Maydell , qemu-arm@nongnu.org Subject: [PATCH v2 03/20] hw/arm: bananapi_m2u: Store boot info in the machine state Date: Sun, 16 Aug 2026 21:12:33 +0800 Message-ID: <20260816131300.51799-4-bin.meng@processmission.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260816131300.51799-1-bin.meng@processmission.com> References: <20260816131300.51799-1-bin.meng@processmission.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TY6P301CA0004.JPNP301.PROD.OUTLOOK.COM (2603:1096:405:3be::8) To KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: KL1PR02MB4977:EE_|KUXPR02MB9310:EE_ X-MS-Office365-Filtering-Correlation-Id: d7a27f29-0859-4ced-a737-08defb986816 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|23010399003|376014|1800799024|366016|10067099003|56012099006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: 8OCFWXD8cqqaEUe+0T2FLJrcngJaD3jZySaWNSJn0WMRwhR/NcGOhwQLkw8deHn4np4lX+9dnnbVMuZipCNq2IUTFTll1mVqt+SNlnOv6obaI+5+MhBg0pI39O7es8vPhsErG+6nNbPlXmd3tOtpp50NyZyXkSsG0p2PEDeHzU9+aVk4BUcW166K2o5wF/EhDCPQnymsUUU96WHwhFeb0OQrE+wcuVszgtZO5vSvrreqBDBhEr8p/weQFyd9HvvZd4EhKwzbCnR9PFKT30Q3v2pB3QJz/U8RiEIWbpINBtxR4GaEuzDE16NK+fehYtms56IyGnFTFLHXnFc16E6zhRKZLI5VPz60SNxVGMspBJD0HdF4tIxrEh737UAgDKUVKfzVc0nL6wnPXXj2Lp+A6ANfg+2NpunQ0xiWBiShThjoBB1xe9tmgWfUlgeYaC6xKl4mdZnWeMSCCzsCRUcaccEgiZVK2D0hn66Q7IQPfQ+I9DQY7pf3LqbHfUkIelsk6yhJGEQbazXuC1zqPbYmpGm81HSl5w+OF7ttEq5k215oGu7FYMUFwLgGgjQsybcAklJWsyxXu07X36a/TYssH8MoIShph5LJZGyISOrIPMZsyWqTvXdgLtRoLYWxl4HxHNTO088NI2g36DxKhUoMq3nUEvrHt/RQUmkN8Uxw0as= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:KL1PR02MB4977.apcprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(23010399003)(376014)(1800799024)(366016)(10067099003)(56012099006)(22082099003)(18002099003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?rhpIjWZQPaQd9g7s4GCVFnezWtq2Tcj2aceUS4/8tf/i7hxsvPPQ4ayEvBMU?= =?us-ascii?Q?JysdJV0S0oo/ukvAUikBYx9AZ4pytlEPygYiK9kvjpxhinCp5GIv1VS7NR4X?= =?us-ascii?Q?6AlXAu48FNMDGvyrTCIlofPvCpraNa/a8MDiN15WQOmrmYerfOmzNxQdTSg+?= =?us-ascii?Q?RnJ3YKvYdf/w/t+vuvttQ9F+teOTLN/pzaRoh+urhce/RoT2c7UreADvAekK?= =?us-ascii?Q?NSlr0Pt39vbvGNlL5xAZeZKNql6uBOKsXwQ4i8W4BODIzG0Em25JpCD4/6XX?= =?us-ascii?Q?sJ1RfM9wp6MeuSBUKysE/eAJPbctZTUv5CmG0SLtvz0sAIpSCrvMj9+0PvEJ?= =?us-ascii?Q?epeQddbS6i5KoVljh2oiaJg5zlegdm1hvVpPwTSwe7duZUcPWBzwGxy8g1ZD?= =?us-ascii?Q?uH53laKZ+D4CckQ6D/7QsQwct+jaFPrK7Uxe1CTekDWvjktqfM/u7aJ559ET?= =?us-ascii?Q?3ifKgqEyFJy3jQucoHsjnUfHxVcz95ygUtGsWPvKEfded55PldSwymWv5IpK?= =?us-ascii?Q?2ejld5aENQMcQJrF0r1EuYWOKQAqVeLRdtV8ZbKO2QHfMZldkyqXtCXVH1M0?= =?us-ascii?Q?gNhDz/BqKrrYFcZfNCQe/jXImjPyojlEcrJ7QGWZWMpQeR71PPeZ+vUH8+hD?= =?us-ascii?Q?jVr7zni35XLF66Eutq7CLiooff6+HZMjkUJqqdq4jm+tfZEGxh+bjwzzG9vO?= =?us-ascii?Q?aB3FPthFYEMs6E5BsppZbcjqwHPpBaIBHBtkSRwkK8Mj5DriKCgHb+TIp9SA?= =?us-ascii?Q?7CxyPYl4EFmwL5638XtJdYVMgmSU3kxue7XM2NLmcB7Sz3NxxNw2fny84+fT?= =?us-ascii?Q?mCd1llOjlif6j9+0KmfNMAhVnYqgCnQU4Cx2ZIMuMF6ZPNm6Ob/wivsOrQbI?= =?us-ascii?Q?FTLC8ahYjxcGvIommLq+Uzgtoe+S1B+Sf88Spu6PphsxD2YcmnMg4fX3wN9Y?= =?us-ascii?Q?DiPtDcOJGIknA/Q5SBvpHF7NmIHUFyrXhzMjjWcLBvN80thfsTjj/Edw8Yp4?= =?us-ascii?Q?eoetDBM2Pt50DeA/wpZ3aYlJnYnmnPaZbTxiDmKrkqqKprl1T9uIg7rqjGpw?= =?us-ascii?Q?UVfjnA6RZ+wlRP0kJrxTqALXF/a6owKUDzEBfuNk+fN9FwEqRO6bBCiohGt0?= =?us-ascii?Q?bW5IotTFYsUmn+DWyzMAwniNGOLQbIiDromVpHh5TXvyRNXIEhJzbRGdYQHW?= =?us-ascii?Q?cTmDVskp1ymT1c1uOSFz0o4Vht7BHcVGOtq1JoU0xl9mp2R1pon8E534L1KN?= =?us-ascii?Q?5N8ubG9J5F+LBKq6CIc7bPMF39RNxiR/aPggautmCYvwdFqDL9gEcLpmDCvw?= =?us-ascii?Q?PGLwSShV5Xyn3ee03B3rTx8GuHv3EHYobdXnLW3nVDbiqCZXeKOkrUOkZ/jY?= =?us-ascii?Q?SSnhxU3LA2PmDIIyFmExEMtPz36Lk22BccpMEIMhWNXM6d3IYmaexXqLvRtV?= =?us-ascii?Q?rIO1oMFZzJWkVdl7wHUwFx1gzJ+2zGSwn3zaf+nuRPEaA+VOrTx0OLngBiwo?= =?us-ascii?Q?C4hT+ek06ktfJjq08NOBFBlLApA2oWL+OBbY49b//f+44mStCm1uz0lt9As3?= =?us-ascii?Q?5cIZJOHsPPrmYGpuZep2/HwZgypdsabNrlTQEWSaNlcF1mWjcSW8cBSPfXf2?= =?us-ascii?Q?5pH4U+InxaSvzME8s1K1JYOP94TS4IBsOwAkx3k2+9btRzQzql0hfEeN85WA?= =?us-ascii?Q?idWWBBbzHAs/kJpBstL1ZLgLTBaZ5jKG9YVq5ymhD1fAreonUGL6axy86WM9?= =?us-ascii?Q?tDkt1mINk8QGGh3yj4OsfQC1DKRElmg=3D?= X-OriginatorOrg: processmission.com X-MS-Exchange-CrossTenant-Network-Message-Id: d7a27f29-0859-4ced-a737-08defb986816 X-MS-Exchange-CrossTenant-AuthSource: KL1PR02MB4977.apcprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2026 13:15:13.4389 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e0544bf7-9765-4630-ab69-0b266dc2169c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 9Amhp3YAt+1a1SyvHZvvBkR2bsYXp8StMfPj8rKy2UAj65N6tNdiUijGLyD5+tkDJjxLyY4CNdG6345UKxWIxgAmucUdo5894leVAS/Bh8Y= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KUXPR02MB9310 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c406::3; envelope-from=bin.meng@processmission.com; helo=OS8PR02CU002.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @processmission.com) X-ZM-MESSAGEID: 1786886283842158500 Content-Type: text/plain; charset="utf-8" arm_load_kernel() keeps a pointer to the boot info struct for the lifetime of the VM, so the struct logically belongs to the machine rather than to a file scoped static object. Move it into a new Bpim2uMachineState and register the machine type explicitly instead of through the DEFINE_MACHINE_ARM macro. As in the xlnx-zcu102 and raspi machines, the boot info belongs to the machine rather than to a static object: 4d1ac883a7 ("hw/arm: xlnx-zcu102: Move arm_boot_info into XlnxZCU102") 0f15c6e338 ("hw/arm/raspi: Move arm_boot_info structure to RaspiMachineStat= e") Signed-off-by: Bin Meng --- hw/arm/bananapi_m2u.c | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/hw/arm/bananapi_m2u.c b/hw/arm/bananapi_m2u.c index 9b468cd8ac..0079aa1dd2 100644 --- a/hw/arm/bananapi_m2u.c +++ b/hw/arm/bananapi_m2u.c @@ -29,7 +29,14 @@ #include "hw/arm/boot.h" #include "hw/arm/machines-qom.h" =20 -static struct arm_boot_info bpim2u_binfo; +#define TYPE_BPIM2U_MACHINE MACHINE_TYPE_NAME("bpim2u") +OBJECT_DECLARE_SIMPLE_TYPE(Bpim2uMachineState, BPIM2U_MACHINE) + +struct Bpim2uMachineState { + MachineState parent; + + struct arm_boot_info bootinfo; +}; =20 /* * R40 can boot from mmc0 and mmc2, and bpim2u has two mmc interface, one = is @@ -62,6 +69,7 @@ static void mmc_attach_drive(AwR40State *s, AwSdHostState= *mmc, int unit, =20 static void bpim2u_init(MachineState *machine) { + Bpim2uMachineState *bpms =3D BPIM2U_MACHINE(machine); bool bootroom_loaded =3D false; AwR40State *r40; I2CBus *i2c; @@ -120,10 +128,10 @@ static void bpim2u_init(MachineState *machine) memory_region_add_subregion(get_system_memory(), r40->memmap[AW_R40_DEV_SDRAM], machine->ra= m); =20 - bpim2u_binfo.loader_start =3D r40->memmap[AW_R40_DEV_SDRAM]; - bpim2u_binfo.ram_size =3D machine->ram_size; - bpim2u_binfo.psci_conduit =3D QEMU_PSCI_CONDUIT_SMC; - arm_load_kernel(&r40->cpus[0], machine, &bpim2u_binfo); + bpms->bootinfo.loader_start =3D r40->memmap[AW_R40_DEV_SDRAM]; + bpms->bootinfo.ram_size =3D machine->ram_size; + bpms->bootinfo.psci_conduit =3D QEMU_PSCI_CONDUIT_SMC; + arm_load_kernel(&r40->cpus[0], machine, &bpms->bootinfo); } =20 static void bpim2u_machine_init(MachineClass *mc) @@ -145,4 +153,5 @@ static void bpim2u_machine_init(MachineClass *mc) mc->auto_create_sdcard =3D true; } =20 -DEFINE_MACHINE_ARM("bpim2u", bpim2u_machine_init) +DEFINE_MACHINE_EXTENDED("bpim2u", MACHINE, Bpim2uMachineState, + bpim2u_machine_init, false, arm_machine_interfaces) --=20 2.53.0 From nobody Fri Aug 28 00:12:35 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass(p=quarantine dis=none) header.from=processmission.com ARC-Seal: i=2; a=rsa-sha256; t=1786886184; cv=pass; d=zohomail.com; s=zohoarc; b=ImkZbBRSeGGY37jzQwN3Yuy/Kd2s3ayLS+IS86kjOT9kMKkLfxbc/CDCiiRAjGr4twl8Tu4Nrg+A30pazLwUbpA4Xobog0iP4kG6OnxwwL4B/76Fp7p/Kvi7p0nF+e8aBUEOQ03WiAN2xjBVWSQuaVbsVjPxNwqo7QaW2P8+pio= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1786886184; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=sSeMWuLGpprHcg/4obJGVunhkLSSJpSAdUlWtTR6Q5g=; b=LtSatKFzzHXsgXoUsUq2GNP2RUGlR8hF6y/UKJ+M3+n0XNmFmvgtEULWvvQcUuKKTgpknL65YSu5dY6Rn4hdg+JF+J5GM1qma8hpFoX/PvvKWlTMKmkUrI3GZSgrxjZ53A5mS0lhuGO2uS0DmkMeGkgMLjxIbD+sF8NjhLZ8uGQ= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1786886184355116.75126483647648; Sun, 16 Aug 2026 06:16:24 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wvaiB-0001f5-Jo; Sun, 16 Aug 2026 09:15:39 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvahz-0001Vz-9r; Sun, 16 Aug 2026 09:15:27 -0400 Received: from mail-koreacentralazlp170130006.outbound.protection.outlook.com ([2a01:111:f403:c40f::6] helo=SEYPR02CU001.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvahx-0005Tk-JW; Sun, 16 Aug 2026 09:15:26 -0400 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) by KUXPR02MB9310.apcprd02.prod.outlook.com (2603:1096:d10:9f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.315.17; Sun, 16 Aug 2026 13:15:15 +0000 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03]) by KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03%4]) with mapi id 15.21.0315.016; Sun, 16 Aug 2026 13:15:15 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=xBYO+KvUZ2lh+vxu8memweisBtqfoo5FfiFEFYZAwnI9sSpyA5Xq8scdzf7y6U+ly9pH2WRQdTCBam3YfZnqjQF49v2WiT60LlRXaZNt/JGbt1hlbkUsOaWSgnc4RfNZKhnkxsybqEJ9+TI26d6hphPeQa9tXoT8+1H/jCiZ0gT/euCDXFUG5EH7yQFZHNX+M/SWvwMi6qNzznjQYXkvRo87PczZd13wIkCnAO6GjKhX1WZjKeytPcYbIrZewllZqmhRCjk91wyIGFzWvGrx7uYWnVJ0wICukycKtU7lgCnwfZebkf3uPoHi8tadPsznD4e0k14h/UyjMjg6xedBdQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=sSeMWuLGpprHcg/4obJGVunhkLSSJpSAdUlWtTR6Q5g=; b=aGGEJKtJK2dvMPoJQFsYzVdCS1pSgdUB0LRNCrnTvHCuIKNG3xTBYessLkHaG3dgNPcEd+vbrJ3Xpa/8VAwh5+wjg3bTqJgAslX4Ujw0Zc1vufivg33/MXjGfgqgL4YeATbONbKobzm2Z59P1WXhYV58ZKuWSnl6fVxwSI6QmJS30wnTrroeRoEeBSMuwZ6P+E+DTd7ow+NnmLzTAYNsRPmlD2fj1A47IdfcZEhskPpgQSKadtsptsF6IF609NziL2ardpG8fXFLElCCqF+RfmIexfwHJ0AYQqDi6yzdo75qQmGa+/apfV84Y2q6RvFrWnOMnDIg/1AgIwPVpWKrJA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=processmission.com; dmarc=pass action=none header.from=processmission.com; dkim=pass header.d=processmission.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=processmission.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=sSeMWuLGpprHcg/4obJGVunhkLSSJpSAdUlWtTR6Q5g=; b=PIgZmBLc9vPizQ624LZPGut2Rg4yxZHX3zRmDiv3mBx1hnnPP3yVMzY/D99xm3ifDEei1RRbw6KI8qw2LhnG+Ue8MYmICX/buJAXaLxaDcs+ABMf9A+sqezFxCIjCnkidfmuaKhhzjV3P1NjLFD8YWoUnoh/Xl/2HzgsopQ0XMcORYNxznWMUmEq/RXXLxzmL1gs99HsvB3i5uNEN4PjToCH8XIsJFDySlagOf/3wQbLf+CF/zxgA1LlcvOZM+hkZJ8X6TFqKu3+VIOu1N+1Me9evi9Ulddg5C38gqulrvPsNQ+57NrXeDvMrCq9mZMYdb3+8ax9UVXfodW7yIGZZQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=processmission.com; From: Bin Meng To: QEMU Cc: Peter Maydell , qemu-arm@nongnu.org Subject: [PATCH v2 04/20] hw/arm: collie: Store boot info in the machine state Date: Sun, 16 Aug 2026 21:12:34 +0800 Message-ID: <20260816131300.51799-5-bin.meng@processmission.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260816131300.51799-1-bin.meng@processmission.com> References: <20260816131300.51799-1-bin.meng@processmission.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TY6P301CA0004.JPNP301.PROD.OUTLOOK.COM (2603:1096:405:3be::8) To KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: KL1PR02MB4977:EE_|KUXPR02MB9310:EE_ X-MS-Office365-Filtering-Correlation-Id: e779e2af-e444-47a0-8d81-08defb986919 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|23010399003|376014|1800799024|366016|10067099003|56012099006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: 470WqyEwMv3+jMtIqwhWsCKpFIBxLTRfxh7riOqIRrG/3kkDW1lyvoCchoGTO498RB5VF2mHpGCBbwMuHC5KOzN4IhYqPu+FAKhKHuPGbDj4J9luNvyDAgto2ZNvNz6SlW/M5YgMP3Mf0H+3BdN5ii7lZG2OcPD1pY9RpOHiDy4NuVFJCdE48iLnocLzVHS7MLecatyWj4bsm6w/5ufbUFurAbTyuFyn9eTSFgOzQg75u3N7vVXi+V2VGMUXG/i+y1G++ahqGX6Q4T4atQB+Tqpduxq1QQQ+3F1DX5JrT3ZQUaoC6Q6ToOvEDUKslvk78tpa1/RD8vtfrH+eV1LDqmxZkBD9jLDdpkYhCV/paSBV6pZafyMm+W0H8e0YYz4IWNGsI3bOlEXaiDZBrYaq9v0LIbCl2QfuuSYOPuZWqUxngRbkP/joGqIIghRZ/IS/lg6Fw8t/kgqvAAeFVfPXiwT4tLJrhT1nYxAa1AdMOOe9Ybc5t1ThKa64w0ttqDe0pSssYqlVtVRa9rQyP1GX9AIPTdAA9EGwOPB2t6ccwQg+7ZfL3QB90Zz0L40hys6/SC3VLEQIJwpvdkAg3FW0JLVfUKhqMKqISx9JXRfu4m/4Dwbnt13IGNN3qKDWNGJ9iCs3up0KwgOh4IGr9igCui4145UaOR/nn6KXhY4jr44= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:KL1PR02MB4977.apcprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(23010399003)(376014)(1800799024)(366016)(10067099003)(56012099006)(22082099003)(18002099003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?X4dmqe/NEIPBN2dKDvTKmeU1prBYUbKFpa9UhcGLSGO5xl4b/h0Iqi815qhd?= =?us-ascii?Q?ypLZX2vjzG15QM1wXHxb1zJIeN1eqS2h7n23saiOUM9EYORrJpXxhcesbzRt?= =?us-ascii?Q?c/hsmV3VSJGKVJcuYIU3V1S5JHCcr1C+4LiD62DKHP12pkbWFzjuYtVCLnmj?= =?us-ascii?Q?BRcecLIFNHm4+cwtPvf9NBqj9K5voR4npbu949/ySyeuq8cS7DipDjJ6mhdt?= =?us-ascii?Q?GV6Ui93tbzg5q83cw5MqKYB/bpjIj2MOoYtvucrT1pI4z1TIDUOu2a1xVJJ3?= =?us-ascii?Q?26mlTBWzS0z1v9Y6U0WjybtK5MjPchWJr0H/tmy3I8OlFNxEAE/2cPwnnPur?= =?us-ascii?Q?C0Uvw+v0usvFF5zN2OBn45rpj2C5WPLlTAxAcczOwKZIptU1PDNEjwgwrPpx?= =?us-ascii?Q?7OOiTfiPyHyaGti/QOObnw/jNG0jssIiEY8tomqddxGBBn6LuJz9Fb6KsBR3?= =?us-ascii?Q?DUfiqYPlHSGodwzjM+EuUl4M9kof5bXImVOaonHonItZ8OA3lJ+1640M/giI?= =?us-ascii?Q?f9Xydknyf0lat+N+8UMq1fIURLH18OEKSS9n7YTVpdShKnaStRViEuvSqpQk?= =?us-ascii?Q?DuCosXJQB08Bhu3pG/EYUJbZMLw5wITcJfRtjY7421LV0AB4/i3X0mB78h/n?= =?us-ascii?Q?lnzIpCHNEaBW4OjdjM1NEHrChJfn/CFb5ELZu7TfmMK7hjxcE+w42Xg/2PsI?= =?us-ascii?Q?UuIxwbv+qa2M72wSNgq8eFLKCWHRPssWS+4VaVmXlSicylWqIYLrCLPCf3tQ?= =?us-ascii?Q?J+vwCx7Fddt0J1bYfL5LMQRWd8M9d1EaBJiliisIlpvDHZch0Ofi29WcNrle?= =?us-ascii?Q?2XVoy/rBP8aASWtq3AKozpNzwgf4sY/7mmG0TYhPknlCdv/kndkAb260lxWZ?= =?us-ascii?Q?esD4QtLqlZmvZhNNqyqlfeJVcmjfnPeVSgXDo7VV9SAj9neCpFt4o8+/W6Gn?= =?us-ascii?Q?bA9Y8ambbW9n3HDaoYrj7ysNcoNnj0n1X6Wca5AbAwxEtx+hkCo+0l6zpa50?= =?us-ascii?Q?rJCxKFqqdShzIBmAiFLPrkq3UO/gJxDej71ZM7Hg2cIH2gFJxhAUXUvyQHa4?= =?us-ascii?Q?NMvGCc+y+Ve42E2Bj2Qrv/GsqIFXVAw6I/RTEEqjH5yz0z0IhqkTe0Q731QW?= =?us-ascii?Q?HuOFE0Zp5eQMYY3bdVPEeFqp0JSg1YVsXXNrH6SHbvSBF9P2nfKkpa8QGJy/?= =?us-ascii?Q?0Bky6hgdb+GY4xDQa/nshqcDEM3IuzgNYLq+tehluoKoNIJNzFa77UxkTS9l?= =?us-ascii?Q?cD3GJ1XxpvRd5/DNkF0COIzHQy/W8k9+f8SPc6HB8R8ozCkQRISEsFgCQmrj?= =?us-ascii?Q?nQV3MFNE1vfRp+XJpCpvcQ1x6q6FKB7pX5tiW2PHXSXtRdhAbf/Ili280sUL?= =?us-ascii?Q?afGS4YUoliDOwr/ApeazR2h/kgyRiwteKZb4e2ciJrbm7d4jOzcTtaQ6fO9R?= =?us-ascii?Q?0ff/vI6JH9d89TcQXH/mhb7Gl58bjXXNPnqJOBvvd6iiSQIphpOqfWhruR6o?= =?us-ascii?Q?eeXs9YB8pRdIKRU5yJgBpXuZZzwc93fyof0ZSbYkxUFBLaFbW+7BOrX7VOwk?= =?us-ascii?Q?AeYkljn9RZWKjeuOzuAYHAltGfRyIJTjnjXftWdrxaqG0nG9/f/VxUJ80lEf?= =?us-ascii?Q?7VJDK0FA1V83d2KAU/1UbEabI2FrYytGXj8YTfnCjCIcIKpN+RRhXnlaByEF?= =?us-ascii?Q?3WJvvSwkfBv+QdUwrqfiLDV1+TE21wq78N1wHx/Fgx2oQ3wru5r/KphZv5Gw?= =?us-ascii?Q?htVyB7U8ZVpjfdDo+5BFSKlKYZ9UDfk=3D?= X-OriginatorOrg: processmission.com X-MS-Exchange-CrossTenant-Network-Message-Id: e779e2af-e444-47a0-8d81-08defb986919 X-MS-Exchange-CrossTenant-AuthSource: KL1PR02MB4977.apcprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2026 13:15:15.1656 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e0544bf7-9765-4630-ab69-0b266dc2169c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: tOZX3P+Ebru92wEelO1EQNnC5qT+SvGISXK1XdKZHFwi6FJAml5EDzRUd9nxedEIyw72x75Y/riQqGiq0e2nyaUjMwdWiuhZGf7+I+flCDU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KUXPR02MB9310 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c40f::6; envelope-from=bin.meng@processmission.com; helo=SEYPR02CU001.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @processmission.com) X-ZM-MESSAGEID: 1786886185726158500 Content-Type: text/plain; charset="utf-8" arm_load_kernel() keeps a pointer to the boot info struct for the lifetime of the VM, so the struct logically belongs to the machine rather than to a file scoped static object. Move the boot info into the existing CollieMachineState. As in the xlnx-zcu102 and raspi machines, the boot info belongs to the machine rather than to a static object: 4d1ac883a7 ("hw/arm: xlnx-zcu102: Move arm_boot_info into XlnxZCU102") 0f15c6e338 ("hw/arm/raspi: Move arm_boot_info structure to RaspiMachineStat= e") Signed-off-by: Bin Meng --- hw/arm/collie.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/hw/arm/collie.c b/hw/arm/collie.c index 91f0a94b6f..01d74ad38c 100644 --- a/hw/arm/collie.c +++ b/hw/arm/collie.c @@ -30,16 +30,12 @@ struct CollieMachineState { MachineState parent; =20 StrongARMState *sa1110; + struct arm_boot_info bootinfo; }; =20 #define TYPE_COLLIE_MACHINE MACHINE_TYPE_NAME("collie") OBJECT_DECLARE_SIMPLE_TYPE(CollieMachineState, COLLIE_MACHINE) =20 -static struct arm_boot_info collie_binfo =3D { - .loader_start =3D SA_SDCS0, - .ram_size =3D RAM_SIZE, -}; - static void collie_init(MachineState *machine) { MachineClass *mc =3D MACHINE_GET_CLASS(machine); @@ -66,8 +62,10 @@ static void collie_init(MachineState *machine) =20 sysbus_create_simple("scoop", 0x40800000, NULL); =20 - collie_binfo.board_id =3D 0x208; - arm_load_kernel(cms->sa1110->cpu, machine, &collie_binfo); + cms->bootinfo.loader_start =3D SA_SDCS0; + cms->bootinfo.ram_size =3D RAM_SIZE; + cms->bootinfo.board_id =3D 0x208; + arm_load_kernel(cms->sa1110->cpu, machine, &cms->bootinfo); } =20 static void collie_machine_class_init(ObjectClass *oc, const void *data) --=20 2.53.0 From nobody Fri Aug 28 00:12:35 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass(p=quarantine dis=none) header.from=processmission.com ARC-Seal: i=2; a=rsa-sha256; t=1786886165; cv=pass; d=zohomail.com; s=zohoarc; b=KQBovq6LonywcwF3EYDyPOsnwr5mmPqpuhqvuE/ORUKaJehO3fdtGcs+Uoy2eu7tVyXFbknCjuxn53SYDTSRcx/2MUIYUfgPj2/aahHaUWG8/FNrI/KZj7Ieg5IN2A7tzvP016iWSbQuw9gIX0ltTjklJG07gAw2RGTymJAFwXY= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1786886165; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=qn0C3ohsq8SJ2T0Y6dvew6X98nn+hPVXNsnhDAMN3a4=; b=knw2HVwlu7Qxuf7D1RsmLC+Iyc+fK8Zve2AswkCyde4pzXrhWz1+6/DNnnAuPgkNuiPyXPxLKDfQ07YpxF+P1DNrhXRfnXqWJgufzMNT/7AtniV5a79CPmYuuwOkLIAlkk3XRJ7UpPW97ackn082NoJmcyZVZBAfTs/UeTTGiLE= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1786886165579862.2371659093654; Sun, 16 Aug 2026 06:16:05 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wvai8-0001ck-L5; Sun, 16 Aug 2026 09:15:36 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvahz-0001W8-TW; Sun, 16 Aug 2026 09:15:28 -0400 Received: from mail-japanwestazlp170120003.outbound.protection.outlook.com ([2a01:111:f403:c406::3] helo=OS8PR02CU002.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvahx-0005TH-Rb; Sun, 16 Aug 2026 09:15:27 -0400 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) by KUXPR02MB9310.apcprd02.prod.outlook.com (2603:1096:d10:9f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.315.17; Sun, 16 Aug 2026 13:15:17 +0000 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03]) by KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03%4]) with mapi id 15.21.0315.016; Sun, 16 Aug 2026 13:15:17 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=TsajT0qiZdZvSc0z8ZKjwBTgOBjlEWZaNFtDtz4a70hms6Y5pk1eAyXYItGrRwmFYX+NpVJc8b5SngdXXhpAxFrP93NUGG6QfFq2qawivDAfGkT24AMWmx7dJYgtykVoObT5Qk9SkxNmSlAKGXbxpaMiRbieteHHBVEkt1Dck9XD7QZfVr9i2EV/EgGuRsWrwJ4R4CpA8Ch8YJGkFqAXY7RHR7i6gyyOW/wkR3kJAeWCKSOx7EecuYdhseC8+ZBOWFhYGupPZdvSU5fktDWVDkANgZoz8EAdHrgn5J7QccO/Qnff/u0ZILD6sB3wcf5UzREBnRHAkIYO66scF2QOEA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=qn0C3ohsq8SJ2T0Y6dvew6X98nn+hPVXNsnhDAMN3a4=; b=f8DyYi74PjP7c+Aohl5AMxQQzGltT8BkrEQwXkp90LkbIksDlqWjfuQHXv7mbJsZc8X8NTD7iV5rSb6d6ipJvPZbUfYrEGnGvYAlHp8UAPwa2dJ7NlYKQBqmn9U3P/eYgyompbiCK3gkByJp8ryDpGR7ybHmf4fbt5enQoYWUkgLeLsTk4eaA4K3bKAYJTTBeNKYyaHUUIcfIazZmCFNl4Iie/EVRK+j+Q0Y2+46Ig26jGl5gvKQDYEVz1cLhKT0yr2HHr5nF+7owNanHrvaHtVn0GwZ41briDenVguhRw03dOzF5wQldsddBi22itD4sYIsyvUkcwbJBD2yAo3YLQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=processmission.com; dmarc=pass action=none header.from=processmission.com; dkim=pass header.d=processmission.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=processmission.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=qn0C3ohsq8SJ2T0Y6dvew6X98nn+hPVXNsnhDAMN3a4=; b=aAtrfIGGHd4BCt/hnWCZoYECHE2hGmD8aCPE5s9V55UAb1y1SZ7PkKxm73p286uV9Lbxw0H3mDgxJez6iFS8IoTOZn0DVNCbTbqceYIrglrUvNkjOXNfJw7cF21HE60dZTJSp8mPJjaWG3r0DPYt/6sTYlNPWuQOu7cOYT5ND4w8tsiAMrJ2nRw5AIqbWBuMd53e5vsMHnHzd8JqGCdxY+E6jG23zgxLhov3qM3sOIE+idRwJxfE7iituFyITyMDE8rdow3JUZBvygHOqrbnL6I3EEFjSiO2coh8nGqrJgHfa7fTstY+MXUE4tEVT8LDKzjy/OJ3eFsLZsC0Y+lI9Q== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=processmission.com; From: Bin Meng To: QEMU Cc: Peter Maydell , Strahinja Jankovic , qemu-arm@nongnu.org Subject: [PATCH v2 05/20] hw/arm: cubieboard: Store boot info in the machine state Date: Sun, 16 Aug 2026 21:12:35 +0800 Message-ID: <20260816131300.51799-6-bin.meng@processmission.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260816131300.51799-1-bin.meng@processmission.com> References: <20260816131300.51799-1-bin.meng@processmission.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TY6P301CA0004.JPNP301.PROD.OUTLOOK.COM (2603:1096:405:3be::8) To KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: KL1PR02MB4977:EE_|KUXPR02MB9310:EE_ X-MS-Office365-Filtering-Correlation-Id: 9b6b4277-2974-4916-2ce4-08defb986a3c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|23010399003|376014|1800799024|366016|10067099003|56012099006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: 4hJFxYfZXaX9vb4P877JTzM3EpTTvDyoCb5KZfQ5rgWY00kOtZN2WNT1c40youHYlJCoUL1gc/0Xk813y8bNjpRca0V+moO4T68aNHTl2H8mX/VRtnLM3xJOgxLp3/E7xJpFjCUk9NM5NN0lCsC58SqJmB6Ow19EcRd0Mn7ytlPLDqmFKndLz6g68WwLquWJUmpucxnfHWuR6ugF9WyWnQs24NDVh7+CFQSgYLgjJ3r1OF7UKi3UbQF0AsNnKd6ehYqK197eNILO+8eXjkUc09VuS+Bf/R61YSMuioQRq3ZS/t8SOoh6iYByq5wuu1Mn5bm0BbZp13U4WaUDcqz4ATGZQirU5CMjDOv93l9w0iIImf9Gv1f3/z5Z4iSBkIjOw3g8rl8DjkvqE7r4u1SkSa7PHjB1DSNK6fWTWShKnXZ6udMRcsn0+9Nsjbmx6Ond2PqrP7upoIDAC9lZ5gUGSLf0aNk5qP3cfPrbiLryZlKS1d5h+YCXr2jt3t6mQGvd7k/HOT85TRDR/Rd6tmJv5W3bWZd49q4KhZH/iYYab2daLJpfVPAEL0Vu24sB9KcpwVaYoOA9IHmpHXRTJSQWXQQ/pr/RWyBuXMnFUGz7x7IFlVf7tt67+njRg8oHmpNI1CYgbW24S+AmSoOmsHh8N6lOdfqWjJsSBYlRN/P4I10= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:KL1PR02MB4977.apcprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(23010399003)(376014)(1800799024)(366016)(10067099003)(56012099006)(22082099003)(18002099003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?rTfpPAs7of/2GPilyN7mDq4feKRaDQwToNQsq3sVuNz7CXN5RVvL2SnaNIZ3?= =?us-ascii?Q?Do+o+PKkjQ9XlIr9OwiLkBGeKfXA0Bht82laG08HU+e8E2PxdtwXq37Maf42?= =?us-ascii?Q?0+SNQ9ar4OvWir73rskOccZ/2QDOxrFLUc/wq+NPgRpFN/J4496WpsmnzsBE?= =?us-ascii?Q?bA+kG4aN2PW+MkYQTkJR2r0LOkEgvCXbGQsNPh26+bKybWZCQAoVF76PDABl?= =?us-ascii?Q?fUVnLnV9duQdk0dNG7jlJI9ah4dzHpwrZgUVsFiFUyQzUYMLJp6xn6K+E0C8?= =?us-ascii?Q?U+zD8n3qU3dIcS08AGJ3msLA97GLX0Nv8pD7cwI8wWIwtDFk35aLYqtMVOBw?= =?us-ascii?Q?LitNfwkddZPtk5qhZyWQ/c8Jx/DhpIcj0WLSe5zcI3I8+CzbC56dnlCyW2YD?= =?us-ascii?Q?+Kjg5sKYHza4QMIZnKypiLtyaJaBg18mu2sK0VR2NughBu8QWsn2YGP8eZNN?= =?us-ascii?Q?HV+Dw1zX+x2zu8KpVAEx0JVGZHJz8Y6QJtwdtoLzlX6U1shtrny3S+tQ8i9e?= =?us-ascii?Q?B0Mw+AdKMW7eXIDToqEkc7TtIa0IzG2MO3N8eP9OU5Bz286qiyyYE338Bbyl?= =?us-ascii?Q?RpHVmr5dwtzcU3LQYbtphjbsZNizNQz5Gi9Xvz9Fn9ST8Mn7zLC1JaoSDKls?= =?us-ascii?Q?7NzvhYUZEcCyVDbfM5/SMewf1MwAFPX9BtIapFT+x2/qEldhTkWEbnWGS/ca?= =?us-ascii?Q?7/ZCC+SSJqJN++5wTYSpj5EhvMHUi4O5YXuq5yUbXcGzON3JCVYaFk7QYqST?= =?us-ascii?Q?O44G9L2OKEf8wsJ8mQ74fU/Sk/9qELjeRzounweqonzpuWlvxDutScgi8jQQ?= =?us-ascii?Q?Gld/3ySn1vhSYnoWqG0OW/421Pmr+LjNhumHjGHIvTuqXkNXIILFJ5QGjAy9?= =?us-ascii?Q?/25ZPF/g06CxUW1WKj2SfMh0lDwotF0m+dmzYRs6Y5gUMlVe2IW0skTlk7wZ?= =?us-ascii?Q?7dbJh9n/+4iozisz/waRyhip6DlLLLjtjBwlMw4GlAZ0kjwPnT8s1eQQf4oF?= =?us-ascii?Q?b/0mnCcqn1YfJbTiFNflm0b+vGaC5IbmfyEDgKw7spqSNnazqaOhv3N5r2ez?= =?us-ascii?Q?YChX8ioHHOLBUHK/YBnXmHJaNbOoQhcOdq7xQ7GYMtQ+sd3NOhSdTTScVhqs?= =?us-ascii?Q?H4BBlpP0KplHX6YSa/IdvFxGqy4xQs83F0ujfbkRHj6XrOunalVgml0x4IBi?= =?us-ascii?Q?vHxAjtq5MbfX2lF9Dz6rBJt3XQp+9sfVcGYDbXYCAJ2QQBW5tuwJMBJxlits?= =?us-ascii?Q?zzUBPT3HssQtFxE9cj8s9+4i8YW50OSBXx/DVmos+qyWcZ8yWlkjUcCHF53S?= =?us-ascii?Q?OhesODzfxgjSsjpAtilZLoljbepiYc2hXbEcq8lQCRSFsBZmXYPKXKFQqRMG?= =?us-ascii?Q?12cDroJy9UtSK1hqZZb1ZuOL0ZPsum7vgvJaQCwyEjMWRX91Qpg8FtiyA8Y9?= =?us-ascii?Q?xl6lz92NgIqTOmaI+4ldopfJ86roKt9zZzgG7y6iJJNvPrM1tJ/ZIATnewJK?= =?us-ascii?Q?EnVxVbNEo00QimEE2Rk6ERrj9h+OSG7HkPdHC2VAtzuATB6YQkmlLXnNT0lF?= =?us-ascii?Q?hrDXh6SO2k/UtKGUnQwV2/wwBxcY2mpeZg0eNHvUJapyC2CvV+8fri5hDA9m?= =?us-ascii?Q?1+JN9Wy5lWJCO9letqXXidCNi1AK/OxXw22jaXOrwK7f4OHhTP1kajm1QDzO?= =?us-ascii?Q?Z7wOfeFXXyme0rSnK5T+7AMDG5zThMd3RnY0VD/6NbV9nLhqKnVJVoWb3JEy?= =?us-ascii?Q?ujloIDMy0EeiBUnfyMKcN6WwrO9Y/lo=3D?= X-OriginatorOrg: processmission.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9b6b4277-2974-4916-2ce4-08defb986a3c X-MS-Exchange-CrossTenant-AuthSource: KL1PR02MB4977.apcprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2026 13:15:17.0467 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e0544bf7-9765-4630-ab69-0b266dc2169c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: c13SU9//ZlqYek9fHUv75Txx9RS447nAHNpKLSI3pmyl1p1LeyUj373Adum2X0gwXKo7fnTQp+lTEqkLeMzn7Ev7ZIJ+jSEVyBz2uGCaJIQ= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KUXPR02MB9310 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c406::3; envelope-from=bin.meng@processmission.com; helo=OS8PR02CU002.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @processmission.com) X-ZM-MESSAGEID: 1786886168619158500 Content-Type: text/plain; charset="utf-8" arm_load_kernel() keeps a pointer to the boot info struct for the lifetime of the VM, so the struct logically belongs to the machine rather than to a file scoped static object. Move it into a new CubieboardMachineState and register the machine type explicitly instead of through the DEFINE_MACHINE_ARM macro. As in the xlnx-zcu102 and raspi machines, the boot info belongs to the machine rather than to a static object: 4d1ac883a7 ("hw/arm: xlnx-zcu102: Move arm_boot_info into XlnxZCU102") 0f15c6e338 ("hw/arm/raspi: Move arm_boot_info structure to RaspiMachineStat= e") Signed-off-by: Bin Meng --- hw/arm/cubieboard.c | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/hw/arm/cubieboard.c b/hw/arm/cubieboard.c index a643ae4e27..d59c1ebba7 100644 --- a/hw/arm/cubieboard.c +++ b/hw/arm/cubieboard.c @@ -25,13 +25,18 @@ #include "hw/arm/machines-qom.h" #include "hw/i2c/i2c.h" =20 -static struct arm_boot_info cubieboard_binfo =3D { - .loader_start =3D AW_A10_SDRAM_BASE, - .board_id =3D 0x1008, +#define TYPE_CUBIEBOARD_MACHINE MACHINE_TYPE_NAME("cubieboard") +OBJECT_DECLARE_SIMPLE_TYPE(CubieboardMachineState, CUBIEBOARD_MACHINE) + +struct CubieboardMachineState { + MachineState parent; + + struct arm_boot_info bootinfo; }; =20 static void cubieboard_init(MachineState *machine) { + CubieboardMachineState *cbs =3D CUBIEBOARD_MACHINE(machine); AwA10State *a10; Error *err =3D NULL; DriveInfo *di; @@ -103,8 +108,10 @@ static void cubieboard_init(MachineState *machine) } /* TODO create and connect IDE devices for ide_drive_get() */ =20 - cubieboard_binfo.ram_size =3D machine->ram_size; - arm_load_kernel(&a10->cpu, machine, &cubieboard_binfo); + cbs->bootinfo.loader_start =3D AW_A10_SDRAM_BASE; + cbs->bootinfo.board_id =3D 0x1008; + cbs->bootinfo.ram_size =3D machine->ram_size; + arm_load_kernel(&a10->cpu, machine, &cbs->bootinfo); } =20 static void cubieboard_machine_init(MachineClass *mc) @@ -126,4 +133,6 @@ static void cubieboard_machine_init(MachineClass *mc) mc->auto_create_sdcard =3D true; } =20 -DEFINE_MACHINE_ARM("cubieboard", cubieboard_machine_init) +DEFINE_MACHINE_EXTENDED("cubieboard", MACHINE, CubieboardMachineState, + cubieboard_machine_init, false, + arm_machine_interfaces) --=20 2.53.0 From nobody Fri Aug 28 00:12:35 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass(p=quarantine dis=none) header.from=processmission.com ARC-Seal: i=2; a=rsa-sha256; t=1786886173; cv=pass; d=zohomail.com; s=zohoarc; b=arg8GsWU6TJKFH2OStEZNfNESnmV+ZCgSI1F99nF0ihLit9MFlMPjIWfx8FuKneydgq/Jeq0XskMJnKPz1Egfllh6Ae3GVeLjqWuqJVz+9vsRoDO9lhSGvcM8cKiFC1k0GV0I1udqM5gUl1NPoesxpiuz9N0perVhTZf2Q91+RQ= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1786886173; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=d79OC6C+eegIaqkDVi56PZVegbv+CFn9CEvYsX9ar0w=; b=NNxHq9pmRJux4C/VR+E2HjRPeJUhkE5koixkMha+fVW4P5SI+n2YH0nhU3/8erkdE8pDZojYHQsVe222sHPT0VqdeDjVdPkZF6YGcfTJl2IKP8l+ntgsI+di2YDU2N9u2/DhOCpmBeeeVL/Y88Lkm7apTk/eJFfiJEj6d7LZnxc= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 17868861737850.8490933621169461; Sun, 16 Aug 2026 06:16:13 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wvaiB-0001f9-Lr; Sun, 16 Aug 2026 09:15:39 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvai2-0001Wf-66; Sun, 16 Aug 2026 09:15:32 -0400 Received: from mail-koreacentralazlp170130006.outbound.protection.outlook.com ([2a01:111:f403:c40f::6] helo=SEYPR02CU001.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvai0-0005Tk-8U; Sun, 16 Aug 2026 09:15:29 -0400 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) by KUXPR02MB9310.apcprd02.prod.outlook.com (2603:1096:d10:9f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.315.17; Sun, 16 Aug 2026 13:15:18 +0000 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03]) by KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03%4]) with mapi id 15.21.0315.016; Sun, 16 Aug 2026 13:15:18 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=UmOd25cu1vrE8AmPyEzM/YmoWysq6u0GRWkk10+VY6Jdmwt8e9Z7s+IIcOO897Pig4KRuqqkB30H6ZCHAA6aVoQzCMSHSJVz35CsStW3AvDx1erBlnLvYzoErCC21Pn0lAPxBBzpp6ULyoIh+8Th/os+6mmvKvONatkpUVi6aX4Sp+hMggnMjVhYTI6FC3kUV0Jyu5MpU52ZNO9y9c+duITXU5pVUmbMXUQbyF3K4AQgbJHoJajYIKusXRMDW3PUrKhcW/qWXFU6VMY/bKodaoqqZpMPMs7fBjoXxH+9mmIcGjWKx2tlJIi2S824CH+Zl3nW8Yk6Vl40uZAoUt5L+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=d79OC6C+eegIaqkDVi56PZVegbv+CFn9CEvYsX9ar0w=; b=OUm4eeUNSl9mH/3zdxt5cxOyV/o4rgyQ2BfMbvC1TPuSnMgv5fVNPzJRQK8xjzy/ZTxiF9IPvh1thgiIjxEXGXxASaynzDZl1tyb0ZzKWOU8HBbTh7W+wFNOmdy0BUotC9poDjcB0o6ds7qVMY3AY+HW2M1aoKb8zzt12GBVk052jLt6vUOhAAHHjGb1DUPaPe2Re5nedaUwl+Zz2MhZEw3yoJEqD/2rGZMjWu6oViOCdNujvdg3g/pSLGv8LB3gsq6cij2/ifT31oeV4S0hQeZ7QLcHMyNKVZo+rNHE0qAvlpHD2gSmAnlHgXgruRXt8mfI3VuAr1rpxqp+vCMWAw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=processmission.com; dmarc=pass action=none header.from=processmission.com; dkim=pass header.d=processmission.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=processmission.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=d79OC6C+eegIaqkDVi56PZVegbv+CFn9CEvYsX9ar0w=; b=cWO2ZoD/q22T1fNQayXDwQngwyHMi8nm49nGqgqOyvM2jyR71yRSvErB1L7q6BLlyhwh0oUSSFlywTHd1BxjGCdGM5IO2MFVwaob/qA3RkdluA55h5NkfGW37GIryQuafEmcamY8VVgPJR3ahLV+OY1bU0VQC7oBCRR2iw6vJWIvc5641+48FzRk/7V5VdcwhBEXUg5C9e52jTBOURaahncjnpgTrex1ED868UcGfqsoFizQ29IFP8Tu10y+leZPFbRne1aydM3R3dT+CpcAjYKcU82lG0hb8G7L7XZq/a8ldK8odCMTKNrBVLpkl9GFlO3j4rUjVz8Lb5n6JHTkCQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=processmission.com; From: Bin Meng To: QEMU Cc: Peter Maydell , qemu-arm@nongnu.org Subject: [PATCH v2 06/20] hw/arm: exynos4_boards: Store boot info in the board state Date: Sun, 16 Aug 2026 21:12:36 +0800 Message-ID: <20260816131300.51799-7-bin.meng@processmission.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260816131300.51799-1-bin.meng@processmission.com> References: <20260816131300.51799-1-bin.meng@processmission.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TY6P301CA0004.JPNP301.PROD.OUTLOOK.COM (2603:1096:405:3be::8) To KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: KL1PR02MB4977:EE_|KUXPR02MB9310:EE_ X-MS-Office365-Filtering-Correlation-Id: f70432c0-2f64-4faa-d740-08defb986b43 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|23010399003|376014|1800799024|366016|10067099003|56012099006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: mv40TsTNdQrvo2MrJKU/WiCW2r5tcJgq4YE3bib002tNijOum8yQURZ/ZDQ51tvEjwtn/yWCd+Dx1HTqwUD4o3BFKWMINXS9qE/8EMjmNGJsTWrhcw381qqYJyXgr4WJwehzY7bEVtErzyAoCdbE2iZD/9BKCnsv76rLJLwP8hpb9s5HRE+oWP0jEwTQYMquXYDAeVnH4mKQoUi81F9DFC1kkDEtGblpfJOVuXp3HsUBdkJgJ+lLmeJ2MBOxo8/vrRFZ4pZpQfFRAPJrh50VNeSBrJOD4+kgcIfPNeXlQ9aJB7FhkcLSMwaCE5nOFp3I+aICDPQA3Sy+TPbEefWNx9XW5z5x9NTJvlCgyVYePcMtLaR4yHZEXKWrEaI8BdtKbl2hnh8KFytfneDJaEI49QidC1xGVnbrK9CIwZrotyechrreWrBbAI9LZpf+xLfOJKd5Ym5b4I9jKlsnfjUJILrl/sNUbH8bXqMFsyd47KYtxMbHhCfkp4np2KjKQvP4CAxcHfUCMIXhEfi+smVZPoaH8mUkaYEHpxRyAnrhTXt+vA6K9eM7Ow0trVsT12dFDnxEUO8h0Gw90HHAqlUaZWINjnEniBVF/uVLSlU6ecMwwM7NXGOQqgAFa8N1msSxwUZZx1FdGi3DsqIyh7IDoESkeqQY56tAJLBGWB55xGg= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:KL1PR02MB4977.apcprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(23010399003)(376014)(1800799024)(366016)(10067099003)(56012099006)(22082099003)(18002099003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?DLLFzUNvYDiQ5hmTR9uTYLiExz58hmyWxJqjMe3/T2ObW5bZykui60Jb0L31?= =?us-ascii?Q?07MigTdLxWsblVn15ayew4WGOc7tiD1PurIpCpULBhQnl9TB19JizCmDjoih?= =?us-ascii?Q?4eE43aaFQv/4i5j3/a3aE+EWg35QsLB16MgU/SmIosSn4EgaCQno3Q1BLp2Y?= =?us-ascii?Q?aedyLVoRczeoBryycpCTJNSFo2QnKafxWeWroEEqtTP8pY+97Jb0w1SJ9OPJ?= =?us-ascii?Q?4CqoZp5tgOFlOxFYZgVZIVYzljYSr0azQOC6J2JvaFLeipGKYsoydYeNO9Mm?= =?us-ascii?Q?tQIk0l9jZ8MMiGcPezczvzc20+LOPkAmZlJPUvYpPf84wiCJ4O1KZF0nSwsc?= =?us-ascii?Q?n+IZyvuwoFhwzEd2VQry7Cutpc1wB96/G9uxS4eDEfL3W1UlEDPTjF+DPkQR?= =?us-ascii?Q?lzLJbB9vhWg2mRLFWmR9/a7QZbo+RfIBWaTN1E4OB1ogSsDY9+GYIe8TuSUz?= =?us-ascii?Q?zDX37myPy9Y8NZfJSDL8YEtfzUkK467vifdvEvnavWiMaYQ8o0YVo8kfMkgN?= =?us-ascii?Q?DsV4dYsAP+Vy+vVpWbBMjv329j4gAjaxbW9PVNfe21jTrbqwr+F17N1Aw/D3?= =?us-ascii?Q?4wjbySSSSGrI75WVLCtZrIGvmdIYqpwZG4g00hVb0deGqSXayXM524SfOgfE?= =?us-ascii?Q?qTrTLgY4xxLi/sMPWJ/iWokIaHbZi5jYcF9UgWF9AR1OL3v4trn3/CaRbqws?= =?us-ascii?Q?u3KvlxlJ8CoupFkey1BjD4nyjPaAng6vdaFXibGGhsW/2KxO2G1cpXl07qLs?= =?us-ascii?Q?GxhtKoDx1i2EJ7VIqV8j7EqQw7WJwDnQi7dfkQN0mZKvW4I/8qfGVLMVkZBk?= =?us-ascii?Q?Bh+8ZN60+ZbL3LJGISqIVfAbCfJzSdzRX5BikTnH18CTTY9aaIYeKu5TV7PH?= =?us-ascii?Q?NCoumfMgExtF8nA2Qrz1LmnnY0fM+X+2RLZzMCBCSD2LbZDQZoDXx9nF26E3?= =?us-ascii?Q?Jp7PSa6cw4mEKlLJERCjeedCaF9k80n7mhWI1taXI6QhAVUwBSqpjJ54h9aX?= =?us-ascii?Q?azF9r8bW4HfBjiC9WFXy/pPi4B7pQEhsy3wHNuJNOGcXB6y040GOhvuMr+Z2?= =?us-ascii?Q?wusWALL4NUE3HQYGqnAYQVcOMPtdhur54KfEhl+ECwMdlUh/apPfrZqLMpgh?= =?us-ascii?Q?fMNbb4OOHll4+sJWIEGA/Xv7c9nqI+yqbfM+oIap7PN98caUN91V+R+dLFQg?= =?us-ascii?Q?n94ZkSYriNyKsxZofsvyUSrkX3bBcKiIqe+mK6NbEIH3AdJZ2CZxp8pUCgZH?= =?us-ascii?Q?q74dyxNdJMfVjCrbNYY9a7m5Y0rz2SY3YsnMBwR6v6Bqni2tGFe1GHDEfMBL?= =?us-ascii?Q?Bgj+NV7LvQ5yjC0tkmlN2kQ2CbQGQQLdN3KeySyHlW9SUdHQ/BFWS1AAKjPV?= =?us-ascii?Q?tMiXW21lhb29yjzsAXtH4WzuU23WVA4s29/44ss+O5jRRzYOAD0Pup3yqrkL?= =?us-ascii?Q?vihdIZCtB9UciyUZywf44CIObZbrd4WUBJ3l288ZRd3/3KilHLIqGU6e262o?= =?us-ascii?Q?Fg/gN7VcM5iva7IYr9+QC8yBXvpX2vn7BE29EPCn3Js3YjpQXbjvSuwCEtww?= =?us-ascii?Q?K0nTNLAIwz02M+/AZeIsWq1ymGUu2ks/r3xE5q/JHvgPP6+4GPqNajCHN8h/?= =?us-ascii?Q?nBLkdNXo5j2fem5fJPjO+yaL9jix7UBjSGmptF6zNNcITJd5Sm5YERs9/nMJ?= =?us-ascii?Q?KIGG55OcAKfxznO9YNWRxgYliFrKKJcV/xL6MgH9Z7L1h0ksqlQ/XoYaljx7?= =?us-ascii?Q?sdrEpn30NAoYJAk+w8qwxhzRJR0sAu4=3D?= X-OriginatorOrg: processmission.com X-MS-Exchange-CrossTenant-Network-Message-Id: f70432c0-2f64-4faa-d740-08defb986b43 X-MS-Exchange-CrossTenant-AuthSource: KL1PR02MB4977.apcprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2026 13:15:18.7675 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e0544bf7-9765-4630-ab69-0b266dc2169c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: TEW30FxzEqlPmglknivf9hfqsF6pvslU4vAqHHG1+F6wwuv50LoM33Cvm3MWx4IP9fcZUlpWP6/1weq/aeYlEG89uDf/FTOJaURnb+Q487g= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KUXPR02MB9310 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c40f::6; envelope-from=bin.meng@processmission.com; helo=SEYPR02CU001.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @processmission.com) X-ZM-MESSAGEID: 1786886175478158500 Content-Type: text/plain; charset="utf-8" arm_load_kernel() keeps a pointer to the boot info struct for the lifetime of the VM, so the struct logically belongs to the machine rather than to a file scoped static object. The Exynos4BoardState struct is already allocated per machine instance, so move the boot info there. As in the xlnx-zcu102 and raspi machines, the boot info belongs to the machine rather than to a static object: 4d1ac883a7 ("hw/arm: xlnx-zcu102: Move arm_boot_info into XlnxZCU102") 0f15c6e338 ("hw/arm/raspi: Move arm_boot_info structure to RaspiMachineStat= e") Signed-off-by: Bin Meng Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- hw/arm/exynos4_boards.c | 26 +++++++++++--------------- 1 file changed, 11 insertions(+), 15 deletions(-) diff --git a/hw/arm/exynos4_boards.c b/hw/arm/exynos4_boards.c index 1b8c9b618f..b7decdb2c7 100644 --- a/hw/arm/exynos4_boards.c +++ b/hw/arm/exynos4_boards.c @@ -49,6 +49,7 @@ typedef struct Exynos4BoardState { Exynos4210State soc; MemoryRegion dram0_mem; MemoryRegion dram1_mem; + struct arm_boot_info bootinfo; } Exynos4BoardState; =20 static int exynos4_board_id[EXYNOS4_NUM_OF_BOARDS] =3D { @@ -66,12 +67,6 @@ static unsigned long exynos4_board_ram_size[EXYNOS4_NUM_= OF_BOARDS] =3D { [EXYNOS4_BOARD_SMDKC210] =3D 1 * GiB, }; =20 -static struct arm_boot_info exynos4_board_binfo =3D { - .loader_start =3D EXYNOS4210_BASE_BOOT_ADDR, - .smp_loader_start =3D EXYNOS4210_SMP_BOOT_ADDR, - .write_secondary_boot =3D exynos4210_write_secondary, -}; - static void lan9215_init(uint32_t base, qemu_irq irq) { DeviceState *dev; @@ -113,14 +108,15 @@ static Exynos4BoardState * exynos4_boards_init_common(MachineState *machine, Exynos4BoardType board_type) { - Exynos4BoardState *s =3D g_new(Exynos4BoardState, 1); + Exynos4BoardState *s =3D g_new0(Exynos4BoardState, 1); =20 - exynos4_board_binfo.ram_size =3D exynos4_board_ram_size[board_type]; - exynos4_board_binfo.board_id =3D exynos4_board_id[board_type]; - exynos4_board_binfo.smp_bootreg_addr =3D - exynos4_board_smp_bootreg_addr[board_type]; - exynos4_board_binfo.gic_cpu_if_addr =3D - EXYNOS4210_SMP_PRIVATE_BASE_ADDR + 0x100; + s->bootinfo.loader_start =3D EXYNOS4210_BASE_BOOT_ADDR; + s->bootinfo.smp_loader_start =3D EXYNOS4210_SMP_BOOT_ADDR; + s->bootinfo.write_secondary_boot =3D exynos4210_write_secondary; + s->bootinfo.ram_size =3D exynos4_board_ram_size[board_type]; + s->bootinfo.board_id =3D exynos4_board_id[board_type]; + s->bootinfo.smp_bootreg_addr =3D exynos4_board_smp_bootreg_addr[board_= type]; + s->bootinfo.gic_cpu_if_addr =3D EXYNOS4210_SMP_PRIVATE_BASE_ADDR + 0x1= 00; =20 exynos4_boards_init_ram(s, get_system_memory(), exynos4_board_ram_size[board_type]); @@ -137,7 +133,7 @@ static void nuri_init(MachineState *machine) Exynos4BoardState *s =3D exynos4_boards_init_common(machine, EXYNOS4_BOARD_NURI); =20 - arm_load_kernel(s->soc.cpu[0], machine, &exynos4_board_binfo); + arm_load_kernel(s->soc.cpu[0], machine, &s->bootinfo); } =20 static void smdkc210_init(MachineState *machine) @@ -147,7 +143,7 @@ static void smdkc210_init(MachineState *machine) =20 lan9215_init(SMDK_LAN9118_BASE_ADDR, qemu_irq_invert(s->soc.irq_table[exynos4210_get_irq(37, 1)])); - arm_load_kernel(s->soc.cpu[0], machine, &exynos4_board_binfo); + arm_load_kernel(s->soc.cpu[0], machine, &s->bootinfo); } =20 static const char * const valid_cpu_types[] =3D { --=20 2.53.0 From nobody Fri Aug 28 00:12:35 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass(p=quarantine dis=none) header.from=processmission.com ARC-Seal: i=2; a=rsa-sha256; t=1786886191; cv=pass; d=zohomail.com; s=zohoarc; b=lIps4y8/2ZG0tVNH2mKdaBiGwn6cyPcnmBFyku+TntGrDEteqFMus0fhUsWjEcDV4IwVUNeV6PSF3xF129RVIFo5KTlbX7wEaTkA5DmMFlau0h0tvyFh7kLZvUOFUDoyTjWVMLN9Q1VcPRvD9jVBoeWf9UHYVwETT5bX9zFO/n8= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1786886191; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=KLHBjZ7VjmMIGrOCz2xXzQaj47Zv4Hp/lcFm0AE597Q=; b=HhOfcg3HeE065IH8U+nUTbiFV4rALxAVWHNntP6fI8A2FZPKyVa/CXLR7VCNT+7OFAMrwSMwEoM2lzT7yExvYzHJVZozNFvWeBzwLknmGfCB/EL9+3aqpAzH2ZO6rjVRMcpT7ektewS2O04h7RY3d+Ch06D6eHmzeZBTEkyNo9Y= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 17868861911881010.0948342668291; Sun, 16 Aug 2026 06:16:31 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wvai9-0001dU-9t; Sun, 16 Aug 2026 09:15:37 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvai2-0001Wg-Mq; Sun, 16 Aug 2026 09:15:32 -0400 Received: from mail-japanwestazlp170120003.outbound.protection.outlook.com ([2a01:111:f403:c406::3] helo=OS8PR02CU002.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvai1-0005TH-8h; Sun, 16 Aug 2026 09:15:30 -0400 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) by KUXPR02MB9310.apcprd02.prod.outlook.com (2603:1096:d10:9f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.315.17; Sun, 16 Aug 2026 13:15:20 +0000 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03]) by KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03%4]) with mapi id 15.21.0315.016; Sun, 16 Aug 2026 13:15:20 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=gfFt0NvuMwXnJVOcKd4fEJ8J6H1hS3ssoMewavKImpxQBYFxzLii+Fi/R660HykXvTgPz+InqiPOzVGohX2LA5G8W3Zvw9TG8TULdTqjEP7gws1ap4K3KzRvwBFzVJneJxVwiYRDvBX1VfSVwJBMSD4u7s8EkY1Z6/HQlPmgsdYrVvli8nEk3PctNapTvY+d/Gv4rASFLOCPXFNW7YRcOiWiCkpV5JXpNdBbFSEaqUGb5qHFT+kT7OHWB0w3QYe7X8pwzdjR4stxF3XN6cJ0YLMI4juBfOnocFvjdz3uN77lMf16Nx+59anyOwjqSNE7OxIXYlBwT+f5XhP6PZ7KCg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=KLHBjZ7VjmMIGrOCz2xXzQaj47Zv4Hp/lcFm0AE597Q=; b=ZdMtQ7VPxgH9YuWfe2WBKZv9vT/o2YiwtctNggPpCZtLmdgGZ7MLv2k76lL/OM/kVouxHzJPPqHsH7KZwuiFqA4WZUVPGf7yjAkyeObJSjuHmbU2cTg9Ch7pOOtqaXy1DTaBNg9/VuwlCIBoJr+VFxAyn+mAxHloRjU2010Y1OAVRbexwXV5SVYesPOMrOQsIDkQATDZ2T23qMMdBylAfVHIFgiMU78kemV+n+GEXOJ0WdcZJ5lihZJqfLJshph75w/za3YHkn4jU8jR7vdRO30l0e4zpH9x6Z0q1bzyCkbzyXGSnabJgDU9FiYEYRRnfV89bchXnNyeolEZJSbxhQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=processmission.com; dmarc=pass action=none header.from=processmission.com; dkim=pass header.d=processmission.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=processmission.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=KLHBjZ7VjmMIGrOCz2xXzQaj47Zv4Hp/lcFm0AE597Q=; b=mr49FiHTuznpFeHDeljei5Pws44+KvedMGUdGhK37xokkVKorYz7pmdzksfV4LJfzks6ud0xWwnpu0B3VNvB4keXxbO17cBRF1+5jxwpLOkcVJLNZkggFfsc6MWBwkKtTCbi1WjyvTEVIcW1JEJ7z8mIzXeq7V4xQeEKc7qoqb6rRiZtl3A4IPfQaa8wGDtmkrbRhdO4iAvSJ36JmrtvTyP8TsP0GFc1x8EEy5ri7WPvx7UDOQWWESFpWp98dgRT+L2fKIsf//P3MwdWOBhXpsSPv69P5yrX53fLVA/3ScvbJfRZQ4G93/k5EYeJPUK1F0Tap8PmyzfVF9Atn07m0A== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=processmission.com; From: Bin Meng To: QEMU Cc: Jean-Christophe Dubois , Peter Maydell , qemu-arm@nongnu.org Subject: [PATCH v2 07/20] hw/arm: imx25_pdk: Store boot info in the board state Date: Sun, 16 Aug 2026 21:12:37 +0800 Message-ID: <20260816131300.51799-8-bin.meng@processmission.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260816131300.51799-1-bin.meng@processmission.com> References: <20260816131300.51799-1-bin.meng@processmission.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TY6P301CA0004.JPNP301.PROD.OUTLOOK.COM (2603:1096:405:3be::8) To KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: KL1PR02MB4977:EE_|KUXPR02MB9310:EE_ X-MS-Office365-Filtering-Correlation-Id: f87d378b-ec7e-41e3-fee6-08defb986c63 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|23010399003|376014|1800799024|366016|10067099003|56012099006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: +R4bedxHLdfuoR+5tXdCCx30IucvWsY/xIPcebyqSE/VIHZDBtCiDTnP+c9qbjf4PYMVUzCu3NWYpvUXxkpUMO7KuKNsqreSbxdsF+3Z/hpTJBvqgG5JdQSembqxtXsZq1cfZleujTdk6aJE6AwjTmFG2Qr7g4aMw++aFIt+Yc3oEQAqNq9FZClD4Xd9+1uhezbdhGjnjwtI2wZm9Pp41Hd5DeC9YTmRvBUc1DKXP2/iD+lTpAmjj6Gd/qI8wqAey8cN+PhK5BKllo6VgERq4Kf404q2iP4+W5JWhGUx7c1mgD03e5UEywKfDTEptUfhucEDv0GXC2phbKRtI2YxxiLZhE6cwQiWhwmk/nW6zdjjhOOOBvGZkaUPNURl91y344bH7zE5HqBLtQDWHgZonhq05qd9WoQKMaP52gnLz/vueGfGwUu4tErqHZH7NFufTGXrYcGZ0VvQ2Nqqcv+WtTqb3CEPGQq/OnSXu0f0aVL7UhWAciJeVJzMMd3w07W7lO27Ed9T5gZ2XQG1YD7b0qFb99IYdeNDx7HhlvkaSLIsOJJCwxxFh2C1uPJG6UWZkeFXfjVgfxxjNXwIw00u4m91tV3VmfKIbXBUx2tg76Os6CYQxhr3SV7eeWofVj1B4aXCKi82d2VcPPgwLrd3Plz1LY1OtDYIQlGJFDbmrdc= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:KL1PR02MB4977.apcprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(23010399003)(376014)(1800799024)(366016)(10067099003)(56012099006)(22082099003)(18002099003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?EsVFPN+krSz0OPfZsX8kRWj3/N148Ix0DPWSA4rSQhDP4FpoYSBMCCOaQWc0?= =?us-ascii?Q?Ucd46TUpJxIQ/nyktQoWEPZP6TX1Nl8YjBsRNQJHbfo2cYU/bk5Kcib/sBsH?= =?us-ascii?Q?TZ/6zyt9uZEp8Fcno0U2ciXv9AlukGkE/0S0t2MXGE2ZfrB4gxwbmJa5ELzc?= =?us-ascii?Q?lnzzHWqrXAjgzf1MV2dRtmspg/ADn0XT+U3prGaM1R+MHS/7seVNpESuZM3v?= =?us-ascii?Q?0Gzh9GuEMI4sQhyLH6vfot+TDqkTE0SFN+ra23i3C7+4gZY/15UBhRQwYrJ/?= =?us-ascii?Q?yMQjiEFk4wVZeYPW1iLVrZO7bLovbOmrne0kH4hxzQ47qZAH/QDot25HyiDw?= =?us-ascii?Q?fjWhkDveJ3jBTqbSlQ4bNmoq5RwHRCiuyu/vzD8lrlkso1bWX2Tke3PdVkrh?= =?us-ascii?Q?KiFhpv1C6KRQzZkrTgGhuLXepbHxY6rRhrbBd60+FUEjuRji4KhxDCgfMYDE?= =?us-ascii?Q?bFpSP0HQ7nDYdZfZ0tN3N+Rpwo/qw8AzYUltUzrGY4zE3hB6GzgPLYw/rK4o?= =?us-ascii?Q?KX1hZ3sBvIVuTAlKySG3j+bLQ1ao2VqocR+kD3754enXnbKr5cLHyUDcym3+?= =?us-ascii?Q?SxG9yfwykYPb0Sk2hXT5jXcC9pdEm7nc2zARhHdKNPkSiFiC8CV3pUZL+L8S?= =?us-ascii?Q?Pg1+2pkYOWGHAOaqyYJyAaWylSGkWBnFLAfAXAUAc/gD7q/Jh3eHDTcTb0Aj?= =?us-ascii?Q?Laq/ADJR4fXmJ+MTclhprdLgzSTSoR31/kGN+ipUn6rHLCpI19D7+EwKg0sJ?= =?us-ascii?Q?0AfOxjdwefUlBOPD7KIp2s2cutMXl1AsE0p2mmNVgAOn3hS1GB+8fNEKLmP2?= =?us-ascii?Q?oGYACwpEgTkX+h3M7FZ5jGdBtDEi88f8FoLvv6s7Riwee20iskmMlO0N+MNL?= =?us-ascii?Q?eKYd1sEOoPcscrvo4nAT0YmAKfNjh+c7Cc+PyUqhtWN1L0cBmqexhQOrgzmk?= =?us-ascii?Q?mNDtzhZlN1sh4pq6x85L6MXAgJF0UEuD3MQ1XTLI8ERBAGS6VRHbXfq5eANC?= =?us-ascii?Q?RNP50imXO4kgNtDGLLcFcDGm7Qlpp9yq1W6FLm1iLrzA+qVkb/uqxhtrWasP?= =?us-ascii?Q?3YDrr0swmPcfmDyUIsUhvMMlIGK7PizYX2rZja+n8i4OKDYXBXOAhPQMKOb2?= =?us-ascii?Q?HD191jZQZFmFhygFmmA6iEym0oLEYk3SEikjZZW5i3dfYZd3l7+PVOigCO1q?= =?us-ascii?Q?2LVoT2YKkGgtxuZZnA05mEprUy8rZcY2YIA3YU2dQjoHHbQLmoJJVJsZOK7J?= =?us-ascii?Q?vzN+WCGHJ36eFB43PDv+HSrtCT8Z8qoK5MF7jwTbVL7NBofYK0XI8VjVAaRj?= =?us-ascii?Q?vMX/t3Ww2yy/xn8a2VUq6ppxAh+lyxM9u708D2zGAnfVfh9RNPJVS9twaA+f?= =?us-ascii?Q?kU18n5sbYGdqx96azuQuHJWUW6zr7fDbW9VEHflvRxHdhJZWWp36NkJe/WwX?= =?us-ascii?Q?/jUIwQF9F2s7mVQisfBjp8+e+FMIbcdGiN3IxGrgcrltb8tH1r/wmhzBkx3i?= =?us-ascii?Q?o6m5aAwAz4YhA6K1UnvOBq+4Mf3nXsrIF1a3jgB/2m5QGGOD8nWgWow6q49r?= =?us-ascii?Q?1+fgOGWIA/NArIOtzBZKVmhBH5ds/xkgUV6kevs+Y4b1nWR6jK7u7c4Y2Wu1?= =?us-ascii?Q?RkJ2wXEwvAP+y9cAJZSb7yMGPdpUM4gXzQk5MHIGVifDBki9AYPPTqUN9eOX?= =?us-ascii?Q?BuzNNuyRq3MEJeyEgyrrXSHEHTKzrJJFc6DV+qcLt95I9L+riMwEFij0YnOw?= =?us-ascii?Q?NzFTfCbzn7iB7tnJDo5NbKp/I8crogY=3D?= X-OriginatorOrg: processmission.com X-MS-Exchange-CrossTenant-Network-Message-Id: f87d378b-ec7e-41e3-fee6-08defb986c63 X-MS-Exchange-CrossTenant-AuthSource: KL1PR02MB4977.apcprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2026 13:15:20.5831 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e0544bf7-9765-4630-ab69-0b266dc2169c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: vnC3FHt0tM58fMrxEn7VPheGxsGaYzvEFbGRwzCdoMS72hrCCPZdKrAZFeRin5y4bx+YdXKCHYYIZYObU318AyorPv0mOrdhEO8IW6nCUyY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KUXPR02MB9310 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c406::3; envelope-from=bin.meng@processmission.com; helo=OS8PR02CU002.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @processmission.com) X-ZM-MESSAGEID: 1786886193478158500 Content-Type: text/plain; charset="utf-8" arm_load_kernel() keeps a pointer to the boot info struct for the lifetime of the VM, so the struct logically belongs to the machine rather than to a file scoped static object. The IMX25PDK struct is already allocated per machine instance, so move the boot info there. As in the xlnx-zcu102 and raspi machines, the boot info belongs to the machine rather than to a static object: 4d1ac883a7 ("hw/arm: xlnx-zcu102: Move arm_boot_info into XlnxZCU102") 0f15c6e338 ("hw/arm/raspi: Move arm_boot_info structure to RaspiMachineStat= e") Signed-off-by: Bin Meng --- hw/arm/imx25_pdk.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/hw/arm/imx25_pdk.c b/hw/arm/imx25_pdk.c index 7ebd6c8eb9..f7a51481af 100644 --- a/hw/arm/imx25_pdk.c +++ b/hw/arm/imx25_pdk.c @@ -61,10 +61,9 @@ typedef struct IMX25PDK { FslIMX25State soc; MemoryRegion ram_alias; + struct arm_boot_info bootinfo; } IMX25PDK; =20 -static struct arm_boot_info imx25_pdk_binfo; - static void imx25_pdk_init(MachineState *machine) { IMX25PDK *s =3D g_new0(IMX25PDK, 1); @@ -114,9 +113,9 @@ static void imx25_pdk_init(MachineState *machine) alias_offset +=3D ram[i].size; } =20 - imx25_pdk_binfo.ram_size =3D machine->ram_size; - imx25_pdk_binfo.loader_start =3D FSL_IMX25_SDRAM0_ADDR; - imx25_pdk_binfo.board_id =3D 1771; + s->bootinfo.ram_size =3D machine->ram_size; + s->bootinfo.loader_start =3D FSL_IMX25_SDRAM0_ADDR; + s->bootinfo.board_id =3D 1771; =20 for (i =3D 0; i < FSL_IMX25_NUM_ESDHCS; i++) { BusState *bus; @@ -138,7 +137,7 @@ static void imx25_pdk_init(MachineState *machine) * fail. */ if (!qtest_enabled()) { - arm_load_kernel(&s->soc.cpu, machine, &imx25_pdk_binfo); + arm_load_kernel(&s->soc.cpu, machine, &s->bootinfo); } } =20 --=20 2.53.0 From nobody Fri Aug 28 00:12:35 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass(p=quarantine dis=none) header.from=processmission.com ARC-Seal: i=2; a=rsa-sha256; t=1786886302; cv=pass; d=zohomail.com; s=zohoarc; b=CM9H9KW8YkdyDYHPPa5muq/lK2qB+PiytdIHKk0I34fe8yls5ufDEJJfOhXlEvMs+ucnEXt9+g+JcrDkkeqpARq6MKMfvzigqLcDMWzgvFNEBNbpXtKsPG0TdMKnwjvPG9Zjsqg2gCiVm3RhLzCtVGP1ik355DUED2AbhrXOEVs= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1786886302; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=sm9HFTlhoL9pj908e/5a7JaWL8BCyJLmlKR0BH0ITro=; b=AOr99358dFWWiS6VqHI0g019n3QdeGHVaGeP33lC+JGT+RAHvDYjud1F7tb/WlXdq+iOEIi65A7dPYMDe3d2LJ4zxnnXBL/iFjg/UI1DY/LnrmZU4F8GFLYf4PpNl9S8jHBcEcbWV19GaFrc1M1Shre4jznlMbyzv8c6lItEBoI= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1786886302050638.8853357493289; Sun, 16 Aug 2026 06:18:22 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wvai7-0001bi-N2; Sun, 16 Aug 2026 09:15:35 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvai4-0001Yu-Pk; Sun, 16 Aug 2026 09:15:33 -0400 Received: from mail-koreacentralazlp170130006.outbound.protection.outlook.com ([2a01:111:f403:c40f::6] helo=SEYPR02CU001.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvai3-0005Tk-2k; Sun, 16 Aug 2026 09:15:32 -0400 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) by KUXPR02MB9310.apcprd02.prod.outlook.com (2603:1096:d10:9f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.315.17; Sun, 16 Aug 2026 13:15:22 +0000 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03]) by KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03%4]) with mapi id 15.21.0315.016; Sun, 16 Aug 2026 13:15:22 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=MbmAJt6GUTcvGRAKTENgy2esw5ustGfOcXuCjziguoIuOcodXYPH8Eb4lAuNfSPIQqagMNbD51HWm2Dbt7sPR5Ffw812MwZCO/AfydXqjIHHpEEXB9IddjMbSaoMFWfNbVSAaY6K17hXBag4V/BK1Uk7Oc246RGZcmkeNmZA2Tq4ifRgZF+ZB0BrTgfSKkweHcdN5L4v2nkympaE53QuecXz5+XhXS3r/7kUcDwhzQYPguS2oQ5tiN3v9WNl91iwFMKCagCb5YaLfRAQpOvYfiKM8W5HMYL/e9RchqdBZAEr4v4Qy7FFRgmqsh7qWwfTDLCD0fJfl0jAn2DuPjPpDw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=sm9HFTlhoL9pj908e/5a7JaWL8BCyJLmlKR0BH0ITro=; b=ZKS7T1dtbbEiVGuMDYgaru2r45dWBbxqSF8/8//YCtwaLCEz2EIuh05jPL8Hf5bYGwfa5wNeRNhIc2Axm3Il0Lxvwsx8c5xb0+S2dHNP9e3KJqfZ8tFKuOq+CZP0CB740ucbOCKN3IhgHY0WW5cL9MX91rstFel095WNTEOK8cThVl80YKcyTZ3XM0B1ZpagTF5RCAFITtHKXtiLS2ov7GPu4rWqtJP1V+r/jFwLY1qLiZNdMl9/2lh/PN0wxeIaA+f7pbjLDeApUIAmCR4acpZKMvl3tCNYaOhdFwgjA9GCqrj4IPXcwZuTvmJjAhRTAmpKpznnqJPgDy+OMpyVWA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=processmission.com; dmarc=pass action=none header.from=processmission.com; dkim=pass header.d=processmission.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=processmission.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=sm9HFTlhoL9pj908e/5a7JaWL8BCyJLmlKR0BH0ITro=; b=jXPJkae+/go9BeNT+LAkGrhdrkoza4cKwVVtL3wvSQsljvOAgpFibkrReoLVvtDYQ1H6Cj3v1VdTc3rt6DuNdlpU7IgePn8j69HcrN0apqpWgli2B5yX/6K0/fZeVtR0uOZzzy3CuppfUa65tJD1b6/nZbZr462/dhK/F8H/MTwDQvXITFm52F8Pcsls8n36SyPpTDXS9ptFK5ANKEZVW4kic+R2v1h8Bpy+cFbGFBKc4kb+n/zoWXW1vaNDWslNK0hnxCG8lRBbFfCBV3zb8P77CaPtUxOxI18NVF1W56pqoKknddXfsiufOu1v9M7FeLqIjY8I7n+H+fo9STUvUA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=processmission.com; From: Bin Meng To: QEMU Cc: Gaurav Sharma , Peter Maydell , qemu-arm@nongnu.org Subject: [PATCH v2 08/20] hw/arm: imx8mm-evk: Store boot info in the machine state Date: Sun, 16 Aug 2026 21:12:38 +0800 Message-ID: <20260816131300.51799-9-bin.meng@processmission.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260816131300.51799-1-bin.meng@processmission.com> References: <20260816131300.51799-1-bin.meng@processmission.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TY6P301CA0004.JPNP301.PROD.OUTLOOK.COM (2603:1096:405:3be::8) To KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: KL1PR02MB4977:EE_|KUXPR02MB9310:EE_ X-MS-Office365-Filtering-Correlation-Id: 798f2df6-acf2-4293-f5d9-08defb986d76 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|23010399003|376014|1800799024|366016|10067099003|56012099006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: nJWpj4mV5htjuNFiJJee7iue6W3mpEXtwRxiy3728o3W4sSNAY5WI9bSxEWiE5XixsRsAQfGJoaCVsafYFjB6EuyOArpa6P+uZeK5cLBnB4Jguud9v5AMHw2o71TkJVs9IzomFc8DDVYWIffYBOLAvA4IqNBvlNoqTljXG47YgeZXEtmtb6lQNHB+UTIMnT6NDjlhw+wAf7NDpOAlpaee3rAEg2YLNOkGz2PO8BJ+SoxnHOTDEA2wLqwHF2TJU/RNluvZr3nR83Q9q5P/ca/JYYLGKcg4oQs40hl+q8YC3UXoa1eWQUOVByB0eiNpqXQBaSx76ktvjOj8KsLNLEBt1mk022p33kBixWpMxpeCL8y6ZMYRSQVu73m5Aq5ac55SdW1xlNVlmeERgkRcs3kjfyVIDNceSTgw/fNH+thiJflCQ+jFrpl7Tr7c9u4j8gtdIAsImdRNoatei9haBRDTkMepWOAWwKynb9xWQN9vzD3GZxj9fBK5G4zqN/QfDgeNKmF+URjnntvG4KO1RN7XSm93ZSkeJ48lJOvUoNYgTNCwrKJfsfT8JfeFrqxUy+ZRSJCS2Jf4d4QU2fAmqMWNZO4Nd6wUXDdUnObUi/dvQSSKU+JIw2WtnD6dnUlBJnnE9YEFFuqjL61P9y0cr8jfS5CSsu3KtUkcAu3y2fg97k= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:KL1PR02MB4977.apcprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(23010399003)(376014)(1800799024)(366016)(10067099003)(56012099006)(22082099003)(18002099003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?RC1kdkPzkH+nrSvC/yuaz9wtMe2Sf57/dExTdKS4KTV32EjMH+vJLJCidC8Q?= =?us-ascii?Q?O+oGfoaSLtSmgKBg+FcMb2Iwls1y+lw/ZMv/aGAcK1IXIbhoBxwoQHUyu1Ck?= =?us-ascii?Q?8FcUvhbbHVVe/PTYxsvd5kqMMPi1k6NCFcLbuQZccS+VWM8lDKhcgDG1CbsC?= =?us-ascii?Q?KcyDkCDC1IXygKlXP9AUn8/bTg0MXCN4oG2zI15VzyEUhcBS8WOQ8t9oM4DB?= =?us-ascii?Q?IaBWsmoIwYOxMuN42br/6YN6fLZg4iDZzxh0/hL1jD0+mzLYObhZstjZ3b8Q?= =?us-ascii?Q?oO658b2trjO/9T1eUgw8qy1xcdaV2DUS/TzWvQKFhwlNRwnEWbM2eF3BC2oB?= =?us-ascii?Q?Siar2BGL1TxfMRSN7+P8cqzyXsC2lzO7l9/XyXIxAE43NjCtWAADw42N3JWs?= =?us-ascii?Q?XsQ318BqL1rB9dIw7F4cdJ9O4RRRsLeLDOvBtFCz6wp2V8g0cPWaYVi3dVKJ?= =?us-ascii?Q?QhY1sKIxelMVysgLox+ejRdNH9IMkt7NqU8r22dyxbEWTMZv+ITdejym7LSl?= =?us-ascii?Q?cnakzx5NJ4PZLZoAHroepeqMiUgBAdjApOrUBC+Wd1PARFzKj8SKdhShA6v0?= =?us-ascii?Q?WkWUrr8sOJfSFZ6FsnYKxJCq7iOzSnAripnMhRarQpXAiBYGum4jfkzE1Zsy?= =?us-ascii?Q?TYnl/qm8NOWL30ncpf3DweQHWKKoD7pl4zaJjkznHIxqlr8oUUxjXDtKihlQ?= =?us-ascii?Q?olSCIWCa73erbqG15cNIllcO0Q8UdCPw6ATmBqQ8XrjP72ta8pCNxAXYem5H?= =?us-ascii?Q?HSeTbOg0qyv+T5gZbxbcD9PlSPBx17g4Rbs+kdTWz2hucOhiqy51hCkpZiQy?= =?us-ascii?Q?uP6nvmUQgmEonwF63uZ2oov+lT1EoH6t/qKx5BlnWLfzXaooplzVKH3ymb0S?= =?us-ascii?Q?UN0aAvFZ2EheFfeirMEA2eQhFMgdGKUUix/0JM5cu0fG5UomDhW46vMTvNnY?= =?us-ascii?Q?ingqBSPJxT1hkSGiYisrPfQlaf/Qk9tL4aPbQ8xbfoieox3yRNnONEO2dwVR?= =?us-ascii?Q?wr0AvNfMLPEBpAPWkw+V3p07l/YkbAkMCjA5evGKYb5eX3mNVw59Dmmts7eZ?= =?us-ascii?Q?py/z2e1dP0JjCCT03UNfOYAiTAV0rNyZgqyZKbMbI1LjKB8WpWEk1FpmmMOt?= =?us-ascii?Q?TPt+iP1WvlOYjVjt9aIkwHo5aLib9BwnV04ncmYG2hKmGlDEpvLOx6Cb4i9Y?= =?us-ascii?Q?h17Y+smTKOEX12oVjAGE8yrjnzwH6ANHdsHFmpJuEEhaPyQsLVRCZzJxi0PO?= =?us-ascii?Q?AtPb28IQkl/w/mLmSE6SgB/Zw3e2Cz51XOPmPYtg4fjvW+6+4MMsHyhoJ2Bo?= =?us-ascii?Q?/H73u8FEqnLDF2eF5w9vYDnptsKAGCEy0oVDaKGH+Gd0c6qDywOacxOJOwrH?= =?us-ascii?Q?JWBFylCZEboegfqOUA5LznRdtyVILJP4+TgStPrGbqPP4S1xm9WA1eRj1tHV?= =?us-ascii?Q?mc8PNzwOFV7Wkn0zxfD0NL4yNFYUD5ci+gUN9+ANp9gG1d0cW+P/MS+TZ5A2?= =?us-ascii?Q?4Wwrp3fCuFjYNjq19UR2j+Yel7Ps/MbQ68NwF/pOA6/u8hewAJ/TViM0EgcG?= =?us-ascii?Q?+itFTLzujNWLUU0C5dou38DU1xcI3KVt5y8zfdiklGqqHmJWuhW3fvDrKrd7?= =?us-ascii?Q?iXOjUDRuyKf7cSnV6GuthB3DTu/yrS8XdpJimMaTkNkAi11nqmqNvXtes5QD?= =?us-ascii?Q?6aHlM46YnbvKRWjBJ2FDnIRsTq/y+26ns/FRuv9b3Fe7bT+rzvX+vEOMHi95?= =?us-ascii?Q?AE3OK4cxH2HS10MHc80FLdWMPcoDi6o=3D?= X-OriginatorOrg: processmission.com X-MS-Exchange-CrossTenant-Network-Message-Id: 798f2df6-acf2-4293-f5d9-08defb986d76 X-MS-Exchange-CrossTenant-AuthSource: KL1PR02MB4977.apcprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2026 13:15:22.4630 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e0544bf7-9765-4630-ab69-0b266dc2169c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: OFlfiL0D3bwc6bKn43UG8V49zIRiPzkCpILQUI1HTFJfyH5ayltVNqMZN7lr52oanjcz4oKYelG8n5kVaQUE6l+NlUhuW5s3pXf7vmVUSk0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KUXPR02MB9310 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c40f::6; envelope-from=bin.meng@processmission.com; helo=SEYPR02CU001.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @processmission.com) X-ZM-MESSAGEID: 1786886303940158500 Content-Type: text/plain; charset="utf-8" arm_load_kernel() keeps a pointer to the boot info struct for the lifetime of the VM, so the struct logically belongs to the machine rather than to a function scoped static object. Move it into a new Imx8mmEvkMachineState and register the machine type explicitly instead of through the DEFINE_MACHINE_AARCH64 macro. As in the xlnx-zcu102 and raspi machines, the boot info belongs to the machine rather than to a static object: 4d1ac883a7 ("hw/arm: xlnx-zcu102: Move arm_boot_info into XlnxZCU102") 0f15c6e338 ("hw/arm/raspi: Move arm_boot_info structure to RaspiMachineStat= e") Signed-off-by: Bin Meng --- hw/arm/imx8mm-evk.c | 29 +++++++++++++++++++---------- 1 file changed, 19 insertions(+), 10 deletions(-) diff --git a/hw/arm/imx8mm-evk.c b/hw/arm/imx8mm-evk.c index 6b7774d3e2..019c609c54 100644 --- a/hw/arm/imx8mm-evk.c +++ b/hw/arm/imx8mm-evk.c @@ -20,6 +20,15 @@ #include "qapi/error.h" #include =20 +#define TYPE_IMX8MM_EVK_MACHINE MACHINE_TYPE_NAME("imx8mm-evk") +OBJECT_DECLARE_SIMPLE_TYPE(Imx8mmEvkMachineState, IMX8MM_EVK_MACHINE) + +struct Imx8mmEvkMachineState { + MachineState parent; + + struct arm_boot_info bootinfo; +}; + static void imx8mm_evk_modify_dtb(const struct arm_boot_info *info, void *= fdt) { int i, offset; @@ -60,7 +69,7 @@ static void imx8mm_evk_modify_dtb(const struct arm_boot_i= nfo *info, void *fdt) =20 static void imx8mm_evk_init(MachineState *machine) { - static struct arm_boot_info boot_info; + Imx8mmEvkMachineState *ims =3D IMX8MM_EVK_MACHINE(machine); FslImx8mmState *s; =20 if (machine->ram_size > FSL_IMX8MM_RAM_SIZE_MAX) { @@ -69,13 +78,11 @@ static void imx8mm_evk_init(MachineState *machine) exit(1); } =20 - boot_info =3D (struct arm_boot_info) { - .loader_start =3D FSL_IMX8MM_RAM_START, - .board_id =3D -1, - .ram_size =3D machine->ram_size, - .psci_conduit =3D QEMU_PSCI_CONDUIT_SMC, - .modify_dtb =3D imx8mm_evk_modify_dtb, - }; + ims->bootinfo.loader_start =3D FSL_IMX8MM_RAM_START; + ims->bootinfo.board_id =3D -1; + ims->bootinfo.ram_size =3D machine->ram_size; + ims->bootinfo.psci_conduit =3D QEMU_PSCI_CONDUIT_SMC; + ims->bootinfo.modify_dtb =3D imx8mm_evk_modify_dtb; =20 s =3D FSL_IMX8MM(object_new_with_props(TYPE_FSL_IMX8MM, OBJECT(machine= ), "soc", &error_fatal, NULL)); @@ -103,7 +110,7 @@ static void imx8mm_evk_init(MachineState *machine) } =20 if (!qtest_enabled()) { - arm_load_kernel(&s->cpu[0], machine, &boot_info); + arm_load_kernel(&s->cpu[0], machine, &ims->bootinfo); } } =20 @@ -127,4 +134,6 @@ static void imx8mm_evk_machine_init(MachineClass *mc) mc->get_default_cpu_type =3D imx8mm_evk_get_default_cpu_type; } =20 -DEFINE_MACHINE_AARCH64("imx8mm-evk", imx8mm_evk_machine_init) +DEFINE_MACHINE_EXTENDED("imx8mm-evk", MACHINE, Imx8mmEvkMachineState, + imx8mm_evk_machine_init, false, + aarch64_machine_interfaces) --=20 2.53.0 From nobody Fri Aug 28 00:12:35 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass(p=quarantine dis=none) header.from=processmission.com ARC-Seal: i=2; a=rsa-sha256; t=1786886253; cv=pass; d=zohomail.com; s=zohoarc; b=mdr3bbgQdzDbCtSdkxKPIbIYtaIEp/qQGqzMKayDTAQ8Ddj32QmKbOZizV/JOBJHe0ydWH2UPUNgmFvstwRW/rqvxeTvRrB2516B9dWa7N3aitJ9vNVOBcLB1CUnPXJheyxD/Jl7nqRdnEtpqrck9TVwqiUYr7aqIr/OZKeg3kg= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1786886253; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=OxIoqz0a5dDuzaAXElMV8ixjgwnb6nY8ToWV74DyrBo=; b=n1R4GzTrglpbJzceYc7vJIEZVyXfVcBvhH+zGBVTPqyEkm06TGdK4mozLuuAbfneuCZkvgZQnJdHFr3olc4jBhdBOLC5T+6xn7yaeo9CRpyGp4rH4LLeu6UrIun+o795lilm7MNG+QFvyk/vknZyrff4fige7ElVQoWobagaUJY= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1786886253005765.2613802392278; Sun, 16 Aug 2026 06:17:33 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wvaiC-0001fd-L9; Sun, 16 Aug 2026 09:15:40 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvai6-0001Zx-2U; Sun, 16 Aug 2026 09:15:34 -0400 Received: from mail-japanwestazlp170120003.outbound.protection.outlook.com ([2a01:111:f403:c406::3] helo=OS8PR02CU002.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvai3-0005TH-Lp; Sun, 16 Aug 2026 09:15:33 -0400 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) by KUXPR02MB9310.apcprd02.prod.outlook.com (2603:1096:d10:9f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.315.17; Sun, 16 Aug 2026 13:15:24 +0000 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03]) by KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03%4]) with mapi id 15.21.0315.016; Sun, 16 Aug 2026 13:15:24 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=gr0HLjApxlB9NqSEIvCtDNnt48W9w8zQlM2AQ7eoxTPgWZYm6R+oG149S8ZhtC2zXWYiVlHWC/ZqzWX+/rB51oI4IM1mOfbOutUNIGB/8NhEFfwt+5/ZkMTExNhk08AvSksnJNGHmltzGkqvWsQT4uwvlxqXF6dBC517dUXM6DQEIQLib6uR2q1N9Og7H85TYJ0AQLUeTglYGC5z9KqfCjFEKNqyQIlFFmlcIs8PW+16VSu+xxCPwCcJH4k+URENzrtnrH5AZeEQWrkkT3q8aerSQAT5F9E3enYzXO0MXtmDMSuR7oINQxAHSpJ5C/QiBwKuslD+jiWEdUNWqxK8gw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=OxIoqz0a5dDuzaAXElMV8ixjgwnb6nY8ToWV74DyrBo=; b=suY5AYd8657EvmdNp8Ay1yx8k6aWnUQ6A/UapBRuEEiymAWArx3/FgwACC45Fxec7xC6zCDkKUivCF+pn6Rec7nt+QYwYuchspnOKdO4QkDf9D6q1ShhOMrQCv8pnk0blLSYvNAuhFOZLj6MgA3gzhh05KjRkrZl/ryTvcNcM74/v18yuGJpimOhvhpxq0o4eRQ6NKREVbahGkxCENx+ZIRbxthWJuHI9Dkn8eAf7nbqE06tJ/HkWQ0qjfjyYAqPpUfYbhEZ+AK4z4VN32hRfjQCjfsrY6V/UAXR4MJxCURgroSIdvIic8f0t9cOO+LeXPvMYla6UXXw1vBLBPvnWg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=processmission.com; dmarc=pass action=none header.from=processmission.com; dkim=pass header.d=processmission.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=processmission.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=OxIoqz0a5dDuzaAXElMV8ixjgwnb6nY8ToWV74DyrBo=; b=Vulqb1orw13kC6Y5XzQYN4JPs/LCM2rWP1U0VzNGywIgOtc90D27BnK4lymp8swh7vjcwBQ14CdBGnhRaNIMoaIhPFqnF/QLOPmZdvXfJfpkV0hZ5yfEDS8ouocNnWO84T9YU7EJ4XkdOhAg9nG/5ew+hWrBOLElewGDhOCCu1n+7Ll5dShVUa7tEUVi3Pu2Wn+1L5Btr6kqTHy4s5RuOU+t4+kudfcyEHW3azTi8wjvxHr7UnCnqeSksZTPUptv0iaUK6PoZNzL8E4HLgvcGM5CbWrkhxK3i6R2x6Ci3qXpzHJ/clzmAcUtBmD2Z3C4r6YpVjbpMJA1w2YTh1AxjQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=processmission.com; From: Bin Meng To: QEMU Cc: Peter Maydell , qemu-arm@nongnu.org Subject: [PATCH v2 09/20] hw/arm: integratorcp: Store boot info in the machine state Date: Sun, 16 Aug 2026 21:12:39 +0800 Message-ID: <20260816131300.51799-10-bin.meng@processmission.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260816131300.51799-1-bin.meng@processmission.com> References: <20260816131300.51799-1-bin.meng@processmission.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TY6P301CA0004.JPNP301.PROD.OUTLOOK.COM (2603:1096:405:3be::8) To KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: KL1PR02MB4977:EE_|KUXPR02MB9310:EE_ X-MS-Office365-Filtering-Correlation-Id: 643cff96-cfb0-4032-abd2-08defb986e79 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|23010399003|376014|1800799024|366016|10067099003|56012099006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: 3SYHqUJKsHJbajibUFJRci01TU856Vy0CeH5eAudtDG/kaeiivF30qimnqBx4DXiM2URedLfWLbxTCJqg+2tRuXbJRhJs12y8/n/F5gdeglS5RbYnammW6nDzZlSCvXszebwo8EblFb3LlpvRO0orI5RC3OF1B0NCvw3p+yBMPGzvlLyDQkVdBGNH194f+nQqYT5NfcWtWdvAlQS5vc08Vi1wqrdZ+3nh/X1lp9G1gHOJtLkQ/3u3Tq9j2lcBacO469khC88mhjB4ROKublU04/F8ApojeqWgYJMilcq8N+X0hEIvPXzwhRn/Di3ZFONPnssz46xXbOWQeBS8YmSc/RZjqdhFe2VfPqfR49pEFGZXkzacJ/Ajlc/rOflbz/RH0CCJifzp+tJqWC1Eip+47r0Dno+yuCO1lKutZFmyZ0SVkKi1wQzjQJ4cZzLiRaMmnZspsVMOFWp4QOdDK6lqG3NAm0iOezssNKtq+tY0SdA28L8R6Te80EcUWuMhLJygpGnrGj0++uBjV8fOIP6HLgmCLPcOLrHC+xsXXsRKGbzR5CN3L8S3cTYZfFVA8toiIYXYhN4QrKmwylbn3kgP4FXlmvs6DCKyMiZvfpufdOuqX/n4xCyG5Ntlx6Jg3M90D8etoRhiFJNR0a40WflAUVwuxZBPoSNCNAHUYl02V8= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:KL1PR02MB4977.apcprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(23010399003)(376014)(1800799024)(366016)(10067099003)(56012099006)(22082099003)(18002099003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?YjWEAbUUvvdFPTsLx4oluIyfEtEZwQ1YHG626Vo9yGGck+Dyk0ysu8aGO3W0?= =?us-ascii?Q?Sva924+/t9irjSue3o3IqxUyiThuK7qUA6XWdKLXYxeiUmrfPh/wPU1cWimO?= =?us-ascii?Q?D9qHWQqM1iTMkcoV0aGAYff0ehvIfTwj/khOTtADj0pjEkIKzrFo2eMJzW+j?= =?us-ascii?Q?qk/Ca3bPKaRyckKgq6xm7z6mbGvJ2mM9V0SUcbNgNi2K4E6tNd0LPJq/b7Av?= =?us-ascii?Q?JUo0rRC6ttD2P1Hfizk/Lq8XEPqTt/7sBY2dVfW4wwE8YCtE5JubOJUaeM4k?= =?us-ascii?Q?/K0h+G3A4ZSLLtLQX8QZG8us0/WIkG4CbpaN8p5IVkMmYNtAbkSwCr0hKo3r?= =?us-ascii?Q?lZRtJYXU6d86fWOlhK/uMFAtN0d06DqLJyICPA/xMrU9ixLwIRXWyxtt3wU6?= =?us-ascii?Q?6yg/lSBARpb5aTBXOlnYM7qzoHQCVeJVDZERW0QTwVHcYf6aGDW6xepm5YIs?= =?us-ascii?Q?qCx8RrcVdt0QdXMdb/PZuH+aR6vKyETiliES9GouIhx0QxrxgiE+iSbco4Xp?= =?us-ascii?Q?grjyxc6LY0blDLI2ja9LsvZLq8jVrFJcvn/z0jFYM7WLnLabJI3Y7qiGmoOh?= =?us-ascii?Q?tFXcAC3+gLDns7JiYr32StTBENADmTD1YgfPaN0nkMaxQ4qIqx+r8T+rClOo?= =?us-ascii?Q?DujUvvwmSS0vI6vR1svM/Gph0t4uxp8KhygJ/V48HR1hOCfzhnyahUbMChLB?= =?us-ascii?Q?LKGbsEoyV7ZaeMh1rqNMK2X2veEAqYCBIBEMTZX4p8EKcV+5S377pwwRwZ3e?= =?us-ascii?Q?y2ocM4iUYJ5FizRox/XAXetaOS/SzZHs24hrZGJEZATHFqJgmM8c6h+CYQ01?= =?us-ascii?Q?Ig0CKcj310nDvZBWxXldgA9jM3Sx/bG9MPesjG7E24EpWk6EqJjFiHhU7arj?= =?us-ascii?Q?BAvPk3Nyvxd4lP0LU3nxOZrygmSwKJF80N5HqmLro7V79prboE8fZ6OSbxEw?= =?us-ascii?Q?ZhsPwVhVD2+kpwTvEMuUjzG1TtDWpKhqEtDwP833LepEzBjhfB1GEdEtcIyn?= =?us-ascii?Q?RelGL6+Y0XVuYmd2+NZcjzPYOnNCXQvnxU647CpDYIADPnRariM++rVuEnXG?= =?us-ascii?Q?x04UCCulVULSGl6DKJd2bS3gaA99dfEDFcVDyNQV18g4uuNKeSuASAk/hZPt?= =?us-ascii?Q?8rP0RWPY/TfLofTlVUA4oiPSvWYplsKKcTOCJt9RpR7X6or19lKgQtaOgI0B?= =?us-ascii?Q?zObsEGvyOxGC4I6nVAQC+qMnbxK7FAzo+iGuQ2PKzpDms7P7aE0SsOctoaX/?= =?us-ascii?Q?CvBuA61USRExBycM3MNhi/qPijFRILm4tDEaKJC76b0MNW03xLfKrtXHY0cR?= =?us-ascii?Q?wiPBf0dVjXXyyxaySfDSGPi2Az3NGKGj0vJjDnrkw4eHvktNMte+oIRA3BEe?= =?us-ascii?Q?dQbjCsLgL+2gAXAGvqdGQ6CMbpYNCtA+a0+978xJKfTaQDbfaoM8ssNMUuHr?= =?us-ascii?Q?/vNjKEacU/8gX14xUSkfFG3lox6hZzTiweSjRPgOc7JgaUZX5XZJc8jOVmbe?= =?us-ascii?Q?J7CkwWcMNvH0xR/6pPb0WiF3ie+rRMw0HW9n0nPF5CdSaBe2wCiJK6bBiTxf?= =?us-ascii?Q?BGkDYs9Qsyqy8p+VS9Dd684CJrywtKf0J1EKRmvfklkYa4GJCRrrRq4Vke6h?= =?us-ascii?Q?Np54Naw7AsV5d8TrFIhsxs9ouquV00fTQXDzPXRnn/3iXw9X78pWYifi0NEm?= =?us-ascii?Q?NvarVHYGYc18bceCl4OATlz4TYCwwPvUojjSReOHmRXs/V7FqisfI2pvtHvn?= =?us-ascii?Q?lj1Dnh/YyALK8XZCPN+Vg/qDCg9xMAI=3D?= X-OriginatorOrg: processmission.com X-MS-Exchange-CrossTenant-Network-Message-Id: 643cff96-cfb0-4032-abd2-08defb986e79 X-MS-Exchange-CrossTenant-AuthSource: KL1PR02MB4977.apcprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2026 13:15:24.1998 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e0544bf7-9765-4630-ab69-0b266dc2169c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: EIptUOLsERc71sp0ShfvitMPJztaVQT/JyU3FXTNcya+f/Jl4R2Ih8+o9bBrXozXAQkfuJH9vR9z1kpkySveWhOmdegXzX30N5/QdiaZQ6Y= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KUXPR02MB9310 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c406::3; envelope-from=bin.meng@processmission.com; helo=OS8PR02CU002.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @processmission.com) X-ZM-MESSAGEID: 1786886253711158500 Content-Type: text/plain; charset="utf-8" arm_load_kernel() keeps a pointer to the boot info struct for the lifetime of the VM, so the struct logically belongs to the machine rather than to a file scoped static object. Move it into a new IntegratorcpMachineState and register the machine type explicitly instead of through the DEFINE_MACHINE_ARM macro. As in the xlnx-zcu102 and raspi machines, the boot info belongs to the machine rather than to a static object: 4d1ac883a7 ("hw/arm: xlnx-zcu102: Move arm_boot_info into XlnxZCU102") 0f15c6e338 ("hw/arm/raspi: Move arm_boot_info structure to RaspiMachineStat= e") Signed-off-by: Bin Meng --- hw/arm/integratorcp.c | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/hw/arm/integratorcp.c b/hw/arm/integratorcp.c index c25bbf3c82..f8bcf42c61 100644 --- a/hw/arm/integratorcp.c +++ b/hw/arm/integratorcp.c @@ -581,13 +581,19 @@ static void icp_control_init(Object *obj) =20 /* Board init. */ =20 -static struct arm_boot_info integrator_binfo =3D { - .loader_start =3D 0x0, - .board_id =3D 0x113, +#define TYPE_INTEGRATORCP_MACHINE MACHINE_TYPE_NAME("integratorcp") +OBJECT_DECLARE_SIMPLE_TYPE(IntegratorcpMachineState, + INTEGRATORCP_MACHINE) + +struct IntegratorcpMachineState { + MachineState parent; + + struct arm_boot_info bootinfo; }; =20 static void integratorcp_init(MachineState *machine) { + IntegratorcpMachineState *icms =3D INTEGRATORCP_MACHINE(machine); ram_addr_t ram_size =3D machine->ram_size; Object *cpuobj; ARMCPU *cpu; @@ -680,8 +686,10 @@ static void integratorcp_init(MachineState *machine) sysbus_mmio_map(SYS_BUS_DEVICE(dev), 0, 0xc0000000); sysbus_connect_irq(SYS_BUS_DEVICE(dev), 0, pic[22]); =20 - integrator_binfo.ram_size =3D ram_size; - arm_load_kernel(cpu, machine, &integrator_binfo); + icms->bootinfo.loader_start =3D 0x0; + icms->bootinfo.board_id =3D 0x113; + icms->bootinfo.ram_size =3D ram_size; + arm_load_kernel(cpu, machine, &icms->bootinfo); } =20 static void integratorcp_machine_init(MachineClass *mc) @@ -696,7 +704,9 @@ static void integratorcp_machine_init(MachineClass *mc) machine_add_audiodev_property(mc); } =20 -DEFINE_MACHINE_ARM("integratorcp", integratorcp_machine_init) +DEFINE_MACHINE_EXTENDED("integratorcp", MACHINE, IntegratorcpMachineState, + integratorcp_machine_init, false, + arm_machine_interfaces) =20 static const Property core_properties[] =3D { DEFINE_PROP_UINT32("memsz", IntegratorCMState, memsz, 0), --=20 2.53.0 From nobody Fri Aug 28 00:12:35 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass(p=quarantine dis=none) header.from=processmission.com ARC-Seal: i=2; a=rsa-sha256; t=1786886264; cv=pass; d=zohomail.com; s=zohoarc; b=W2KHAq+Uig3ZVs3bugeZ+W2zvWUXU8ENZUkRJEmE+UtvsPaxQw9DqvydaLZYth+n9JlC+I8Pnv3TkKI2FdO19bdUYCAyFhWuP1bnf3qBuGqxoj942vf0AWaVaEFYcv9CQdTpq7wFYP8iX7W6oElg+ffKw3gpD46SeXZ4/kFqdxg= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1786886264; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=m6OBoPXCRXWxsrpkkMrNPCgNfT4emr1+yZJEQf0Dk6c=; b=f7MOBgDbXqKSyP2e/pRi/ckqXmm20+CchIFUYwYU0QJGU8PY5CmILFK4UZSfETNz0jbSkjWliEhq12a1LWXi2kY/FZzTZ8tN84rgHQedhNyQaKE+y7/+2FQHIw3hDm1La3Qsb9vba6JcTjj2XPsLDOLsIIbmSPRX4bo44QqJze8= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1786886264230149.27196207066288; Sun, 16 Aug 2026 06:17:44 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wvaiC-0001fv-Si; Sun, 16 Aug 2026 09:15:41 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvai7-0001bJ-Aw; Sun, 16 Aug 2026 09:15:35 -0400 Received: from mail-koreacentralazlp170130006.outbound.protection.outlook.com ([2a01:111:f403:c40f::6] helo=SEYPR02CU001.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvai5-0005Tk-OQ; Sun, 16 Aug 2026 09:15:35 -0400 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) by KUXPR02MB9310.apcprd02.prod.outlook.com (2603:1096:d10:9f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.315.17; Sun, 16 Aug 2026 13:15:26 +0000 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03]) by KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03%4]) with mapi id 15.21.0315.016; Sun, 16 Aug 2026 13:15:25 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=FwrZkRY+cumDy7KwSd8wQWSCQlpqXUw5wX0pgUfvX63BcbnsEr/bAXF31+EzqIp82vrE/kVIWyzwxD9Ng9Se14ooDYc0uAnIohcu/qhK0pRtdXQPdu6O3DMZhV7cmVRoCp8HYcathkntbWyb5+AYMAgaKZ2P8FJYQa+p51m/Att0lwNMDCn5wRk3Tu+GUS9OmZY6oYNAkb8km8lcE1BSsftuhqlLl8WK0U/vnfYEnzvAjv3ikb1LIkiKc/WsdsZugUlvzfjy9KWcazZpXwjYFTYc1SF49zYCx2SilN2QIr6cqBkIxwO1zXD61vZta4MkEwcQaNMq5VigF0/z2jg3ag== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=m6OBoPXCRXWxsrpkkMrNPCgNfT4emr1+yZJEQf0Dk6c=; b=zTYlDni7H91XRnceuWoAA+v/XLJex087p7goyGfbF0tzPO1rMtEK2M67VH6J4IxQu93m+pCT5hl08LRT8z5xhTWd5ewpdcZnM57HzKeJamBRth3y58HyIq6NWlLN9R2lWAbqBnYlN6P+ZVubKeskRTWgjTvrAWYN7KViCi1Xrk//h4gB4/JzrUAkTqt3wkww04jOFHDIudIZM1PJ52w42RZAW0jcKmkZ1x79u+CaiJ02YHwON3bKjb0IV1zM+OC388DnVxwDeeEaMRYIBiaQKq2+zQGYeK819jkwQkqlynEnyaokAgqUswnsczDV3W6XFhVYzX64LbsKC63kTiTxcw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=processmission.com; dmarc=pass action=none header.from=processmission.com; dkim=pass header.d=processmission.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=processmission.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=m6OBoPXCRXWxsrpkkMrNPCgNfT4emr1+yZJEQf0Dk6c=; b=UHlFCvPZiV+MgD7gAeqc5IluejSxZSnxktY4NZilPzc7y4v4b0YnpiXpRIBYHCtjM7sQJNlE5eTbHQaJt+o3PAcznQZq/oAF4aE5KLIe3Y1rczflLJJojvljgJ7Qc/ai4F31gvnLM2ZYRaAYCEN4UmcGgJI0WgKL4DmF4FOtHAHxNABACPzRRSdGLFbqVhrmnHnn8kTIO292j+yDQHLPrDik7A0WFO+4K0Z+WG29EKe8PjF0mkitFmmyIYYmD2P9+0u4EaAr1VB14BEgaL/orxT6X9iRxL0g0I0dwHYgTicBuxw4jNPr6Ln4KpJ1BRl4Xn3OTMPUsV7MPB3SDR1SXA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=processmission.com; From: Bin Meng To: QEMU Cc: Peter Maydell , qemu-arm@nongnu.org Subject: [PATCH v2 10/20] hw/arm: kzm: Store boot info in the board state Date: Sun, 16 Aug 2026 21:12:40 +0800 Message-ID: <20260816131300.51799-11-bin.meng@processmission.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260816131300.51799-1-bin.meng@processmission.com> References: <20260816131300.51799-1-bin.meng@processmission.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TY6P301CA0004.JPNP301.PROD.OUTLOOK.COM (2603:1096:405:3be::8) To KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: KL1PR02MB4977:EE_|KUXPR02MB9310:EE_ X-MS-Office365-Filtering-Correlation-Id: ba84ac17-8618-4c24-197b-08defb986f87 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|23010399003|376014|1800799024|366016|10067099003|56012099006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: 1xX2gtzBm2uq7htrkEpEwmAwSW+r30ZM/ZP09aknzj/nA8uPpNb2OpWXA098f+tgNa1lSN+M8ZTZXRlEGZ/eYy6mCE2bYNnihWA4/mc5elxy3FG9mItcLiIh8kSIGFuj5y+TyLd/fovVaYac6m20FpPPf/2oZfI/VaHP/v5O76BIMJUeKuZtfHoSs1vx7x+C5F4c7kDcvkuarlwdi/9Ezmhl3sR3DW5VxJlbIdGapuzD0jIz6LNN3H4YVVeUm342sAdzq8UH8EaS3hu5oauQYhE5rWDUC5aYgqAd8PrkVrg0Sb0zL311Fj10+UIBsEIiZGU8UPg4Jd/g+uDtzah9JdIn4Ic5Zq99gZ2YeegTwBV6wcUX1irqB5VWQp60o6EmgWhTtoF51PMCjGq6fL4I3oBBYJOe9iLdBj7Kh+DJzbe6HC0NnBF5bJl+3NDwskZrlI7QhiCx4PVfxTdNgY5N6cDUFlavryphcvVZjB5VKPCZqgFlwE4QDGC7L/bNsRGa6EHlCK9+L9eL4jwF3gVbUk0FNOdkzL1TVPawaud8188z85bgk28i5a/ZM3KKIjVg6BJGIrXDizx3qub9bObhDU0K+3f1pFkq/+WkqL9YvhZfSiUcFmCIhxQ4cjJaNbc1KFz+OTszn5qqQ/0kR2srnNrh0nvio7J9z1MUxjXzmZc= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:KL1PR02MB4977.apcprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(23010399003)(376014)(1800799024)(366016)(10067099003)(56012099006)(22082099003)(18002099003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?yLNBtvNpHXfKbKlNn5CBgdrdX9GtRqqUQ/uI/wFh+T2AqwHHmsMq47uCbbrl?= =?us-ascii?Q?irvqWF3X3WAPKZKLHj2dbzjO4RA8l43kEtZ2JWoKxfWm3/+O4HUIGGn/Q7Gy?= =?us-ascii?Q?n7YhR9HPOmTu9rhjuSm0q6G7joyJ2y5evIqucmv/KVBtx8E2iRWJTj5Xvrfq?= =?us-ascii?Q?ZPaoMH/hXd5c+/Qw+LHSx73SiTuD/0g3HWB5YXNp/ZpMZReUINaQY/fyXbII?= =?us-ascii?Q?70KoFdaTgBTBUOPz/cY9+wR2QHdAjlMNUlbHSAeUD5I1MYJuPywfZTzqL8sb?= =?us-ascii?Q?DFMh0e2Iv7Q63/MugblAYiGwwxLbSR4DLs9fNKKjs8izn5GQ2300VN3bV4te?= =?us-ascii?Q?fn5A2fZTfc/GthXVDc222ptv7W3X6CVjdf980qSbPFaQwiKpFfRcuV86d9xs?= =?us-ascii?Q?4fjfllg9ZzxJ2gJ5PsXOpAjkh5Zv6ONvRXHb3qqb7CLQ0oGlANytRZolYvE/?= =?us-ascii?Q?l5nH1Msrp4DQFgEyS5mGR4G1Ejmi0MzqcoPdOGksHd8Y3TsjHuYrpYFPhSmr?= =?us-ascii?Q?38ZtL2j2/mTDYKc0RhYuD082pXdOWe6IKK9bxW4a1DihN2PjYTp3+QRiK5sk?= =?us-ascii?Q?mMMGM7PsvSZjFDXsS0O+7zZXR74+LHtJPkFIQHmFoj9Fsv5aPDK+WLQrSrgB?= =?us-ascii?Q?kaczVzUfEl7wmJV1LK/uRyJGjPt3reE5zyZXTBVBP9hZVyr156zipjWWNxLs?= =?us-ascii?Q?otD1t2ccohhh58SQwdBRHUyTHLIV7rywh6kOWH+oIbRRQhOkwYCuIZFj8yCV?= =?us-ascii?Q?VthO5qZsowS1IEkgZrr0nXrHwR0Vp6SnKHo6wX0vt2lzXhEg8ScLAwmPV0uZ?= =?us-ascii?Q?BPxpKEkcAmQjdakwyyqxlmUSVdvw2Zl4E7ji3m+733iHHHo0jZ9SUHtvtL1t?= =?us-ascii?Q?D756HRJ4IygdxfC2eWu4AWinKMkk5ZgB98nnPnmokv4+r6MDxXPLDxsl7ZYY?= =?us-ascii?Q?DnLqqyy+LGU6CAYjvF2SewPmuPGfbVL2fBmX9x51Y06W5F+ViGxkpSQxkdrX?= =?us-ascii?Q?1xlX7fsO7qwYoA4YCgn/T1U5QsjdQ0wUuUogjAl/a3IqfOgNK8r1XWqxfy9x?= =?us-ascii?Q?gm7kG8E5waYCKoHhteyh41azaZENCBirTKJyzf8HHM3zF8npdMKb/1Y9uKop?= =?us-ascii?Q?e2MXRZscz8KTQtdwuqswO2Vbw9c4JvD0DmmK0zA2GzcuD8HeepuXs5e60JG+?= =?us-ascii?Q?5qlr5+8c2X0thb8oAooKFeiVhhriQ5rZ3D9XfzH3SO6PO04iBuV+pqJLCZKS?= =?us-ascii?Q?mfRwZTAw7H1HXwRIo1K4ONa9cGvI10LTKIVjAecEQXfcnay/2xPfgu0klPxl?= =?us-ascii?Q?yOb1g3VuPL4tJjXo3eXBngp3BQbQxq0oqdPQqFAooLYvFUPjQBw/79DJLDfK?= =?us-ascii?Q?LV6yCzoqt9wnt2NxyYf/KBk7ezp16s72FSpjvvtQnix7b5RPqkcjkW7QBVJw?= =?us-ascii?Q?aOYnDbISOhGRj1+Xmw5O2eIEDzs8CVhw4IpRs1OVAMukxs6Y6yf8R9/ZgAOQ?= =?us-ascii?Q?CH64+xyhDeDVks4d+VDVuDGYCRhAWo8apocJO+eDBucI13MLdAIsa5SE3Wua?= =?us-ascii?Q?+K0ci/ENyl7+/qlbdb3QNZL46fhm1l4M6v6eQ1V9DRJkvcu5AArbWrt8xzIQ?= =?us-ascii?Q?0uuYeQzoB8yEmhBq1XTiD3o35EKwU56wJTPgFTfXkTQzIWyeA7mH13LCyesD?= =?us-ascii?Q?hmGY1eVZN5m6icJMAE5jRnjpAy2X5H2yYOGv+SwynbZZS6IXSQ1YCSATIQ1w?= =?us-ascii?Q?fAO8ZskrJhjxW5vabXuunbEEhQhhEgM=3D?= X-OriginatorOrg: processmission.com X-MS-Exchange-CrossTenant-Network-Message-Id: ba84ac17-8618-4c24-197b-08defb986f87 X-MS-Exchange-CrossTenant-AuthSource: KL1PR02MB4977.apcprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2026 13:15:25.9259 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e0544bf7-9765-4630-ab69-0b266dc2169c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: TJ6G0Pu95ZYa20KWycf65rbuGQD6zNLL3ekQ8fXBUmqp5NxwKkWoeFzvxHVm1cF37yhTM8tYgDCIkmPJczX3ArYltRUEZvsq/c0Mnt+sssU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KUXPR02MB9310 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c40f::6; envelope-from=bin.meng@processmission.com; helo=SEYPR02CU001.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @processmission.com) X-ZM-MESSAGEID: 1786886265753158500 Content-Type: text/plain; charset="utf-8" arm_load_kernel() keeps a pointer to the boot info struct for the lifetime of the VM, so the struct logically belongs to the machine rather than to a file scoped static object. The IMX31KZM struct is already allocated per machine instance, so move the boot info there. As in the xlnx-zcu102 and raspi machines, the boot info belongs to the machine rather than to a static object: 4d1ac883a7 ("hw/arm: xlnx-zcu102: Move arm_boot_info into XlnxZCU102") 0f15c6e338 ("hw/arm/raspi: Move arm_boot_info structure to RaspiMachineStat= e") Signed-off-by: Bin Meng --- hw/arm/kzm.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/hw/arm/kzm.c b/hw/arm/kzm.c index 168ecf35d0..1aa5b49de9 100644 --- a/hw/arm/kzm.c +++ b/hw/arm/kzm.c @@ -54,17 +54,13 @@ typedef struct IMX31KZM { FslIMX31State soc; MemoryRegion ram_alias; + struct arm_boot_info bootinfo; } IMX31KZM; =20 #define KZM_RAM_ADDR (FSL_IMX31_SDRAM0_ADDR) #define KZM_FPGA_ADDR (FSL_IMX31_CS4_ADDR + 0x1040) #define KZM_LAN9118_ADDR (FSL_IMX31_CS5_ADDR) =20 -static struct arm_boot_info kzm_binfo =3D { - .loader_start =3D KZM_RAM_ADDR, - .board_id =3D 1722, -}; - static void kzm_init(MachineState *machine) { IMX31KZM *s =3D g_new0(IMX31KZM, 1); @@ -125,10 +121,12 @@ static void kzm_init(MachineState *machine) 14745600, serial_hd(2), DEVICE_NATIVE_ENDIAN); } =20 - kzm_binfo.ram_size =3D machine->ram_size; + s->bootinfo.loader_start =3D KZM_RAM_ADDR; + s->bootinfo.board_id =3D 1722; + s->bootinfo.ram_size =3D machine->ram_size; =20 if (!qtest_enabled()) { - arm_load_kernel(&s->soc.cpu, machine, &kzm_binfo); + arm_load_kernel(&s->soc.cpu, machine, &s->bootinfo); } } =20 --=20 2.53.0 From nobody Fri Aug 28 00:12:35 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass(p=quarantine dis=none) header.from=processmission.com ARC-Seal: i=2; a=rsa-sha256; t=1786886203; cv=pass; d=zohomail.com; s=zohoarc; b=WbQ54vsN8F4hkXEq6sxSxaVMFGGYT/Ppv4uPGbf7SJYrqfPwdGzsFUL6zVAxTOU0JQlA54pP2WbFNFhKuB0dpdjcG6MTPJwvKT8XRXPe43qZNrs75ajVtB0GbN4ljgniO4SYyXbvRTF7hKyfoRZrc3bK92Ns2/qa/35Cxmbf4I0= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1786886203; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=oTP3QW1qCoAMzAjzeP8saVbM0tCpjDte81vQlN5O7uw=; b=GViUFimmLXSOLCvNSmLk/9GIlYC5K/yDpS6JpPKiKxS+3CgMsreZm1edE8B5j9KclFoePSh6TJHfB9Hj42wx0ZCxq18CZ72mcZMOpSAzEU3B1wSd0V23nH3T7CFwjAsEB5yySt7QK0LaCioJCGZcBfcZcaLUzkCh7pnXtOB/XXM= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1786886203402829.0210025502688; Sun, 16 Aug 2026 06:16:43 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wvaiC-0001ft-Rq; Sun, 16 Aug 2026 09:15:40 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvai8-0001d3-PB; Sun, 16 Aug 2026 09:15:36 -0400 Received: from mail-japanwestazlp170120003.outbound.protection.outlook.com ([2a01:111:f403:c406::3] helo=OS8PR02CU002.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvai7-0005TH-32; Sun, 16 Aug 2026 09:15:36 -0400 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) by KUXPR02MB9310.apcprd02.prod.outlook.com (2603:1096:d10:9f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.315.17; Sun, 16 Aug 2026 13:15:27 +0000 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03]) by KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03%4]) with mapi id 15.21.0315.016; Sun, 16 Aug 2026 13:15:27 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=mV1bBjQcFdWvCbahAzfZOBc+p3DukXddI+XOx0s4ja+NIhcNlD+214IvY7d6uFD+JKGCDVlAP8JE7YDbz9owxjmeDIOiGY7g+zb8FQSqZA5STpjDYSZxcsvvNH0ikpdnoqicAWDyNTHd50SOsBjbPSW4dIQt0Fc5+Z1IkYJ5OQcERVErA1y23v40dOjX42UT0yDhIMs/m/Xk4NPg0fW8FD4bV4ppCJ/GCAhccqrr+vhizj9KidMooWrHn69NpN8CzWHRp4z6UiG6Ukx0+396X3ZBf1BHnSGVxEwOB39sCI7x/fubzl9vhVyCvCpFZFQ2qqrL01Tms1Dw+o2b45EKxA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=oTP3QW1qCoAMzAjzeP8saVbM0tCpjDte81vQlN5O7uw=; b=YZLUqQAnK9bD5U7GIcAxllYhWw9ThET4s8F6wVv4FxtrJhFASlLrG2Ohu+uw6iJBMWgNNuwE4f+qnat528pzhWQsZN8WZHCgsgPVFOnjTxRW+1h8aqEbLpd9RN9SuyNfES3zjqJtZDJlhP7/GAPxDiQpGklPX/xOph0oczWHlwkv8TvlQE81A32NMhpXYkmlLlZ2ydp7RudL/vygA1RMl1fjUkueWmJShPFQkY4zQ+iXXXXXHuh+cHva877caYCpmToZXFrxSoPRY48w+OA4mf2LfULw9t0W7sAjQfNSUHab8BpyE3Trnmui9ecCR8O53O5V0v1A5LL/51FUwS6ofQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=processmission.com; dmarc=pass action=none header.from=processmission.com; dkim=pass header.d=processmission.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=processmission.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=oTP3QW1qCoAMzAjzeP8saVbM0tCpjDte81vQlN5O7uw=; b=FOYhEWucOHEQ7ETvf0MXNtPqEudiMjravAA7298+EsC55hvu609xbX6XuiUFub+tXXZiW6vwvxknIs+jynNKqvxTBRwvcMbzttIZULW+q3MWqiQ+t2l5qR5w3TCfalzO+V569q+Zi67e1Ov2QFVT2tb00F1uShmg8TO0QRMpfF7HCXKhv+flVeOg333RQQd11d0KcwAtMPNYsqCP7SEGo+6deMkDyPX5ZgwEMDpk13hZgMMCWlU9c96UcAKELr5RtZLC1KgzeXbXpnfu44XmDAUhfDioU7nR4VoDWYvBWXIWVxbrxmSI++CsXD4WMh01l3hpCwdNY3LZtZMqi/K/cw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=processmission.com; From: Bin Meng To: QEMU Cc: Peter Maydell , qemu-arm@nongnu.org Subject: [PATCH v2 11/20] hw/arm: mcimx7d-sabre: Store boot info in the machine state Date: Sun, 16 Aug 2026 21:12:41 +0800 Message-ID: <20260816131300.51799-12-bin.meng@processmission.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260816131300.51799-1-bin.meng@processmission.com> References: <20260816131300.51799-1-bin.meng@processmission.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TY6P301CA0004.JPNP301.PROD.OUTLOOK.COM (2603:1096:405:3be::8) To KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: KL1PR02MB4977:EE_|KUXPR02MB9310:EE_ X-MS-Office365-Filtering-Correlation-Id: 3dcd6e7a-1ad4-4d28-80f4-08defb98708b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|23010399003|376014|1800799024|366016|10067099003|56012099006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: 5aBQXAXToYc3wIn2hXXBEkAe9h2JleKWQ9YC2xp71rGRFKpj1osit5QXKYCYNYPIT0Cvur5JplKu+DePN0Aw3Hw4eCpucRBzHIe28Ss1QZYqqmcEaENm7jfJk/uLpBXUn66D/a47MRUO/EdqzA3AyWQtWzLrgrhfwsh3GGBDoA59TOQHdcVUF9jCBqGr27Rl8j8F69kqfGsz0cg6u8JUOu9MqaoTZ1ADku8V/oQiFL5vrtHvjcLDio/tupct51PxiybootpIyvkRKiu1zXAhAvKlNKYh7gZlExBpCWyeLovwPdRehJ9QbQ8kyKVveC60pQwA5AGHXLCLZYYjGfqgeFcuQtNwxwyNuxaPbNRB2hnasQy9WDNxQupontt4vZ3JEh+CnBR2HDLQAM409UcNRSL2FjBVUGJLLLyO5sWni9g6l6N+dvm1Tp6xxv4p/NpV/wW5gliJHpUgXk18itaneMLT0YpkVI1RLZwqNw9ty3zYzq+vGRrge8ZRb8XTkdMiXl6/FJVaf2F06nhIq4Ib0gnJgVcOCN+WGFMqiwXX1wqi4yYSrMV15FwtiMSsR8lC+JCHR4dGgfBBnhzghM0PtoS8sDqu059rZS/qxLLFvUp3cqFbGAg4lE7prsnul4GKuI2r7DKlZ5aH70ldPRmI5jdLgEq18UHL0SNdgNm9bWk= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:KL1PR02MB4977.apcprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(23010399003)(376014)(1800799024)(366016)(10067099003)(56012099006)(22082099003)(18002099003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?tRLwmSGeoef+NBEAFIGWN8BzTg1GVF0A/ClDFqUGTfwimaxdwpxVzcJ09fEM?= =?us-ascii?Q?fpmmGn5WY7vOlc4jMyO6/ALYpqbNcRw0ilWchaTyi7onh74xwTvhsnOzJgQF?= =?us-ascii?Q?BOTmEo7941yxUPiOfiXfXpJNBCnB1jCXfWGpNhdjYmaAXyK6x5OWpagQ6ytP?= =?us-ascii?Q?jTF8G2erF7AoYytm+T6cFbJxTcnAf7sDIBx0yPr6nKaeQflnrJxKaZYyFr/L?= =?us-ascii?Q?iF0tsLbl6MvwSb4Ns/kaPx9Z7W3I6O8rbg5t3+AWKMxec/JpmCHX10rvrngO?= =?us-ascii?Q?ycTJiZVPROFAvIJClznQPwmneXOXj3ICzU28mx0v7XYZS9axFtus/hWyb1sH?= =?us-ascii?Q?1Vzt6mP4LJUZG/AU+GCHYwgVpT/CdFS9BIi/ZSanHcwCk3lz0V9lIAjtrTI6?= =?us-ascii?Q?haEtIRWx4EqloXuXqvRmAncXUfyr32NGx90xVgtXrb58oFssjjcYGYx7fXgk?= =?us-ascii?Q?jhDmBD6sjiO4CRqs5vovV9suCTx3lwL7A2UOVnvJ5xLn7T2Wfv1DVBGjVOLL?= =?us-ascii?Q?Hv7jsiqu+r/Cst2AvSNoynWFSG4nP/Nz3FJzl/Gq2jWgMiLMSvDruRVPS14T?= =?us-ascii?Q?rey44Y2VfaVi31ToJTPk7Y2kVQWgmAarzSV4GpmfaFABGiUXZG1q1wjB2kwM?= =?us-ascii?Q?NL0Z0Db9iKUCImPf7YfxaFOUwesAQ7CizIMDs+IpmfNEFKutEtDEJtSIkm3W?= =?us-ascii?Q?fJTw6d4VjdrXUhcXIQEeWVUNxWHxK5XFJzetO9wV2PunHJnuQXrMDMMUl8kD?= =?us-ascii?Q?KJX/e86EGCfbWpTyEypcmn2u86iAYUl+OOeVw9RG7uhiYFsqt5Ss4qrpbm3k?= =?us-ascii?Q?CVkBcDekBZGL92ReZPLwdwaviXjfPG3Fy/HmvDDfmFcecJj/YtDqs1OYZUCX?= =?us-ascii?Q?SIdAxL+LYmwHF/rxnHHEfvQC1V/uQ4+jxNN0gXXHuq9VigBQVM8yT21RebAk?= =?us-ascii?Q?ilbNCmZsJT8N/rCStiLMSRocqOexTgiGmhwA7w3KLlTRQJk66M58GQ6MfLOo?= =?us-ascii?Q?CfY3c6NmjcJHqqFJqQjXZ+oegW+XtQkM/HGgchASwKc+xdjdyq2BWjXusnoi?= =?us-ascii?Q?fTuvGCenZKr+ES2ZDnfyLAmqaMvl4BeKeShH5cZlCYrAN2CpL+xclsx3Kfoe?= =?us-ascii?Q?29OxkMz1GLEJMKcb4LCp7iqKDUxq7SFogmpWT2pVCXVPsikSytiTrIxKd2+8?= =?us-ascii?Q?jesucwcoFJRkTEwasgPM6KFoXW3gs3NEKzM1TR/1B9SZWN+ZD8vEpQd7ULt2?= =?us-ascii?Q?VbVMLb9iFBbbiY4vsxD9XV0n11LV1B7rw2G+zS+zGfXjmNE5UAqDpP88jkTo?= =?us-ascii?Q?5HPU21NIUFTEPYReCWQdLJ3NoqB0C/xyq8UIdtrVZetcPhmO/vUOnTWrXbzS?= =?us-ascii?Q?YSMkvOFxc2JQNVeQixBUVhtMZD46eO/FabLNi33QG0NC/AQUXipmgfTqc8zh?= =?us-ascii?Q?r2idtBznoVsAxgpZnphMJyh+NRIeeVFcs1t/XA0zUDVlp/UehHeYrmDX+MwC?= =?us-ascii?Q?ntxMTa+2pX8kw7sIxnfrNPHstT0lNfRWNjz69qNUuD005wvrpxbbSmKiAp7o?= =?us-ascii?Q?RMtrz/uEEf1kJi58zleeO6nFFOdtW7KdentVzXkR9KFswJXk0QMXdb5cjKC+?= =?us-ascii?Q?xhiUZuvqhIf/bNP/Dozc4pkVcJaMHZWQot2GOQuzPVzlWfgOSmaDDCMe01J7?= =?us-ascii?Q?Xx78qUA5h3inCcVfOqP1rg5wtPVxP1NIxsIxMDIanGpzb+sq5etBHKb0Kt36?= =?us-ascii?Q?X9kLKd2hhERFfczJ9uwbZFK3yY8VSMw=3D?= X-OriginatorOrg: processmission.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3dcd6e7a-1ad4-4d28-80f4-08defb98708b X-MS-Exchange-CrossTenant-AuthSource: KL1PR02MB4977.apcprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2026 13:15:27.6270 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e0544bf7-9765-4630-ab69-0b266dc2169c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: AwxKBnFYioWrOIQzZfOI9jKxcDbZFicznfE6L3YWx4Kz4VJ3sFZSIwcwpq1ljTl02WGXreO/LQRhZkNtbsIczV/HpXVtsAU21iX7mBT7Wt8= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KUXPR02MB9310 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c406::3; envelope-from=bin.meng@processmission.com; helo=OS8PR02CU002.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @processmission.com) X-ZM-MESSAGEID: 1786886205718158500 Content-Type: text/plain; charset="utf-8" arm_load_kernel() keeps a pointer to the boot info struct for the lifetime of the VM, so the struct logically belongs to the machine rather than to a function scoped static object. Move it into a new Mcimx7dSabreMachineState and register the machine type explicitly instead of through the DEFINE_MACHINE_ARM macro. As in the xlnx-zcu102 and raspi machines, the boot info belongs to the machine rather than to a static object: 4d1ac883a7 ("hw/arm: xlnx-zcu102: Move arm_boot_info into XlnxZCU102") 0f15c6e338 ("hw/arm/raspi: Move arm_boot_info structure to RaspiMachineStat= e") Signed-off-by: Bin Meng --- hw/arm/mcimx7d-sabre.c | 28 +++++++++++++++++++--------- 1 file changed, 19 insertions(+), 9 deletions(-) diff --git a/hw/arm/mcimx7d-sabre.c b/hw/arm/mcimx7d-sabre.c index a0ac647c3d..22fe1fa932 100644 --- a/hw/arm/mcimx7d-sabre.c +++ b/hw/arm/mcimx7d-sabre.c @@ -22,9 +22,19 @@ #include "qemu/error-report.h" #include "system/qtest.h" =20 +#define TYPE_MCIMX7D_SABRE_MACHINE MACHINE_TYPE_NAME("mcimx7d-sabre") +OBJECT_DECLARE_SIMPLE_TYPE(Mcimx7dSabreMachineState, + MCIMX7D_SABRE_MACHINE) + +struct Mcimx7dSabreMachineState { + MachineState parent; + + struct arm_boot_info bootinfo; +}; + static void mcimx7d_sabre_init(MachineState *machine) { - static struct arm_boot_info boot_info; + Mcimx7dSabreMachineState *msms =3D MCIMX7D_SABRE_MACHINE(machine); FslIMX7State *s; int i; =20 @@ -34,12 +44,10 @@ static void mcimx7d_sabre_init(MachineState *machine) exit(1); } =20 - boot_info =3D (struct arm_boot_info) { - .loader_start =3D FSL_IMX7_MMDC_ADDR, - .board_id =3D -1, - .ram_size =3D machine->ram_size, - .psci_conduit =3D QEMU_PSCI_CONDUIT_SMC, - }; + msms->bootinfo.loader_start =3D FSL_IMX7_MMDC_ADDR; + msms->bootinfo.board_id =3D -1; + msms->bootinfo.ram_size =3D machine->ram_size; + msms->bootinfo.psci_conduit =3D QEMU_PSCI_CONDUIT_SMC; =20 s =3D FSL_IMX7(object_new(TYPE_FSL_IMX7)); object_property_add_child(OBJECT(machine), "soc", OBJECT(s)); @@ -65,7 +73,7 @@ static void mcimx7d_sabre_init(MachineState *machine) } =20 if (!qtest_enabled()) { - arm_load_kernel(&s->cpu[0], machine, &boot_info); + arm_load_kernel(&s->cpu[0], machine, &msms->bootinfo); } } =20 @@ -78,4 +86,6 @@ static void mcimx7d_sabre_machine_init(MachineClass *mc) mc->auto_create_sdcard =3D true; } =20 -DEFINE_MACHINE_ARM("mcimx7d-sabre", mcimx7d_sabre_machine_init) +DEFINE_MACHINE_EXTENDED("mcimx7d-sabre", MACHINE, Mcimx7dSabreMachineState, + mcimx7d_sabre_machine_init, false, + arm_machine_interfaces) --=20 2.53.0 From nobody Fri Aug 28 00:12:35 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass(p=quarantine dis=none) header.from=processmission.com ARC-Seal: i=2; a=rsa-sha256; t=1786886250; cv=pass; d=zohomail.com; s=zohoarc; b=OYK44Tb5c5ZxxeSMLQkw3jgtlSe/h6r4mxETiEMo+wbj0nXQGn9r/y0j3js32aBQQ6rgSXPwSEjQ6bj5FqvlymEFWq4q1uN7wdjITBuMxXeduYeFNllSHPqWz1QkGMmQW+hYH8tMRG+sp8+ql5LPYJyh9g2G2iqLIZTPhJXp9oE= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1786886250; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=HB88zqiS9Exbf5EIH/gqmq9O2iYEJarvItcZThDqntg=; b=izwhIBm2jMakyyiXmQCOmtFFmi3Mztl2mjnV3PLQv04nqPqDOZG6bKkBFdYGtG9KyM1V6YM2hgo4LVlF4WQxET1jlWqIl13qvyOqcZrLYLvxNZU8h3riY/gfMJgsV/WAL0JA7bj/ePZaCAP8MnLCRCxOo5kwQTafzXbdzhndmrE= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1786886250584342.6763232765014; Sun, 16 Aug 2026 06:17:30 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wvaii-0001rA-36; Sun, 16 Aug 2026 09:16:13 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvaiA-0001eN-50; Sun, 16 Aug 2026 09:15:38 -0400 Received: from mail-koreacentralazlp170130006.outbound.protection.outlook.com ([2a01:111:f403:c40f::6] helo=SEYPR02CU001.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvai8-0005Tk-Ew; Sun, 16 Aug 2026 09:15:37 -0400 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) by KUXPR02MB9310.apcprd02.prod.outlook.com (2603:1096:d10:9f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.315.17; Sun, 16 Aug 2026 13:15:29 +0000 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03]) by KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03%4]) with mapi id 15.21.0315.016; Sun, 16 Aug 2026 13:15:29 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=XoJGKJ+PwuMV6tx/RbzjDSFObeYHVVLHxJZPRxd1tBsUWqPUqpsCw14J2nPbQljx0w2bjVxcet58lnG5QwL7PeXQkQOcZzHryCv3MisH4ZMRzKPBWChTMm+1Lipg2HOlA342iO53SpP38jpktZ7M2yQNrRui1TxgRrI/uMI9yQNiJPgPbij+nvqa8PrKKq85KTsHj/WTEqc8Bb7MGpfGC6Yxevs831SAQkeGUvrwwqF/OESZCdeSxgzSp5pbo8ZZdNKAqcTLDCVe9jiH4GdRYXIULorpW/yA2c02bBkjfrAn5RnOLjXAT2uTPh6+4cJYlTE9QN9UJr0Js96+67RGeQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=HB88zqiS9Exbf5EIH/gqmq9O2iYEJarvItcZThDqntg=; b=YLonmK9CrLeGu5mp17VRO7FxxSByE6g04LFfjp5x48a2QmKgYeNYbrgZRZmrBoa677TBVNUCqW9IxLpo5vetmoLB7SJDjtzl3vi5zKnrWyZt0lmqFmxpyhinVy1QnyyOUzPSNt0N4WYQkDLPhq0iIc6wrFozKflMUFWoo6p43EcsenXAomb71QrOLDKZgyeeJUYvIVxgv2ICqzzlIb+TS5vbuDlwhS5iPQHh06UvxY7d5gjoCEDcpXiy2sx+OsO/yXbU5f/KclQePwbT4hl04U3grDNBIG7poUI2FVoPc49tlOBAYo6QjOmU0xelviw8tdtpnOt7josirIwPR8VGVw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=processmission.com; dmarc=pass action=none header.from=processmission.com; dkim=pass header.d=processmission.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=processmission.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=HB88zqiS9Exbf5EIH/gqmq9O2iYEJarvItcZThDqntg=; b=nUvTJ9GJp+3Z6mBa+pvbZS8qFBjWO4Ek4Y7e+3Dkvu8Lwf1NNOKnmHW9HkdtmQCWrhDact8P19cGT0c3TlqjmnEqBfcHJ9tAzBG8E0j0n+b0Dpkl7+HAw2KNI7ajVnmPB80y6YSuy7jvHDH1zRNPRJMVtKctxiLliAdqchp7Kj2KFJvS9cqs1bZi2iWYXQRMQfndxGuAIp1hEbYjulMt1RIwkwfTjoOkRanJ1K/4LwSbQK0Xas1Tgp49YBWN1dXZ6qnnHxPRI/p+JlfXoXLBuVD60Tqw+D8+zUK8UtWFNSqJPEn75jWJEvF8H62F5U5EBwt3I7TQmKW4W0ZCSiCu9Q== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=processmission.com; From: Bin Meng To: QEMU Cc: Jan Kiszka , Peter Maydell , qemu-arm@nongnu.org Subject: [PATCH v2 12/20] hw/arm: musicpal: Store boot info in the machine state Date: Sun, 16 Aug 2026 21:12:42 +0800 Message-ID: <20260816131300.51799-13-bin.meng@processmission.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260816131300.51799-1-bin.meng@processmission.com> References: <20260816131300.51799-1-bin.meng@processmission.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TY6P301CA0004.JPNP301.PROD.OUTLOOK.COM (2603:1096:405:3be::8) To KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: KL1PR02MB4977:EE_|KUXPR02MB9310:EE_ X-MS-Office365-Filtering-Correlation-Id: 6706c468-775b-4b42-d9ec-08defb9871ab X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|23010399003|376014|1800799024|366016|10067099003|56012099006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: VvMVCuBDtgfEmrX+7IF4wvy2BTJClkFZwtfxxk20Rf3HHPZVNUObyyYGjSlFmYhNfNrzugijah8FAQWrZz9FpHwGtZy2GwmiRSBy8roardQb2PWiWOzaRwN/1iSvxVD6aOSkwEJ2Fk3PJuETsps0K/90MWzioLoSsLcCP8zcwgAPhmw/fYCDwUYTV5wBGg4qTGZ9F+yQyQhqtNazQC225YgRqdvlRmbAH7k9U3GTE5W579s05IWwp+mZX9+919Mb/uc+X31cSDVwYygVxthBLnPhsDZWWGIxV3+4g9APh4//zzraJHuCErugtTzAkJFJLjhIqDWh4lGjG3iy3gKDqTnr8HP3JC5J2/7Jz/CReIbhj1Kq9H/uP7V2VN76tM04T6HkvzkU8w/VJVcXINjr8cETIOUxY3oUbOGHxtrlGUw3inV9x7eGEzpdmkuPguBEeEEjeVH5mllV5iOJoHDRfqzz72bn7d7kUyJMwfDrRq8u9bADmHO6xWkqokokOozEpl6cSiSiivQVBu6mk74ACWIJmITn+zYaXf6IbxIODEQgusG1eiGGRVUTb5+9VhDfrtVYeTm3hd7kC2Is+ED31kbJtvH5n3+DxrASiJvwoxIA7/G40RMnVmvxMfOVK1JRUTwweaVeHjDnYM5AVS+/yJT6Pk4V/xSt6A70iRbQwVw= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:KL1PR02MB4977.apcprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(23010399003)(376014)(1800799024)(366016)(10067099003)(56012099006)(22082099003)(18002099003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?fRuA81Fbz9GhnA8B1wGvm23iiSlukU64l/+f0c2dymeGgxAAo9GpA8Jr26SB?= =?us-ascii?Q?XSLfnwudMeg539QREwaAdIz9GqvWODlmYxV4G+VgGr64KCeXJNxtJ07JFi01?= =?us-ascii?Q?zYYNtb3UQDUU+SARhbL5CBgvHO7QCHrocNOTyY7A5ExFUO1sWE1Jz2dgYUCD?= =?us-ascii?Q?xMY/w5B7IBFJQcWhtF2S9OgwaMbsX6H9EA7QNvxtrlvDupCPml77A63Ti79s?= =?us-ascii?Q?FKrjXZwn6Nbg6cLe4Dqo9VPf2YYgmmCqGSpLz6NuDEP7U1S+WgUcAzQlOd+g?= =?us-ascii?Q?O3nlu9qYI+I1GP8QQfu5U+mcrD9OJvuuewgJrkJ6sPbAWG6Vrz6PSlE0FtgE?= =?us-ascii?Q?Bugmuc9yJ2Mt7jRhuO4zPnw8Vw1J/hHjdZYNAbhPhC4Sa5vVrshE2gI46Mzd?= =?us-ascii?Q?W/afS7LVOxMzPNtMR7lHIVCWQDS/VfLrn4UQYjSEohDnuwS2tY2AuBjlLWdq?= =?us-ascii?Q?bPELTKJo8Ac9efnL1BwHU3mAQHbIWStrKQ64Egq8+jcghFWtuHxaw16UyNsD?= =?us-ascii?Q?8SaSXS13HEd45m8sDn2fkq1ZaIcn4YuDa5RIY3O0Opcu7j90tqrUO4bQUt9M?= =?us-ascii?Q?XtQP9FUwcy5HgpvXhG0xmg2DuUX78Gvha7XQau6WSHbrOBnoudXjHHq7zFq3?= =?us-ascii?Q?hJOj1IMKq/yq+Ha8u4lqSSOQMdhzwklp/+umMV93g7Xr9FTNi/+J37PHjUof?= =?us-ascii?Q?Rz50lBQGNouzsp4NI3QWnF8LVdvVAJjgm5kohF0xNhI/NJJY1ByoTtz9b7Hh?= =?us-ascii?Q?gBGuvAaXODq/gHeg6yN33AcQ0xFYNcOIKWEAhmiKtYglIFcNvxJ8C1CQk1MI?= =?us-ascii?Q?I7Bfgi3eAlJl3nezq2TUcaJKoPDvxZ4e5IfAMYwyB4hcD0aJoIqSNXAijpZL?= =?us-ascii?Q?kGaxkW2aNHmgwdXAcbxf82V4fDz4QP3PwcJkigRhIVN68/c2B5ctt2yxkpE1?= =?us-ascii?Q?vUVHrCol6DqV7U7yylp2+PAMuDeBBAlYp/NN0V6QNLvtgRL2UXMIZ7a59Gpz?= =?us-ascii?Q?kuvhk7A1beyr2fwgFtyCVhw233LhlsEbeyzJZmZ9p8f+7lXjZ4JDHBMBhURn?= =?us-ascii?Q?IOd9fa0tPNllSwnPD22pMfxHitXrAnB884GxmX34srG2GcXHUoQkp3Cw++jy?= =?us-ascii?Q?Tjs5bbs72j8JaMB3CAO79ZahhUCkxwUme67xbbyeeVaC8FGit3AJkMQGwx5R?= =?us-ascii?Q?O78P6mPx8jPg/hugnsg3hZm0LKp23j4a5NKoj3ykd5H37yk/klALWmJc7CWn?= =?us-ascii?Q?2/KTP2oinYNQuyc8bkmrpKYRqAczsPsoso1bD6HRHfZQIbinjSgp+px95ml6?= =?us-ascii?Q?pBA0FpHzMrTCnup9V2B3SE314gsSe+C28QNaKgge+vKcuYBIubh8pvKbxQGX?= =?us-ascii?Q?UYqufg91Tximm7zO9OOcjosXzU7psy9L0/9buskGKj3ZGw84LMIEhCVXJhlK?= =?us-ascii?Q?dutrLCQNG+n/tJoPxzx54mhDkFGos6K7ai0/avH+1YdVcQLOG2w+bizr+b0/?= =?us-ascii?Q?FTclq/su9qwgKgNvRC5cJrGFKY6xMK9SFDK3bhwjKa5WbeRCFuS8+AKi171C?= =?us-ascii?Q?fy3RhMZ4tJt6Icgmpr8r10RsL2mpz1u/mk46TmMfBkslBGMNt+PaIjV0A1Gm?= =?us-ascii?Q?wWv6oFNtIgVwLEV+xASkVsEXT1x5OZnBPBzFBePnz9hoVCE19bv9S+10BZo5?= =?us-ascii?Q?eHWcGegZfZSZAeD9an1WE2T0qn4LoKHlGJFQmmruZxmk8olHoJxs7sjOzPvf?= =?us-ascii?Q?SiO7v82Favul7KN7ibGfv/swmkjgLN0=3D?= X-OriginatorOrg: processmission.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6706c468-775b-4b42-d9ec-08defb9871ab X-MS-Exchange-CrossTenant-AuthSource: KL1PR02MB4977.apcprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2026 13:15:29.5168 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e0544bf7-9765-4630-ab69-0b266dc2169c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: hRzuR3apdAYrTKRBCvHRbzrD4wyJaNpzL3zo9W9laxgaP0OKTY4w7gaqJ9ftZkhXCc1LrHjszUQXS4xHjfVP8wPkaZaXwGHLJIrqY4yWMEk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KUXPR02MB9310 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c40f::6; envelope-from=bin.meng@processmission.com; helo=SEYPR02CU001.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @processmission.com) X-ZM-MESSAGEID: 1786886251706158500 Content-Type: text/plain; charset="utf-8" arm_load_kernel() keeps a pointer to the boot info struct for the lifetime of the VM, so the struct logically belongs to the machine rather than to a file scoped static object. Move it into a new MusicPalMachineState and register the machine type explicitly instead of through the DEFINE_MACHINE_ARM macro. As in the xlnx-zcu102 and raspi machines, the boot info belongs to the machine rather than to a static object: 4d1ac883a7 ("hw/arm: xlnx-zcu102: Move arm_boot_info into XlnxZCU102") 0f15c6e338 ("hw/arm/raspi: Move arm_boot_info structure to RaspiMachineStat= e") Signed-off-by: Bin Meng --- hw/arm/musicpal.c | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/hw/arm/musicpal.c b/hw/arm/musicpal.c index 69e83bdd97..8a70ed7377 100644 --- a/hw/arm/musicpal.c +++ b/hw/arm/musicpal.c @@ -1200,13 +1200,18 @@ static const TypeInfo musicpal_key_info =3D { =20 #define FLASH_SECTOR_SIZE (64 * KiB) =20 -static struct arm_boot_info musicpal_binfo =3D { - .loader_start =3D 0x0, - .board_id =3D 0x20e, +#define TYPE_MUSICPAL_MACHINE MACHINE_TYPE_NAME("musicpal") +OBJECT_DECLARE_SIMPLE_TYPE(MusicPalMachineState, MUSICPAL_MACHINE) + +struct MusicPalMachineState { + MachineState parent; + + struct arm_boot_info bootinfo; }; =20 static void musicpal_init(MachineState *machine) { + MusicPalMachineState *mpms =3D MUSICPAL_MACHINE(machine); ARMCPU *cpu; DeviceState *dev; DeviceState *pic; @@ -1341,8 +1346,10 @@ static void musicpal_init(MachineState *machine) sysbus_mmio_map(s, 0, MP_AUDIO_BASE); sysbus_connect_irq(s, 0, qdev_get_gpio_in(pic, MP_AUDIO_IRQ)); =20 - musicpal_binfo.ram_size =3D MP_RAM_DEFAULT_SIZE; - arm_load_kernel(cpu, machine, &musicpal_binfo); + mpms->bootinfo.loader_start =3D 0x0; + mpms->bootinfo.board_id =3D 0x20e; + mpms->bootinfo.ram_size =3D MP_RAM_DEFAULT_SIZE; + arm_load_kernel(cpu, machine, &mpms->bootinfo); } =20 static void musicpal_machine_init(MachineClass *mc) @@ -1357,7 +1364,9 @@ static void musicpal_machine_init(MachineClass *mc) machine_add_audiodev_property(mc); } =20 -DEFINE_MACHINE_ARM("musicpal", musicpal_machine_init) +DEFINE_MACHINE_EXTENDED("musicpal", MACHINE, MusicPalMachineState, + musicpal_machine_init, false, + arm_machine_interfaces) =20 static void mv88w8618_wlan_class_init(ObjectClass *klass, const void *data) { --=20 2.53.0 From nobody Fri Aug 28 00:12:35 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass(p=quarantine dis=none) header.from=processmission.com ARC-Seal: i=2; a=rsa-sha256; t=1786886328; cv=pass; d=zohomail.com; s=zohoarc; b=cIqOnG55a8eW16qaaBF9t88qeYO2/svLcl1vJutfjC/DhyRCJQn5OqpTssbtvdeozDgkeqAB7VdVzQEs0QOk7qUSqJ7XprTKInVNwaqPCyUF8zVuC26EEkAIpGq4b0ktWlZttjDe4DYgdvySCagm9BVCNbq9mUOpeU3MjM+Veic= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1786886328; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=Cj+ezSXS4YGjM4RxgWEsxxYdjUM3LHaM0ajWOkLyHwg=; b=VbvTktJwm+s6NyRixqGLoe0GLlY8h9FmVTPqakj+rbrVpsUVthne/bcaVDv8Htyvjlr/zkGquUWtVcjyXl+ExFpCXb/GFNZsm7VHRYx7VL6CEZ+DejFB6GDtS2tqLNSajKazlFei4FS92MqqNxSdevxvNdAOAjUfr0IBlv0kdgU= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1786886328384279.4853675476386; Sun, 16 Aug 2026 06:18:48 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wvaim-0001u7-3I; Sun, 16 Aug 2026 09:16:16 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvaiB-0001fE-NM; Sun, 16 Aug 2026 09:15:39 -0400 Received: from mail-japanwestazlp170120003.outbound.protection.outlook.com ([2a01:111:f403:c406::3] helo=OS8PR02CU002.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvai9-0005TH-N7; Sun, 16 Aug 2026 09:15:39 -0400 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) by KUXPR02MB9310.apcprd02.prod.outlook.com (2603:1096:d10:9f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.315.17; Sun, 16 Aug 2026 13:15:31 +0000 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03]) by KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03%4]) with mapi id 15.21.0315.016; Sun, 16 Aug 2026 13:15:31 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=kInri7asKoMsIrIhf9cYQV3oIf7Bo2aG4g4C1EWdUOzlduzJX6JqmYaYqjG2Rzs8Stki5Cqb5LKHXwlSK8kd4MAtprWHbDg9ZaU6gpy4Dk7gJLHdDfFEFcEQPSQAWUM+tUsePD5IrHiZ6D9v0IrZsSAJwIg6dv0DjfqlKewxMO8aFhKQjKufFUUumxbMR+ppugcvbREz7oWoKGPbn7V1/XV81oXdv6rwVWYQWWYSZ5I03r6O1CcNknqjVVaXW3vn0VUCSmay1puHSuOkcX6CHPd3BGJ2z4Y6qvpIOX935XyIw1CM5Or3p78ILPq+087wZdb4iy+bN4obXW/q3YHDlQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Cj+ezSXS4YGjM4RxgWEsxxYdjUM3LHaM0ajWOkLyHwg=; b=ojPtZs7TPhVNWGCx9ftH4yyRO3rN4PbIbjZQJGF/9R+v/ATKn+lanxvA9SMjjTNXE31bT72vH4vkDFlE5A1ATb/AcZfyAAMamFYoMLJ2D41s1+J4rDAxUa5/VCUqlePmrTD2w5wpJgb/XhqmY+1qHGNQfFeoQ9+iknhxMIwSH+5LyaF1LcTRcOpTjTUuD8cqoOSCBEo1PjLGM/p6mhCcfvNe5nVtvGxMER9LptB6zwOI23RgN+g4Rc4oRLXxG3zNs31y2OMxaw/+7gI0pJfKCCyLb4641EKbB5URpk9wZJvFBjSAPO14hmH3Tv2fjweR760bX2ipnqjSIL+KvtfEmg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=processmission.com; dmarc=pass action=none header.from=processmission.com; dkim=pass header.d=processmission.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=processmission.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Cj+ezSXS4YGjM4RxgWEsxxYdjUM3LHaM0ajWOkLyHwg=; b=IfWuoDuNt6R+19jtnRWn1t4Yf/TwLUFdHWId31Xd9PwDwPkfv6bJUHvYtMLqlEB+DN2SB+uresKjTmYCEpJbgjDyQZmAZjf3dneSUh4Z8WAIHFSiZy0I4K5SafDb0hsjwW05oyBSTmmMQ/UoEwx8HJNhuO6YykobtmkLgkPEH0mm9cNdpU0AtVd2rEP2YzXgD+RNID8BsuQnfewwkrA5bo6oyNqbh5jWdqnwArwe5kP1Hs6J+W51Qkx+x9hA64V63KBlvVaH/ReYn40Cgk26cWiOJ0zx6o2ak8Dn8c7yOalgZ10fNGZ7lLOkBTtmtRItbZxSAFWY0lN1rTxz5zgrOg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=processmission.com; From: Bin Meng To: QEMU Cc: Hao Wu , Peter Maydell , Tyrone Ting , qemu-arm@nongnu.org Subject: [PATCH v2 13/20] hw/arm: npcm7xx: Store boot info in the machine state Date: Sun, 16 Aug 2026 21:12:43 +0800 Message-ID: <20260816131300.51799-14-bin.meng@processmission.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260816131300.51799-1-bin.meng@processmission.com> References: <20260816131300.51799-1-bin.meng@processmission.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TY6P301CA0004.JPNP301.PROD.OUTLOOK.COM (2603:1096:405:3be::8) To KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: KL1PR02MB4977:EE_|KUXPR02MB9310:EE_ X-MS-Office365-Filtering-Correlation-Id: 2af66055-e2d6-4173-0162-08defb9872e5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|23010399003|376014|1800799024|366016|10067099003|56012099006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: UlQAcyRyoh1mpMz9/6NePM0i3Ix0yrh/sRkdJZtDmCerFm3aVyP/an9KV+I+tfAo4pmN3D+D2EykcxsXOM7X+ZS/YVolMxI+hSmaZzj8GoU4iNRGeuMy2Wzyy5tr3ChdKyt6NQjEIaUD+qMUj1of4jMNYluYbmeVzq13lr5ohXx+n5RO2lk4EdxPXnXrtk9z2r8SUvGt55YjsDw/jGax4ZSsYS5kazL7xP0QqdOdoFpL+KwvGA/KZ2H6T5Bj+Ta0llOSP43qvm/ktAOjVgEyC1vZq9JN/ElT63AOuxX1c/l48N+QalS1l7SKflg97qLWh+Ocu7yobh8Qu9HmzkMR1KDxSY41lvrfE++dVPBT50U0kfhetUsHTdiDYABvsvr8HZ/nzIFxZaoHUgEuefRgPRspZBMeocZ2WVmb3tuW0mPjveEjax4M+4DHZZIYD4Ognm8pinwkM/oNIktU/d8kO5QkdNazRGmLzolI4PeWGjHKzhX0khXMFrh6P5j7cAnN5hP6E+eh3eKI9/dz2ZlHlFN1dkuERLYyphyHml9cceMy9H1LLvBDBcBR7dpK3HL06aQQjdpgzq1Cc8E27GAxyELE1wH2Z6CPfGoFpV9ZkSuftPMhH6WB2SiTl8ps0L//7wcB+LGiFDF5s6R/v2w7AS83uyJeYUG2Fm4mq+agAi0= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:KL1PR02MB4977.apcprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(23010399003)(376014)(1800799024)(366016)(10067099003)(56012099006)(22082099003)(18002099003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?ozGMk0yvC6wGXEIlBvk1oh5CVxB09xX+AMBcpZN28ITcC4yUWcu4hlVnd+YV?= =?us-ascii?Q?HEgL8iiB5/gWAkGuhzeozmijCBUnri5lIj361mEJzXh/TpNrODi4T4y4c4ZT?= =?us-ascii?Q?yMSembUgaaWUA8NBKjvhBUDQAaKFFFrJ1dkgVNm13SEnq/3NECt6bqtKfr5i?= =?us-ascii?Q?iRld4o/Rc5Nl6Gsw+/JltlQrQH7EzVxiArwegeKnkz+gSix9mo5RKPVxD5aH?= =?us-ascii?Q?hkWYUaCzuY6BQSAZ4OVFK2aaudRbIa9l/ogVK8dSe7o9ytT3FlOK3lTkHJbL?= =?us-ascii?Q?R0qmJ7edV58bI28Ds5EdUDKnrZza6MasOuLvJHhOs2FJk/cQLGVuB14+jqYK?= =?us-ascii?Q?IAL7u9RKpa3cLng9cY90Mru8hS3EqJRS9pZ952T1vRu1PCY3BVNlEDILHy2A?= =?us-ascii?Q?jb9EHofPePNr/qB379PIsAeQspM6mwDSAeXriTpyIozFjbk2mj++gQETqdsO?= =?us-ascii?Q?833mdy/yAp42DUfB/23+vrBDqUYQB6B/kXmqoCQjJyqZz0gwzRnwGJgpw5pm?= =?us-ascii?Q?aTOLvJgDyXcEYSRio9ggPwYyyBbN9neMGO6dX99vm826OnacG8qYIr60/IfY?= =?us-ascii?Q?e9d1AeztWWAkOWcQycL7gxp5h5TSziuNTbSgI1S3k0n78tkDLYM4ZLAdUNJP?= =?us-ascii?Q?vwwp4LRio7YrQTVSgzF9PGApHNdGIA/6xoy4Jqg45IaoNjk0ldi/5sfME4tP?= =?us-ascii?Q?dB6F6mY0czf6FzcAzZyProGxPjz+HLF5ZwILMIgsoQiFQ3kpivfIvEoY0Mel?= =?us-ascii?Q?H2db/ailWTDkYSTnYO2ItpCXR8cHtbnhuFaQYxAFFI8p3PJZfvvrpAhcb3oE?= =?us-ascii?Q?qqCjAdw+0GSpofEV+YnLxVmUy96I1XVj6AFflw9Szi6OnC8tJR1TWnhIW+PY?= =?us-ascii?Q?scp4jPlh6BwlkPqEPAOD0RSqCGS7f7AtnfCArqXo+WEyUWJtxiX8O+muTOoM?= =?us-ascii?Q?aK4/9Uc7KS4ORfw36IjktmKqRhLoU9qJaQfp5RlgI1kDzF1g5y7EQ5Ajwm/8?= =?us-ascii?Q?wS9FzBU6D5DXIukGeNaJUauUaROhcme2cXn7LWlc+Daj8V2dV3V++qR0lcfK?= =?us-ascii?Q?wNtGJeWXhiZkmP5N7SRrA+AAU6T59TqvOIoPhh6b+YoJJ39sB6o4Be0TK6E1?= =?us-ascii?Q?IVzCU5MQtymKU84RSh0Syw5qcRLqwjwDLKov4Jt62MzXos1PbMrlxDhbKHTm?= =?us-ascii?Q?96ZquYixqD4diKQS2RXk/NZX9LtWwnHj4hS6dR3Zonopq3fLLdRw4i3+N+o8?= =?us-ascii?Q?tk1SmAGgWQZiS7aEyGcfW0wqJLTHNsjncGcpnN5I0Q4S2wtMpPIHHLRzMDwO?= =?us-ascii?Q?OWjGof1JQlMzXm2OS+pcrGp1FNS4Ba4r7XiCPuV/K7z1RwEApuoOgig2r3rj?= =?us-ascii?Q?yC0WL4KBEppUOZe/iADa+8AMWFzByVkG0yLPQ+TiSAN1JlaFBo27iG7JzBzP?= =?us-ascii?Q?i3xitp/X48sIjFq7uV87/nTuk9eLA9edTZGd5L2mn6olpJKSA6e+UHY15CFW?= =?us-ascii?Q?A9Cprj5mstH8Zv4hr1yKAYNBJmKzwoZntS79aiOzCdLiz2yYC8ONt9ojvTNA?= =?us-ascii?Q?n7vknR0weANC3mnWwENBfsiZkOvaurfCrYypTqeGAZjAfpnN5jIbbA0gbkmj?= =?us-ascii?Q?Y3074h83OH4mQNSSbRxd9aNhtSOpzLdhCCw9sUzWGJXjCGXiRNtw53AIq0oh?= =?us-ascii?Q?YL+SOZqQxGuHUDDsRqRdCKtPpzhqvbv7iWS2a8l2zacgxd6Ts0Y8nPZJH13G?= =?us-ascii?Q?OL8j24fuLF0VZdQI2ARIfQJKKdUGI8M=3D?= X-OriginatorOrg: processmission.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2af66055-e2d6-4173-0162-08defb9872e5 X-MS-Exchange-CrossTenant-AuthSource: KL1PR02MB4977.apcprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2026 13:15:31.5648 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e0544bf7-9765-4630-ab69-0b266dc2169c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: xHlrmXJpLwPhp6A6WVXgsAHoXvMsSE7EAKDhg+DexDm/FG2M/S2iQk74QM3nhd3j2xomiMsuKSETKG9zflwTzKjS4nngr+oxoO+uh5pmPrs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KUXPR02MB9310 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c406::3; envelope-from=bin.meng@processmission.com; helo=OS8PR02CU002.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @processmission.com) X-ZM-MESSAGEID: 1786886330386158500 Content-Type: text/plain; charset="utf-8" arm_load_kernel() keeps a pointer to the boot info struct for the lifetime of the VM, so the struct logically belongs to the machine rather than to a file scoped static object inside npcm7xx_load_kernel(). Let the caller own the boot info: the boards store it in their NPCM7xxMachine and pass it to npcm7xx_load_kernel(), which only fills in the SoC specific values. As in the xlnx-zcu102 and raspi machines, the boot info belongs to the machine rather than to a static object: 4d1ac883a7 ("hw/arm: xlnx-zcu102: Move arm_boot_info into XlnxZCU102") 0f15c6e338 ("hw/arm/raspi: Move arm_boot_info structure to RaspiMachineStat= e") Signed-off-by: Bin Meng --- hw/arm/npcm7xx.c | 28 +++++++++++++--------------- hw/arm/npcm7xx_boards.c | 10 +++++----- include/hw/arm/npcm7xx.h | 10 ++++++++-- 3 files changed, 26 insertions(+), 22 deletions(-) diff --git a/hw/arm/npcm7xx.c b/hw/arm/npcm7xx.c index c27f149c04..695f30a0dc 100644 --- a/hw/arm/npcm7xx.c +++ b/hw/arm/npcm7xx.c @@ -364,22 +364,20 @@ static void npcm7xx_write_secondary_boot(ARMCPU *cpu, NPCM7XX_SMP_LOADER_START); } =20 -static struct arm_boot_info npcm7xx_binfo =3D { - .loader_start =3D NPCM7XX_LOADER_START, - .smp_loader_start =3D NPCM7XX_SMP_LOADER_START, - .smp_bootreg_addr =3D NPCM7XX_SMP_BOOTREG_ADDR, - .gic_cpu_if_addr =3D NPCM7XX_GIC_CPU_IF_ADDR, - .write_secondary_boot =3D npcm7xx_write_secondary_boot, - .board_id =3D -1, - .board_setup_addr =3D NPCM7XX_BOARD_SETUP_ADDR, - .write_board_setup =3D npcm7xx_write_board_setup, -}; - -void npcm7xx_load_kernel(MachineState *machine, NPCM7xxState *soc) +void npcm7xx_load_kernel(MachineState *machine, NPCM7xxState *soc, + struct arm_boot_info *binfo) { - npcm7xx_binfo.ram_size =3D machine->ram_size; - - arm_load_kernel(&soc->cpu[0], machine, &npcm7xx_binfo); + binfo->loader_start =3D NPCM7XX_LOADER_START; + binfo->smp_loader_start =3D NPCM7XX_SMP_LOADER_START; + binfo->smp_bootreg_addr =3D NPCM7XX_SMP_BOOTREG_ADDR; + binfo->gic_cpu_if_addr =3D NPCM7XX_GIC_CPU_IF_ADDR; + binfo->write_secondary_boot =3D npcm7xx_write_secondary_boot; + binfo->board_id =3D -1; + binfo->board_setup_addr =3D NPCM7XX_BOARD_SETUP_ADDR; + binfo->write_board_setup =3D npcm7xx_write_board_setup; + binfo->ram_size =3D machine->ram_size; + + arm_load_kernel(&soc->cpu[0], machine, binfo); } =20 static void npcm7xx_init_fuses(NPCM7xxState *s) diff --git a/hw/arm/npcm7xx_boards.c b/hw/arm/npcm7xx_boards.c index 57a8d3186e..4f14d25746 100644 --- a/hw/arm/npcm7xx_boards.c +++ b/hw/arm/npcm7xx_boards.c @@ -374,7 +374,7 @@ static void npcm750_evb_init(MachineState *machine) npcm7xx_connect_flash(&soc->fiu[0], 0, "w25q256", drive_get(IF_MTD, 0,= 0)); npcm750_evb_i2c_init(soc); npcm750_evb_fan_init(NPCM7XX_MACHINE(machine), soc); - npcm7xx_load_kernel(machine, soc); + npcm7xx_load_kernel(machine, soc, &NPCM7XX_MACHINE(machine)->bootinfo); } =20 static void quanta_gsj_init(MachineState *machine) @@ -390,7 +390,7 @@ static void quanta_gsj_init(MachineState *machine) drive_get(IF_MTD, 0, 0)); quanta_gsj_i2c_init(soc); quanta_gsj_fan_init(NPCM7XX_MACHINE(machine), soc); - npcm7xx_load_kernel(machine, soc); + npcm7xx_load_kernel(machine, soc, &NPCM7XX_MACHINE(machine)->bootinfo); } =20 static void quanta_gbs_init(MachineState *machine) @@ -408,7 +408,7 @@ static void quanta_gbs_init(MachineState *machine) =20 quanta_gbs_i2c_init(soc); sdhci_attach_drive(&soc->mmc.sdhci, 0); - npcm7xx_load_kernel(machine, soc); + npcm7xx_load_kernel(machine, soc, &NPCM7XX_MACHINE(machine)->bootinfo); } =20 static void kudo_bmc_init(MachineState *machine) @@ -427,7 +427,7 @@ static void kudo_bmc_init(MachineState *machine) =20 kudo_bmc_i2c_init(soc); sdhci_attach_drive(&soc->mmc.sdhci, 0); - npcm7xx_load_kernel(machine, soc); + npcm7xx_load_kernel(machine, soc, &NPCM7XX_MACHINE(machine)->bootinfo); } =20 static void mori_bmc_init(MachineState *machine) @@ -442,7 +442,7 @@ static void mori_bmc_init(MachineState *machine) npcm7xx_connect_flash(&soc->fiu[1], 0, "mx66u51235f", drive_get(IF_MTD, 3, 0)); =20 - npcm7xx_load_kernel(machine, soc); + npcm7xx_load_kernel(machine, soc, &NPCM7XX_MACHINE(machine)->bootinfo); } =20 static void npcm7xx_set_soc_type(NPCM7xxMachineClass *nmc, const char *typ= e) diff --git a/include/hw/arm/npcm7xx.h b/include/hw/arm/npcm7xx.h index eef7cc5332..9f3dd489ec 100644 --- a/include/hw/arm/npcm7xx.h +++ b/include/hw/arm/npcm7xx.h @@ -19,6 +19,7 @@ #include "hw/core/boards.h" #include "hw/adc/npcm7xx_adc.h" #include "hw/core/split-irq.h" +#include "hw/arm/boot.h" #include "hw/cpu/a9mpcore.h" #include "hw/gpio/npcm7xx_gpio.h" #include "hw/i2c/npcm7xx_smbus.h" @@ -62,6 +63,7 @@ struct NPCM7xxMachine { */ SplitIRQ fan_splitter[NPCM7XX_NR_PWM_MODULES * NPCM7XX_PWM_PER_MODULE]; + struct arm_boot_info bootinfo; }; =20 #define TYPE_NPCM7XX_MACHINE MACHINE_TYPE_NAME("npcm7xx") @@ -129,11 +131,15 @@ typedef struct NPCM7xxClass { * npcm7xx_load_kernel - Loads memory with everything needed to boot * @machine - The machine containing the SoC to be booted. * @soc - The SoC containing the CPU to be booted. + * @binfo - Caller owned boot info structure to be filled in. * * This will set up the ARM boot info structure for the specific NPCM7xx * derivative and call arm_load_kernel() to set up loading of the kernel, = etc. - * into memory, if requested by the user. + * into memory, if requested by the user. The boot info is owned by the + * caller because arm_load_kernel() keeps a pointer to it for the lifetime + * of the CPUs. */ -void npcm7xx_load_kernel(MachineState *machine, NPCM7xxState *soc); +void npcm7xx_load_kernel(MachineState *machine, NPCM7xxState *soc, + struct arm_boot_info *binfo); =20 #endif /* NPCM7XX_H */ --=20 2.53.0 From nobody Fri Aug 28 00:12:35 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass(p=quarantine dis=none) header.from=processmission.com ARC-Seal: i=2; a=rsa-sha256; t=1786886279; cv=pass; d=zohomail.com; s=zohoarc; b=SIa6xBtOCQjzXIX6Fj+hbh2LBbA8nsGKVgYrycIefKQS7sSSUTwhl5PZj+PWhvsFpYXuonEnWAAFcPZz05KDWCRRDcozi/iRghcg/FVebeMloQgekk4ZZpElmVmBphtEdssCkdVloKPjF16UR5NjIhWdDg24lRt2eByaR9SNdzo= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1786886279; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=K8nKHrbB1EywJy4tcYKX3Z+Za/VhlmUzxEWaL83SYCQ=; b=FKFvVpLR3ftm6ywT8Rx+EcxQwkc/N6o9xometFB/z76Cj3XIm3kocfk+2yWzQVQbTYXlxeFKOEoM4fWsSZkqcYRJT2vadU8euh/h4mlIgyHmdu0A2hQ+7G8oB2tQZL76FeZgVS744p8CAMDGezpc68PIRtmbCdx2bKSd1QCV0tw= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1786886279528353.2024558329638; Sun, 16 Aug 2026 06:17:59 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wvaim-0001tQ-0i; Sun, 16 Aug 2026 09:16:16 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvaiC-0001fw-Rv; Sun, 16 Aug 2026 09:15:41 -0400 Received: from mail-koreacentralazlp170130006.outbound.protection.outlook.com ([2a01:111:f403:c40f::6] helo=SEYPR02CU001.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvaiB-0005Tk-0z; Sun, 16 Aug 2026 09:15:40 -0400 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) by KUXPR02MB9310.apcprd02.prod.outlook.com (2603:1096:d10:9f::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.315.17; Sun, 16 Aug 2026 13:15:33 +0000 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03]) by KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03%4]) with mapi id 15.21.0315.016; Sun, 16 Aug 2026 13:15:33 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=cLr3JTSLEOIMXxW+FVu/Rzkv8ZdBE1+dTcFrPNkz4Muc//r0BwiFD9h2tqdh5bHg6Tc4rJ27kd5RcZJ3hlSjtsUClE79QA4mF+0z8rn5vBHDhH4hD7ttdPx0jYmTbdZMwn9qAssz57m257075GmYsCoPubKLeEZW4mG+TFlmvSilMmUNVqXqP/bA2Stiy5XN3aukZIuejRrzwsy2lxuq7HMGPL/WVTKbAqPeNA9UeMpZ30PpPVscKBWHdDaOanMl+Ys77HBMqDCtPYV3mSskVfbkGoSGa0pJE4+M+U/K9JwUtT6cAgd1nX+3GH1ckIfK734zKT720+6Ui99rOvvdjQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=K8nKHrbB1EywJy4tcYKX3Z+Za/VhlmUzxEWaL83SYCQ=; b=oIBDvApHqUHtWJeiSvpNEyDS9tHknGH4kzVXXuZ3iTpGdYbKYaTyxMqQElVx6OVsVSHl9b1WG+PUTHdc0bCAvVsrbpF6RkmHmwFfAGfxambRtlhEt83JymnsUw+JBf20CGCQo0MdQNFbvwjTmqnRNxjF8zyln/OWImTA7oCFguFMcHRSggT/aM0uSYXA44PjbH+uGJdhwgbmgyZNHpFjR3vxnSTzy2P/gnGvCUWzM8brmp1n0saU0MpN8o5djC8aawaqBKrU+rmM6W9LZq+W/ZGt6hpoKqu5FBCKnh6TVu5RzcOo24miw5uDC7HOa27vNCNm/AYTheJZTnvyf3jEZg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=processmission.com; dmarc=pass action=none header.from=processmission.com; dkim=pass header.d=processmission.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=processmission.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=K8nKHrbB1EywJy4tcYKX3Z+Za/VhlmUzxEWaL83SYCQ=; b=a+kHSUy8e6FDSdhilJOnBrNL/FRK2DqbEKQ226B2V3vP+H244wGZ54NE7wC3T3DmOQm/DMv9NLWuqZyCzOvdW1Et3TC+wgouUuW3RyKDgEA82wZQWZgt57RZp1dPFf3I/+8wZM2SB/j6fnJMTC9HMdQMrUfJWnzthVx0Yv4tue2ky/vBo6P9l5yhC0lAagcWCiLOozNDU9A0GtzR6UvRXaxkGkJDkLEK3RsOcvOUTDugVwICnxiwlTs8zICoXqOKJ7rQtEUzNM6qFJjl6094l6a9R6dPW7o5wBJz3Pr7vwi+r5QYUO7/syZf/OUDc8VSx2dpWCalGp7IXpv/YEjriw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=processmission.com; From: Bin Meng To: QEMU Cc: Hao Wu , Peter Maydell , Tyrone Ting , qemu-arm@nongnu.org Subject: [PATCH v2 14/20] hw/arm: npcm8xx: Store boot info in the machine state Date: Sun, 16 Aug 2026 21:12:44 +0800 Message-ID: <20260816131300.51799-15-bin.meng@processmission.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260816131300.51799-1-bin.meng@processmission.com> References: <20260816131300.51799-1-bin.meng@processmission.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TY6P301CA0004.JPNP301.PROD.OUTLOOK.COM (2603:1096:405:3be::8) To KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: KL1PR02MB4977:EE_|KUXPR02MB9310:EE_ X-MS-Office365-Filtering-Correlation-Id: c10b68ab-d2c7-47ba-9c35-08defb98741f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|23010399003|376014|1800799024|366016|10067099003|56012099006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: sOb8NAIiaD0MBPrxIx6qgoWHfzvwz6il+OwP2NAQ9wEBf8IsFl2qo7nVk25daqXuKyECOHcZXnXaKFv3GA0uF07plnTJashtFPOe4UXcRlZLWCbh66f/eJ8CZCgic7VeqcsesNDe7hLDI1CR962KO6lxuhdMLz51hIB2wIVSPOl/5sAUW+cuyo3GGXl0y+gtOwyHnWYR9M04JEh17457So4PFGcS70Pf16Z1nYBJ+k3U0/FjjBuaNWZxeee2QbVi2KlgKUoPU5jTTA/5SbkymfgCWVjzUu8OFETVW6lVXQwn8hs4usRrMnk2/VB7gHiFALqvw6LiKe8Yz756fJs4m5yeGzDNbVLUoWx7NUyFmitpaegEyzIzVefqiXDFZOK5IUzSIrAssZZpd67l/R/igYb2ehu6LpjCVYMyALw56vXCyyLF/3a/qyhSr50UoCjHUyVrlQKdSndEdQopv8xH8bYEKh5ABF0IRd+fpsMk0Re1BD+GAJgVrsYQXAdvQEd4RWy7+74vGS63HIi3QypfExYiJVI4+9M0Kgi0bXQ05r2QSuzxNyiQ+2deeYv5+ot3qU4J53OrsgqnzBpNPXOErsBoL6rgYk4ggJjqnq1ASn30iU0A5vVWiWXy3R9+2mKI5KKIyx/taFD34AHvnNg96YkGoqu+/MkpjiIWw4NofJ0= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:KL1PR02MB4977.apcprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(23010399003)(376014)(1800799024)(366016)(10067099003)(56012099006)(22082099003)(18002099003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?XiEYtzvK3CjTYgZAlEOeX1lYsWZND8n9b+bb0lb4nDOWsJLqA1nv7FjGUjWW?= =?us-ascii?Q?nmUxtORChWMtEiVyDNNuBSXJp58XScBKStSsRC0XFssYtvi+trtjwCKrWFmF?= =?us-ascii?Q?iTfVL1R662if/5z0+0sErn3LBycX8xUb5dF19zbrJDsYn+l+jvVuHWyXwueD?= =?us-ascii?Q?QnjzGYcT04jwtedUI3re8cz/zDiyUYjakm52BPxIitHGt8FwUvBzvDlJk0ID?= =?us-ascii?Q?xv63XIwsH3Y9s/T67TDL4vNeBt1jc8suvMqmBvUjWIl7YG+Ne4plXEDBmyVq?= =?us-ascii?Q?ueNhJ8PdNorPSaIcs1atb2tUMWqx9SmL0Nw2cOZ4YBK+dolnexQII+QmIQtA?= =?us-ascii?Q?6eAl5fP+CfbdQuRh5fEBifc1RtmcV48wg6FiqiZosMmAYbu8NSkCTJEuU8QK?= =?us-ascii?Q?3vKbdrOAsQhq/TEVBjFnTkzQmvKS8Rnw+grxAE9rpNb02aah4u0SAQ1To55g?= =?us-ascii?Q?X172ONC5xn7VFGZq7rbhnT1l88JAAUwW2wtFmQcwM+YfiQyaTJR3Ef6eatDi?= =?us-ascii?Q?JXJ4mqtJRpoNXg3m+h1Ub8s6Uw8wbKld/u5HyaGhzdL7085t+IFKVafUzlt5?= =?us-ascii?Q?znF2K+jVpCu7a7rSBWMLsW/mTzNJ32MKOsPMfoz9KxVfjl1FSGqL4wjmHymk?= =?us-ascii?Q?8zxvF2+wcwy+LVsOkRbouQzWP+JqYRk0sdj1awI6aAobk+yOSHnVfQOWxeCi?= =?us-ascii?Q?amyEwD2zRAkPQV3IrCbmntChXJSwqAmleuKBeS2ivVA8qjO2xs5CjZ8MIcLz?= =?us-ascii?Q?jIpdJUz9spmSMxW0fMDj+mUS99IpYRQdWUCiRCXXmg9oRjpWMGTSE2KhTXd7?= =?us-ascii?Q?JGHEf0uWL1Ge+E24ehvHOQ0k7H/W66zMlDUSL1E6wcHwds9MHzomckcwYrN9?= =?us-ascii?Q?TToet86duOTf7qLu1rMbQn5BxgrtEVZeC8y/7CK65qmhAU7azkFywxFzA6q0?= =?us-ascii?Q?YRJO2FzzTvEhRWE4kxcgqGUpOOyf4VXQpqYUB7SqxY0yYCwicskdCrKh39xQ?= =?us-ascii?Q?tkYpJyo1UMllkIzP/hqK6CL5jvwbqYqHFUKYNs4rMSu17KpGoqwHXivM4sds?= =?us-ascii?Q?xSQzOjYpfCht1bPlzuQ09JSe9qrWVuG/3FivgVp68qitIIxaCF/r6WFrUwDf?= =?us-ascii?Q?xInvXT0xaXDZ2QQcanU4K3fYAFMLSlLw0ryfwo15RR0cmJrD7HLBPCEHwDw2?= =?us-ascii?Q?k4Fp73/puiGRGW7nwL04JpFjhVWr2kpkydkSA2wmBjof2igNHQSzYNN1SbCv?= =?us-ascii?Q?5FonwyzutbfeB1tu3DF/BYPRo5Odci0q6HLNkm786DjB+vv7hV85sKL8BXj5?= =?us-ascii?Q?9Y0v1KI+swrL1as6Uv98LyfQQLs8xC+Q5E/7VU/330hCxk1oE9liAAWMImLY?= =?us-ascii?Q?dgBjAR2PH3DoxT61uGbvt2KlKm8KzEzP5tPdAcTGECNKhEb+DYeJtqW1qPS/?= =?us-ascii?Q?0QsDsbs9nX4QFx2Zzzn9EbpnmJPa0GhwoDcJRlFeP/dvCmtkKFPZJkmwVBiV?= =?us-ascii?Q?sGcQ5bRbOskV1j2Bx/CHtqKMAnO3rF6q3WsIzJwYst1EVXIeQAn6XlZzBmwR?= =?us-ascii?Q?wT+/h7Qws8bTtIELlielvfto+LlSfHxGtskxBmx82ufsLjUXnO8FM/OvI40k?= =?us-ascii?Q?z5Jwfr8iE4GNKzjTP36ADeuLGN6a38lzoYhOMp8iPgrqJGhl2qshjtUh1X/S?= =?us-ascii?Q?E6EhvLGcr0hpRxeE+CWxkMqnU4o71AfXThQwRm+JfBttEyyRkH+pswgVt4Ds?= =?us-ascii?Q?k/bXXTeYDKlFLTtz8sHCWrZ4qfsSpSw=3D?= X-OriginatorOrg: processmission.com X-MS-Exchange-CrossTenant-Network-Message-Id: c10b68ab-d2c7-47ba-9c35-08defb98741f X-MS-Exchange-CrossTenant-AuthSource: KL1PR02MB4977.apcprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2026 13:15:33.6365 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e0544bf7-9765-4630-ab69-0b266dc2169c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: UXJ4H3pke84+th+Z8v6bWJp4uNmHxpwzNxwEwt2MDYETtp85+kcJv0Zrt7NE4Kz5KipSNwaXJTp1hmzVw9yFwHbZ6JMq8Y47IoZQAsJzjEE= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KUXPR02MB9310 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c40f::6; envelope-from=bin.meng@processmission.com; helo=SEYPR02CU001.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @processmission.com) X-ZM-MESSAGEID: 1786886280470158500 Content-Type: text/plain; charset="utf-8" arm_load_kernel() keeps a pointer to the boot info struct for the lifetime of the VM, so the struct logically belongs to the machine rather than to a file scoped static object inside npcm8xx_load_kernel(). Let the caller own the boot info: the board stores it in its NPCM8xxMachine and passes it to npcm8xx_load_kernel(), which only fills in the SoC specific values. As in the xlnx-zcu102 and raspi machines, the boot info belongs to the machine rather than to a static object: 4d1ac883a7 ("hw/arm: xlnx-zcu102: Move arm_boot_info into XlnxZCU102") 0f15c6e338 ("hw/arm/raspi: Move arm_boot_info structure to RaspiMachineStat= e") Signed-off-by: Bin Meng --- hw/arm/npcm8xx.c | 28 +++++++++++++--------------- hw/arm/npcm8xx_boards.c | 2 +- include/hw/arm/npcm8xx.h | 10 ++++++++-- 3 files changed, 22 insertions(+), 18 deletions(-) diff --git a/hw/arm/npcm8xx.c b/hw/arm/npcm8xx.c index 9ce6ea52d9..7d707a09b4 100644 --- a/hw/arm/npcm8xx.c +++ b/hw/arm/npcm8xx.c @@ -357,22 +357,20 @@ static const struct { }, }; =20 -static struct arm_boot_info npcm8xx_binfo =3D { - .loader_start =3D NPCM8XX_LOADER_START, - .smp_loader_start =3D NPCM8XX_SMP_LOADER_START, - .smp_bootreg_addr =3D NPCM8XX_SMP_BOOTREG_ADDR, - .gic_cpu_if_addr =3D NPCM8XX_GICC_BA, - .secure_boot =3D false, - .board_id =3D -1, - .board_setup_addr =3D NPCM8XX_BOARD_SETUP_ADDR, - .psci_conduit =3D QEMU_PSCI_CONDUIT_SMC, -}; - -void npcm8xx_load_kernel(MachineState *machine, NPCM8xxState *soc) +void npcm8xx_load_kernel(MachineState *machine, NPCM8xxState *soc, + struct arm_boot_info *binfo) { - npcm8xx_binfo.ram_size =3D machine->ram_size; - - arm_load_kernel(&soc->cpu[0], machine, &npcm8xx_binfo); + binfo->loader_start =3D NPCM8XX_LOADER_START; + binfo->smp_loader_start =3D NPCM8XX_SMP_LOADER_START; + binfo->smp_bootreg_addr =3D NPCM8XX_SMP_BOOTREG_ADDR; + binfo->gic_cpu_if_addr =3D NPCM8XX_GICC_BA; + binfo->secure_boot =3D false; + binfo->board_id =3D -1; + binfo->board_setup_addr =3D NPCM8XX_BOARD_SETUP_ADDR; + binfo->psci_conduit =3D QEMU_PSCI_CONDUIT_SMC; + binfo->ram_size =3D machine->ram_size; + + arm_load_kernel(&soc->cpu[0], machine, binfo); } =20 static void npcm8xx_init_fuses(NPCM8xxState *s) diff --git a/hw/arm/npcm8xx_boards.c b/hw/arm/npcm8xx_boards.c index 042a928857..f462369bea 100644 --- a/hw/arm/npcm8xx_boards.c +++ b/hw/arm/npcm8xx_boards.c @@ -198,7 +198,7 @@ static void npcm845_evb_init(MachineState *machine) npcm8xx_connect_flash(&soc->fiu[0], 0, "w25q256", drive_get(IF_MTD, 0,= 0)); npcm845_evb_i2c_init(soc); npcm845_evb_fan_init(NPCM8XX_MACHINE(machine), soc); - npcm8xx_load_kernel(machine, soc); + npcm8xx_load_kernel(machine, soc, &NPCM8XX_MACHINE(machine)->bootinfo); } =20 static void npcm8xx_set_soc_type(NPCM8xxMachineClass *nmc, const char *typ= e) diff --git a/include/hw/arm/npcm8xx.h b/include/hw/arm/npcm8xx.h index a8377db490..676c82150d 100644 --- a/include/hw/arm/npcm8xx.h +++ b/include/hw/arm/npcm8xx.h @@ -23,6 +23,7 @@ #include "hw/i2c/npcm7xx_smbus.h" #include "hw/intc/arm_gic_common.h" #include "hw/mem/npcm7xx_mc.h" +#include "hw/arm/boot.h" #include "hw/misc/npcm_clk.h" #include "hw/misc/npcm_gcr.h" #include "hw/misc/npcm7xx_mft.h" @@ -62,6 +63,7 @@ struct NPCM8xxMachine { */ SplitIRQ fan_splitter[NPCM8XX_NR_PWM_MODULES * NPCM7XX_PWM_PER_MODULE]; + struct arm_boot_info bootinfo; }; =20 =20 @@ -122,11 +124,15 @@ OBJECT_DECLARE_TYPE(NPCM8xxState, NPCM8xxClass, NPCM8= XX) * npcm8xx_load_kernel - Loads memory with everything needed to boot * @machine - The machine containing the SoC to be booted. * @soc - The SoC containing the CPU to be booted. + * @binfo - Caller owned boot info structure to be filled in. * * This will set up the ARM boot info structure for the specific NPCM8xx * derivative and call arm_load_kernel() to set up loading of the kernel, = etc. - * into memory, if requested by the user. + * into memory, if requested by the user. The boot info is owned by the + * caller because arm_load_kernel() keeps a pointer to it for the lifetime + * of the CPUs. */ -void npcm8xx_load_kernel(MachineState *machine, NPCM8xxState *soc); +void npcm8xx_load_kernel(MachineState *machine, NPCM8xxState *soc, + struct arm_boot_info *binfo); =20 #endif /* NPCM8XX_H */ --=20 2.53.0 From nobody Fri Aug 28 00:12:35 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass(p=quarantine dis=none) header.from=processmission.com ARC-Seal: i=2; a=rsa-sha256; t=1786886287; cv=pass; d=zohomail.com; s=zohoarc; b=iM1wJLNjt0l7FH0unwq5yAbwJUAParAHxlCJZV5x3kx6kUu6E75OIGAKPZefSzZzWQVJugCiD1CulLOR86+hvz8BM/+saO2MRh2ELiRBT4oXr2UrEnFCOZ/b3PuJY3d8Lq0ZFWc2bhX3Q9rMQn+Q+XkGDgNPBwD7ql+2sTNBU/0= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1786886287; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=lpFsRVr2kYH4MyeGamKl8t/cHXCoO17zBgj0mucnpgM=; b=N3FimFa4BL92aQUh5qXbSJ45SMWHM3mJkQoNGUKyw4N6N21vT/WcCexouXQQs4jBRdlCioZgTBW3Nvn88V4JAMEsJKrQRNbM0ABy0NocJ1XUaWo7/91JQ3vXjFiO9U7qSVuSEk/Cm8ETpabDcUCAERJPCu5wXisKFuJVi4tphag= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1786886287528821.1944898156262; Sun, 16 Aug 2026 06:18:07 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wvaio-0001zF-HM; Sun, 16 Aug 2026 09:16:18 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvaiK-0001if-JM; Sun, 16 Aug 2026 09:15:59 -0400 Received: from mail-japaneastazlp170130007.outbound.protection.outlook.com ([2a01:111:f403:c405::7] helo=TYDPR03CU002.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvaiI-0005Xo-12; Sun, 16 Aug 2026 09:15:48 -0400 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) by TYZPR02MB5475.apcprd02.prod.outlook.com (2603:1096:400:1cd::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.315.17; Sun, 16 Aug 2026 13:15:36 +0000 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03]) by KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03%4]) with mapi id 15.21.0315.016; Sun, 16 Aug 2026 13:15:35 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=ffnWhXS0EMe3jQoItp7rrtJn8qKf2e6+GOP1P5PvnmITON7m/MYc02CeodUKpwYTclfTICU7ca7MRaZHxxxda64MILa1VV2pUUXxNF3ENiCYxEkGIv3Jq7rOF8hS7f+HUqB2oKPqqPMp9DZCcJtOIgWHfoz7ieAG58MDO7/sZzHhSs++qGHwA3l4nOavRN4c/uwmf5jrVzKIvT1do8uhAWCj9xQKzL5I9b+DleMtyCWjf4h3JIbLZ3VsbcEgR2KBi0hGtTHVqIp09q84wIIT3HJJr4WtsU0l8NGIKol60zY0FBv6A/d7knI4ttWjQNbMEQu6ki+cInVMfD4HYNTy4g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=lpFsRVr2kYH4MyeGamKl8t/cHXCoO17zBgj0mucnpgM=; b=o0FduPs4xbUQI2NSZ9TUpeouLmMYJa8gsbvbugvD4Vy8UKPfGsJLyBcNSntlYKv1A61nBwqZocvcOnPMVXU6usfjUeeWD4XEJ5Ron0zngfinlpQgULpIVIt3GIWetLJvXQiIu/niHfryAIKXxCdbKK2bw8ALtpDvTBf8CDMlgJxTM6n4wv9mwy6P3CKidlSbWgEdiXEJq4Ef31Ny1smNyO0XXGBzeKSzjqvqReg3AnkGDKPNTB3MQSw8Hzje6Qz3gGdv7xcwVMpknEsEsdn1r06iWRCmPQgKZL4ctnKt0kCOqpa/zqMWQgI4UvLsjzhSoSmePYFHNntDZkKUhAGx7w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=processmission.com; dmarc=pass action=none header.from=processmission.com; dkim=pass header.d=processmission.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=processmission.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lpFsRVr2kYH4MyeGamKl8t/cHXCoO17zBgj0mucnpgM=; b=riuNsezyJxjIe4A9a0T8j3ZMkY/Z/6XLf/qHf4H+uSnlv4H/DzncQjSvqMyBzAcG5BO7VqJ7Q43z99klZggsVYa7iTZtqF8/q29/C/o/ERyPBIn7XkgPl4tsICfj5bVFlByX7jzbhpxIgrc76rD1RwkReCiO+VbtpnPwzKUyU+qKs7kzQ6dFmcxCayvIcfxbNeZeY1NECZ2KW0JC5Gvueje8Nm+YExL8YkMZW0Uyk+eXo89MQDofkSoGTskjhXHd+8W5LRHuc4Vtuffe53EGGisF5i++N8GLchQQ7i1KRDbSfjyddgeTwWggXPQ/H7hcUwf/QeKHtKsfQPwU9eLaOQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=processmission.com; From: Bin Meng To: QEMU Cc: Peter Maydell , qemu-arm@nongnu.org Subject: [PATCH v2 15/20] hw/arm: omap_sx1: Store boot info in the machine state Date: Sun, 16 Aug 2026 21:12:45 +0800 Message-ID: <20260816131300.51799-16-bin.meng@processmission.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260816131300.51799-1-bin.meng@processmission.com> References: <20260816131300.51799-1-bin.meng@processmission.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TY6P301CA0004.JPNP301.PROD.OUTLOOK.COM (2603:1096:405:3be::8) To KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: KL1PR02MB4977:EE_|TYZPR02MB5475:EE_ X-MS-Office365-Filtering-Correlation-Id: ae84ddea-d446-485b-d465-08defb987523 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|23010399003|1800799024|376014|366016|10067099003|56012099006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: sN6DOcvYtfBsrwaJYO41FIDZ5wO4Id3mehR/lIf3IVSyT8SCaUw376vAocW3IW6jFqdx7nf/t3Dgt7UM3VXbNPQ3iB8RPUMk7/ggXTT/+8AtqN77DeR+CTCPB6bmwVW3Kyd6Y6MblYroRHtNzjDtmEA+ulQv3d5/OcakPgzEsKfXbqwttkLCYfYgGclv5FZ3EIc0OznbOcT2vwSfbn9pRGrnqGTmwi9Bpa2jdQhoslBKpZmROy0AEl67NjD/ZjAOJnpSPHvuQZfSs5MznYG1p/ULqZp2K4zTlmxP1q2Q4Bk/Jzu+/JOS1uVOwA6ggYP0jLZPmIQPSP7Vd/cwLW7TIQoKboTBJCMSZ+njEPs/EWgawDEhQmLofbD4jGQIK29IrAkaQFyLNpweYqhkwoG9O7M6tiGqCNIMKl2rgevfhn4e5/vn4QGQ1w7taKJaZSEut1F7lxGCcmYgBDRf339toVS72SnB9l2PUKbJQgkStJDtYENCBpNX+1amNfZS7z5H/mK+pYOUH9dn0s4+lqP3rS3eKXAii1LIgFL0CvmWWJ3MKpTkVfSUP3XZim6fPn0iHJfnE5PWPn0LDPvbEahWNc3w3JWUxPwKZrIRbMEGFJjPmkJQvKUjGfxWSzInmxd9AWXy2gbUSnLDMV42MDgvMglDP5w0T+QMFNx2x/fhH28= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:KL1PR02MB4977.apcprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(23010399003)(1800799024)(376014)(366016)(10067099003)(56012099006)(22082099003)(18002099003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?hGI+a3sefCJQ7r3TxN1k1ody1TNWU7hVSsf8SewCUUwi9XYKTjrW5eODgjNF?= =?us-ascii?Q?u4Q4RzvqLxYz6ctcubmZIPLaxI3CmhPhJXWZ6IG2cjhdW1vsYwU6wcorNy0M?= =?us-ascii?Q?TnwoK0YHXCQjF2FC0Zf+m+25oKLSTD4k9SF+itRMA6D2GxrkY5yw11SKR9d/?= =?us-ascii?Q?jWbAUZyORwiicdtWZv+mZChyyIwvZj1xlXWp2Xkl4mXuow6uLTwt3DPjKCYi?= =?us-ascii?Q?3EueOSpvYn+kcPMcRtg8t/k2Paif0QhW/z4LajRxEhM9ULUwm6F3lpSgL3J+?= =?us-ascii?Q?3rYMBXDGyNX0T0fx2jCuwHMI3JNS51bdQrHp3iqghZKeR/ezCz7inJmcIou4?= =?us-ascii?Q?uO/v1GUnd4/FnHHVjymrNvYSA+WTNlV1mgYXkQZKa8O9FHKPOT6L6MieA/+v?= =?us-ascii?Q?I+C+LzGW0OxbHVmbx41+2E+QyL7I8e7uT2UjNrrXvwGvcJjvI8PLVw/LwyXj?= =?us-ascii?Q?W2WXzOH7Ld4MfDm5Z7hlTAi/ZXhPUzRwyjxfHksMWAwmqi93tSKOYctTOMD6?= =?us-ascii?Q?9KQRL7phdCs2V14iUXSJDIEoUf42Y7GDyh7IALTwlz4QMJLLcL5WETKYcY6a?= =?us-ascii?Q?MfppXcYsYJ8II6TdkQFfC+PwgaFiel3HyQsy32167hKvkduFlr4DaMcnizgc?= =?us-ascii?Q?t7S/xETqQK0O7X7ZExnuYpZjmVgAgcyViFT9rltsQa3v9UzTx9GUqxgsuW2Z?= =?us-ascii?Q?d+4JI9lF2emhqSpZyFehjwxcNGFiGxNMJlYZqSoqC5DrRTnvKNyUYczIGRVY?= =?us-ascii?Q?NQL2rg3eUsSox1nFESeKyxFOnR91IMTXSc867bPWBTO3eoQLwZwRuaEefGMJ?= =?us-ascii?Q?s4TAh6awdD8TqQEcO61eM01+yZBbvNwr7ZKcSiI1Zc+LqKzTtDt3HEokkGDF?= =?us-ascii?Q?pHWEGAGccRYpoMZecaXiBMSed4YnVl3WnEdANzgPsBu8PxZKUoD4VX8UtPKU?= =?us-ascii?Q?CTFVIQsjEoKs/Ma2V3dkuMZ8q3u/Ob+NOLCt/OavskrVYJpRej80NEETCrM6?= =?us-ascii?Q?sue/0JeTxbASuYJrpUJvuFBlZD5+BEfkUvJeflg4aST5k8STXGnoAbDoimH8?= =?us-ascii?Q?5H2Bf0WquG8TG6+eI/l4v8mpqgHtWufmv7BKmVpKequ8RA6W+Q8xlZLlKVca?= =?us-ascii?Q?/X4nhQ6RXmQ9wy9hDjwGf9f6JHTmf670Xqfjr/xNfwfR1G9kCLGGgxAwE5Jy?= =?us-ascii?Q?JO/Levv2Yv+WpeWSiluxeTgIwmOp0f/ZKWW6RvNHjm9UEB5MX0+5hWySHxbw?= =?us-ascii?Q?IUz4bDMoeAjxmBMYY9x5H1Bd4lppJcDBbMDK/3WnRNsjq41RiZ1PKV1UD0zS?= =?us-ascii?Q?HVJeNDVRRyO5ylU2T14mcd7FTkhLXjraJsf258OHtb+XzLag3DosAjO9Tsr3?= =?us-ascii?Q?Ssr0zy/YVzeBcp1cyaBJgWFiT0d3Y1OA5lG/VDifL3XZMTU6GxmSz5vvsA32?= =?us-ascii?Q?l+oayz1tumbrSYgw0G9twUKFLK13Cbao4et+u1SfE9NpOQrvA1euKWGwBY9f?= =?us-ascii?Q?4/fQkCXQLb5mDUk3FNWy5YOmc9sPA18A6+B8cqkK1Zns2f7YIsCqYLQbyImu?= =?us-ascii?Q?JFTmzRn3pl13RFXrpSzeb9VjfHraQPQdNVATMv23Z4l69E8bwR2vqchoJ8Al?= =?us-ascii?Q?+e7SnnwCppQQVqjHdNqGmeq1FnFT+TjiOp0XzVzNVznZ5WMgyjtAI59OiAmS?= =?us-ascii?Q?ocieFlMRd3widkPQ1dD3d2Ez/nl5/vWF1mS7mvvYZ0htJnbzjGQ1ZnE/qrW4?= =?us-ascii?Q?ZM2yRDnQHJsx0u0mfsoR9dppTJYD1BQ=3D?= X-OriginatorOrg: processmission.com X-MS-Exchange-CrossTenant-Network-Message-Id: ae84ddea-d446-485b-d465-08defb987523 X-MS-Exchange-CrossTenant-AuthSource: KL1PR02MB4977.apcprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2026 13:15:35.3445 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e0544bf7-9765-4630-ab69-0b266dc2169c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 1LQ/RhAKFmAAhw4qlo1amfJ8xU7UMNB7RNB1y1NzGG0eTqPjsZ3SKCEFtbebX5zYmQ6y8+BCKAEo/TWnrik+uzUvPOIc7v/qv0mhepku1Fs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYZPR02MB5475 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c405::7; envelope-from=bin.meng@processmission.com; helo=TYDPR03CU002.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @processmission.com) X-ZM-MESSAGEID: 1786886287962158500 Content-Type: text/plain; charset="utf-8" arm_load_kernel() keeps a pointer to the boot info struct for the lifetime of the VM, so the struct logically belongs to the machine rather than to a file scoped static object. Give both the sx1 and sx1-v1 machine types the same Sx1MachineState instance struct and store the boot info there. As in the xlnx-zcu102 and raspi machines, the boot info belongs to the machine rather than to a static object: 4d1ac883a7 ("hw/arm: xlnx-zcu102: Move arm_boot_info into XlnxZCU102") 0f15c6e338 ("hw/arm/raspi: Move arm_boot_info structure to RaspiMachineStat= e") Signed-off-by: Bin Meng Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- hw/arm/omap_sx1.c | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/hw/arm/omap_sx1.c b/hw/arm/omap_sx1.c index bcb7105323..3b628d13cb 100644 --- a/hw/arm/omap_sx1.c +++ b/hw/arm/omap_sx1.c @@ -91,14 +91,16 @@ static const MemoryRegionOps static_ops =3D { #define FLASH1_SIZE (8 * MiB) #define FLASH2_SIZE (32 * MiB) =20 -static struct arm_boot_info sx1_binfo =3D { - .loader_start =3D OMAP_EMIFF_BASE, - .ram_size =3D SDRAM_SIZE, - .board_id =3D 0x265, -}; +typedef struct Sx1MachineState { + MachineState parent; + + struct arm_boot_info bootinfo; +} Sx1MachineState; =20 static void sx1_init(MachineState *machine, const int version) { + /* Both sx1 and sx1-v1 embed the same state as their first member */ + Sx1MachineState *sms =3D (Sx1MachineState *)machine; struct omap_mpu_state_s *mpu; MachineClass *mc =3D MACHINE_GET_CLASS(machine); MemoryRegion *address_space =3D get_system_memory(); @@ -187,7 +189,10 @@ static void sx1_init(MachineState *machine, const int = version) } =20 /* Load the kernel. */ - arm_load_kernel(mpu->cpu, machine, &sx1_binfo); + sms->bootinfo.loader_start =3D OMAP_EMIFF_BASE; + sms->bootinfo.ram_size =3D SDRAM_SIZE; + sms->bootinfo.board_id =3D 0x265; + arm_load_kernel(mpu->cpu, machine, &sms->bootinfo); =20 /* TODO: fix next line */ //~ qemu_console_resize(ds, 640, 480); @@ -220,6 +225,7 @@ static const TypeInfo sx1_machine_v2_type =3D { .name =3D MACHINE_TYPE_NAME("sx1"), .parent =3D TYPE_MACHINE, .class_init =3D sx1_machine_v2_class_init, + .instance_size =3D sizeof(Sx1MachineState), .interfaces =3D arm_machine_interfaces, }; =20 @@ -240,6 +246,7 @@ static const TypeInfo sx1_machine_v1_type =3D { .name =3D MACHINE_TYPE_NAME("sx1-v1"), .parent =3D TYPE_MACHINE, .class_init =3D sx1_machine_v1_class_init, + .instance_size =3D sizeof(Sx1MachineState), .interfaces =3D arm_machine_interfaces, }; =20 --=20 2.53.0 From nobody Fri Aug 28 00:12:35 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass(p=quarantine dis=none) header.from=processmission.com ARC-Seal: i=2; a=rsa-sha256; t=1786886385; cv=pass; d=zohomail.com; s=zohoarc; b=ak1NpG9b/9XwSsyCreCn9MkyrJlAXGczicwkExAa7wkvgLtzQBtovxYCFlUtCK+NuZ7Asgww6FmHIxVaUQn+y7RH8SyZMmN3ExO6Wkdh7cq4iYrwreLbjyRBaH7T57QxHj+n414tGgWyKV99aq6MohrfGWXosqc38SxuYBPxNHo= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1786886385; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=YPkr6tpD7AlZEO44/XwJWgn1tiQYj1wDt2vnAKcigv0=; b=B4F00I9BeB0l1IR/qTYHJKgYiAxnZ+a9nIicGmejULO4e5sBt4VNhDTOnZ4UOY5tg0NCX8hJTWjZKx1cDYhddpGVkCpSACsTNn8PXTMu6EiKZDO92x02soTuVWsOcRSdpov7Z+C7pNZaH9tJtV5JRXzyG13HxIiAxt+FNSPbyFA= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1786886384926469.91697970828807; Sun, 16 Aug 2026 06:19:44 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wvain-0001yk-IX; Sun, 16 Aug 2026 09:16:17 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvaiH-0001iR-92; Sun, 16 Aug 2026 09:15:56 -0400 Received: from mail-japaneastazlp170130007.outbound.protection.outlook.com ([2a01:111:f403:c405::7] helo=TYDPR03CU002.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvaiE-0005Xo-Sq; Sun, 16 Aug 2026 09:15:44 -0400 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) by TYZPR02MB5475.apcprd02.prod.outlook.com (2603:1096:400:1cd::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.315.17; Sun, 16 Aug 2026 13:15:37 +0000 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03]) by KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03%4]) with mapi id 15.21.0315.016; Sun, 16 Aug 2026 13:15:37 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=ypakrBAJrXrc8E/0LU/GBwamo96SkuxL4h2eluQRCaUO2zpbm7/tzWWVhn0YC3rfQaqadYkM1fAHU4pNVkA3Yw9uoruwtYlUVJsbtJ5EwOJvCK6YqPV/UJ0x8QT7gpdy2QZdfhQPSTAdHI+yYY4B7u7DDmSzUIfC5Nzv8xd/DOsRH724G2zqosQEReRCTwiO+wMHxONOWJKnZrZwtav9D9lFJ8iV9gyYxpxdtHC0el5XItIWF7EVNYaNG6qPu+JpLM/KcbGm5KQzGw3dzIyEVy73ATBsccg5zJwKt8r/KcyQyyA3QjXRJ7NCeeXwHk4H7iqK2duZP6gOknX9sOAU0w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=YPkr6tpD7AlZEO44/XwJWgn1tiQYj1wDt2vnAKcigv0=; b=g/FyxNEW8oxAaguh+6Ckv/Q1Vno4sZfi7Q5ZWbWr1jdMB1W6Swk5F95Xgd4KbOXNFku+nb7ZHJVL6AKvxfNqlSQPNTK4T8okdcVjxVogBDzkpwKqq04TQxwyyCBmbJyWsuLcDTLTLtDfmipCuo2torTmO2MW9u0wDimmmj138cVhuVo6qKMkIG4Wlh3BLynUz3nj9HmeyU3c8HnEb3UgvQNHKTEXlBpQcgjX0zVt1xeQIkFG9JwaMtTwprntxJs+/r+xJ2UWE1xcTzSivT/I36KNmOYiWt+wHIpLWb7mpsBoR0CFVig8roOns5UMHxjFN0C7q5AhbXu8tSilv/KvVw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=processmission.com; dmarc=pass action=none header.from=processmission.com; dkim=pass header.d=processmission.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=processmission.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YPkr6tpD7AlZEO44/XwJWgn1tiQYj1wDt2vnAKcigv0=; b=dfRvuB3JU8dv0+LhdjNn69MrXvDzC4bfRUTRvRzN/2K812azPihtSle7hK4t2wo2PO6pN+31hgN0DBS4N5SCndCXbO+t6KoN02WCtT5b15Aqn4M4iJAk5nnRGTIUKauMMp8A2xu46Ang2QM0EDezvkf86XBn6O9g0A/htcHqDWhVDDePw2p58cJxyMspBw/aoQDSumhf0Sfl2F/mnZhtdAoFd7wdzR4WBSBe0aLI5GUi/9l9zrjQuUNnOqjQz94gklZg+Z34F2wFQSY2clG3s6cZkvHAP9c7RmNQcYQ4mwhUic/Aqx/shsETPe8HHqFi82gj8xhGhJN70Srv1hhEjA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=processmission.com; From: Bin Meng To: QEMU Cc: Niek Linnenbank , Peter Maydell , qemu-arm@nongnu.org Subject: [PATCH v2 16/20] hw/arm: orangepi: Store boot info in the machine state Date: Sun, 16 Aug 2026 21:12:46 +0800 Message-ID: <20260816131300.51799-17-bin.meng@processmission.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260816131300.51799-1-bin.meng@processmission.com> References: <20260816131300.51799-1-bin.meng@processmission.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TY6P301CA0004.JPNP301.PROD.OUTLOOK.COM (2603:1096:405:3be::8) To KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: KL1PR02MB4977:EE_|TYZPR02MB5475:EE_ X-MS-Office365-Filtering-Correlation-Id: 8cdad06a-596e-418c-9f5f-08defb987642 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|23010399003|1800799024|376014|366016|10067099003|56012099006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: flTXGueNTXhNx0mzyAghz9yagQQ/llNqTcbjw4DkW3jZvKRk+uPUaxgRuZ9u3VX/id/X45UWKi/7L53Ga8CX8q5ti3UAwMuRT0J716p6pE7qqVno/tr282ESS570emGiK2Y+9rD02ZS3IA5mlcXU8YEzbgxa+7wq2F2zM5Dpuuj1lSAziGqu+s4fXASROcT1vhcA7E7j91kXi2ZEa5jOHKjx717XelQOD5wZ9ICNEqrpPmL/xVSBuccdc4EABEsWU5aBCRLseGFWlUxe+3bqJBQgywYQoKaYbN3f0Z4i7871pR3et4n5mXS4HYZ38wNWITMljIzeIdTpVuEu9/yto69K/lNuZ1hFN5JeGEPIAT8Jj3eD7MIBCbPoMRuP3P7tVjCaFXAFLkFaKo5TXQZ2ULA2XLmFnMTSDQ/oZix3jEj+L+DcEgctEIRuq1TpPrGq7t+Scxg8RpicwwII05CSbzW4MxedUsCHXOqXgpkLQuvk+SJHvZrloVsesAEv0t9O4CShKOiPIW4ObMie39NlWwej/lrHooPSJrvHGzACMd/bSoDSm1X8gPBeeTdEaqFTigc0CgsrqNsgcgPXbjV/UzAL24VjJHvJksCc70usm1FU8J4yfH7zFpNEgwWpD4zsWBWBibB48aKuS3yaBNEOz6GaJBeHlHLpZcccLqG83xU= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:KL1PR02MB4977.apcprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(23010399003)(1800799024)(376014)(366016)(10067099003)(56012099006)(22082099003)(18002099003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?TWvcKd0MW0dnLGmYdj6T7gq1t6duWd5iJxJIS3WL6ktfVUQDMuPfksdvALu6?= =?us-ascii?Q?wR60osKlfdmV9V98fdTR0H93XW1ge27Um6W5RyZUs3A5MXTek5mTveHr+Bmc?= =?us-ascii?Q?JlkgxjHEpH3ujgJ8qYCwnnKZqnxjCc2tn4NP0kgugQNHMBguM8uBOfIFKPuE?= =?us-ascii?Q?WwModM8orizUXAXywR1UbEH+sXnPezN/niHy6gw4VMYQOfhyGO7jWVMxVHQ5?= =?us-ascii?Q?UyAwWHjgviWK5JGHfqw5EEZIhbmDMq59WifIfF8xPQigz8la+ekPUDRCI9Ma?= =?us-ascii?Q?M89OkOd4GUrAU9FSg5kbt//JOudJm2corRWsZQNmh54VwVtl73o/JcAIkDPc?= =?us-ascii?Q?1JIc0fd7Ax95R0FA1KTuSq8/YAeDwCSRJWAVzhQHMVuRAbdMVOBHvIV2upBc?= =?us-ascii?Q?DkUjh9ojYhYKDqsOiQOMzXlhDnNIrL2J1BdFjrTpyVcw9+Pja3JqP4Ydrjp5?= =?us-ascii?Q?kRPBsi2wgFbIL6SuxVpDgCDpTURofyLngxRjePTh6x2jYrAODHxvH+GeLtQn?= =?us-ascii?Q?Jd3JO/8Uim5ZiFi2KxV8XLVj9IyD+s1gL3I/OGgcC4G95TUHfmhZ2cquTJYG?= =?us-ascii?Q?S0KnW0Cg5emQDRyuBALKQ6/Szq6EPAXIw+vG/Ev0TWoVbcRRN4NclZrxqlfO?= =?us-ascii?Q?IYaq5IHUM856MydM9eKrFdZ7WVUwyzo+qtCDVYHecHt7Dp/za3PcyZ2agfZX?= =?us-ascii?Q?33hGfN/E8C64/17ayYaWXFA6z3QhyPoPCvftT/Qbn7gjdoR5OK4czi6UHGxa?= =?us-ascii?Q?WiMyMTM09XRCPv5HQ+OuXAwGPQsQBThgxuhNh6VMWsMSpQdkq6SFb8e/cR1/?= =?us-ascii?Q?bnP5q72zUoefAWnFzu3iAmSw5bqhJ40BrzywpQ9TLXy/C1WsHl2SHRbnsS6b?= =?us-ascii?Q?vmCpEuuT5B5zK3i/B9jUzo/f1GgqloAfrs2ScDlV5BnLnc4IqJJPXHquAgKL?= =?us-ascii?Q?e52ouOYVxiLHqYPgHRNumeWqFz7tiOcI8tNrvbV1bpf8BeXQHHOyHd2p1vu3?= =?us-ascii?Q?V3V+8ig0HuhHtvlQ4s7jFOrPVUYAFpBIl+RLMyPja419jlverc3jQnOym0KV?= =?us-ascii?Q?HOkfgXajrFQZdfbDikdYdPfMW3xWBOQN2EWUy8HocypTtHFFJ3JMYj64z+M2?= =?us-ascii?Q?DgXHw4rhUCHexgF28oxRmTVJRW+atOELx6ntBJiL6hRZW/2AIu3AsTAJOByw?= =?us-ascii?Q?Bb4DttRpYSvGyEn/PfIZCMHhyanSeNbBNyY+v+yACuRlnCvGZNIqqj4VrIyp?= =?us-ascii?Q?wGshCtm4fmHR/I7AlMuoWTRSWMwqBNxmosE8gSw7t0H7L6oeOT7DDV15QPYA?= =?us-ascii?Q?aIL0F1XAeN4l41veyVlFETyN5cVDO88WCoV01xzPrPb2d3aWe591DPQ53QFi?= =?us-ascii?Q?M4LXnK0Onwx6kv+QEanYeRAAF1sjS50U7xKKtMP/2F8ya8e5+x10FrB3bfhu?= =?us-ascii?Q?c0tV3SAglSkBLjQv4yYXyWLxE7sxKxV7t1eEENF9SgtGx01dsizZxSd/FYmN?= =?us-ascii?Q?CECStC7abwi+gmpx+paTmUtzkmx4PFYh1tFZw4Wuy3fGUREF9e638wZ8RT5/?= =?us-ascii?Q?qgeAignM+oZ/4ZPk2rBULkdW1lsSxw1EaC28Hc6L08Z0MkF9AEf1IN7Gx183?= =?us-ascii?Q?dXhSQF4htvnVBDlCaeMzLI8zGqfqQpUysqYiXeWAdPVNTnbC9aCmRJlvmtSB?= =?us-ascii?Q?pDXM4HP2oUQw4Xef7XwU5Ig6WqIbKhFm9AMKJHwRcw7NmWrDzfnoJDyl9u5u?= =?us-ascii?Q?Ve71dvxB+Kbg/JXcGZbAx23Ex3fVKlU=3D?= X-OriginatorOrg: processmission.com X-MS-Exchange-CrossTenant-Network-Message-Id: 8cdad06a-596e-418c-9f5f-08defb987642 X-MS-Exchange-CrossTenant-AuthSource: KL1PR02MB4977.apcprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2026 13:15:37.2332 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e0544bf7-9765-4630-ab69-0b266dc2169c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Pcu1oi29v4Fqh81D5G7+eh2Tqfa99Ems8pWF9Z0lvWsZPcPh0aUQW2qmnjACoW1Mf41CK76OHnd5RE74RAyWnOThmuFsj8B1O7m/UfgqXrM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYZPR02MB5475 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c405::7; envelope-from=bin.meng@processmission.com; helo=TYDPR03CU002.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @processmission.com) X-ZM-MESSAGEID: 1786886386233158500 Content-Type: text/plain; charset="utf-8" arm_load_kernel() keeps a pointer to the boot info struct for the lifetime of the VM, so the struct logically belongs to the machine rather than to a file scoped static object. Move it into a new OrangePiMachineState and register the machine type explicitly instead of through the DEFINE_MACHINE_ARM macro. As in the xlnx-zcu102 and raspi machines, the boot info belongs to the machine rather than to a static object: 4d1ac883a7 ("hw/arm: xlnx-zcu102: Move arm_boot_info into XlnxZCU102") 0f15c6e338 ("hw/arm/raspi: Move arm_boot_info structure to RaspiMachineStat= e") Signed-off-by: Bin Meng Reviewed-by: Niek Linnenbank --- hw/arm/orangepi.c | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/hw/arm/orangepi.c b/hw/arm/orangepi.c index d84443bb7b..0e149ed6c9 100644 --- a/hw/arm/orangepi.c +++ b/hw/arm/orangepi.c @@ -28,10 +28,18 @@ #include "hw/arm/boot.h" #include "hw/arm/machines-qom.h" =20 -static struct arm_boot_info orangepi_binfo; +#define TYPE_ORANGEPI_MACHINE MACHINE_TYPE_NAME("orangepi-pc") +OBJECT_DECLARE_SIMPLE_TYPE(OrangePiMachineState, ORANGEPI_MACHINE) + +struct OrangePiMachineState { + MachineState parent; + + struct arm_boot_info bootinfo; +}; =20 static void orangepi_init(MachineState *machine) { + OrangePiMachineState *opms =3D ORANGEPI_MACHINE(machine); AwH3State *h3; DriveInfo *di; BlockBackend *blk; @@ -98,10 +106,10 @@ static void orangepi_init(MachineState *machine) /* Use Boot ROM to copy data from SD card to SRAM */ allwinner_h3_bootrom_setup(h3, blk); } - orangepi_binfo.loader_start =3D h3->memmap[AW_H3_DEV_SDRAM]; - orangepi_binfo.ram_size =3D machine->ram_size; - orangepi_binfo.psci_conduit =3D QEMU_PSCI_CONDUIT_SMC; - arm_load_kernel(&h3->cpus[0], machine, &orangepi_binfo); + opms->bootinfo.loader_start =3D h3->memmap[AW_H3_DEV_SDRAM]; + opms->bootinfo.ram_size =3D machine->ram_size; + opms->bootinfo.psci_conduit =3D QEMU_PSCI_CONDUIT_SMC; + arm_load_kernel(&h3->cpus[0], machine, &opms->bootinfo); } =20 static void orangepi_machine_init(MachineClass *mc) @@ -125,4 +133,6 @@ static void orangepi_machine_init(MachineClass *mc) mc->auto_create_sdcard =3D true; } =20 -DEFINE_MACHINE_ARM("orangepi-pc", orangepi_machine_init) +DEFINE_MACHINE_EXTENDED("orangepi-pc", MACHINE, OrangePiMachineState, + orangepi_machine_init, false, + arm_machine_interfaces) --=20 2.53.0 From nobody Fri Aug 28 00:12:35 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass(p=quarantine dis=none) header.from=processmission.com ARC-Seal: i=2; a=rsa-sha256; t=1786886436; cv=pass; d=zohomail.com; s=zohoarc; b=cLXCsXX1cszKcj8qCYFXFqpy4XPVa3WPiMAvGfuGxRjdv7MTDwb88c0BzTNa5XlUcMXC3KArgrlcngOdrGk0c8SOl/LIYTN4BSFMp8kXx4lOO5XevY7RLzcPVGxAAJnkbD08CCCK35nk13CF/ZMiWRrMkBPKG/Tbxq2EcWpkRI8= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1786886436; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=MCloJA4i+CtVVm/CnNR/Po1XMCOFdQThUaaLU/sd+RY=; b=Cv3PNv6/pgThLyVryz98hhL3DAJS0ED+SBu1SObfPrvES06o90aqegygviUzgRgdTfBe6pIbv7qYGgINtUv25Arar5alJpMOSEsDVghHdOeIf+tblFI3yAV2Kc6by2wlWtjZdLZQGvlkeM5euSnN6pgOln0lfp8rOvJXkAfWO7I= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1786886436480635.2634435892011; Sun, 16 Aug 2026 06:20:36 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wvain-0001yR-EW; Sun, 16 Aug 2026 09:16:17 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvaiO-0001jW-LS; Sun, 16 Aug 2026 09:15:58 -0400 Received: from mail-japaneastazlp170130007.outbound.protection.outlook.com ([2a01:111:f403:c405::7] helo=TYDPR03CU002.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvaiL-0005Xo-Jx; Sun, 16 Aug 2026 09:15:51 -0400 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) by TYZPR02MB5475.apcprd02.prod.outlook.com (2603:1096:400:1cd::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.315.17; Sun, 16 Aug 2026 13:15:39 +0000 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03]) by KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03%4]) with mapi id 15.21.0315.016; Sun, 16 Aug 2026 13:15:39 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=XCd73n0Iy/igWu6OLCPnPheU/5DSQQbPF4KqRW1XSOkXr7IXhbgJxe1oumQXlVoCx7X3qx3yWuunm3qARJ72ujQvbif6H6gTG3FZvz+I4g8V4EiS6mO2yfxyxbGG/uZf5jVY8qZVd34aHMfl2VECx6s/ttwhaISlHZMNMLdgwn9d2HkP0xj79n8d8eJ2oQCzBfJxrSx0mv9TTB2LXdUGlesLklCMgkpEpF2TnwOuKnsTquXMcfV+ci/n0bq3otl6iDTYhUlFlU/zSv3zzcxxv6K/K6ero82mBdHmA557Mxlyjxk6+PxJqUK38+slHKgVMAOr+7QiG1xvlJR7vZ2DJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=MCloJA4i+CtVVm/CnNR/Po1XMCOFdQThUaaLU/sd+RY=; b=siNjuZFIAj6i8IxW7KV5naMCIu7Utv33aCNlm4iWTXavuIvnDz5Hu55H5/CQHSr4MxQdIXVaBgWFfbbyISz7mjbYf9gEaQZCztzSqHO9Ud1bu9fHNpeDiXCgt+kbNHTSiPvu0mEa4T2RQYcJegzi+QDvBBwnM5lqU8DMuhwL6hkyykxBGM+EWPDQZNIG+axerXbtbDq0lnFUtFYSOwprhp8FYR/WJy0A7rm7MVuJZrAgF+eK4P26l2NpeXEDKyXFjaGOc50jspOc3c3zJh78XqOn4e5Yhf5rIA/eYYGX2nP8q5wws1GU/dFvugvvjS7hA+cq8DQwLAYLzt8pmCJmFA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=processmission.com; dmarc=pass action=none header.from=processmission.com; dkim=pass header.d=processmission.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=processmission.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=MCloJA4i+CtVVm/CnNR/Po1XMCOFdQThUaaLU/sd+RY=; b=eHvFFnuoeULrqfj9z5xdj7lT686y00+mfCuvJDOcaDtQgrb+7h9nwJGk/BnjXU6NdHTS8ktw3Thbx7HGYexxJY9Ddr/LweeXlwJ8GP4Ra7LBk/RLO/EqPElsZ1ST3eVXw1py27qcNTcXtu1mYK/mxsIs/vYdL3ezr7HHoAYDYwoe0PS2MZLyQVsvQzzRQtLigvdppHn4Sn9QqTxBV46aS5eBsGLtreAt8syWLSjG86tsPVCnCbg7Xha4ry0Q7FPe/JZjkv8xe5rZ0icjfBPp5CQeouGmXlYs5M5E/WhEntcZGHi6M1xji+Aevm/eemUNb6kiLQCTVgoT2WVaPA5OFQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=processmission.com; From: Bin Meng To: QEMU Cc: Peter Maydell , qemu-arm@nongnu.org Subject: [PATCH v2 17/20] hw/arm: realview: Store boot info in the machine state Date: Sun, 16 Aug 2026 21:12:47 +0800 Message-ID: <20260816131300.51799-18-bin.meng@processmission.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260816131300.51799-1-bin.meng@processmission.com> References: <20260816131300.51799-1-bin.meng@processmission.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TY6P301CA0004.JPNP301.PROD.OUTLOOK.COM (2603:1096:405:3be::8) To KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: KL1PR02MB4977:EE_|TYZPR02MB5475:EE_ X-MS-Office365-Filtering-Correlation-Id: a5e6f16d-9359-41f0-3cc7-08defb98774e X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|23010399003|1800799024|376014|366016|10067099003|56012099006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: hpdtHqQN/x5N8VObzdvPntLvS+9vkOVMiSjTqgn6ANFuo2Eo7qWWYDmIrTFnO/MFbqFnaGPBPHbDrVfWdpqCizilFK5f0Tyru5FcAaRrZzd0EB4x0mjlR24CtJIOGsbB7GoIpm+alvQn+xq5vBz2P9vNVmiBuLFtPZGbGwWgxJeeuNVZjKYYEpdgw1yQ9x2jAxWsbPC76J930WIAz/oK/kdfq6ycPf/vQ6zYczmQl8/o9SaiRh/6BmNYavFfhrPo4Wsk3kRI8cjCM+EiRH8q+k4FqbnHIQyW7SvDmKce8duFJxkrimCOL6BZz82eE0mVFyjH4r6pALZzVRrZdTU1WOA0I9BPMSr/59p434qAgQjPZPich5yLpDAhqb2yIabPQ0Z7rbjnp0RjAHIc3CqybUoak8nAnuj05IZP+ZJ3SRx289p1tW3UBA9pVrXvnQNeOPcophF1Z15L7mx6GyTaTNOxFdU9JadnPu+kQ1pdrjHbsQ9lExXe5QZkb5jZet/4XD7kMbCn0B2V2QDrPmCPpL7gEQTqKsEH/TvioH60iZWTeDsSoi4EfXJZhJVvYy6fETFQeS+dz62T17WVFjVBczUa/jKzPlYOKihVLzJxU3gJUixzln6suttM2QRt+UKgR7CUwCH9EOc8RgJNKy7W8jjwck6/lKlPfPH/AN8LTT8= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:KL1PR02MB4977.apcprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(23010399003)(1800799024)(376014)(366016)(10067099003)(56012099006)(22082099003)(18002099003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?IYUb4uiCMqjHrPM3BiZlxoz40PigJe+zuBzweKDCJNyBX3MlzBacQTFIkYrL?= =?us-ascii?Q?h8419k5ArlCDfVY41NvLnCjCRhpF0YX6J5bapO2UdD0ef9krQD/d4e8TSBDs?= =?us-ascii?Q?284tD4xvqsGt7UB4yO2f1JCP9ulxjNnmWJMZpPZltTrC0vdiUUwbT5ID4BFS?= =?us-ascii?Q?jDrp7ucMuE50FP+SmEly9wFnju0XXaoTYRpsviVz/ckgesNBYPVEKSDWjaaU?= =?us-ascii?Q?ZiD9rS7QmVLjQ1qAygEmbjmziij515/DpWOqOzVLtJSFoaSAtw+zk4xitBok?= =?us-ascii?Q?2FMLjdV+6W9sxSWcegl3w/x1CuivC9YXji8OHPDp549diZquTbbpWb4qWWnF?= =?us-ascii?Q?9JHKZNHuKJpdVPJP0lOcXML2LywP0SROycdr8bHQ7cr71dAJpPQsy/XzWkH0?= =?us-ascii?Q?chQLtCBdfAyS7V3+RW5l5D99ajz2WRbTpcM/43nvsJ2fa3QD2XUYnTzVH4xL?= =?us-ascii?Q?3hp7vWczxVXWWsOisMoRaAMI2COd5JuYitj5ofsOsEZ0Cnaf77zYcEc7mo9i?= =?us-ascii?Q?qifE/23O6L7lbR8Qu+8TpZn4ngPjP7ixStYHosJJyTF1VJM9R+TT6XqvefIK?= =?us-ascii?Q?DFGJQ9TUARd1cD8099/yQ5sD1y/aRBhlF7Egjqvk/nI/Hj/DZw1rJ7ZNd3/r?= =?us-ascii?Q?B4nexg6QM3yO9uIjEdIdDmk40r9EQ359nNLYe2L6XyKCl75ORV8Xk0ZXzrU5?= =?us-ascii?Q?XD56je1VhFCkDkyjFKZ0k1LQmd4FYQAbMjvKqSDb6T67PydHw3sKrjdtc9w3?= =?us-ascii?Q?Obcyek+D+or/6WmErBC52bpB99L0V3RL6XZJ7M5p32gapYQgN2xWFPtSN2Wq?= =?us-ascii?Q?mFJjmwC1WE2mUbl2d3HiNJSLDpekFLpK0qklltbMFnZ2dGB/0oQqNJW4R7J/?= =?us-ascii?Q?IJkAKVzNDBJOo+wxN6hTncxNF765l3fgizsSeUEUCxqCTp/PQWyfPvJAh0FC?= =?us-ascii?Q?vp2w1WhRcNrLgpiQe8WhM9PpbPHzNv8VaXcs0mlEYGHTbtpcXroJpeI2Luk3?= =?us-ascii?Q?Igl0/pYPNOfW0gb932C8O20kLK/Wd51nARwabUQtIWV7IBc3jSpwsevx22Gu?= =?us-ascii?Q?MzLFc/cyQjkscggGtIjFfM8ulWz3J23dHVAl5/rCUq1fRgC6LbNBL/azXDm6?= =?us-ascii?Q?KLQ/M7odgVrFphnggmv1ezaQpzNq/kIqZjclJikDsxToqHfZxzsJ9cBimNN+?= =?us-ascii?Q?Ocawpm6LfVvgF39lW0nomWT9YXUxX1KgVmQSicLNEMg9fR5Fi38WZLAAd6V2?= =?us-ascii?Q?juONvkOjmcSQxApASmIg95142y9TZTYzbMVSjUu6Wa4oYsQeLIJ1aNSBfApR?= =?us-ascii?Q?qAzu2Ngw0wEarvDlIBufiCRGdG0MB77iAjzRDl69UrLi9mbQ5pgx8qODi+5y?= =?us-ascii?Q?lz8mi1+c7Rm8u1ps9LRqd3Ok4m3wjqPXKERwVTiXc9m7nr2vnGpK/l2jCMtn?= =?us-ascii?Q?Abc+PPtoxb8m3xPrAgyd/ltpGGlZt0Qz2wh7NVm9FEWAbE78Wo9PyHe1tu6d?= =?us-ascii?Q?t6NTW6NZKgEazycpyz52c9LH5i9lcULw9IvHmOgjuFinlx7BkdunMq8Iw3fP?= =?us-ascii?Q?1coxtdVx3qwrAMH79cxlb7mgnMXGZaU3gjocd7KTwHTsS16nwAYv6cAjOn0z?= =?us-ascii?Q?XJwC1vmSvKnBzwitHfgUGMKxhMU+IzPEFOowVdIaWs+o484akZapmiHFdSfh?= =?us-ascii?Q?A0WjwqS8aU6dF5kd0hLtz6Qigz0DatYsI665Klv8E26JhdhkXbLaIKecUcHh?= =?us-ascii?Q?BXSBBFxfHCQ5HGI0osICA6ar3luXTcw=3D?= X-OriginatorOrg: processmission.com X-MS-Exchange-CrossTenant-Network-Message-Id: a5e6f16d-9359-41f0-3cc7-08defb98774e X-MS-Exchange-CrossTenant-AuthSource: KL1PR02MB4977.apcprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2026 13:15:38.9696 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e0544bf7-9765-4630-ab69-0b266dc2169c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: wcHVkGzI4aTVIt6frjwuDwbvLLrqKO65Xop6IF5VvWdSZh9Xo2tu0+eODk753R/m3eIpaDEopCq7iT/GrzlKrgnV/a6eqct6FpUc/oi8H+I= X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYZPR02MB5475 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c405::7; envelope-from=bin.meng@processmission.com; helo=TYDPR03CU002.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @processmission.com) X-ZM-MESSAGEID: 1786886438484158500 Content-Type: text/plain; charset="utf-8" arm_load_kernel() keeps a pointer to the boot info struct for the lifetime of the VM, so the struct logically belongs to the machine rather than to a file scoped static object. Give all four realview machine types the same RealViewMachineState instance struct and store the boot info there. As in the xlnx-zcu102 and raspi machines, the boot info belongs to the machine rather than to a static object: 4d1ac883a7 ("hw/arm: xlnx-zcu102: Move arm_boot_info into XlnxZCU102") 0f15c6e338 ("hw/arm/raspi: Move arm_boot_info structure to RaspiMachineStat= e") Signed-off-by: Bin Meng --- hw/arm/realview.c | 27 ++++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/hw/arm/realview.c b/hw/arm/realview.c index 2b9f3271d6..0c2daf5c01 100644 --- a/hw/arm/realview.c +++ b/hw/arm/realview.c @@ -39,10 +39,11 @@ =20 /* Board init. */ =20 -static struct arm_boot_info realview_binfo =3D { - .smp_loader_start =3D SMP_BOOT_ADDR, - .smp_bootreg_addr =3D SMP_BOOTREG_ADDR, -}; +typedef struct RealViewMachineState { + MachineState parent; + + struct arm_boot_info bootinfo; +} RealViewMachineState; =20 /* The following two lists must be consistent. */ enum realview_board_type { @@ -76,6 +77,8 @@ static void split_irq_from_named(DeviceState *src, const = char* outname, static void realview_init(MachineState *machine, enum realview_board_type board_type) { + /* All realview-* machines embed the same state as their first member = */ + RealViewMachineState *rvms =3D (RealViewMachineState *)machine; ARMCPU *cpu =3D NULL; CPUARMState *env; MemoryRegion *sysmem =3D get_system_memory(); @@ -202,7 +205,7 @@ static void realview_init(MachineState *machine, } sysbus_create_varargs("l2x0", periphbase + 0x2000, NULL); /* Both A9 and 11MPCore put the GIC CPU i/f at base + 0x100 */ - realview_binfo.gic_cpu_if_addr =3D periphbase + 0x100; + rvms->bootinfo.gic_cpu_if_addr =3D periphbase + 0x100; } else { uint32_t gic_addr =3D is_pb ? 0x1e000000 : 0x10040000; /* For now just create the nIRQ GIC, and ignore the others. */ @@ -387,10 +390,12 @@ static void realview_init(MachineState *machine, &error_fatal); memory_region_add_subregion(sysmem, SMP_BOOT_ADDR, ram_hack); =20 - realview_binfo.ram_size =3D ram_size; - realview_binfo.board_id =3D realview_board_id[board_type]; - realview_binfo.loader_start =3D (board_type =3D=3D BOARD_PB_A8 ? 0x700= 00000 : 0); - arm_load_kernel(cpu, machine, &realview_binfo); + rvms->bootinfo.smp_loader_start =3D SMP_BOOT_ADDR; + rvms->bootinfo.smp_bootreg_addr =3D SMP_BOOTREG_ADDR; + rvms->bootinfo.ram_size =3D ram_size; + rvms->bootinfo.board_id =3D realview_board_id[board_type]; + rvms->bootinfo.loader_start =3D board_type =3D=3D BOARD_PB_A8 ? 0x7000= 0000 : 0; + arm_load_kernel(cpu, machine, &rvms->bootinfo); } =20 static void realview_eb_init(MachineState *machine) @@ -431,6 +436,7 @@ static const TypeInfo realview_eb_type =3D { .name =3D MACHINE_TYPE_NAME("realview-eb"), .parent =3D TYPE_MACHINE, .class_init =3D realview_eb_class_init, + .instance_size =3D sizeof(RealViewMachineState), .interfaces =3D arm_machine_interfaces, }; =20 @@ -453,6 +459,7 @@ static const TypeInfo realview_eb_mpcore_type =3D { .name =3D MACHINE_TYPE_NAME("realview-eb-mpcore"), .parent =3D TYPE_MACHINE, .class_init =3D realview_eb_mpcore_class_init, + .instance_size =3D sizeof(RealViewMachineState), .interfaces =3D arm_machine_interfaces, }; =20 @@ -473,6 +480,7 @@ static const TypeInfo realview_pb_a8_type =3D { .name =3D MACHINE_TYPE_NAME("realview-pb-a8"), .parent =3D TYPE_MACHINE, .class_init =3D realview_pb_a8_class_init, + .instance_size =3D sizeof(RealViewMachineState), .interfaces =3D arm_machine_interfaces, }; =20 @@ -494,6 +502,7 @@ static const TypeInfo realview_pbx_a9_type =3D { .name =3D MACHINE_TYPE_NAME("realview-pbx-a9"), .parent =3D TYPE_MACHINE, .class_init =3D realview_pbx_a9_class_init, + .instance_size =3D sizeof(RealViewMachineState), .interfaces =3D arm_machine_interfaces, }; =20 --=20 2.53.0 From nobody Fri Aug 28 00:12:35 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass(p=quarantine dis=none) header.from=processmission.com ARC-Seal: i=2; a=rsa-sha256; t=1786886217; cv=pass; d=zohomail.com; s=zohoarc; b=ZbHhq/LysOCTwQVGVXIQsFgy7FBt1vuxYN4VBBciry7iTo/H162TtdhUelMSr7Vurc8JBQTisyDy3jv3LLPftaeE+sB0tqskahI9d6n44PwMPUhebNt1O4rHSM+fy7V0BsTyGy+3E+7zmkyeXOeATjp0UM7UCAoCevAW6PlhYqQ= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1786886217; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=U1Aw3qLbDKlEdDOsX+7vfL8n0ouA9vszP45caSOelb4=; b=Paxqpa5mxPgBnii66C77TvRL5g6BGcWwjry0lG3jrFKj5sdmsu7TyAvfIH+bfAN/plHpQ4QJwcSuqOUsj9MlSd6/yLJX6nRY99OuDcBscoAoidJQkKRaNwttLyIvailYsG4FhJJMYJaMX/KQshK2oZqyparWW3G3rxOKqiWjPoE= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1786886217056328.1669636919289; Sun, 16 Aug 2026 06:16:57 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wvaix-0002B9-0j; Sun, 16 Aug 2026 09:16:27 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvaiQ-0001jl-SU; Sun, 16 Aug 2026 09:15:59 -0400 Received: from mail-japaneastazlp170130007.outbound.protection.outlook.com ([2a01:111:f403:c405::7] helo=TYDPR03CU002.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvaiP-0005Xo-Da; Sun, 16 Aug 2026 09:15:54 -0400 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) by TYZPR02MB5475.apcprd02.prod.outlook.com (2603:1096:400:1cd::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.315.17; Sun, 16 Aug 2026 13:15:40 +0000 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03]) by KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03%4]) with mapi id 15.21.0315.016; Sun, 16 Aug 2026 13:15:40 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Y2Uit/cGu+ZaaJMSj4ZXWp4XQgGJ6BaC2ScTUNhZlYLgQ78vYCNOSRKp+pXVjNzqbonmUEaz3Gu26lcGKo5AxR+D+RCV5EJJypnKtFi8WSPufgeEncNU34R0/VR/PukJJjNs6MQvohGzsxlZY0jhEumuDFlZwZpkiXQ9KWUid8ZMqbHyx2/z9cIk2JLmtIRI9lxF1Sjj4T2IFuPQvzB27JX7wQ+aJb10H46uHHta9tB/8ER/I1UVuAclxtvSjTl2Nk6d+He0TLgGk/hKgn3GzAUlRLdpJ2PuWoQKnhrtjsG2bTylqq+heT4+y+YeNAi2Fd4RzVr0ZHQtDOjyYSowEQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=U1Aw3qLbDKlEdDOsX+7vfL8n0ouA9vszP45caSOelb4=; b=uXczM+qXU+tdwcoq4BXE7iAvHEb3etLK6mTIaYRTNZqJcrgSgDAYp5DA+oWh0EL8FSHyLEn6z+bzN7HjolcTmpQnggzh3dVTU+DhtWw72nct1UdL5fiERNW4RwhqoDQtNFjpYAtFhF7u+kSq6WD84b9J7Zxjr/+DTvw2PrRIxV9O/AcUL8mwL7OFdWwX90f8MPbbnZ+r7DHorTnF7Y0IE++RL31BeUNNM140bZLQyAIvTm4wdT4UdBT+Nmq9GxBC1V0ClToMjlw7MK8cPv2MFeMrs9xiQgeVMjtpI/Yg2wP7LCYRvhY0z5TapgKcAUCZgSu0rQdHjRg6fPPlAcsN9A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=processmission.com; dmarc=pass action=none header.from=processmission.com; dkim=pass header.d=processmission.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=processmission.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=U1Aw3qLbDKlEdDOsX+7vfL8n0ouA9vszP45caSOelb4=; b=V7F45XdYH076vacChxbdWXLAWI2SjtZptiolqg4tXT2niwlTE6XLrpiZaVhmY3xo3eJIpuyCTy+1hND6fF9ccpIwOuJZLxfa0rAfkiJVifOHxxWBLX1wlgqR6OgiWhubNRMKiwRlZeVtnb35VmZzp+b5ZC7GAxGCmL8ymm8ZABOuLyD8rPjYOeAcEQxroQ9u9zox45hR6nwfUGwllOuZgg/HpOFKkrEvLL7QR1WK7fr0ygt2i/wFnN8QGS3LenSG0s2N3lZDWp1vt//SI53FqaTUrGgeESzpq+CfPdnp6vwUtJwQnSW3apyU5peSbUsF1OXHxB0qHB1JT3L1Ns6CjA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=processmission.com; From: Bin Meng To: QEMU Cc: Jean-Christophe Dubois , Peter Maydell , qemu-arm@nongnu.org Subject: [PATCH v2 18/20] hw/arm: sabrelite: Store boot info in the machine state Date: Sun, 16 Aug 2026 21:12:48 +0800 Message-ID: <20260816131300.51799-19-bin.meng@processmission.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260816131300.51799-1-bin.meng@processmission.com> References: <20260816131300.51799-1-bin.meng@processmission.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TY6P301CA0004.JPNP301.PROD.OUTLOOK.COM (2603:1096:405:3be::8) To KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: KL1PR02MB4977:EE_|TYZPR02MB5475:EE_ X-MS-Office365-Filtering-Correlation-Id: 7ecbd8bf-9a6f-4208-4bbc-08defb98786f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|23010399003|1800799024|376014|366016|10067099003|56012099006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: 5R7TA4DZrDqD30MuFn/hPMkxBAiT0OzLIE36Ir2/8q1n3kXY3vS8XxAgqFs8HhNPCUh+YwJQgfu9bqeAGLDOn3Y75AGzxYdIXYQC2iu99U29iEMw+6CtPi7hi6kHsiR5vWpT2/B3fdPfzE3jwMSHFJxtJnEaNKh5/bC+Vdp8hoHlmxsF/xDKDrFkGgpB2JQ0dA96JiRAo/xd4LtnYIeHDkXjsORge+Gu3jIt9ZbX81orTmiMSXR76PDiWrorLIeKTC+X35uKfrwCSTzgYEDHyFJvIptsEYtg/pVjBXkCLmIssYL4j3NDzpHEG9vYJcjqXiZ5UjfMpfXMeyhz6ZNj7Nu5OZOGA7c4n14N7kZ/5yV47yg5wWSfmCeF5DChHhsDy9WY5RgBCFCa6njmq0LN6EnLIQOsFNEnfqj64j5gzbLNSfQfFXpik9nISFP4X8onvuq1BmIij+VPVAOgTk+gqGMYmc9jRzXuQnRISgbfT+2Uzro04h3Yz1gcwz0p3q+iHgOa0wMKtlqFPJcTj3BKr+uPSA8EJlAQRYDLJTJg+TWPlNvYMmr0BfymZR5ckK14qI7hi9IyWGMlUeeJ5dtF4IpH+s9Uds+MxdogsC8wCdg8PaM1GYsWF30981wsj8cRDTLfaqVAe0LW7zUB7GjYoSrmoXKrxS05o5NIT0OLGMM= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:KL1PR02MB4977.apcprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(23010399003)(1800799024)(376014)(366016)(10067099003)(56012099006)(22082099003)(18002099003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?InBLk3qhE1QJz5qi8t1CpLXpE6St/7tv4TgppEqzdu/GdVBLJagHHS/6IvZk?= =?us-ascii?Q?n/t8hMBfcMXsnLM7FxvrPjLxYEEmRkxyLFb8ce/W+MyXr8+KHLFuI+sf8Z6K?= =?us-ascii?Q?OP4qNdfNkou6afp9DMFSuEvtGF++2uxo0/Nhez8cctrexZTAnJJyiD+BstWm?= =?us-ascii?Q?Fb8S/PaUKg7NWS3J1LnE3Na4athUL+EKWaBNx4WB+AOP+dtjvE/UsRwjT24I?= =?us-ascii?Q?SgGvKM3SgDoOzmuRlYybmEqTLvkNm7tBlMbNOW8Fll+5QOGdHK7hT+U/iFFT?= =?us-ascii?Q?8SRsGTtGavf7WV+YrpSV481reh2njRdrWk2Oiqxh9ZWC76Qu69LJk5L2iKN6?= =?us-ascii?Q?Rhp/Z/VFWiaGIhH1t5CHDtL3FvUXMAPd4Ke3GJEpHp4VxnF2CAJPbCrG+HFS?= =?us-ascii?Q?VO/S7PHPeeG+JKrWgV9bkchTm3GfiMi76dPUOZwZ+/45YpOuYxO+mXMjA3Ry?= =?us-ascii?Q?2tWTgEGUgU1lPLeBWlkIYQHgSq5Jp12mgDAcRZflF9QxXRzwteO/RUmQiwzL?= =?us-ascii?Q?laf/I7M/MOpeTKvO9hEgmipH1IeI8lQUxJKnVIn0caFAXR0yBMRyoM4/XaqK?= =?us-ascii?Q?1Msrl3q3i3jMGicb2iihmhcZ6TZmT+Onnlt4pLyKUYUhLm6vI4rKEp4Hsyjw?= =?us-ascii?Q?3rAJUws+AcFC/Jqdul8a4aGAn526ykdMvxYxN+Ye/hOv6SePPL6HKLqBnrhu?= =?us-ascii?Q?gcGqK5KnC0HthAanugpd898epgN6vPg2VsxV38RO3+nVzA2HI40kuDSisath?= =?us-ascii?Q?JajoOd0p9WVuKbIJ/0XopWpaiVFnrT4G3ftUVDgdz2pekq2DYK53zspZGd+H?= =?us-ascii?Q?rV/dYhiUpw7WMRl0UbRTUnwXsaY/v0ND0vMLVKd7vO9fzUP6uFTqo/iCvLBt?= =?us-ascii?Q?dmrMEnFG/OI8QK3JJAnMEXmN8tP1wO0Tg7A+jpUB5Gi0W3JLyHyceXuK33Nt?= =?us-ascii?Q?V7MkDLtTDL4nS8mF3SkZO6urxso7LZjstf3HSx3CfKHhgeB+bvN+EElBORUZ?= =?us-ascii?Q?oBsvb30slhGUYz9kf+HbnASZqrPUi2m30uQwDe/1c3/adQhERWGHG5wgngZT?= =?us-ascii?Q?RdJsPaqQu+7/mVpD2+4Pa3iC6INNnsKq0cBmc89676P4SdRm7r4wfqaJF+g/?= =?us-ascii?Q?XHv6okYGgbxMvqiXOQy8wmXfMrckQTGjrem6v+GFFykujm62yAIGtjCFkm+J?= =?us-ascii?Q?2Uf8ilDF3JOFqXbJMsRqYm6Yirqzh8x3vXAWmbW9E0JFRMa11QRjgCS5jAy9?= =?us-ascii?Q?hwZ7FkUvxVVwLBlXxX1FchDT6n8a7yZ7tk3OLAp8UbuhQ/Nk4lxdFaozbbPB?= =?us-ascii?Q?BRKQHQ45Nj7Nj/n3RX71PmPVgl01vNBEabLK3sfFeZcmITaBscYT/BwBJqng?= =?us-ascii?Q?DT4ovAsSUZiiITeS14WFVzIpSjekD4+8gi5mIgi8io7njgrZ+ROQ5qivMIFz?= =?us-ascii?Q?zPfFAi5DcBB0zcYXyGrc8Yy1kziNCxHVLOKJuXnjkAebdQ34dYL7hQjLQ9ht?= =?us-ascii?Q?A/siT5YQgOPF3bBi4k5frV4S6Z6oDPuTDVUvZN6uxAFQDIBQTKJepBssC3mu?= =?us-ascii?Q?frAB4n2ehYw840aM8EJJmdt9zWL05PlYnP4L5/8+4L7aJO0X4/4v6ho7seQ1?= =?us-ascii?Q?23Qbec69j8ksazZYh6N/TSVRQauWrcDbvhNfEFgeyJoBQtvBLbt7IsWhPztT?= =?us-ascii?Q?tKvg3GD36VNw7N9H7YJQKbY19ARGHBaN/q8xgHts3p8oQQDDBz+3nFJMwBj/?= =?us-ascii?Q?ttgGxDDxKg6rhPXB0rSQi2jg7U+CjiY=3D?= X-OriginatorOrg: processmission.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7ecbd8bf-9a6f-4208-4bbc-08defb98786f X-MS-Exchange-CrossTenant-AuthSource: KL1PR02MB4977.apcprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2026 13:15:40.7992 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e0544bf7-9765-4630-ab69-0b266dc2169c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 47j3vFn4qepdvJjk1gckRJ+WM4FGEdQ2mUpRwFfCO/nR7HFqPXOpDfUpm3N2YMq255TrFEDUU6lLzyWBGslvbntIv7hrVeabIEKcnboHikE= X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYZPR02MB5475 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c405::7; envelope-from=bin.meng@processmission.com; helo=TYDPR03CU002.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @processmission.com) X-ZM-MESSAGEID: 1786886217630158500 Content-Type: text/plain; charset="utf-8" arm_load_kernel() keeps a pointer to the boot info struct for the lifetime of the VM, so the struct logically belongs to the machine rather than to a file scoped static object. Move the boot info into the existing SabreliteMachineState. As in the xlnx-zcu102 and raspi machines, the boot info belongs to the machine rather than to a static object: 4d1ac883a7 ("hw/arm: xlnx-zcu102: Move arm_boot_info into XlnxZCU102") 0f15c6e338 ("hw/arm/raspi: Move arm_boot_info structure to RaspiMachineStat= e") Signed-off-by: Bin Meng Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- hw/arm/sabrelite.c | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/hw/arm/sabrelite.c b/hw/arm/sabrelite.c index 84bbc2f979..140b2ecb9e 100644 --- a/hw/arm/sabrelite.c +++ b/hw/arm/sabrelite.c @@ -25,18 +25,12 @@ struct SabreliteMachineState { =20 FslIMX6State soc; CanBusState *canbus[FSL_IMX6_NUM_CANS]; + struct arm_boot_info bootinfo; }; =20 #define TYPE_SABRELITE_MACHINE MACHINE_TYPE_NAME("sabrelite") OBJECT_DECLARE_SIMPLE_TYPE(SabreliteMachineState, SABRELITE_MACHINE) =20 -static struct arm_boot_info sabrelite_binfo =3D { - /* DDR memory start */ - .loader_start =3D FSL_IMX6_MMDC_ADDR, - /* No board ID, we boot from DT tree */ - .board_id =3D -1, -}; - /* No need to do any particular setup for secondary boot */ static void sabrelite_write_secondary(ARMCPU *cpu, const struct arm_boot_info *info) @@ -110,13 +104,17 @@ static void sabrelite_init(MachineState *machine) } } =20 - sabrelite_binfo.ram_size =3D machine->ram_size; - sabrelite_binfo.secure_boot =3D true; - sabrelite_binfo.write_secondary_boot =3D sabrelite_write_secondary; - sabrelite_binfo.secondary_cpu_reset_hook =3D sabrelite_reset_secondary; + /* DDR memory start */ + s->bootinfo.loader_start =3D FSL_IMX6_MMDC_ADDR; + /* No board ID, we boot from DT tree */ + s->bootinfo.board_id =3D -1; + s->bootinfo.ram_size =3D machine->ram_size; + s->bootinfo.secure_boot =3D true; + s->bootinfo.write_secondary_boot =3D sabrelite_write_secondary; + s->bootinfo.secondary_cpu_reset_hook =3D sabrelite_reset_secondary; =20 if (!qtest_enabled()) { - arm_load_kernel(&s->soc.cpu[0], machine, &sabrelite_binfo); + arm_load_kernel(&s->soc.cpu[0], machine, &s->bootinfo); } } =20 --=20 2.53.0 From nobody Fri Aug 28 00:12:35 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass(p=quarantine dis=none) header.from=processmission.com ARC-Seal: i=2; a=rsa-sha256; t=1786886296; cv=pass; d=zohomail.com; s=zohoarc; b=TINdyk+XdpLzs3iTi6Ig6Fm5SAiuRT+/D//00eyAfkKjdSExTjqpFkkBrxbK0y7RMerJie+hA8sN66LjCRgMpDH9Q5oRzcMyzu9/Le720UAFizohu5YY1tfbb04KOpX/k+Cqff76LJ4ezzjmmXrxpTc5gVdqkWvBgUAxh7Y4d5s= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1786886296; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=cXGQMNH87wIyWu8NNZq1mO1VhHN+s6MFjqExH0RjmBU=; b=HcUsrxIWKNw3zGoNmKxA73CrU3m0koLTQaOOvUl5X7yNb65U8lGIXjMGts5N02AKQ87JnmNVQLAGxMelv/7avXw1zAC70bnd2FTNMCQ76XKlgfFFXcb9Zzejuq5c7Ir+MuXRXNnwKzpz4DfToS1f5kxZ9f3EdTmVrNYtyTL/nds= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 178688629643426.06007913794963; Sun, 16 Aug 2026 06:18:16 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wvaio-0001zD-6R; Sun, 16 Aug 2026 09:16:18 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvaiT-0001jx-53; Sun, 16 Aug 2026 09:16:00 -0400 Received: from mail-japaneastazlp170130007.outbound.protection.outlook.com ([2a01:111:f403:c405::7] helo=TYDPR03CU002.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvaiR-0005Xo-LB; Sun, 16 Aug 2026 09:15:56 -0400 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) by TYZPR02MB5475.apcprd02.prod.outlook.com (2603:1096:400:1cd::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.315.17; Sun, 16 Aug 2026 13:15:42 +0000 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03]) by KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03%4]) with mapi id 15.21.0315.016; Sun, 16 Aug 2026 13:15:42 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=pQ9qVLOg8z8D9k4qa4kx4nsqaxmj0shMCSOS+XIR+ofjY1s1+GIOtQ3ybtjFG9h0EBbTnozTAbZYpFX3onRREQ/v/R3FQO6AZrX+BYQ2OuogpWtLoKp0cObeFfhgHx+WeWNHrVLod5jdq16VqjKkEoYXuV1ShxxPllEPvhuLIcvzgHUhgyZFTVktaCWibZ6NAPMvO5OMsANl+EIv6MOaMZE19XWujAvrZbjcu1c0l6+D18jJaA4zx5Tdsti9AJFq6zLFm1cBc3XRQuDcI/vhhSAF3Z2Rncv9Cka2mD2lEeCsJ6QPhNXfBaA/rV1xfJqkLI4XZy1HfQMeVXTJ7k+K/g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=cXGQMNH87wIyWu8NNZq1mO1VhHN+s6MFjqExH0RjmBU=; b=knB5NHGt7OI3X3HKRUhoE3FYDWDxPT/BT3YAK/FHFYIi2Jy6PO21CTDcs8b9vrYi7wW42UD/7HJ9OyqCyvaheRkf/KhIe5kDmpqicMubTQwztYPxY/JqOhpc0VTHalaWzYXSUw7PrcNz4BJ8H0Vgh3FTUVj6iqiMIhOPZFO2/QU6PvfJeVw4tBBXelqoPIdH8GK3WM+FysL5y8gacoFzoo55aS5zd8jTNgzoiO5hUwBH2vWDCa/nZGdIoeaWMjpoK1LZ9WalMzVNWSgkNdnFoP981OP4/dKE2cCa8zXvZsmliYCFSCu9OCXBGtLU/u+HlnjiFzbxFWMlhycw54dPDQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=processmission.com; dmarc=pass action=none header.from=processmission.com; dkim=pass header.d=processmission.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=processmission.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=cXGQMNH87wIyWu8NNZq1mO1VhHN+s6MFjqExH0RjmBU=; b=jU86PaMHrEblQnTUdeU8jpQQtBODYed1OgAzZjZUKKM9meX6BeC/07Gk3KTr3BWTVxu9Jx8SHovVTK5etAfpKazGo29dZLyonNTsF1TQ9NW5NLbUnAVo3gdc2Azy82WzD7fTQQdMzqQO1X4xQOXWq++u9MuiAvgLOk3MRComMHsUYyijke+BPV6HcsJ0DUT+y+z0DOgr4OnzS8BsKCzFUWqPr5hxDrpH558Sm1Ktp04ggLTssQzhus1BauqJzSR6tIziQmAfJShInIg+UNIViuSBL5dbgmFpG9JO5B9hr9B5Pf/ldyK4dFyjoUXp0zUG7/XMLaukD/KXwflMg2XlYw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=processmission.com; From: Bin Meng To: QEMU Cc: Peter Maydell , qemu-arm@nongnu.org Subject: [PATCH v2 19/20] hw/arm: versatilepb: Store boot info in the machine state Date: Sun, 16 Aug 2026 21:12:49 +0800 Message-ID: <20260816131300.51799-20-bin.meng@processmission.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260816131300.51799-1-bin.meng@processmission.com> References: <20260816131300.51799-1-bin.meng@processmission.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TY6P301CA0004.JPNP301.PROD.OUTLOOK.COM (2603:1096:405:3be::8) To KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: KL1PR02MB4977:EE_|TYZPR02MB5475:EE_ X-MS-Office365-Filtering-Correlation-Id: d3abc333-6cdb-4848-40df-08defb98796c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|23010399003|1800799024|376014|366016|10067099003|56012099006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: lWnk3slLiibl9Y0xNW6lOYTxCkEllz7dSruNMzQNxbrtsTxzbfT6XzhauuE9DmaxsoWISgwSw0swqUx9QSBGWRHAtr3BB7LNnUeSXJ/kJQTaZsHVes6NUygsnRVa0VAwrbMph4yuPYEPDUvWW9ArKa8UJkrB+2BB1F8ras56Rwhs3JhitfECVpPdmMalCQYS5DmjS+TUfydB7gvHcSha+ljYjb5hhNImOJ53eBSl+6g12INa8acnXfeBjtI++wNLkmvKkhe7daLaDCUqdZMOD+QN3jCAetYe27eoNsb2/wYeGrxvBctF0ZQj0Be2yzPGusime/y7CDdZfViecdXU8uvCjxKnZI0S1GzJK/6EyNYrWI5NPGxfHgERUbyetrvDZZp/5QmIBs4uRzEmqnhh60f/Sj9lF14/uws/2o98wVnKh2A3QvHyHenDjDQ7SN4hdjm1TBnRRpHZJYV1UNPAF1y5oOv3zuJ/WthFcXyBxNpMvkv63ZEtZYIheXhwqw9brnRVR7/5+irDLm19tcxoAy3yOA52E3DGgs/QGq/E4RKwBKECKDmIzQm5Okq1p1jXIZUJCVLhba2ZquE5mgpNk0xCPAXoBChR8lcf4K2oa3SCSbQ/K/Koq/1OFly7riiUXPYpnFWo+sP3p8dYdP74MW5Q08EntXI+r/VTHFOShCY= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:KL1PR02MB4977.apcprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(23010399003)(1800799024)(376014)(366016)(10067099003)(56012099006)(22082099003)(18002099003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?vM4To2ZRSkt6aZ8k5OoOMNNmup1i/lv9n7AdbItKxurcBi4agg4Otli1SbiB?= =?us-ascii?Q?kPuXurJKXkAzU1rWBcic11TgUq0t5pGIOaxJGgFXiqPruV8RBvorijIQ4Ty9?= =?us-ascii?Q?HhHeLuCfFKIgyIbu+z497QMSSnYYL/InMnGfymnwoF/+PiLDvD1tpQELaDwC?= =?us-ascii?Q?9Cu/F37BLzQpJuoJojeaawhzqDIIkLcsavWtnhIwUuY+/f4BeNIi3wKqq4IN?= =?us-ascii?Q?bzf6ywkMaW12r2Px+B3UiiFiVPeSxXKopXvQvDnqU2rNcVk/QEyL8afvSG3/?= =?us-ascii?Q?UuZPhB3hBmcA/vjGpCCdOknq6kqlwuWJQUGHJuBpxBpkM3ddvYZcE3g+2qiF?= =?us-ascii?Q?GK/QK6eXOEEdJI0sUBD2KnFaXriYgNP/m7AXljRcgj8kt5vJOuY/KD978wMr?= =?us-ascii?Q?bTAtuBPws+RJnyipeQ3VQyTLP4O2NoUOxUIQ2QVDR8SUcianOJst2I8AMQpC?= =?us-ascii?Q?zBGczbBqmALwQHurXiHW360USsxUNfnoh4LScf6NBMxF2HaRKNoCdATBO42Y?= =?us-ascii?Q?62Bbv9zoi9f1r9Ii0YU6JEYFDl0GUyBB06VH85lZnUbjHP/7zaca0ZBM9Wcs?= =?us-ascii?Q?x9pkN/N24Y9D7xMoEYDZDW68hqD6xCqsmchlrzRuy9sKP+CNaL0fjO01f+uo?= =?us-ascii?Q?2DEUAeGzJwEpSFFZN2CZwTkh2uXH9uta+ny8bnNPbnLXY1IDXFw7aeAu1HWA?= =?us-ascii?Q?cHkZqHZOaRfH7bEsyaZr0NMvlvKCu3KQbbim5Kthgtic5CUl/wtufCHUZtA8?= =?us-ascii?Q?8jtbGqtgGqT82UvjA9PBzJQs6Bn+EtB55ysrR40N5bQITQwc2ufmR2Dps/aj?= =?us-ascii?Q?95iMqc+vq10S0OlsZMPzuDK7nDlz3jbxDtj3rMOSAlphzsq9WQDmJ+PQr5Nk?= =?us-ascii?Q?7xho4jMa3/v3JHHhgml/NuHx8OA/BBogtHrfKx0J6mWiVPn8ntIADkpJOwuR?= =?us-ascii?Q?hXIAqOJRmPW5zlTT27AaSpNloZ34gIWDOMqwYfARKAhKHoO5wATn28y1F//o?= =?us-ascii?Q?3l9W9Buz//gCeQeBibh84Ek1tHKsmnpmrsBxDUeBK7YgcxAXF9mpkEOZIxCv?= =?us-ascii?Q?KngObyY6wbj0SN4vh4ddWg0lIAAX9efpBA1L8yTZiOTL4Cr0OC54bM5CA+N6?= =?us-ascii?Q?St2/zjifozgPJl+wBYL0ETY/mgCXmnBVjStm+pknjRmKQ/G6k6wDbpK0B5VJ?= =?us-ascii?Q?n7gc7JyFPkZzUgDYcM3qPI1ZMFgqYbcXLfBWxjvzxLRm299MwXn66T7ljtFA?= =?us-ascii?Q?EEa/O2Ih8IOc961RzwW2r5qlBK5ZM7UqzKaq1hHchJSYy/NW0EbO5QhTnou6?= =?us-ascii?Q?IZ/YfPmjGa/58ZECMYmMvrQOGJMRe+2mHB3ldC9HBxwpEsH9Kavf5TxDPxPL?= =?us-ascii?Q?M/HRvJMwfdsX0DSzv3P52zEfg2V1WsTR1XflRt2oGBhXECvLJfUUTdANJR6X?= =?us-ascii?Q?j3O/5iqbuSvscmML0JLIrKbnAaxUXK00A+QuBXHW0S2qJi4F6YoL4G2ut3rY?= =?us-ascii?Q?rMBDITw5op+L7jyo8KoYdxlYrrXqh+cso4gfbdueVgvaajtZWFlq8q18RT4t?= =?us-ascii?Q?V94g9D7W9SW3imet8DNmEuSCEEtnviKJ6DUHxBDqVId3wjnFGVHSYdVE70Rt?= =?us-ascii?Q?lIm9CgP4YCZfleVvJE7n3kgauj0YYJED+YzeAIXMllDjJfwd9uUZizwTH0FZ?= =?us-ascii?Q?fx7Sx+OUNsesoPHSsHxL0iwLOZFBHHQAwx8PJMrGVyZNGnJ00m8hnMy5haFN?= =?us-ascii?Q?8Dgxkldff3Qk2FtwVQF5BmPjD2VI/tk=3D?= X-OriginatorOrg: processmission.com X-MS-Exchange-CrossTenant-Network-Message-Id: d3abc333-6cdb-4848-40df-08defb98796c X-MS-Exchange-CrossTenant-AuthSource: KL1PR02MB4977.apcprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2026 13:15:42.5244 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e0544bf7-9765-4630-ab69-0b266dc2169c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: zECgjyZSoP6bij6bgk2OiatlCyXqMJiPIbGbg/5r/Fx075dwKJoqBjRxHKRKSvwP1nvEeBzJy9mWYjkqtQ5Ew0GxpC17rSap5eeBT6S1DUU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYZPR02MB5475 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c405::7; envelope-from=bin.meng@processmission.com; helo=TYDPR03CU002.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @processmission.com) X-ZM-MESSAGEID: 1786886297904158500 Content-Type: text/plain; charset="utf-8" arm_load_kernel() keeps a pointer to the boot info struct for the lifetime of the VM, so the struct logically belongs to the machine rather than to a file scoped static object. Give both machine types the same VersatileMachineState instance struct and store the boot info there. As in the xlnx-zcu102 and raspi machines, the boot info belongs to the machine rather than to a static object: 4d1ac883a7 ("hw/arm: xlnx-zcu102: Move arm_boot_info into XlnxZCU102") 0f15c6e338 ("hw/arm/raspi: Move arm_boot_info structure to RaspiMachineStat= e") Signed-off-by: Bin Meng --- hw/arm/versatilepb.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/hw/arm/versatilepb.c b/hw/arm/versatilepb.c index c6991a52e6..520af79c80 100644 --- a/hw/arm/versatilepb.c +++ b/hw/arm/versatilepb.c @@ -182,10 +182,16 @@ static void vpb_sic_init(Object *obj) peripherals and expansion busses. For now we emulate a subset of the PB peripherals and just change the board ID. */ =20 -static struct arm_boot_info versatile_binfo; +typedef struct VersatileMachineState { + MachineState parent; + + struct arm_boot_info bootinfo; +} VersatileMachineState; =20 static void versatile_init(MachineState *machine, int board_id) { + /* versatilepb and versatileab embed the same state as first member */ + VersatileMachineState *vms =3D (VersatileMachineState *)machine; Object *cpuobj; ARMCPU *cpu; MemoryRegion *sysmem =3D get_system_memory(); @@ -397,9 +403,9 @@ static void versatile_init(MachineState *machine, int b= oard_id) VERSATILE_FLASH_SECT_SIZE, 4, 0x0089, 0x0018, 0x0000, 0x0, 0); =20 - versatile_binfo.ram_size =3D machine->ram_size; - versatile_binfo.board_id =3D board_id; - arm_load_kernel(cpu, machine, &versatile_binfo); + vms->bootinfo.ram_size =3D machine->ram_size; + vms->bootinfo.board_id =3D board_id; + arm_load_kernel(cpu, machine, &vms->bootinfo); } =20 static void vpb_init(MachineState *machine) @@ -431,6 +437,7 @@ static const TypeInfo versatilepb_type =3D { .name =3D MACHINE_TYPE_NAME("versatilepb"), .parent =3D TYPE_MACHINE, .class_init =3D versatilepb_class_init, + .instance_size =3D sizeof(VersatileMachineState), .interfaces =3D arm_machine_interfaces, }; =20 @@ -453,6 +460,7 @@ static const TypeInfo versatileab_type =3D { .name =3D MACHINE_TYPE_NAME("versatileab"), .parent =3D TYPE_MACHINE, .class_init =3D versatileab_class_init, + .instance_size =3D sizeof(VersatileMachineState), .interfaces =3D arm_machine_interfaces, }; =20 --=20 2.53.0 From nobody Fri Aug 28 00:12:35 2026 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass(p=quarantine dis=none) header.from=processmission.com ARC-Seal: i=2; a=rsa-sha256; t=1786886303; cv=pass; d=zohomail.com; s=zohoarc; b=O95dXlAzmWac+7Yta21AiwyfmYHonQDsq+VqjD3JmfML+f/q48DCPl+IEZTiO7GPmhkaRH7JpZdcOkR8zykGQtDxoaUNGXX/kEgdA3VMYG+tAxqkoYX9oploRwwqGT5BqqNLSzmyUu0k+jAiKtNNVhsnV+m6qWh53a0NxNNiycM= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1786886303; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=OkHyTcOXTss2+piTGG/1amapZT6tYT9NKgB+5zFGmLw=; b=Uateh2gXZe+WPfhQr861pfnJZHKdMJmDhZJTb9VmJ4xX02GR05QRX+DriIwf1YBbl6AhGpeqn1/cp8oNb0jXIMqqWQVL80sYyPp2fhNj5PlgTK07IjtpSKtAmtVmnyPORAvbb2mhvbH8rEr47VqhpLcJeNkc2Xrac7eOvp9xbvc= ARC-Authentication-Results: i=2; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; arc=pass (i=1 dmarc=pass fromdomain=processmission.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1786886303839485.21418592824637; Sun, 16 Aug 2026 06:18:23 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1wvaio-0001zC-68; Sun, 16 Aug 2026 09:16:18 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvaiV-0001kG-EA; Sun, 16 Aug 2026 09:16:00 -0400 Received: from mail-japaneastazlp170130007.outbound.protection.outlook.com ([2a01:111:f403:c405::7] helo=TYDPR03CU002.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1wvaiT-0005Xo-TA; Sun, 16 Aug 2026 09:15:59 -0400 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) by TYZPR02MB5475.apcprd02.prod.outlook.com (2603:1096:400:1cd::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.315.17; Sun, 16 Aug 2026 13:15:44 +0000 Received: from KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03]) by KL1PR02MB4977.apcprd02.prod.outlook.com ([fe80::9fdf:2557:8351:6c03%4]) with mapi id 15.21.0315.016; Sun, 16 Aug 2026 13:15:44 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=dxHVaY5VY7QwpYqTI7FHyFH8ws22OGALrvNumRtpCVbsz5dbbFl/mSHdBHu5f/pYi1NtnBEfIRnP7i4ObnRVDdi08mfCUpjy0RhWR/Jvjjr4Iy9HostN6DaKD0IRFw43dfSbfRIaq1a7AyVZiTZ8pBFn8OPOMqDFaBTOUM+yVjAIRUCAlxHPTW61ut+2abj7qkTqN9dNzGMP2nvYzf1gHC08kABLgg92il8DYJDJ+a9y/qC1dsMXoAYpR+3P9HBe/f6POyttRPfJWAp6hWOJ6BgXSiKf2I6vN6qn60V1VByd6RjausSjrJnCE6Ke54dq2/HDQjvJS6XIpZ17ae8tKQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=OkHyTcOXTss2+piTGG/1amapZT6tYT9NKgB+5zFGmLw=; b=bdxPbA3xtNsJRv8MzNkGGnrAxqXPTBcVTvHjN8cA8JjHjKXcoUBe/+s5LsRUoTeDomO0h8p5QXnwCtR7NpFXjPaj4PGNAR8cNMM01QplmMbmdgMHUAHsPCQbE0s9RsJkDnnh+w2bYzKdKCym7P0FViuggfRMMR6CZGSn4xGBGQBsJAHWJ5kFTm5a5534q/bsbDZvOFsSVHq0k1HBAZUG4dKoJkoc+llI8alf+R7rAsznubs/vq2GdgkDMr4OoP7K/OZK0OUe8kByw9w/DMmPS6JcB2rx3zWDTZ64ov219m+iW4+tL6J1MKs4SFaFa8dFmWpIj+di1JkAo8GZgkQBWg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=processmission.com; dmarc=pass action=none header.from=processmission.com; dkim=pass header.d=processmission.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=processmission.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=OkHyTcOXTss2+piTGG/1amapZT6tYT9NKgB+5zFGmLw=; b=JuvMxdfcgbSHaU1kphDGPqjRXT13XAz1V5l3UW4e7kiWiWLKZOWbw2CfMX9mM43o4l6LZS8vHBBUdHw9bCljV/Ebiuk+lkQxllExOpj9RxBFWsO2v1Ytn9+EGbt5fqVuA9bpNH7pE+JhJ61P7QsOO93RMm6QjkeFJfUaZuJ69Y0lwAs9JKQ+JS64ZEkPDDht95czxQ0Blm3xxHc/HnSdvWmqe9qh/R0MyoOxCunxpkJAp1+VeSBmLFhK3ZbvE6lTNZmvvZXm3JCr/YYn4+b37X3fzRhN5b5vIkT8umTEL/H6AMMGCXLdtOgYzdXVk/XypdrMKceoHCcH9TgDdueF5g== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=processmission.com; From: Bin Meng To: QEMU Cc: Alistair Francis , Alistair Francis , "Edgar E. Iglesias" , Peter Maydell , qemu-arm@nongnu.org Subject: [PATCH v2 20/20] hw/arm: xilinx_zynq: Store boot info in the machine state Date: Sun, 16 Aug 2026 21:12:50 +0800 Message-ID: <20260816131300.51799-21-bin.meng@processmission.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260816131300.51799-1-bin.meng@processmission.com> References: <20260816131300.51799-1-bin.meng@processmission.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: TY6P301CA0004.JPNP301.PROD.OUTLOOK.COM (2603:1096:405:3be::8) To KL1PR02MB4977.apcprd02.prod.outlook.com (2603:1096:820:71::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: KL1PR02MB4977:EE_|TYZPR02MB5475:EE_ X-MS-Office365-Filtering-Correlation-Id: cfb11dc5-608a-47f8-afa8-08defb987abf X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|23010399003|1800799024|376014|366016|10067099003|56012099006|22082099003|18002099003; X-Microsoft-Antispam-Message-Info: GpvOPhDl6Ku9qQAs9TwrXCIpyIScO4c07hBh3ZvgOA3Y+M4KCnlEzmMkL+9wd41ZXCDkgP15+mV3Hmu3fHTMs/cjv4788N9Vv0OzwTAdiM1ls8XdgqsjtSyCbPR/co6iKkKH/YJfjC4SleVHbympYbMdtMy/jMnfebCBFV6KItvVu6J5d/Rvnng5wWoCX+LfjfrRSSpO0ZzPw7h3Mebyxw8WovBmCoFrOAwf5i3Krzf3u8D3lQdyxkVk8L3dgM2aXEAVltN4Jz8QXPK8NwKqEMZTclMTnrvulnfmXBk058LpoCRCxSMy5gTbsiW4b7zH0ohDjgNOc34GvhQAgQCJWsXKLxaORCcMoRgbHqEHXUMyqy5rMUC4rHje/98dL5gyMKbcyO5fu3ymhgUKjsMRd2/UEgU6VpQV3PTorEB9M9OslHXxdYFwPLG7YMBRxMhfHq2KNlNvTwQPnV1R5zKO13MvSCj17OgJx2pBW5H33pxaq1IroEnsBd83j4Nqx2/qmClL9lUEisJlo/7f2rZvQW8SwG0A2h7pLFf6H7rbRTJ1MByY5mO2Y7n6zaC/5CYWIIsqy+0uWMhKKAhxDqq4vep9qkRcJ2tPvR/1rUVuYAQjw0MnQKHMeZWmY5SRH62c/K4i0Ka+s6mAuyOn7oCgDA/KBi/jehrbzaKPAZvGzyA= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:KL1PR02MB4977.apcprd02.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(23010399003)(1800799024)(376014)(366016)(10067099003)(56012099006)(22082099003)(18002099003); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?Nrjm6LgfACDE4OljiddD09rL2Uv+lYbD6VIkpx/zAsuORb3pO09NdqRbk4Tx?= =?us-ascii?Q?2ta1DQrRj/htdxeldfS4FWdsXouCMc3YFhntYrBpaBhFdQlyvoMVJr7VB9rI?= =?us-ascii?Q?hos0pnJIPFw/9gi2xLv6Yb5QQbr/38f7CzBM+fv/riu6krYKSPfWc3P8zyfp?= =?us-ascii?Q?J+AhrbRgmHVweFWXZRfFc5f/UCK0mJb7f4J8UZowLxu9bzRNFXK3FfBLTBoo?= =?us-ascii?Q?ed3kg9poIXnLvKsIrKapoAVZrYh7BeL5isMemTGbIrsUSQtfAzVaXnCmqZ4A?= =?us-ascii?Q?99Zex+eCxDFClSy/zmx9rvUZ9ahZxp4Xws4TuLgWgKGPOk0qa9Ogy+NT1Eh/?= =?us-ascii?Q?u/QuKcJQKMhOqJ+2M0+ayirRyTc3aBOjS1w87b7soy+adhiNvwaLShikgL2T?= =?us-ascii?Q?XAiAWupBhKG0yku1chRdKNv+y0iwYUtN7zYEBnWSxEATk6tkSJ8AIjb6okGN?= =?us-ascii?Q?7EAuasqQXHDicwn3lgPGVG/MFqEsx/OHwTL5nMzC5VROk4Fho2UezNPYyXd1?= =?us-ascii?Q?fP3dY7B6di8KRGeAa9n6An1mNCdHzR9HDeVi0fwRIo7JWqn3Vw+VeCsFxSXc?= =?us-ascii?Q?lwftPT3yweWfx6tsu0mA6soaBz301d3n9H3ynpGLFE/Jg9cZ70d2tPkfnHfR?= =?us-ascii?Q?NNG5e/i450YY9VRwUvZM70ApA2hAUZOagash0nNd1mT3rpHLxBheI6hoHOgt?= =?us-ascii?Q?NSr3P2vB9O3urbRvY44f53onlvOKRb2jhov6wZ4nuliMdceI8m/0scggoiqA?= =?us-ascii?Q?vCNQF/jkQg6g+WXyPQNqFNM+JtkVF5xrBfjgPmTAAgsIFTnq7IfWmAwM4pMa?= =?us-ascii?Q?+TdbT+7aX+UEOA6aA2mn4lLtuTZ3OZOrUOVYqbgkfj1tLVZ9TIn8ORxYiwIj?= =?us-ascii?Q?CYOVCBVhlmNaxdKBL5WhbBodNQcKJvENVWHty02MO6FnFI2indQ2PuV9uFnS?= =?us-ascii?Q?QcmY6ABgY9SDl1DLMxdGZXgQlebEsl5TeX/HHsDnXk4bAPpUNmv2zUqqchQn?= =?us-ascii?Q?cksxPG7CnfnydTH0wqgULdkJ8qfAf3a3kF7d+gR2H3RCJskWqQ6axyVY4Cof?= =?us-ascii?Q?9jL9Dy/67cpuOGcd/vO/2Cqk4hO/TAipVt2iSPK0Ylp/4D2K6NjYBTuO3baq?= =?us-ascii?Q?pydK3fr8PR329zGFy3DmxWplkExVIDPekm/n7+osSac/8wODJtW7n+PoP1sm?= =?us-ascii?Q?3/Od5WLzL3pq0ewWZeSxTr5KlD2RmsgMGFs+2uPfEKTPG5w60GPel16LXuK3?= =?us-ascii?Q?BKy+lOZjL7CX7bzSiXjwwoNhlTLz3WDFimGXiSaQYTdZLAGjCArxqUZizhfJ?= =?us-ascii?Q?3vzQtOf0LJCLcpxxNcgCK0q6RjVRETtfHeTHeVNSzPLeyoTrT/odyD+t6ziO?= =?us-ascii?Q?DpDnfow/M+VBV3b4H4cE75P3NT6Yo67/VQ4lrA57qN0u1VXMeCo49Ep/z5r3?= =?us-ascii?Q?cLzfoTup1rzPFV4fPa8TNoO/0A0XVxFU16nHt7j7svwCtUf8QVALSt8qVc4g?= =?us-ascii?Q?HDJ8uPJFsjIbdaE2h3PuN/MUZWLo0tps1z7x3BYlN6jpyhN7NvJtKUWHIwfj?= =?us-ascii?Q?QdiDjaI3SCYqIyqQVIgwlvbWjhsme4HTaZQMEiHqhWELDvk3b3H+j+UoBEL1?= =?us-ascii?Q?WB4lk6D3N0xpu2CgH6EdkZ/atjjPGgCBeD6+KLIa0QFE64YCB+zVzoNWgGHQ?= =?us-ascii?Q?wPD3WsjJcZSXhQWbzqG2cmcJEXkxoA2jOIs+PfwGgnpcSlIH8xXzbbxcn7sX?= =?us-ascii?Q?al/jeco54iXTyljlAlk1/cUkybhzuNY=3D?= X-OriginatorOrg: processmission.com X-MS-Exchange-CrossTenant-Network-Message-Id: cfb11dc5-608a-47f8-afa8-08defb987abf X-MS-Exchange-CrossTenant-AuthSource: KL1PR02MB4977.apcprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Aug 2026 13:15:44.7607 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: e0544bf7-9765-4630-ab69-0b266dc2169c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: ki6sCBtJn11m2Xnm0GtXDg56vjf4xozb/xlv20yfGP4TzswjuVINtZLKkwYfMdc8xAHFEp+j363O9yAs6ItuE5+JH35ogNvxjuM1Wqa4Ftk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYZPR02MB5475 Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists1p.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c405::7; envelope-from=bin.meng@processmission.com; helo=TYDPR03CU002.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @processmission.com) X-ZM-MESSAGEID: 1786886305963158500 Content-Type: text/plain; charset="utf-8" arm_load_kernel() keeps a pointer to the boot info struct for the lifetime of the VM, so the struct logically belongs to the machine rather than to a file scoped static object. Move the boot info into the existing ZynqMachineState. As in the xlnx-zcu102 and raspi machines, the boot info belongs to the machine rather than to a static object: 4d1ac883a7 ("hw/arm: xlnx-zcu102: Move arm_boot_info into XlnxZCU102") 0f15c6e338 ("hw/arm/raspi: Move arm_boot_info structure to RaspiMachineStat= e") Signed-off-by: Bin Meng Reviewed-by: Alistair Francis --- hw/arm/xilinx_zynq.c | 17 ++++++++--------- include/hw/arm/xilinx_zynq.h | 2 ++ 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/hw/arm/xilinx_zynq.c b/hw/arm/xilinx_zynq.c index 6c83439017..f314897540 100644 --- a/hw/arm/xilinx_zynq.c +++ b/hw/arm/xilinx_zynq.c @@ -103,8 +103,6 @@ static void zynq_write_board_setup(ARMCPU *cpu, sizeof(board_setup_blob), BOARD_SETUP_ADDR); } =20 -static struct arm_boot_info zynq_binfo =3D {}; - static void gem_init(uint32_t base, qemu_irq irq) { DeviceState *dev; @@ -268,7 +266,7 @@ static void zynq_init(MachineState *machine) busdev =3D SYS_BUS_DEVICE(dev); sysbus_realize_and_unref(busdev, &error_fatal); sysbus_mmio_map(busdev, 0, MPCORE_PERIPHBASE); - zynq_binfo.gic_cpu_if_addr =3D MPCORE_PERIPHBASE + 0x100; + zynq_machine->bootinfo.gic_cpu_if_addr =3D MPCORE_PERIPHBASE + 0x100; sysbus_create_varargs("l2x0", MPCORE_PERIPHBASE + 0x2000, NULL); for (n =3D 0; n < smp_cpus; n++) { /* See "hw/intc/arm_gic.h" for the IRQ line association */ @@ -444,13 +442,14 @@ static void zynq_init(MachineState *machine) create_unimplemented_device("zynq.qos301_dmac", 0xF8947000, 0x130); create_unimplemented_device("zynq.qos301_iou", 0xF8948000, 0x130); =20 - zynq_binfo.ram_size =3D machine->ram_size; - zynq_binfo.board_id =3D 0xd32; - zynq_binfo.loader_start =3D 0; - zynq_binfo.board_setup_addr =3D BOARD_SETUP_ADDR; - zynq_binfo.write_board_setup =3D zynq_write_board_setup; + zynq_machine->bootinfo.ram_size =3D machine->ram_size; + zynq_machine->bootinfo.board_id =3D 0xd32; + zynq_machine->bootinfo.loader_start =3D 0; + zynq_machine->bootinfo.board_setup_addr =3D BOARD_SETUP_ADDR; + zynq_machine->bootinfo.write_board_setup =3D zynq_write_board_setup; =20 - arm_load_kernel(zynq_machine->cpu[0], machine, &zynq_binfo); + arm_load_kernel(zynq_machine->cpu[0], machine, + &zynq_machine->bootinfo); } =20 static void zynq_machine_class_init(ObjectClass *oc, const void *data) diff --git a/include/hw/arm/xilinx_zynq.h b/include/hw/arm/xilinx_zynq.h index cefb7789ff..669c516ad1 100644 --- a/include/hw/arm/xilinx_zynq.h +++ b/include/hw/arm/xilinx_zynq.h @@ -14,6 +14,7 @@ =20 #include "target/arm/cpu-qom.h" #include "hw/core/qdev-clock.h" +#include "hw/arm/boot.h" =20 #define TYPE_ZYNQ_MACHINE MACHINE_TYPE_NAME("xilinx-zynq-a9") OBJECT_DECLARE_SIMPLE_TYPE(ZynqMachineState, ZYNQ_MACHINE) @@ -25,6 +26,7 @@ struct ZynqMachineState { Clock *ps_clk; ARMCPU *cpu[ZYNQ_MAX_CPUS]; uint8_t boot_mode; + struct arm_boot_info bootinfo; }; =20 #endif /* QEMU_ARM_ZYNQ_H */ --=20 2.53.0