From nobody Sun Apr 12 00:55:16 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=aspeedtech.com); dmarc=pass(p=quarantine dis=none) header.from=aspeedtech.com ARC-Seal: i=2; a=rsa-sha256; t=1771916255; cv=pass; d=zohomail.com; s=zohoarc; b=jKNeV/9rhrA7AcUcGn3bvrnddzOkqbnRyMSK3Vl5ArjdQs+Htknm3AoLrck0YmhSg1K9g17xIzQGLyYA5YgHoHsvHiA3AI2CGOVeRDECJBZiKecRu18umV5Bfw5np+oS48ae7w1I+sqcFyB6iQvuSJ5HX8rM76WCl4FU9ZewIJc= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1771916255; 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=MUThPKLeEk2SduZ96cfpZzQEtc1opoilxpVzXx1Z8ZU=; b=VKtw0P6VFAUc5xrnbTS9XpmMM2Y8chCxZsR/hZJxx/oPmPS4hqi/gMdBM14+i1Ei+zxEcpZl0mDszCaY0be8sQuSEpos9+BQ8/wYfPr3+UeF/3e89WAr3Yb8NMWwNu+L5dvbjBaXlZ/E4qgxRy2ZwSnuGlG82Npua5398Y0k0As= 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=aspeedtech.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1771916255447558.9774886704738; Mon, 23 Feb 2026 22:57:35 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vumLQ-0002Ht-5F; Tue, 24 Feb 2026 01:56:33 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vumLE-0002G9-Cj; Tue, 24 Feb 2026 01:56:21 -0500 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 1vumLB-0005Ll-7J; Tue, 24 Feb 2026 01:56:19 -0500 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com (2603:1096:405:383::19) by KL1PR06MB6109.apcprd06.prod.outlook.com (2603:1096:820:d1::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9632.21; Tue, 24 Feb 2026 06:56:01 +0000 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3]) by TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3%3]) with mapi id 15.20.9632.017; Tue, 24 Feb 2026 06:56:01 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=s+vHfCwyl3ZcmWG3cZezp4yI+a86+aMZNpEVl1+xQ46NHYCEmu/Dco2CGvcJgFADWGc61MWNQJvX5usGSZcGRQbqTN8Df/TL95e4I8mZ1CBNN068XZpdDiKcbAtGfWIW6W8C42uRAlihwBNhVDOpFdL3rT32w1V9OYZ1t2X1HFUCuXvI9M4gZWp5hO/1lNyYVKrkT87Rzntg60fOkjkiPEQAo/puORZhFcHkRWoPuDOie5P4QrQ1e9QxSBE9QzqNOgHfd2rSsXz7L4hSO9VZGpqJ7W/OYHc16KZbhDV9o1qxSnlJh4lS1etu035N68eje8wGhS813in3mRx8zNB/Ig== 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=MUThPKLeEk2SduZ96cfpZzQEtc1opoilxpVzXx1Z8ZU=; b=rPefxHbbd955EFkHCbSbeBctWlEV/jycD16w8G2A2AZwe/SMhh2ld8ulswOgBigUlDtB6DTDM1Z6WqibnYF0kerryqz7d8UG0iJou8ECgKER2WJRboJTxe8MGoxVlZbyCSx89Bfp6k4SpwOitTZIs6SXWrlXtdank84TMN1JLyVsx83A/4qY4P3R7+CEdNlOg7bS9zo5G0tzMacJMa0hOZ5fxmxOItnUXoB8QIbQDOxu6Aij1UqYad/Eq6ExLwx+v6wLORewXK88gpG4nviC1daXh9LC2O80Z9BGuWFequUy0k39pEM/Tc3rmQvM4j53RqP+jwoRRUe7gmBW3KixzQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=aspeedtech.com; dmarc=pass action=none header.from=aspeedtech.com; dkim=pass header.d=aspeedtech.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aspeedtech.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=MUThPKLeEk2SduZ96cfpZzQEtc1opoilxpVzXx1Z8ZU=; b=Q3eIP27FgZo8UtFTs2/H/ermzdvFH7h0x94u5D8+8FU3SgVJhKXvwwL2VxEaBjmR8qh9cm2/EtpmBZa4LvrZB11JdeKIgre4QkA8XQu7tR1O67eqTDVNkps+h/ZF2+ScNh1J52R+TfRWUB7F339bIHr8+DG0h7wQTCq0QdekBOlEa6kZdSn6SH6AT+BPu0j3J8JWto/qkeDeBCPhARYvGW5UEsl/5/xLgTJCroWUalBvhqY9eOZi+uDl2HVFMk3RvXiULjT+ZUdErcPiKH837vUKlQltdpco74Vl5yWyDnyYpQIWyNqh/6CUZ/zJ0V24SiwP/BV/DZO/YcZkUrMHZA== From: Jamin Lin To: =?iso-8859-1?Q?C=E9dric_Le_Goater?= , Peter Maydell , Steven Lee , Troy Lee , Andrew Jeffery , Joel Stanley , Pierrick Bouvier , Alistair Francis , Kevin Wolf , Hanna Reitz , "open list:ASPEED BMCs" , "open list:All patches CC here" , "open list:Block layer core" CC: Jamin Lin , Troy Lee , Kane Chen Subject: [PATCH v3 01/15] hw/arm/ast27x0: Start SSP in powered-off state to match hardware behavior Thread-Topic: [PATCH v3 01/15] hw/arm/ast27x0: Start SSP in powered-off state to match hardware behavior Thread-Index: AQHcpVqh2WqhyrWo80yQ1R5bJHHuZw== Date: Tue, 24 Feb 2026 06:55:59 +0000 Message-ID: <20260224065556.3847942-2-jamin_lin@aspeedtech.com> References: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> In-Reply-To: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> Accept-Language: zh-TW, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=aspeedtech.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYPPR06MB8206:EE_|KL1PR06MB6109:EE_ x-ms-office365-filtering-correlation-id: 16df7865-cac8-4074-2ecc-08de7371c592 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|1800799024|366016|7416014|376014|921020|38070700021; x-microsoft-antispam-message-info: =?iso-8859-1?Q?oASCcnEN1ask1WUrMpuLh0antzarZVmq2P/YhRbmGlqXOCh+vmzxz5gtwH?= =?iso-8859-1?Q?C1LByH3YQMqz4W9cFxJUbKSrQhUqsi4xcpq3TsPrX1VPzo/AHXQpxAL9XA?= =?iso-8859-1?Q?VuMt8erJjse6cPggqcGfD8wfT2lvDYLa7gD4Qa9MSNL0bE9KaFhu0BFgId?= =?iso-8859-1?Q?Ni270C77DSlzAlaSeUke8JJDz9gAg4bq8EnmYjpUMshkc+V5ZcjE5BI+sn?= =?iso-8859-1?Q?faog5nZ1X5MxNrIIXpHU+q62Av2neLlh2jH3l88okSVCdsA8KUW6eQ8t7u?= =?iso-8859-1?Q?bYkq3DRJ0d7ZggacYdu0wF9XLiYrSJs8KhMmIuO7CiN1x8EIIAoLbOmbnO?= =?iso-8859-1?Q?dewczmZcHx6oa/79sVjp8d7G7QPeeGhuJlX+CkoV1FchgLpp2U4oy6I8T1?= =?iso-8859-1?Q?GIMHn+6+81fELAti/q3sfbu/rCIp4pmEkN/LALCE/SAepfJcX3WDAnbtb0?= =?iso-8859-1?Q?au+7s3sRwHzFLkoL6YhRF8YVxI5JQTN7yU65S2bcj0LTyXiUNTjT8MmBnc?= =?iso-8859-1?Q?glbEpfNGHdCavgSoIrfoZHrw9nzFENRkmk7kEvJyekAWt658i3xS+ylNzI?= =?iso-8859-1?Q?psvtKsgL5WIS6bjEyXVxXWdDCJh4JGNKX3aJLlDyU0Bn3wnwLJypmvq4Ci?= =?iso-8859-1?Q?UfCP4/dkF4YnJHg6bO8A4YRW8leKRCfEOtr6XN+jdVsyuDpB9OUM4glXWK?= =?iso-8859-1?Q?hbogCHE12DDV+7EQbWK0s/cIHjt27sDJAGow1soDFj4oy40bFsAMPZYs/z?= =?iso-8859-1?Q?uS2EPZPOuCu4ocnOIhrQ4mhjfKAz3az505Stl+65v2suh8KyHL5wsxq4n9?= =?iso-8859-1?Q?hg6DabqVuwidzNK5KgDOKufSUZi4NS9B3I+JMe63uNFiF8vvkrWYzF65Pc?= =?iso-8859-1?Q?L/UN+Z+rfhjVvgL5hz4nHenHaAHjwCvlBxrPlHolezficz3sG9cE5IdugY?= =?iso-8859-1?Q?/eoRZqNdaJhTEs8tKAIxpY2oVbciFbavxZHr7+Ly52DMGRFaQO9Z5U2jZ9?= =?iso-8859-1?Q?Jk0LnE2OUYCXsFr2vITcNvXnt3ujOZ+i088CQbE+xkXhFV4AtADwPyfj3t?= =?iso-8859-1?Q?gLJF++tybzdYHH68DzwnG6wQFpg4HlcX9ekH2C+INApPVKyFBovWn3HhTJ?= =?iso-8859-1?Q?4yI7juojLyiCkMNdh9CzDY5UxVWoB2XdcCuAL2uxhcLuhoJ/LoXKZyJ24A?= =?iso-8859-1?Q?6s7CgLvJZO4iUNNTE/79iLnplBMc1c3wHjmcfPMB9cPyTsj2R9s5PaG56K?= =?iso-8859-1?Q?cg6ZuqDTB1EqG5peAg8HlXQbe8SKCtRDGZmu+7DdrtbTdJu+R80D9gWfj2?= =?iso-8859-1?Q?o5oEdCTMk4XCQ+azpriUoCiw8XNGbyNcWp/QpIMoJvvfKvlFGHu13xU7Bm?= =?iso-8859-1?Q?+zlPgYXBB4mlKDjJrZhwZ6lpkMxXK3uHDFkBW7Qry/n+zGeuDGYI1lrlhH?= =?iso-8859-1?Q?VM3v4uTOG++FOQnyWcXRrC+e2qNMK4NECQ5PgOJXE8pf54QuAmS8hkgcjy?= =?iso-8859-1?Q?Q0fvYluNG3FH9L94qkTGiu6EbEs5SE7oAJ2C03UFHcGLiE5jq/o8tWHplt?= =?iso-8859-1?Q?npYOmADJcR77xA8nXGYarBHjMW1zpW1+cINzvBF6NAZ6jFEAn0spgF6XTQ?= =?iso-8859-1?Q?lFHoKB9DQBC10MTVlqHpdpB9DGrCXfZaJp7qWiJ/4AH4nRfqWh/3TY6T1d?= =?iso-8859-1?Q?OlwHArnvw4tcU3AzH2ZSSsBKZAkv961JyJYwG0mk?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TYPPR06MB8206.apcprd06.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(366016)(7416014)(376014)(921020)(38070700021); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?NNoJvr3OHGvpz3iLPH0mmZNKxYTr6AQHJSjbeIk8pJu6juvqRtC9zxT6EB?= =?iso-8859-1?Q?prI7gOXliYkWSiysidvYTdR0JiUyUGFgu2sFvRhODPICbDj/wfFbLPNnZG?= =?iso-8859-1?Q?/Q3ldIZ4/TpACVqrNOIAax6MPLYgfwB1f2okIKHzFTOOkFSK0WDjnZ65zw?= =?iso-8859-1?Q?4txvcQq6NCWMCOqeZwF1WvBDoYQo1dbP37VX0OXcCE8zxlIazOi6ukAJLZ?= =?iso-8859-1?Q?80XNM5BRQYlQJwxMPjLJug10hiUMmIJDInZmJBHSzuVBFGLAn734x8KfjT?= =?iso-8859-1?Q?cPHK+MiMaAWyXaXdXUe7USuYZl29h1wcDVji5E2PdQ2SbhRkm9Cmyy+m8Q?= =?iso-8859-1?Q?YfbD49Z4GJlEJZU2rHIglNq6iYtPCCc53s1Djf/rH41MZGTn5FlIabNaAn?= =?iso-8859-1?Q?+z2Pq/EV9dbg+F9NbCMmM8mapp4cFC1uzqgNIXAT0isc0+jqvV62csWW+0?= =?iso-8859-1?Q?pty1hm3qleSyz8x5xbVMsr3pZclmFlxZKtXJnb9RZYWXd25oZqKvpmZxC0?= =?iso-8859-1?Q?WFHXqRWaB2wp7Ln4dQLdIRddsOgXArNFWZL4WhFcDKclF90dNJZOPBroBY?= =?iso-8859-1?Q?QiFOYydedeUu10wGcoHq3NG3HlImYS87ue0D4DC6aYp400+sHMQs1IMPsv?= =?iso-8859-1?Q?VEjQ3camcSKzbQ6Um3uNdAHvpwSQ1xWHYJKI4vzOGBUd2oQpqtiuI+KlMc?= =?iso-8859-1?Q?78p4Bkt48P69O7QC1HooD0MI1Hw86fShVlcPA4vDuAoKjoMgI40p27PGd4?= =?iso-8859-1?Q?qw1biC4Eqm/uuXw4OxkL8RGLTWAMkSXRyXaT3+Nd1h5UOUNy7iC6ScF5g3?= =?iso-8859-1?Q?YdzgRjjsVXiI1emyarqrugIqX/snh1X4lajeZrfyZeHg8Gc4NmyOX+5F8+?= =?iso-8859-1?Q?F2oaes63CqqGZCrktvaP3aQ2foWqfrVS77FElYIMCo0SCehi9UqVZXQmDB?= =?iso-8859-1?Q?1UyhD03JZKs+p00qsBDVTK5fntP25VLlu7ZXqzzNmYu2ZVDbNJTN7KFM2w?= =?iso-8859-1?Q?O7K39PVIYXNR+VFHfIMgwrwX8nBXsE8ENdvqFmm74tcQPdD8MYo4jV73oo?= =?iso-8859-1?Q?uee4KYEsXur2i38a0knDa5atqbq4yvpf3Tg4qIBrWvgf9lporsHYqkSWF9?= =?iso-8859-1?Q?r11Oy+rj12oIX23UVU6THAG6fyTkIJo/IFNxGWAqWT+bCXtsKuha6bDhMc?= =?iso-8859-1?Q?buwPDwz74q2iVCJLr+b5lxsJH+VDHGJcx30pTYs/wH4YRYZsXNtZhLK/T1?= =?iso-8859-1?Q?oUo6Fs6ZMEf0ihvvbfaeDjzS72hcHhvrphG9ufHtPCGV0JFCK9dhnSA7mN?= =?iso-8859-1?Q?5iKzGPz2H2ok+EJJtjApsrmCHmcdRULOqYIj7FI83z06olQU/YCIE3vYrC?= =?iso-8859-1?Q?DgGCFFICFh9HcGftEH+36jGKELFXkMWk6qit4fBVOAAlUGJDVdgDZNvKTs?= =?iso-8859-1?Q?nmsG9UZUvv3qHEFuOc/AZyZnLOiqTSBnaFoOOzjbHv7P2z2yXfp9AYT5By?= =?iso-8859-1?Q?iX341XFj7Bd0q7I7DMujQTR2nkusAz7/Qx/EzJjWYmcy5SXVdyfL4lXb/C?= =?iso-8859-1?Q?FWch9CjYlzPZ/ynxCkXxP/6UeCJSpN9myKvgKW2gLZ+S98vEdjCm46/ytE?= =?iso-8859-1?Q?IGdSjTSMkDfjjncd1i08MFoYk4Kj50M3fvZBf5EOR8E3LapnJzHC0WGK5T?= =?iso-8859-1?Q?uXn2nI59KOl2H681nUrtNP3GXXkZ7tptt9NJDfbEg+RO0MuB5oeRkOmtsP?= =?iso-8859-1?Q?RaG4PeujGCcYikCjZBSusYPqv0q4XiymI/6Ihmmc+sgXx03TVI+r4UNagP?= =?iso-8859-1?Q?55tWo4C6Jw=3D=3D?= Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: aspeedtech.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYPPR06MB8206.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 16df7865-cac8-4074-2ecc-08de7371c592 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Feb 2026 06:55:59.0992 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43d4aa98-e35b-4575-8939-080e90d5a249 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: HxPPHvtMURt0+QU4pTxHRjB0IpCoXwiXpWRbHi5gDKX5EJM6pWYNkQScG5AxsCm6V9ICzOCGJn+nwXQCoOnKvdqlLRbjlmKtZ2hCV6YPJC0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KL1PR06MB6109 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=lists.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c40f::6; envelope-from=jamin_lin@aspeedtech.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 @aspeedtech.com) X-ZM-MESSAGEID: 1771916257983158500 Content-Type: text/plain; charset="utf-8" In the previous design, both the PSP and SSP were started together during SoC initialization. However, on real hardware, the SSP begins in a powered-= off state. The typical boot sequence involves the PSP powering up first, loading the SSP firmware binary into shared memory via DRAM remap, and then releasi= ng the SSP reset and enabling it through SCU control registers. To more accurately model this behavior in QEMU, this commit sets the "start-powered-off" property for the SSP's ARMv7M core. This change ensures the SSP remains off until explicitly enabled via the SCU, simulating the real-world flow where the PSP controls SSP boot through SCU interaction. Signed-off-by: Jamin Lin --- hw/arm/aspeed_ast27x0-ssp.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/hw/arm/aspeed_ast27x0-ssp.c b/hw/arm/aspeed_ast27x0-ssp.c index 9b12ba6743..437fff3311 100644 --- a/hw/arm/aspeed_ast27x0-ssp.c +++ b/hw/arm/aspeed_ast27x0-ssp.c @@ -165,6 +165,13 @@ static void aspeed_soc_ast27x0ssp_realize(DeviceState = *dev_soc, Error **errp) qdev_connect_clock_in(armv7m, "cpuclk", s->sysclk); object_property_set_link(OBJECT(&a->armv7m), "memory", OBJECT(s->memory), &error_abort); + /* + * The SSP starts in a powered-down state and can be powered up + * by setting the SSP Control Register through the SCU + * (System Control Unit) + */ + object_property_set_bool(OBJECT(&a->armv7m), "start-powered-off", true, + &error_abort); sysbus_realize(SYS_BUS_DEVICE(&a->armv7m), &error_abort); =20 /* SDRAM */ --=20 2.43.0 From nobody Sun Apr 12 00:55:16 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=aspeedtech.com); dmarc=pass(p=quarantine dis=none) header.from=aspeedtech.com ARC-Seal: i=2; a=rsa-sha256; t=1771916320; cv=pass; d=zohomail.com; s=zohoarc; b=JflmNZbYzwPxuk4EhOyKn96UmWDn/T3fbxFWBq2JQAzpoy1X7YJAgooPmv/dkv8bEneh3smhYVpOHVyQP9KLsXh43CJ6lHEhzRHy+Tlk8eo/5TLQIxBtbxsVwWMlllFskspJIAlJ3uc0OqbsjXIZrb+v9yZybn/Z7EnGgNOeIj4= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1771916320; 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=XqmJ5BhUNtDJOp4SSHbwMcipFI+5P65C4O9OgFToG9I=; b=EBVLaxTdLGW29PAwiBmm9qMxv/if/rRPcfrSs/YUvLLNhJjnTZFL96TFZJ+Sh/54BPxPM8d/JxPCuG2uMwHMFuw8h9UzFBJW/PsO8kiEnL+3ysIYVYK84JlnwBMyioE3Ny6qPIxyorfse5E1gDn9UrjO4J/HmOijahTVI0/a4n0= 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=aspeedtech.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1771916320401814.2481341472422; Mon, 23 Feb 2026 22:58:40 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vumLO-0002HN-3Q; Tue, 24 Feb 2026 01:56:30 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vumLE-0002G8-Cb; Tue, 24 Feb 2026 01:56:21 -0500 Received: from mail-japaneastazlp170120005.outbound.protection.outlook.com ([2a01:111:f403:c405::5] helo=TYPPR03CU001.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 1vumLB-0005Lc-79; Tue, 24 Feb 2026 01:56:19 -0500 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com (2603:1096:405:383::19) by KL1PR06MB6109.apcprd06.prod.outlook.com (2603:1096:820:d1::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9632.21; Tue, 24 Feb 2026 06:56:02 +0000 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3]) by TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3%3]) with mapi id 15.20.9632.017; Tue, 24 Feb 2026 06:56:02 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=wAEHaDI8kpm4/HGd+RDHZ7XyW9XM6htT3kwGdOfwBcpWlnQoTxng/8xiidwzAN4nc9tRINvGTCm6N+DSYLhJP1Tw/xoImHJ5ni83TjYP07eK2dS7c91iWE+l7liYPqvjoJXvvRj15hmmVABPChMOK455J+Bm2u9HLW/a19th0MhuImLDdC3xikX4V8aZMIyr50qLmgxfgW/potAoiv3MfxyxeNXCQQmuINODZ6pjuEaejiblfPwBwG+YrpF6fZLInD2q0aar5pp4Slbcmw33N8LGKAvTteK2+X9QF5rM3D8TUbyZf7H7gHsT9s1z22Bf70ViVjdwHtDr4SicRMONCw== 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=XqmJ5BhUNtDJOp4SSHbwMcipFI+5P65C4O9OgFToG9I=; b=R0qxSFFLF0nMY9YqnB3Sqiy6D2uxwXaPN7CIJHBp/d5jMCEgtgc/YTel9KJ+KuGbbLieoO2TbqNxZz6f6B7ajrr6MAseCwqnRO1CzQz+oueliPfUN8aC51njzihJnV2MD7yY7xa3/m8VUPk/AW1O6+hYRWUHIROzqTdoVIPWOnSaF5Ctu51Ct8RezaOlQSYn7RH+hX+IV0AYybuUe3ZW7MrdUHCTCpC6s7nspzSu7q55N5c916kDAdUQUs823zcFMm6REnCb6MrPC5Yps0mGRRAfJxISvHL/ImVDt0boK9Ixm8qoMrdSMQM8YFGXxLhT6Cso83h1vpuwcJq5t+AOYQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=aspeedtech.com; dmarc=pass action=none header.from=aspeedtech.com; dkim=pass header.d=aspeedtech.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aspeedtech.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=XqmJ5BhUNtDJOp4SSHbwMcipFI+5P65C4O9OgFToG9I=; b=maGvMXuI3p9XHrW39g2jGHdmDSGSGTuQYX3ic50wdSGqINxGMpSTo9EvqwcavWDSIJjY48WRacRb5EqKd44RSq/APoYFhEozBf0hGj+9FiKn3UEMEEmkotODePfO2zMmlOgcz5gM/uT3lZ7hw+ixyoMwi7Gw0YhR6HHL7WmAunWde5UMMC60Kih99TCVDhlBA3t7SoFrXOuFWBzGiVb/e2H/J1Jqe611HuZVlgP8VsHEgqcYtnBRPvgwiDWPiB5/fkUj94i4BWihtGwDytLXOB6n2jwg0+g6hoELi0qko/RDL70yYibEKeCs1LdJet6YOv7TLweebWpmLO+OUCv2CA== From: Jamin Lin To: =?iso-8859-1?Q?C=E9dric_Le_Goater?= , Peter Maydell , Steven Lee , Troy Lee , Andrew Jeffery , Joel Stanley , Pierrick Bouvier , Alistair Francis , Kevin Wolf , Hanna Reitz , "open list:ASPEED BMCs" , "open list:All patches CC here" , "open list:Block layer core" CC: Jamin Lin , Troy Lee , Kane Chen Subject: [PATCH v3 02/15] hw/arm/ast27x0: Start TSP in powered-off state to match hardware behavior Thread-Topic: [PATCH v3 02/15] hw/arm/ast27x0: Start TSP in powered-off state to match hardware behavior Thread-Index: AQHcpVqiVLYSkdVNSkSnId75G/vUww== Date: Tue, 24 Feb 2026 06:56:00 +0000 Message-ID: <20260224065556.3847942-3-jamin_lin@aspeedtech.com> References: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> In-Reply-To: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> Accept-Language: zh-TW, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=aspeedtech.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYPPR06MB8206:EE_|KL1PR06MB6109:EE_ x-ms-office365-filtering-correlation-id: b13b72ba-b58c-40d1-f741-08de7371c617 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|1800799024|366016|7416014|376014|921020|38070700021; x-microsoft-antispam-message-info: =?iso-8859-1?Q?eWbafFJTWAOFNG6sry1rQwrtjJqZdxVgXOUzjYbYR4js6sCDnOptcr8/54?= =?iso-8859-1?Q?4NlPXhjytWp5RqAHkkli8j+FcC1zLJBSkwlr/D+5/rvB2FfW7it0ZpFFVQ?= =?iso-8859-1?Q?HKEzFIXnWm1nnEwExIswWMnsvIFk4C9g6vKpt2L1xqNaP1rJjamVX++TVC?= =?iso-8859-1?Q?wbkMnTUgzNijtHZjIOfTksnVqfbw6PsuLpM7xAdbx7CVKZKvC4a60gw6/G?= =?iso-8859-1?Q?WJuPRuTIxKxwvrPML9V/YiVMVbW/eFEnG/Uktc/aePzrB1S0TEYSQyTNGT?= =?iso-8859-1?Q?7a5qSI4dIVyyhopkACYDrDTDuEtA6wz93v7ndaa1MEOFC1vnTaXWoyMkTm?= =?iso-8859-1?Q?oO3U3+Nhub6SX7nBuRQa3Wfb7sfpsHg7gk7NMFoD1BUxRe1b1rUt61jM8L?= =?iso-8859-1?Q?j5qIi49BdDHD6qrgIpI3yj7ORl8J+DFE4HNXMz67wklOoDpRT3cRAOdOM4?= =?iso-8859-1?Q?jAX3dRjDZkR9b13T5QQ63YbkeDOlLauI1rZkiYWlXmkCpNpkRy7nUIcY8L?= =?iso-8859-1?Q?undMewijPbEtupyB511huQspE8jN+0E78zqO320FG4lA7pDbbzIAFigf+c?= =?iso-8859-1?Q?jbRp9TUcVDlVHfA0O2PgeV9G7P/grc1CHZAw7jn5XtsGMaTrQcYTlvRcM6?= =?iso-8859-1?Q?INXmzjN2+W1zz26vVXYOCaCwa7JfGZlmUrR6Nlh+a3Q9tiASRXGI/+mUcK?= =?iso-8859-1?Q?cOeyxN4x3V3fuxfY1lpkXs98m41b4sLxRbM0R+EsiwuGZEI7eGRUMNkbTW?= =?iso-8859-1?Q?w09DGgGjS/Qs11ASzHIT8zY7LPo2E+YMPB1ItkKoFrDLjXakHeIM5T3GF2?= =?iso-8859-1?Q?3GrUz97yPHd2JgMbCK7YnPezbLhaWEA3lehb6rFp6ep+vHuJoev+7QvQZg?= =?iso-8859-1?Q?LPpr6w82woRAGIDBXpF23FmeLeizUFiP4KZQBgfFiHy9X9M9Mf0cgt3HtR?= =?iso-8859-1?Q?3CA4QO8kcNPlSRxrWFRFI0I0cXn8+IgoBcR4REX57vFILlXmZU9hubQPQ3?= =?iso-8859-1?Q?tGg7MFEziBgGYzxP5ri71761zXAAtBHeVB6qnqgaTAVjKo/SqYeJdkZDGI?= =?iso-8859-1?Q?wN7nPkShTGK6hrRQbVVim4ANEvFsIZYr7tIb1YQJGws5tP2uVbdB9eMfq2?= =?iso-8859-1?Q?YXmBMg6wcul5X4W4hihojPAAbzLGlHbFqzLz74vnPVGwYDrizXxB0+sZPh?= =?iso-8859-1?Q?/Qxu66VGscyr4yZTgZpF9jgy8ydx5Ogu/OXGW72a0mjvDMTSmZ2OZAPt9u?= =?iso-8859-1?Q?M1ODgk/qJeUhL782Q/+lJ7GqWevLJPLx4B7ccl7do3e/KdIo0XUwye/Nx4?= =?iso-8859-1?Q?askLFhWkqr7a3EzcmrUlMQ6zuB44CY44rjCKb8ffbtiZRaInsiWhiNPn1/?= =?iso-8859-1?Q?vEf8AolbXDq9F5efyTRoSJF0Mrz/DGnwnaUehTVu4el5okSIlTY6MXDLtk?= =?iso-8859-1?Q?Y4Jj6qjnlvTIaP0FaXBospYCLf1Ifzpe6wglrQsSDNn0XS+3//QWleC6XO?= =?iso-8859-1?Q?9B0gVRsdrOUQydMcDsivgZ+tcWft8A40NM2EGi5G9mW+p/X0XoR8m/xMLr?= =?iso-8859-1?Q?DNfIfOy/LUq855lVpGKcbvnR99dygWlTrS+mUkdGJ9OHtFQxFxclZ8mQho?= =?iso-8859-1?Q?jiZ2mWiTlFKOezCjfwNw3uGAb05+LJDnK/NtkqB2udKVP0ZUwNdvWT89Y7?= =?iso-8859-1?Q?f+cV6phK/stROyVfx//MEz2BAvwidF07jDJcq70J?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TYPPR06MB8206.apcprd06.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(366016)(7416014)(376014)(921020)(38070700021); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?ju1XA3S044Gn+uv+1ExhkNceKhSJ2hCBA1eHwp4CwZ0xD6abmsVjmGAv6O?= =?iso-8859-1?Q?S8u6iS2hwuDKoiak78IMSczOVWTl68ASlkFMyxXeJZGE0XLNG4gb64cKOo?= =?iso-8859-1?Q?8/hDsd4dQhbsWIRfqfIOySF9Bvy3G2eNNFAuIp8x2Wq/Nfs+g0GtvmqFUb?= =?iso-8859-1?Q?3D575ei/d56pLv2s81z8Idd27Um7m6t4AyrMjRvPPE2GML8EI2h6x1+hqt?= =?iso-8859-1?Q?Z3LEtRRXwzpTP0VazvKR+dE2TRnQFv8e6AvyAOC1IPAQEfeotM7eCGsGSQ?= =?iso-8859-1?Q?TiAqWyuWO3i/a69M6lWiyZ+6GO2NXdiQRfpuQ+L50bTc+Gxd5FDW72P3G2?= =?iso-8859-1?Q?W0C8cdFnQfU+BJ0ntCFKeWCswd8UkZ9eFTeki6nduX2ZIocCS2skadxXWu?= =?iso-8859-1?Q?HLiHqmGw+EsCndhx7lyhklK+ZNUzoVoi74+TDTI//9vbU7XuR3353UrQ71?= =?iso-8859-1?Q?IPAykpc+DIWcWEo+QuMUgR9DVGEB49YRBLIuCiJ/bTiNi8xTv+U6/kQnoW?= =?iso-8859-1?Q?o9sy8e2zIY7VfMZ2+NajUoWahS9ZlcmPG6ztakgid+2LGEJ5oht7UrKCns?= =?iso-8859-1?Q?ZvRQRp8e2+AUEjps/nm6edqzQixDrhs875OKZp6NFNUkBsvvt4zlGltwDH?= =?iso-8859-1?Q?qUf70AFIeso7yUBHKtpztPVT24FcxnCZv9eF0W1s2cPyIvXIz3d5V1OKbS?= =?iso-8859-1?Q?F8kAZa6bxJZLbHlMeXqY+zN0MHDDXIgskDhhcD5ACEv2bJ9JoHgn4oyEjn?= =?iso-8859-1?Q?Knhupoo+w/Pv5Hdr7KajZko13TkziDPmT+Ql6QPL1RPBXk84GAwQ6KBTEw?= =?iso-8859-1?Q?Dvg1H86uKmz7Q1MkNX4d2rTfiobYtdV3rUyI5BJlGSYIibVDbvReLE6XEM?= =?iso-8859-1?Q?8Vkb9sQVMxY90Wkq+1+eZGkpwlUy6JJWN1CoUb6gFwFALMJkk/g4lbW181?= =?iso-8859-1?Q?LDFSWZci+bLb97tVKnUTIb/Je7MmyRenmnu9mqFXtSQlUC5NmdLYHvU+DE?= =?iso-8859-1?Q?drQ7QJpjyB/zlSZesJ3JcJ1flbVE1za2PVEdGxlAdo3WZMvUg/TS9hIOOv?= =?iso-8859-1?Q?kJR+RZ9IMtqPjj7/HA7FDDP3WyCx7HQ/TqcFYixGlwdN1myeEFGTHCXPLz?= =?iso-8859-1?Q?AyQu17xxU4HZd3WDWderSwGMzytmaMnBHfdj56UlLWmAS9yHJrzscyeTui?= =?iso-8859-1?Q?EZsR9G2SNT6v6ts6Ww3PUluR0mUP3ecz+RZpbTuiYiQjaRNMqb3UKAvUBe?= =?iso-8859-1?Q?1ZMYJ71O9cs6OqZfX4iEgkyo1L9JHKzGhDSc8UMCcMMuWXYr0HRE7r4k4X?= =?iso-8859-1?Q?6OGHVxZeZ/0irtWWg8EH83t0Pi1Z6q+10E7f0KH36fCxG0SGQ/xYI8Kkdb?= =?iso-8859-1?Q?2Usk6SSHP4YFAwJsNjeoAW0/+A3JApbLLpMbu/wW2UnK69FXxjeDqZe0be?= =?iso-8859-1?Q?UUyqJopzxN3qK2L2xwzAreECabCWlKtvko0olG3nmz1tk0JBvbLj2+W3WP?= =?iso-8859-1?Q?0lbxqFiV2ZO/qEUpdKJq6kYCg9mZ+KKnbuf/OU11oYlYuLVV8w6UEKdRp/?= =?iso-8859-1?Q?PxdJFQlkeDxgxFVpACGytt38fBuj4UnKNWWdSwSr3e/Qa8SnR4SGecWiK7?= =?iso-8859-1?Q?RGn0DSSYzhxEsGidzUGIN9aufF2IHdLkX7DINZXhN6lcXv6nsKyGDRYX8F?= =?iso-8859-1?Q?IGSIqBq52rdv8KZLFY4dFMh8PTA9zIej0SkuFUV4O1PUu9E+7Vahtqrbw1?= =?iso-8859-1?Q?3z0c3k1cKkQiTf+NN/go60Zty6k7Q3/YU87AsniWsmfbLMgQFsrRAp0pgM?= =?iso-8859-1?Q?2PTfVN8cNw=3D=3D?= Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: aspeedtech.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYPPR06MB8206.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: b13b72ba-b58c-40d1-f741-08de7371c617 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Feb 2026 06:56:00.2700 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43d4aa98-e35b-4575-8939-080e90d5a249 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: TRtCmRYMzYMlxk11K8HM1jr0xAu79+ARRWY3uYv5ir0kve60dQqZJUFDePlFTY6IWRTNRSiEH01PXveMRp1H7Be++SaRbPbAp4QPc5u2SkI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KL1PR06MB6109 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=lists.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c405::5; envelope-from=jamin_lin@aspeedtech.com; helo=TYPPR03CU001.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 @aspeedtech.com) X-ZM-MESSAGEID: 1771916320820158500 Content-Type: text/plain; charset="utf-8" In the previous design, both the PSP and TSP were started together during SoC initialization. However, on real hardware, the TSP begins in a powered-= off state. The typical boot sequence involves the PSP powering up first, loading the TSP firmware binary into shared memory via DRAM remap, and then releasi= ng the TSP reset and enabling it through SCU control registers. To more accurately model this behavior in QEMU, this commit sets the "start-powered-off" property for the TSP's ARMv7M core. This change ensures the TSP remains off until explicitly enabled via the SCU, simulating the real-world flow where the PSP controls TSP boot through SCU interaction. Signed-off-by: Jamin Lin --- hw/arm/aspeed_ast27x0-tsp.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/hw/arm/aspeed_ast27x0-tsp.c b/hw/arm/aspeed_ast27x0-tsp.c index e39d1dc171..b99b18bc6e 100644 --- a/hw/arm/aspeed_ast27x0-tsp.c +++ b/hw/arm/aspeed_ast27x0-tsp.c @@ -165,6 +165,13 @@ static void aspeed_soc_ast27x0tsp_realize(DeviceState = *dev_soc, Error **errp) qdev_connect_clock_in(armv7m, "cpuclk", s->sysclk); object_property_set_link(OBJECT(&a->armv7m), "memory", OBJECT(s->memory), &error_abort); + /* + * The TSP starts in a powered-down state and can be powered up + * by setting the TSP Control Register through the SCU + * (System Control Unit) + */ + object_property_set_bool(OBJECT(&a->armv7m), "start-powered-off", true, + &error_abort); sysbus_realize(SYS_BUS_DEVICE(&a->armv7m), &error_abort); =20 /* SDRAM */ --=20 2.43.0 From nobody Sun Apr 12 00:55:16 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=aspeedtech.com); dmarc=pass(p=quarantine dis=none) header.from=aspeedtech.com ARC-Seal: i=2; a=rsa-sha256; t=1771916389; cv=pass; d=zohomail.com; s=zohoarc; b=fhW4yWe9+GzuhGs/OWwPLLwuXhjnfEMYUiskQrb36m3f41ail3VbiMCdtBvlriXDFL6lgomFcfeT2qZVEFU9irb+H8yJIZixS6jTXtko46FFtDHgNA3ryr87UjxOPfePa+k8ZVXO4d7NES4v1DhhRtR5PqPsnz0LfIx5IbmGBwc= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1771916389; 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=YiXK2jDGUMyj7USYWr3IJDc8SbJLmQJDnVS1bMUg0kw=; b=b2Ai9XZKS34Of4hwS75v8e2DQKwO6O/b/Fk1ktEWoRDBqIvSuXsbjfwR+31BxaI9yvNseEp+Ubze3026fjkm2lCBLc757kkCPGEwyAFO8iBr9PnuT9K7NkVxpka/E/Kpz3Vg/VYgyhTobOm8QHg0frv7Dex8mBU1eR748QKK/Dw= 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=aspeedtech.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1771916389116576.0002889167122; Mon, 23 Feb 2026 22:59:49 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vumLX-0002MY-8r; Tue, 24 Feb 2026 01:56:39 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vumLK-0002Go-8O; Tue, 24 Feb 2026 01:56:28 -0500 Received: from mail-japaneastazlp170120005.outbound.protection.outlook.com ([2a01:111:f403:c405::5] helo=TYPPR03CU001.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 1vumLF-0005Lc-Ig; Tue, 24 Feb 2026 01:56:24 -0500 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com (2603:1096:405:383::19) by KL1PR06MB6109.apcprd06.prod.outlook.com (2603:1096:820:d1::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9632.21; Tue, 24 Feb 2026 06:56:03 +0000 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3]) by TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3%3]) with mapi id 15.20.9632.017; Tue, 24 Feb 2026 06:56:03 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=tqhrffxjiXwT+TdQCcS6rA3RZr+slHP21/SFYHroumnEAcm2HiimdXJnNjDUVP9SXTO+WWqacnTPYP5TkO5srDQu523zpm1Ep7fnjQBxTk4Bkcurhx6pKH68UoMM/akt6gf4Df0QcS5z9PSRSnvcrfRhhEK8ayk4Oj3ua7L23ceRp05J2/Rcub1k4AUBc/iicK5+of8gFMzwWqVpMElyXDNaWpG5WdKr+UEBvtGOuztZqYz40UX/xra+pyZylOV8mysYQAOR2Ni6DGobzWR5kOy2g8SFxJom4uT/CzvC+SKbSsm8e8ldJCZDQe+KqGjvrYWlEkwNBzwAM9rugxmY4w== 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=YiXK2jDGUMyj7USYWr3IJDc8SbJLmQJDnVS1bMUg0kw=; b=gGmeGvuvTAdbO6OXWTizMdZFtEpPKkMVr5d/rcA4DrTLjmGilkPDkFpfCfZOLiLrptz9Ru877IOSuXiJugb1I61PBF0fIgORgQIpoQeMypD81IJsvatNFQgFrP3ietdxc0VIGLuQ8axrQbI51xNKTMI0tR93N72NJWAvpGmt5zharhKMdpesg4xhTVBqlqiM9FK9B8e2K9kiGBWyBELpuQo/W59kGaVth4U+o97t0YUj+BVoJ5GrDcY3xvKxFkVduKMRhdlW+4/4kxnYBD7DFzS8IoKXW82wBoTyFpvB8rUZGzWqQPRqnzvZ4o3M8EH1eRQ0QB/51PMImZb5TG3pcQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=aspeedtech.com; dmarc=pass action=none header.from=aspeedtech.com; dkim=pass header.d=aspeedtech.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aspeedtech.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YiXK2jDGUMyj7USYWr3IJDc8SbJLmQJDnVS1bMUg0kw=; b=oXxkbcWbpRHmZJ9cKlbMZOMSQpC4Yw2THSHc/vt7VAPWrSA11x7J4yLKBf9mWbbgrHk8QzZIncnDEm/lWP+mO9Ei1clXuAOmn5S+/pD3Iov7h8qaZPVeJlac3y6sIuMV1ZDxtlwKNMs8kBHnpc0KSC8ledHMnfB+Dw2WP3piKCjhVc4wB7XDJK8P0iHFsQRaxQJZOvF0+RSPCMWAA7ppsBIXMPvRYaBGwKMnML/xbr/nDUcKULN3WkZACjD4RGBMV+rLieW4nliHxXCfouyPhXToaywJe/1xyPL/5o39tg3yiD83TnPdh5x/Bj8EuCzikCa8sOXAyS845AGofmQlZA== From: Jamin Lin To: =?iso-8859-1?Q?C=E9dric_Le_Goater?= , Peter Maydell , Steven Lee , Troy Lee , Andrew Jeffery , Joel Stanley , Pierrick Bouvier , Alistair Francis , Kevin Wolf , Hanna Reitz , "open list:ASPEED BMCs" , "open list:All patches CC here" , "open list:Block layer core" CC: Jamin Lin , Troy Lee , Kane Chen Subject: [PATCH v3 03/15] hw/arm/ast27x0: Add DRAM alias for SSP SDRAM remap Thread-Topic: [PATCH v3 03/15] hw/arm/ast27x0: Add DRAM alias for SSP SDRAM remap Thread-Index: AQHcpVqjQ1MALzMt4kqPeEPEWp2gVA== Date: Tue, 24 Feb 2026 06:56:01 +0000 Message-ID: <20260224065556.3847942-4-jamin_lin@aspeedtech.com> References: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> In-Reply-To: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> Accept-Language: zh-TW, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=aspeedtech.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYPPR06MB8206:EE_|KL1PR06MB6109:EE_ x-ms-office365-filtering-correlation-id: af22d2b0-9229-4b54-dbe1-08de7371c6a0 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|1800799024|366016|7416014|376014|921020|38070700021; x-microsoft-antispam-message-info: =?iso-8859-1?Q?hvEgolYH82JBOvdt8a7mQW72fEd95zMAWdl9Pe7y9X02oqLSwC2jDK2YEp?= =?iso-8859-1?Q?j9085hXCKWG0OEOgNnhDDUNfsj45VGZ4T5Md1oeLhQfxFX7lv+tIiZK0f4?= =?iso-8859-1?Q?3j7+aV2Jxqe+pY8F/Bkh1ZGD/j8yx+GX3Xb7Pc4Ez4R49h0In3f6npiv7D?= =?iso-8859-1?Q?YHMejuRY0CV7AMrv/EfFLVKv3vAqx2MUxpu4+kONpWtMUP7dGB9KRW6jas?= =?iso-8859-1?Q?jnxWTDbiLs9/DNiLE7xMLaX3RXCEPYH2nMx6bRyR8zLLQ3NSyKIU7BhhvO?= =?iso-8859-1?Q?4fIR6sDQp6ZXBW+0eC7aXONUxeQ0SDKk8YCSQpB9r6pugqHlv1RScUfmON?= =?iso-8859-1?Q?0XhCQsnNHw5Yfry5+tSSBtwY59Bm4M+qBepqVY9gkwEN/b0B8u1ISqrnbh?= =?iso-8859-1?Q?VXr4AA/W429dJ2b4ZpOLjye28WpOeFQohV+p3Yj1Df80n84JvW/5O82l9l?= =?iso-8859-1?Q?VAXxC+YyXwhgdyI84bQbpxAH+g59rFVTqISjVK/3S4oUMzcaInw+dJRHKl?= =?iso-8859-1?Q?Z4kN8KBLper3mln5ktZ3eqMsehFYAz/ZFKs9M0vgJQf0CcMnnOd0h5Exf2?= =?iso-8859-1?Q?JbozwGGZizT9hi9ktS6cgODZNJ96xtl+pEOj59erbVaqECTJvzzFa6/u+e?= =?iso-8859-1?Q?MK674nNTAUnWWKKT3qm2NuPgvHOzvubqjXddXam7RTtyIESuWrR2RUDRZH?= =?iso-8859-1?Q?BlMX8UD/C/rNyV/wcm7vLOOw8vXyL8RUA+M7KOgYU1YJtU30FcuHC2RRDu?= =?iso-8859-1?Q?6lso5hV7Y2VqldzfnU9u9N65DT8UAAU6BnTB/5ztmVF9ku232mvh498nz1?= =?iso-8859-1?Q?0XNwZXwZEVLIOLy1wbvGConxh9G6AoL4rLbE2Bxhi7WtgS3fJx8sjj9CY5?= =?iso-8859-1?Q?1a9tIOgAr0hFMNL/j7AtRB+08Tl7tITdFJQrpkz+bLF9buWLG2YRqwsXR0?= =?iso-8859-1?Q?EgrhITQxtAQLjT2QwGS2N8AFZf6qeOlNl1kHnledpUOESgrh+sN5TqlvTx?= =?iso-8859-1?Q?RmTbP3lh2N+26BKbh1SQMc/v9ughyuTtMhBJ3RyDLPf0cE3vp06IhrpN2D?= =?iso-8859-1?Q?OeT8L/Slmz0j9F+75g4SRPpRNOgNGTjv+IpeOjc9nV/mmrZiyw8b0Oo9Dm?= =?iso-8859-1?Q?c0lWTmccHsQ2s5De30JPtqoaNfavJXGsbqD/ZK7QV388OK3EJSZ3Xz9Eim?= =?iso-8859-1?Q?x++bpHumua5GOq+d/wylZOnbuZf/JqFpqnTq6s7/jgTHiCwMvd/zzqCdt7?= =?iso-8859-1?Q?AxGlfAxrBwHKJN9bQwRYZY9BhzzpJM3nAyVPLq80pz503ut5QSyX20g1HB?= =?iso-8859-1?Q?yPMyWbLdwMciBtOD44Y3XXrKNAb0Maus3gjntHuMVJRqml++xMTDGkcyor?= =?iso-8859-1?Q?PSY/nbEHxuRmyIKc7Tx3sPPobEtxTZ48ETOy5WRB7/h0UnOP+xv/Db2+Kt?= =?iso-8859-1?Q?kAMXljvc5QKewA6vJr1d+YCLwtyUPQmghqc8jPm1HI0KYK5mwfk7B2taN3?= =?iso-8859-1?Q?KQl1O6UY1BzoA6kNhpQ5Dbv1tlOgF8M8DqQN3Lu/npgYiMzaL1fgBufdN7?= =?iso-8859-1?Q?sVdA/HKnfh3GE4fG5LcpC3szt4WVEKIrRs00JTL/2agmvXBZWAcD9xs/QG?= =?iso-8859-1?Q?9X12s3qbIM3IXA3QlHcniSUjyFZTZVvgqYNSiMq6vMdTogyYG9Ej52RW05?= =?iso-8859-1?Q?SHeRbnyEKemS0OqQnYYtMVj04V2GAlG7Ny64WYZf?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TYPPR06MB8206.apcprd06.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(366016)(7416014)(376014)(921020)(38070700021); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?XtguUZu0klkstHymflMCsAuNbcoDm4x27Y6IR6iWkDO91le/gs5fB7DFqh?= =?iso-8859-1?Q?8jicPdYdUet8JTpl/vJ6OsFVaUktVITn6ncqkSF5lpMRdxp1NARTtb+wRi?= =?iso-8859-1?Q?453jRPNErUkM5mHbP+JGmW6y0MdCdgLwrqXlSrB0c0QVI+o1LWFwldi+sW?= =?iso-8859-1?Q?Hdw9K/0IkdTJDoGRSFYh5nADp7yFOL9jffK+eHZZX8cVTNt0vpsyve8V15?= =?iso-8859-1?Q?DZ4hD/s4us/VTSqig0iFDT4QqHS8bbhkZ5XzvKBueZp+qj3hmscM/nB9q7?= =?iso-8859-1?Q?44rwZ2yWQT+gXu8YCnVevNzu9lYYTKpy4PVqCKlHzyPTRr7pYhRNQelI+n?= =?iso-8859-1?Q?KZcAeYPaQvp5Eqw2lPmBZ0fbiI/UEIy/oe0JKYhLa0SrLl47BjfwoNwO9y?= =?iso-8859-1?Q?E7dEzHKUMcq2Mm/odcjjMfbPy/71TM2Tw8izV7YLYXdG+CUCG4eHiX4sGE?= =?iso-8859-1?Q?ccSZefYYrRkvm4Fk5GzdtxG5GNutwU5b7PavL2MZwGlt4BDDtXlUqp4DkM?= =?iso-8859-1?Q?CAcfKf27DkfJlBH0xzBKNtyetEpc/W83+zn/WuicqbEc5Q0i4IzvG6ivhn?= =?iso-8859-1?Q?NdeTnuGVIahyQPj9oNCqUA+RP1tH7Qz2gLaxA660zAfcBeZceTicaSjS/E?= =?iso-8859-1?Q?SnkqKWnUcGX0pFyhU57frnVy2kzFbfeqpOn+l5HFND4fJCHmPaOyVLeslr?= =?iso-8859-1?Q?A61p6kPHOfdNbsRNW/PxME9kIkzkXweTRpkoYugQd1RGJvuEOndFlLVQGp?= =?iso-8859-1?Q?vLLsHgvTuIvivKUyRPMXJR14dXgNtfCaovO3EuDQI/wdHVdnfKTiI3TZSF?= =?iso-8859-1?Q?bdaPnX96enFsjA5W/7PrLanoteEYjQeNt3/ly9PyYqfCtBmZs6mLqSTyay?= =?iso-8859-1?Q?uLbtZd+mOA1bJIhLtFd1CAFidmZuaBp8lCxWkVEEp1wBKQvQiC4+s8/c5r?= =?iso-8859-1?Q?dY1xNjnEQP3G5LbfE9TdfpO3saIwHAbhOz8Th8NF+L0j/3QpMmdAqLaxZI?= =?iso-8859-1?Q?eMVui5sKcR20Dz+4G9zHLNXGx8mUyAw9FtAJPQz1nkpux8A/xxUCiavXZ7?= =?iso-8859-1?Q?pM/LaLZMn2n/HczyzVovMIRo+0aLo9WH+a3fjjUKjQTF+CgG0PhnMdF2xP?= =?iso-8859-1?Q?nAGrP93fx9q9sgDrIWzymmVm4EANIAQCH7v1GmiBGi5m7m3R3EYx+KHlkK?= =?iso-8859-1?Q?MPEuJcOLmQjsZJdRbr91hA782qAOgcMcd11OljvfaLOJPEOOaEZdGEEHqx?= =?iso-8859-1?Q?bM/nj8hfPEWc0l/6bYIqWrvalX4YqGMlAaWLcKPRO/MW/gWSlyBx0hiG0y?= =?iso-8859-1?Q?6TW/dI5rYenPj7nCZyd016xYT5TpSVk5lHkdjjjRtvs6PfZnmnkCvq7f9V?= =?iso-8859-1?Q?rdX5MxkNiOKloQ+DWFORE+oZkTH5Yde6mv7T4IaGLV+QEtUNFpi1ZrDH29?= =?iso-8859-1?Q?UHYlmk00Ndt9KyA8pVlXHEyo7eZlyY5f7j/Y+Xov8QtMC/WSb71gis9ZKE?= =?iso-8859-1?Q?awnar640mGEhl/PBXDLMoao1BaWnEzZBhO18M5qaeaqc0Pgh+TpWmrU3So?= =?iso-8859-1?Q?+eBvFUpF8p+4iqOgYwOD4OLvVhDiakNh7pYdVuIca7fGWP2zzaVtOi2EF9?= =?iso-8859-1?Q?wkCc6+bWuTMsVIMgxJrFVM7QolpO8yAHqFrW+KvnBO6SoFOp1Ulri0pTvs?= =?iso-8859-1?Q?1rZ05/zXicchECPNYQWkC2dQWW5L32ZkMEnbhKopkwfau6y9B4rZp8DPry?= =?iso-8859-1?Q?heePcjjbvkgd7oMbpoS84jXfQydr8Y+819vksKRM+uoNLDeVxzqlbWYhyS?= =?iso-8859-1?Q?kGUsQRBj4A=3D=3D?= Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: aspeedtech.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYPPR06MB8206.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: af22d2b0-9229-4b54-dbe1-08de7371c6a0 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Feb 2026 06:56:01.5190 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43d4aa98-e35b-4575-8939-080e90d5a249 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: YknuhLGFlJ4KbIxjYlhMEGh4VRvRdBmhe4+LPLyeCU2d68wvwLNCU5pphxLG/3e68eZplwISCwaY3zlp6zIJQ1I7m+xLoPoBMYme1Mie1t4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KL1PR06MB6109 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=lists.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c405::5; envelope-from=jamin_lin@aspeedtech.com; helo=TYPPR03CU001.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 @aspeedtech.com) X-ZM-MESSAGEID: 1771916391167158500 Content-Type: text/plain; charset="utf-8" This commit adds two MemoryRegion aliases to support PSP access to SSP SDRAM through shared memory remapping, as defined by the default SCU configuration. The SSP exposes two DRAM aliases: - remap1 maps PSP DRAM at 0x400000000 (32MB) to SSP SDRAM offset 0x2000000 - remap2 maps PSP DRAM at 0x42c000000 (32MB) to SSP SDRAM offset 0x0 These regions correspond to the default SCU register values, which control the mapping between PSP and coprocessor memory windows. Set SSP CPUID 4 and bumps the SCU VMState version to 3. Signed-off-by: Jamin Lin --- include/hw/misc/aspeed_scu.h | 5 +++++ hw/arm/aspeed_ast27x0-fc.c | 2 ++ hw/arm/aspeed_ast27x0-ssp.c | 6 ++++++ hw/arm/aspeed_ast27x0.c | 4 ++++ hw/misc/aspeed_scu.c | 42 ++++++++++++++++++++++++++++++++++-- 5 files changed, 57 insertions(+), 2 deletions(-) diff --git a/include/hw/misc/aspeed_scu.h b/include/hw/misc/aspeed_scu.h index d003955428..9c29ca217d 100644 --- a/include/hw/misc/aspeed_scu.h +++ b/include/hw/misc/aspeed_scu.h @@ -39,6 +39,10 @@ struct AspeedSCUState { uint32_t hw_strap1; uint32_t hw_strap2; uint32_t hw_prot_key; + + MemoryRegion dram_remap_alias[3]; + MemoryRegion *dram; + int ssp_cpuid; }; =20 #define AST2400_A1_SILICON_REV 0x02010303U @@ -64,6 +68,7 @@ struct AspeedSCUClass { uint32_t nr_regs; bool clkin_25Mhz; const MemoryRegionOps *ops; + void (*dram_remap)(AspeedSCUState *s, Error **errp); }; =20 #define ASPEED_SCU_PROT_KEY 0x1688A8A8 diff --git a/hw/arm/aspeed_ast27x0-fc.c b/hw/arm/aspeed_ast27x0-fc.c index 5eb6680da9..77ce312591 100644 --- a/hw/arm/aspeed_ast27x0-fc.c +++ b/hw/arm/aspeed_ast27x0-fc.c @@ -100,6 +100,8 @@ static bool ast2700fc_ca35_init(MachineState *machine, = Error **errp) sc->uarts_num, serial_hd(1)); aspeed_soc_uart_set_chr(soc->uart, ASPEED_DEV_UART7, sc->uarts_base, sc->uarts_num, serial_hd(2)); + object_property_set_int(OBJECT(&s->ca35), "ssp-cpuid", 4, + &error_abort); if (!qdev_realize(DEVICE(&s->ca35), NULL, errp)) { return false; } diff --git a/hw/arm/aspeed_ast27x0-ssp.c b/hw/arm/aspeed_ast27x0-ssp.c index 437fff3311..4a9c8c1406 100644 --- a/hw/arm/aspeed_ast27x0-ssp.c +++ b/hw/arm/aspeed_ast27x0-ssp.c @@ -198,6 +198,12 @@ static void aspeed_soc_ast27x0ssp_realize(DeviceState = *dev_soc, Error **errp) memory_region_add_subregion(s->memory, sc->memmap[ASPEED_DEV_SCU], &s->scu_alias); =20 + /* SDRAM remap alias used by PSP to access SSP SDRAM */ + memory_region_add_subregion(&s->sdram, 0, &s->scu->dram_remap_alias[1]= ); + memory_region_add_subregion(&s->sdram, + memory_region_size(&s->scu->dram_remap_alias[1]), + &s->scu->dram_remap_alias[0]); + /* INTC */ if (!sysbus_realize(SYS_BUS_DEVICE(&a->intc[0]), errp)) { return; diff --git a/hw/arm/aspeed_ast27x0.c b/hw/arm/aspeed_ast27x0.c index 87dcb82e1b..b914c01825 100644 --- a/hw/arm/aspeed_ast27x0.c +++ b/hw/arm/aspeed_ast27x0.c @@ -432,6 +432,8 @@ static void aspeed_soc_ast2700_init(Object *obj) "hw-strap1"); object_property_add_alias(obj, "hw-prot-key", OBJECT(&s->scu), "hw-prot-key"); + object_property_add_alias(obj, "ssp-cpuid", OBJECT(&s->scu), + "ssp-cpuid"); =20 object_initialize_child(obj, "scuio", &s->scuio, TYPE_ASPEED_2700_SCUI= O); qdev_prop_set_uint32(DEVICE(&s->scuio), "silicon-rev", @@ -794,6 +796,8 @@ static void aspeed_soc_ast2700_realize(DeviceState *dev= , Error **errp) sc->memmap[ASPEED_DEV_VBOOTROM], &s->vboot= rom); =20 /* SCU */ + object_property_set_link(OBJECT(&s->scu), "dram", OBJECT(s->dram_mr), + &error_abort); if (!sysbus_realize(SYS_BUS_DEVICE(&s->scu), errp)) { return; } diff --git a/hw/misc/aspeed_scu.c b/hw/misc/aspeed_scu.c index e4160356e4..84fe88e58b 100644 --- a/hw/misc/aspeed_scu.c +++ b/hw/misc/aspeed_scu.c @@ -20,6 +20,7 @@ #include "qemu/guest-random.h" #include "qemu/module.h" #include "trace.h" +#include "qemu/units.h" =20 #define TO_REG(offset) ((offset) >> 2) =20 @@ -593,12 +594,16 @@ static void aspeed_scu_realize(DeviceState *dev, Erro= r **errp) TYPE_ASPEED_SCU, SCU_IO_REGION_SIZE); =20 sysbus_init_mmio(sbd, &s->iomem); + + if (asc->dram_remap) { + asc->dram_remap(s, errp); + } } =20 static const VMStateDescription vmstate_aspeed_scu =3D { .name =3D "aspeed.scu", - .version_id =3D 2, - .minimum_version_id =3D 2, + .version_id =3D 3, + .minimum_version_id =3D 3, .fields =3D (const VMStateField[]) { VMSTATE_UINT32_ARRAY(regs, AspeedSCUState, ASPEED_AST2600_SCU_NR_R= EGS), VMSTATE_END_OF_LIST() @@ -610,6 +615,9 @@ static const Property aspeed_scu_properties[] =3D { DEFINE_PROP_UINT32("hw-strap1", AspeedSCUState, hw_strap1, 0), DEFINE_PROP_UINT32("hw-strap2", AspeedSCUState, hw_strap2, 0), DEFINE_PROP_UINT32("hw-prot-key", AspeedSCUState, hw_prot_key, 0), + DEFINE_PROP_INT32("ssp-cpuid", AspeedSCUState, ssp_cpuid, -1), + DEFINE_PROP_LINK("dram", AspeedSCUState, dram, TYPE_MEMORY_REGION, + MemoryRegion *), }; =20 static void aspeed_scu_class_init(ObjectClass *klass, const void *data) @@ -863,6 +871,35 @@ static const TypeInfo aspeed_2600_scu_info =3D { .class_init =3D aspeed_2600_scu_class_init, }; =20 +static void aspeed_2700_scu_dram_remap_alias_init(AspeedSCUState *s, + Error **errp) +{ + if (s->ssp_cpuid > 0) { + if (!s->dram) { + error_setg(errp, TYPE_ASPEED_2700_SCU ": 'dram' link not set"); + return; + } + } + + if (s->ssp_cpuid > 0) { + /* + * The SSP coprocessor uses two memory aliases (remap1 and remap2) + * to access shared memory regions in the PSP DRAM: + * + * - remap1 maps PSP DRAM at 0x400000000 (size: 32MB) to SSP SDRAM + * offset 0x2000000 + * - remap2 maps PSP DRAM at 0x42c000000 (size: 32MB) to SSP SDRAM + * offset 0x0 + */ + memory_region_init_alias(&s->dram_remap_alias[0], OBJECT(s), + "ssp.dram.remap1", s->dram, + 0, 32 * MiB); + memory_region_init_alias(&s->dram_remap_alias[1], OBJECT(s), + "ssp.dram.remap2", s->dram, + 0x2c000000, 32 * MiB); + } +} + static uint64_t aspeed_ast2700_scu_read(void *opaque, hwaddr offset, unsigned size) { @@ -973,6 +1010,7 @@ static void aspeed_2700_scu_class_init(ObjectClass *kl= ass, const void *data) asc->nr_regs =3D ASPEED_AST2700_SCU_NR_REGS; asc->clkin_25Mhz =3D true; asc->ops =3D &aspeed_ast2700_scu_ops; + asc->dram_remap =3D aspeed_2700_scu_dram_remap_alias_init; } =20 static uint64_t aspeed_ast2700_scuio_read(void *opaque, hwaddr offset, --=20 2.43.0 From nobody Sun Apr 12 00:55:16 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=aspeedtech.com); dmarc=pass(p=quarantine dis=none) header.from=aspeedtech.com ARC-Seal: i=2; a=rsa-sha256; t=1771916424; cv=pass; d=zohomail.com; s=zohoarc; b=TozExFAWpzD6g0Sub/EHNdjQtKL/tu3sDVtR3o8KPzp8FRhyVW4dViiMbNJ5ofDt9rVi38tqlSCNuZ/J3rh04UYtwmunxDMXvoW01tiXS2ifHAfE8NMAjEKNMwKSRiDWFNbZcnxEVS+qM8+zhWCh+8UA4KnEm5zRy/4NcPYpxuw= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1771916424; 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=w4FwuCKF8/ITTlpgdltpuEtxG36l0GIW2LEVsMjYr/Y=; b=IH/P1UCRf8Ezr+D4LOwyYuw9amDu8XacXmtUN/jYerAKHeTEIW45o+oOAfvhyXredo2WcZtAW5C9U3v9NqqI1WlbtYpq4274rGfTf6Hwiqi6n0vvZESShgp5Kopb93hRPa825Gd7FroW0gidPs/3qIO3QxhBDyOLW38GNN99Dv0= 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=aspeedtech.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 177191642494882.49419153135295; Mon, 23 Feb 2026 23:00:24 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vumLZ-0002Na-B8; Tue, 24 Feb 2026 01:56:41 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vumLK-0002Gp-8N; Tue, 24 Feb 2026 01:56:28 -0500 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 1vumLH-0005Ll-2S; Tue, 24 Feb 2026 01:56:25 -0500 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com (2603:1096:405:383::19) by KL1PR06MB6109.apcprd06.prod.outlook.com (2603:1096:820:d1::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9632.21; Tue, 24 Feb 2026 06:56:04 +0000 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3]) by TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3%3]) with mapi id 15.20.9632.017; Tue, 24 Feb 2026 06:56:04 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=aU6IyT+7ffjGdoK5hEAC1IRQRD+KChVpPOzYjlkaWawloj42y++jMq+VAazoqbeEBAKGVJRQJ0ovViMOdCIAyKzoebrUt0MN8zqSrOFWV5npc3drclUrRzhPqS65hkFkabI2RnIQMaYELy/7ufpReMm+F8nllX+q4w0QWdz2aVOrK6IqQYy22yqhMinhXV6Y3MRFvzBKvaF+5hWnxx5vaCLYjQ47tTmrtjFeVEQ2+Nj77nBLzAIjwaYWek2OwQnaVHe7KZrbEBb4h2KbgyIS269RTkHTZ/+QaJJoI2PiLmJbE6HF/vlExWCyv3HX9yFSj6BoRCzqoiuOXNY+2TP1cQ== 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=w4FwuCKF8/ITTlpgdltpuEtxG36l0GIW2LEVsMjYr/Y=; b=praJKK9CttYbZ7sjGdZbdoWlm+5zWscFPLDgVvh1xjy1IL5VkYODKVhPQlSP8l56EinGM+63mr6qQDY+kUsXOgvQQ1fGYa2zVsotYOvv16ky/BZHMn4EURK3D0fM5RVo9oiFyBfMM2MbYQigJkseznzRVnQXdjIkuxX8o1lWNYa88kvLdXuEEycV2FSrZroS9HbwrWa2/qiKede6Lu6fGzR0Qw8r7d04a8KZcLreSr+HM2DQ7dDAvKUeb1XdO6Hu0iaaFIQm49BgEIjEgaC0T3U3p5TeJOujmZMC+mE4wJfvlPsmv15PwHHVP7QkKQ6KVmBOatKf2mY7AwGTUSMxdw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=aspeedtech.com; dmarc=pass action=none header.from=aspeedtech.com; dkim=pass header.d=aspeedtech.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aspeedtech.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=w4FwuCKF8/ITTlpgdltpuEtxG36l0GIW2LEVsMjYr/Y=; b=D5jawZ7cltRASMXM6HAPCmDKurxsCR35HtmagY4vQSBuhxlPLYBKvD/tXO6/oMaAjoRFqIKqDC3e6UhgShdEAzhEXZ0PCsenIpjvRygzyi75+TALMehlM0n8RgAjJDiAcB50pfJYcw9Bo4J1UU4H6HwMKSJ13BGFr3JbVImzRlR6FHoOwDNznFrLGTnCvumAxNeyNV09dRbsryL++qi9Vvn9yLNSdzs6wNCI87BG+hcme8mU33Z1F0q0CzP8T21rx1et+hy7b45LtV6EHcRjiioiNcknTxh+D/rBGFJ2UMlB8zIWEiYhGVJwaDhwwXHK5/Fwws+YacNKmBW9G9YD8A== From: Jamin Lin To: =?iso-8859-1?Q?C=E9dric_Le_Goater?= , Peter Maydell , Steven Lee , Troy Lee , Andrew Jeffery , Joel Stanley , Pierrick Bouvier , Alistair Francis , Kevin Wolf , Hanna Reitz , "open list:ASPEED BMCs" , "open list:All patches CC here" , "open list:Block layer core" CC: Jamin Lin , Troy Lee , Kane Chen Subject: [PATCH v3 04/15] hw/arm/ast27x0: Add DRAM alias for TSP SDRAM remap Thread-Topic: [PATCH v3 04/15] hw/arm/ast27x0: Add DRAM alias for TSP SDRAM remap Thread-Index: AQHcpVqjLh68W5Hkn0yLLRW9dLLL7Q== Date: Tue, 24 Feb 2026 06:56:03 +0000 Message-ID: <20260224065556.3847942-5-jamin_lin@aspeedtech.com> References: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> In-Reply-To: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> Accept-Language: zh-TW, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=aspeedtech.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYPPR06MB8206:EE_|KL1PR06MB6109:EE_ x-ms-office365-filtering-correlation-id: 461d1856-790a-4ba1-f434-08de7371c71c x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|1800799024|366016|7416014|376014|921020|38070700021; x-microsoft-antispam-message-info: =?iso-8859-1?Q?RrhqDxo6XNX5+7iHvlYVeqCObhmMpvOJl/9SDhTOLh4HfOaKC2g3mlivSP?= =?iso-8859-1?Q?zQzynCijd09J5PKoJIqxjOhzzpb78Ui+LnEcSVwYz72zYAiuJWvG94Lb5g?= =?iso-8859-1?Q?jAvykxfdnZ49avhjPZJWyslOCwbA0Ou3DA1fP/5f4Nu8PGStQnL4q0LXaT?= =?iso-8859-1?Q?4rXaTW8pgHIaZmUovqgpS0kRezmQX/K+NM5TBCo/Fq9f3TbzwCjQlJGgJe?= =?iso-8859-1?Q?PQFJnREsTFrSnk3wtmuHWVFHUlOM1qCgL8rf6BiGnakKgdRPm5X3c+YOAK?= =?iso-8859-1?Q?cq/MQ5mEr8UU7z+umCHnrOAeoSgtVyilByK6xKLipkEmqC2B8QO5CnYjpg?= =?iso-8859-1?Q?vQAf2yE2pDk5yyenB31EGFMhvhLd74dhwy9KzYiiVBkzN0t3FLV8iaObyA?= =?iso-8859-1?Q?MLw2ILsEuwORXdS9r67lMoQNanIxa0qokzJffF8W0oksxRhc/AUGyiQ+mn?= =?iso-8859-1?Q?fN9meXBy/9nfoz6gAceZT1KnYg3J12QUt8Vg3Vi5OVLROdsdBeLijhv6pN?= =?iso-8859-1?Q?SmigSH8cMX+b1lKQDJ/KrxumWYoEsmtkIwpliRxPJfN87Rphe/8AN86nry?= =?iso-8859-1?Q?kWy0G5iuInzJ6dwawcqiPocpS/vL0G1VwPfhkAHW5a+fvJPB0b8KHuCrRT?= =?iso-8859-1?Q?uJSP7QLChb6B2jZhBRR+Zrbfq4YUNFbs10O0owkb3bSHXI2dJeOgyCfQty?= =?iso-8859-1?Q?jUAzyNZODV1IbVd8STYzInBOBFIyRFoOyfXjQXHLAZ7N2ZbixWm5TlAfFp?= =?iso-8859-1?Q?yD9jq3ebl7pqEoPB4/yFjknflUgaWcR1LWgLdAsyIt5aZzsFU4z46YmCIk?= =?iso-8859-1?Q?JLMp8d4NR+/vbr2EwEc1QaE/KbUkdWG55OGczZMgfAlviNvxdaXvrBkOu5?= =?iso-8859-1?Q?3vd8LX1D9k0Zy8zjxrY8xjkBx6OxNe2A1tZiWovfevNCOybU7epLJTlN1K?= =?iso-8859-1?Q?kp1vJMn4XizrUB0nM6RaXGggDYFpyXURA+vUK8qm4SvM4/aRcRMrK3CZzi?= =?iso-8859-1?Q?d/y2yDZA7+r/F6EYtJPP4zN0Qa0B3e2Pk8sfD8tEkAnL1aOYA6fGG3Uzpo?= =?iso-8859-1?Q?pMs54RhmY8fwpY27PbhBtkHdWqc1DWOiVA1KehccSkk2gM5064XMzPyfNw?= =?iso-8859-1?Q?wyTZwUIZbqOMF5tyR2wVAMf6P1fx7s16alru9S7/OlGf80egh9xZe8f0Tf?= =?iso-8859-1?Q?oiuuPyfQRIGDk6ibZNcCv6oQFOTWIkbxlKwbtN/61dN6gg3R62/yZmfUa7?= =?iso-8859-1?Q?+5RNn9qYjF+Giou8nwp30mOTM2tbGwqys3SSVnA3NvPqdbROL+0OXQjBVS?= =?iso-8859-1?Q?bIDhFYEgM+mlOpVhsLfhnET4NWJsuwBmP8yvvGUuCGS0kR6fheJXjbMqj7?= =?iso-8859-1?Q?4+DC5ntovv1AVuoqq1NWtYV1kUfJcZtkAraJlxMABsK9hafFe1wSVF72tK?= =?iso-8859-1?Q?/5QsNVxtZNyM3y1Z4gFhClOivhJaisUnvJHdLzUNmBBtneRQ5V9e08kmIe?= =?iso-8859-1?Q?2EUK3wTkXQDWqq+7vIBjlaKHCn+gx7ciPnv6T7scYCzIw9rJxx8nnalG4e?= =?iso-8859-1?Q?Ix5YeQ600+nwo5MWuspI8xdrXDeC13hLGweXSroTP4TN/zsksbkA7hUa+I?= =?iso-8859-1?Q?f35kjLM1+2vuXZcbVkYNsl/1Web6s8W0bnvl39iJBKMfvJw50w8GCesGiR?= =?iso-8859-1?Q?d0SLR7yy7BYrUF/juVtw21CwmMZECiZVt4ZCy2ui?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TYPPR06MB8206.apcprd06.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(366016)(7416014)(376014)(921020)(38070700021); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?geIxv5eJegWnK87sFJF3q/Ls6DyQ6x5p/RK2WTWxr1ZXHO2xHQB0GevS6B?= =?iso-8859-1?Q?wG4KxGGMNfv8GnKeI4xRbAxY9Rs6c49dYPM2FuPhUvglxtyxJA2ut6/45f?= =?iso-8859-1?Q?TBe0NJyPtfahKKbeftBGt63OPD5xMc4n4SBOv057Gjhu13ScCqLoQ4HdZQ?= =?iso-8859-1?Q?TE2PEMtxWrfcnhTzLuNfYZ2x4cnrHMdzI10MHg+KG5dbWbHFNkxR6ixuU8?= =?iso-8859-1?Q?dyosBjuU3CS4RuRr7W0ibwzgnuzwoqRZ1VnKr3TY99ZSz/EUoEz/7YQzKp?= =?iso-8859-1?Q?dgrbP0Cj3W3WWj1ogJKkyRSoiTsRrhZ2Z5xLX7croweSHfUTP3uVTU83nj?= =?iso-8859-1?Q?ZdxexQnn4S9qM4TLJhB//M/zBHkQ/1dyPDf18eR4FMrVETPgyvg3nQjAbI?= =?iso-8859-1?Q?41ov9t7WArsNr1O4uoOYQPQAC4UPbgx6922SJhPbsNEAxvg5L75UXQzpF6?= =?iso-8859-1?Q?D8oo2OM7c9/SCvOHaObucg4xESUOXnjWv4fuI3PFA0/8VvrANIUaGCFoR9?= =?iso-8859-1?Q?ifhLzfczXM6mM7zDRzFxcaazPRpwsmXs+687ytVh/T77YWr6pBlAMIudyV?= =?iso-8859-1?Q?Kn2immUKWTgTcHdSxe6zLP5/Lnqey4lov5Xyp1mFWPt5yJR0qPJAZi9cls?= =?iso-8859-1?Q?fUbIXBGM0weYqgzPdlkzyWmUq5wZX3DsJNY2puZT3DVNtAlN9ABPreW8DS?= =?iso-8859-1?Q?FfnEPUkpoO+eNOh5W5LfjRcviRM1masvMwjlGKtnp28E6kuDk0ydhl9596?= =?iso-8859-1?Q?oHT2GwhJ6x3Qidxm2rQf19R3SE1XkoHMfuSAlaUDtD2wWNFJnKN/ebJQjp?= =?iso-8859-1?Q?LB7jdht4H1lDJHQ5E5pIyEndnWVS93ZASZWU10MSYQ2R2WLuHqrDlUNNQA?= =?iso-8859-1?Q?EdP9yFbtUad+ZXQsAqhVnSAdMkdHkJ874s1Ocz/T2RNf6m6Vyl9ahZmH5w?= =?iso-8859-1?Q?66G0kRSb9oxPy4XWcRDF4H0s84BIAoR1lqoUTz0J45OhIb3WBLBdWqhc7E?= =?iso-8859-1?Q?9VamONp/OJ1HlBAEXiqU4iOardM0V7jwXt13X6GegdG59k1SY4JMvWV2Rd?= =?iso-8859-1?Q?pqAJFV4NmoMvY0RXnlSipi5XdRS6khtGCJpcAqEBWgkhRsJL8jeE1iLK8z?= =?iso-8859-1?Q?CRelQpVKYI4wOxmCQheTKEeQljkKRtflZ9i9bGRthIyhbhbozgSVTBHWBt?= =?iso-8859-1?Q?jgMOndCr0rf8qObpF/d++tG6AIt2cETt/1FJHrr+SZJgwz8ukjjUXJdEuA?= =?iso-8859-1?Q?vlNfRmDZ7ecDIU7zXp6larDbgbE99sGaNDTA1zisEKCMogGWJFLCNpZFeC?= =?iso-8859-1?Q?Gyogcm21ram2MpjrNtxFrveyZoIokj4o1mJpDmQiGNHNaRb3AmU/9ipDMt?= =?iso-8859-1?Q?sPAzuny2AWKLHVAQnx+Hdoy9r0VAjX2N/zBHDoa6+a8295hdVWk0Kl8WUY?= =?iso-8859-1?Q?5PlXxcp1v1NkfB1/tQpGFPX/qBpjSog+fHmXmmxvgAg+fJU5DYW6C+hpia?= =?iso-8859-1?Q?roeTIk0Uh3jdnli9i1+5nLlZ8+irrSElnQxR+4pvKSrQb6dTNrVpChfoFh?= =?iso-8859-1?Q?a/9JCNZMOAW3gpg1cPh8UZrtVkHee939gWh34a0h4YitcKpgMhWOtZR7xM?= =?iso-8859-1?Q?9ZhHtGBEPHBNRdIV/0inXYFCshOLQ0d99wQdbXJj0ckNqZZfPV41L4/cz2?= =?iso-8859-1?Q?2bMpQGq+ZuCxnMkvmkKo9xn6qYJWxgT/VE5s2Da8E7r50rOch0vXnFriwE?= =?iso-8859-1?Q?ZAb/jPJ6eMHsQGGuGx5MLas9pO8NJigy1tzbFsOz0mEcFI8Q/cD7BCYz6v?= =?iso-8859-1?Q?Czz3pswH7w=3D=3D?= Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: aspeedtech.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYPPR06MB8206.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 461d1856-790a-4ba1-f434-08de7371c71c X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Feb 2026 06:56:03.0634 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43d4aa98-e35b-4575-8939-080e90d5a249 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: GUDegWiW8Lyb6UeDkEPKEVr1lbjxhfpdRs3Y+eVy8oP+g78KbkxWg8XeF2l48mMtxJJFRepV9vD38W/lrA8n0ikOMZXSxwMqKiZuox6GAaA= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KL1PR06MB6109 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=lists.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c40f::6; envelope-from=jamin_lin@aspeedtech.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 @aspeedtech.com) X-ZM-MESSAGEID: 1771916425420158501 Content-Type: text/plain; charset="utf-8" This commit adds a MemoryRegion alias to support PSP access to TSP SDRAM through shared memory remapping, as defined by the default SCU configuration. The TSP coprocessor exposes one DRAM alias: - remap maps PSP DRAM at 0x42e000000 (32MB) to TSP SDRAM offset 0x0 This region corresponds to the default SCU register value, which controls the mapping between PSP and coprocessor memory windows. Set TSP CPUID 5. SCU VMState version remains at 3, as it was already bumped= in a previous commit. Signed-off-by: Jamin Lin --- include/hw/misc/aspeed_scu.h | 1 + hw/arm/aspeed_ast27x0-fc.c | 2 ++ hw/arm/aspeed_ast27x0-tsp.c | 3 +++ hw/arm/aspeed_ast27x0.c | 2 ++ hw/misc/aspeed_scu.c | 17 ++++++++++++++++- 5 files changed, 24 insertions(+), 1 deletion(-) diff --git a/include/hw/misc/aspeed_scu.h b/include/hw/misc/aspeed_scu.h index 9c29ca217d..58fef73159 100644 --- a/include/hw/misc/aspeed_scu.h +++ b/include/hw/misc/aspeed_scu.h @@ -43,6 +43,7 @@ struct AspeedSCUState { MemoryRegion dram_remap_alias[3]; MemoryRegion *dram; int ssp_cpuid; + int tsp_cpuid; }; =20 #define AST2400_A1_SILICON_REV 0x02010303U diff --git a/hw/arm/aspeed_ast27x0-fc.c b/hw/arm/aspeed_ast27x0-fc.c index 77ce312591..38c5d06077 100644 --- a/hw/arm/aspeed_ast27x0-fc.c +++ b/hw/arm/aspeed_ast27x0-fc.c @@ -102,6 +102,8 @@ static bool ast2700fc_ca35_init(MachineState *machine, = Error **errp) sc->uarts_num, serial_hd(2)); object_property_set_int(OBJECT(&s->ca35), "ssp-cpuid", 4, &error_abort); + object_property_set_int(OBJECT(&s->ca35), "tsp-cpuid", 5, + &error_abort); if (!qdev_realize(DEVICE(&s->ca35), NULL, errp)) { return false; } diff --git a/hw/arm/aspeed_ast27x0-tsp.c b/hw/arm/aspeed_ast27x0-tsp.c index b99b18bc6e..6c0f166a34 100644 --- a/hw/arm/aspeed_ast27x0-tsp.c +++ b/hw/arm/aspeed_ast27x0-tsp.c @@ -198,6 +198,9 @@ static void aspeed_soc_ast27x0tsp_realize(DeviceState *= dev_soc, Error **errp) memory_region_add_subregion(s->memory, sc->memmap[ASPEED_DEV_SCU], &s->scu_alias); =20 + /* SDRAM remap alias used by PSP to access TSP SDRAM */ + memory_region_add_subregion(&s->sdram, 0, &s->scu->dram_remap_alias[2]= ); + /* INTC */ if (!sysbus_realize(SYS_BUS_DEVICE(&a->intc[0]), errp)) { return; diff --git a/hw/arm/aspeed_ast27x0.c b/hw/arm/aspeed_ast27x0.c index b914c01825..52cd2bcbe7 100644 --- a/hw/arm/aspeed_ast27x0.c +++ b/hw/arm/aspeed_ast27x0.c @@ -434,6 +434,8 @@ static void aspeed_soc_ast2700_init(Object *obj) "hw-prot-key"); object_property_add_alias(obj, "ssp-cpuid", OBJECT(&s->scu), "ssp-cpuid"); + object_property_add_alias(obj, "tsp-cpuid", OBJECT(&s->scu), + "tsp-cpuid"); =20 object_initialize_child(obj, "scuio", &s->scuio, TYPE_ASPEED_2700_SCUI= O); qdev_prop_set_uint32(DEVICE(&s->scuio), "silicon-rev", diff --git a/hw/misc/aspeed_scu.c b/hw/misc/aspeed_scu.c index 84fe88e58b..9bfe132840 100644 --- a/hw/misc/aspeed_scu.c +++ b/hw/misc/aspeed_scu.c @@ -616,6 +616,7 @@ static const Property aspeed_scu_properties[] =3D { DEFINE_PROP_UINT32("hw-strap2", AspeedSCUState, hw_strap2, 0), DEFINE_PROP_UINT32("hw-prot-key", AspeedSCUState, hw_prot_key, 0), DEFINE_PROP_INT32("ssp-cpuid", AspeedSCUState, ssp_cpuid, -1), + DEFINE_PROP_INT32("tsp-cpuid", AspeedSCUState, tsp_cpuid, -1), DEFINE_PROP_LINK("dram", AspeedSCUState, dram, TYPE_MEMORY_REGION, MemoryRegion *), }; @@ -874,7 +875,7 @@ static const TypeInfo aspeed_2600_scu_info =3D { static void aspeed_2700_scu_dram_remap_alias_init(AspeedSCUState *s, Error **errp) { - if (s->ssp_cpuid > 0) { + if (s->ssp_cpuid > 0 || s->tsp_cpuid > 0) { if (!s->dram) { error_setg(errp, TYPE_ASPEED_2700_SCU ": 'dram' link not set"); return; @@ -898,6 +899,20 @@ static void aspeed_2700_scu_dram_remap_alias_init(Aspe= edSCUState *s, "ssp.dram.remap2", s->dram, 0x2c000000, 32 * MiB); } + + if (s->tsp_cpuid > 0) { + /* + * The TSP coprocessor uses one memory alias (remap) to access a s= hared + * region in the PSP DRAM: + * + * - remap maps PSP DRAM at 0x42e000000 (size: 32MB) to TSP SDRAM + * offset 0x0 + * + */ + memory_region_init_alias(&s->dram_remap_alias[2], OBJECT(s), + "tsp.dram.remap", s->dram, + 0x2e000000, 32 * MiB); + } } =20 static uint64_t aspeed_ast2700_scu_read(void *opaque, hwaddr offset, --=20 2.43.0 From nobody Sun Apr 12 00:55:16 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=aspeedtech.com); dmarc=pass(p=quarantine dis=none) header.from=aspeedtech.com ARC-Seal: i=2; a=rsa-sha256; t=1771916417; cv=pass; d=zohomail.com; s=zohoarc; b=AEVRO9q1eUGxrmE5pJMBNgElFMywakY9sgZkvx8GDyMOvzRG+04dpbqgMBbkY7pm6jVopeGO+uDQi593ym8UAilKlJj/W8zKIhF165bicbFjSsKPk/FNWRDO/w1Ygc5JaEFOBW3xtMku3XF40TmZTTwc/kefoNQkO3B6CFkzlpA= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1771916417; 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=sGTjLDrGUEamsuj6NyG4F+kZKyu2sNTKtUATGzn0C6Q=; b=OTR8RV5aK4qsCfP96JIvK7U/bI+8I/3HwMxj6+x/a2OFsGS2zhvZdc9PA/odTsVeDxGci67Ma6G/zuOB/B7eP/VX2P0WdQv6BrqvOzXZUvobffosswP0b31BYyWhJ/iT6bAjqT1ZHuw+CGj50c6JMtx76KO1QanSpXnxHhCOIwo= 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=aspeedtech.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1771916417094326.12374494044957; Mon, 23 Feb 2026 23:00:17 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vumLa-0002PB-UB; Tue, 24 Feb 2026 01:56:42 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vumLN-0002HV-Es; Tue, 24 Feb 2026 01:56:29 -0500 Received: from mail-japaneastazlp170120005.outbound.protection.outlook.com ([2a01:111:f403:c405::5] helo=TYPPR03CU001.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 1vumLL-0005Mp-4g; Tue, 24 Feb 2026 01:56:29 -0500 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com (2603:1096:405:383::19) by KL1PR06MB6109.apcprd06.prod.outlook.com (2603:1096:820:d1::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9632.21; Tue, 24 Feb 2026 06:56:05 +0000 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3]) by TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3%3]) with mapi id 15.20.9632.017; Tue, 24 Feb 2026 06:56:05 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=xnGu45NlCq57H959Q8cmXohyyhZwjk00KbVaw3jGuVx52UUvJRfaRZu7cCOIQMKjKtH+BC3vbzBwnnIust53zEZNoEg6dDfSXzvv9THladpz7WX4XyMp1MvE65e5taEXbEmNHUh07OSZlQTs2B2fIHyqlesW453SOIJOwfe0iEG1ytb75hE4Plkxnu7lvD1JpeAQPEYlv5vx5q0puYWw5SCCDkYDCdeNR162zKtxoci4eIJr057T5BSsRBQ7bKSJ+pk49JCk+L8MPkzdzIRTGuBdqL9ge/WC+ZsVrPjaAzlFS7SbmwkyLEWr0owQH5d8dMH0ATHO+7bLBWcTZ9MsRg== 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=sGTjLDrGUEamsuj6NyG4F+kZKyu2sNTKtUATGzn0C6Q=; b=Zem1Zd+mb7mGJ6/s8AlbLrH0Jke0fcOjsNs363t4T3/jwX0gyTEYl7cfTjPkAlfEZEcm/D8L7uIcidVpXBRrKjXmaY80c11XNEDFdHhDDOqFDegL2RvOyDvCnCVw1pI2QRpCU9Mg+/mogNcktAQn8OrmVosDjOntKxZyTxB4Oz0DFUO16HDTX4T+Ux1nVgbhKry9APF7rfKlxK313NOY3JUqY02J6dJeKRPaZG31TBnx+lLdoyMekjCCoAmssvJ3w3jDRBDQ/ausJNF4ppIHg5CxBmmBlzTHQVVci5z6YQtlymSMWNgie4u63KjTLCtCWGHeswvsKdTB3t5LgRSblg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=aspeedtech.com; dmarc=pass action=none header.from=aspeedtech.com; dkim=pass header.d=aspeedtech.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aspeedtech.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=sGTjLDrGUEamsuj6NyG4F+kZKyu2sNTKtUATGzn0C6Q=; b=NL2HrLaPNWoIArmTaqutRl/p0jtCSMmTd+fsePDM1J0golmycmYRMxxKUXEkJrDdaySW0Y2dXiuKoLVRd5D1AyCosjrX6CGixypsLWxERR4oUicraKzqGqa9/ztnPrVJ42UjMrXQcb/7HOj7U6Ek5lrm+xYWUp1YDjMOvMMR1kE/gccdgK9WfjEFApCFrS2xRVteBKz8ufPlYnCNkEHt5yGQKA3DD8ED4gE8+u0weSQTaI20teIcehxjb7LWA5lRwAvpXhG9VTKP28/YYVxfL91SlN2BPYO03kJM8GlH128Zf4zF7pSomTljG7vt2tnP6/hHq4/wH0a7QgESGIxbCw== From: Jamin Lin To: =?iso-8859-1?Q?C=E9dric_Le_Goater?= , Peter Maydell , Steven Lee , Troy Lee , Andrew Jeffery , Joel Stanley , Pierrick Bouvier , Alistair Francis , Kevin Wolf , Hanna Reitz , "open list:ASPEED BMCs" , "open list:All patches CC here" , "open list:Block layer core" CC: Jamin Lin , Troy Lee , Kane Chen Subject: [PATCH v3 05/15] hw/misc/aspeed_scu: Implement SSP reset and power-on control via SCU registers Thread-Topic: [PATCH v3 05/15] hw/misc/aspeed_scu: Implement SSP reset and power-on control via SCU registers Thread-Index: AQHcpVqkF6NtmSi/9kOSBx/V8YSe5w== Date: Tue, 24 Feb 2026 06:56:04 +0000 Message-ID: <20260224065556.3847942-6-jamin_lin@aspeedtech.com> References: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> In-Reply-To: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> Accept-Language: zh-TW, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=aspeedtech.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYPPR06MB8206:EE_|KL1PR06MB6109:EE_ x-ms-office365-filtering-correlation-id: 24d46b21-ba6d-4127-dce5-08de7371c794 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|1800799024|366016|7416014|376014|921020|38070700021; x-microsoft-antispam-message-info: =?iso-8859-1?Q?n6v2v4PhlCJx7QnRWh29HUeB1qX4q7y7DRFCQ3wK5tAm/frmYhgcf+vLo4?= =?iso-8859-1?Q?DD5dk+XoAp0O2TM1tthCb09PYyWHIJ1y/EOxSAFNu2xljA+CiJXT4oE1vT?= =?iso-8859-1?Q?oyPtOzkyziO0aCn5KjzWCtg5HYoV716ZZBthH+RZsRlYi0BA8yHDuRDFzM?= =?iso-8859-1?Q?FgEitrKQ/vqAr1jC7nOrUHUyq3JvSZq00Wkz3KBiPNexz2FA/LTIN5wOfW?= =?iso-8859-1?Q?ppO8vzkmdcY9dLORUtTwI4KEdGyxGXZTeRdnaU2ia/YMh/obU5LHe5w5WO?= =?iso-8859-1?Q?HM+1o+WZHzfs8CKB87jN28TnII8vk3/nWkv1pGi/NmHLqNP7+TKuI0z3Wp?= =?iso-8859-1?Q?bYFfzIJlwuc8NXD37mWyPlT0XzSQz1WM4S/l5B6O1feTJSw+C+NoSXhXj7?= =?iso-8859-1?Q?O30s0ZKRy5X7fvYLYSJpTbiPywrpS0BdcPuL4afH8dv5jifHZKZjOWOkm0?= =?iso-8859-1?Q?pM9joEn9jhBAm/ZAg0wmGtL497SMcO8LRQGGunsA8VPRjjJnEeOa21P7xV?= =?iso-8859-1?Q?c+4H27cOAHUXewqy6U5Uh5GPwhaqVzSAbOibNRfISrVzSCug1YZnGhGFrs?= =?iso-8859-1?Q?dcsTknoeo+xzf7UZBwAXHmUPgyRk+XaBj/2zKYDWOHku11gtA/Tzs93xn6?= =?iso-8859-1?Q?UlYdHITKDe4yEj5SUQkS0F7bKq5iICcaa59qWfNhnbgZQOWqSOxAaSbQOz?= =?iso-8859-1?Q?eIWmokSwszPIQzfBZ4XmR2A60MXD0cndzvEvwlZsGtDLgwNP8iUfFXCD5j?= =?iso-8859-1?Q?4xaeI6apYNPrdsqt7kN8mAq8LCyrluInUT7TwRM3x7lShN3LRxhql7xOwX?= =?iso-8859-1?Q?cLoyvjMZPB0iKvcfE/xewYuOkfrKBasMyJiVds8aEbNVBB5rm1Zu8Gq7gK?= =?iso-8859-1?Q?CqbD82GmiZo/NzVw1ueyrQFKwOGZ8rw2dGSDLlKe1YVxhlcGYodZNNCxSs?= =?iso-8859-1?Q?uuCqOEqtUhBb/LVyKM7UXLiwlXTERsheHD5lFhSn4NJHT2wdtHQnxukhM2?= =?iso-8859-1?Q?623i+nbaMF6QADQU8NOH5XwapnbHRtpi0t7y9KospUQSt6kwd3nHbBy/1a?= =?iso-8859-1?Q?Nn7qu8A3GyEclvq2GmdswQJlp4LytdRvv6EZbzTHxhRIHM4o6CeJ2Bg/ia?= =?iso-8859-1?Q?dyAVhqgePoJz5Qob67lis2R6ihHCj+ZQQQooNZZlYOcmHvccuossV7gC/Y?= =?iso-8859-1?Q?D0u5DsCCo3BAFQrBePtjD987YBso5zOuNlk5KrMoVPCicn12sZ3YZYCdrV?= =?iso-8859-1?Q?WtelOiIZMwLcVoiYBv8RUaSMvG3Jvky9hmQpeE01KY78+z4fQDj22QaZ+m?= =?iso-8859-1?Q?D0uwEuSR7selX4Gjnas5DpJwb5l7PwbC6O6ucZCmPi39AAkv/tG6u8exkf?= =?iso-8859-1?Q?TURCd6rkocPOyt7XkV3b7uXYIyMg0dnzEKTISvfKLKc1CMoPPfvXITK97h?= =?iso-8859-1?Q?qEY/wo4siotAWjqQ/9w1SK79wZ29RGyVRpZCgbMtTGSxj0DyJT6T2e3gwH?= =?iso-8859-1?Q?r+WkYhErYnnEWPKqucKbtPJpV1FU99TvPztbp21KHY8cHLiGsrICkXSQrJ?= =?iso-8859-1?Q?78NrZHdKf4YENDBm/3+2CK4GNNbx3UB4Ihyu+lTqIQy50xGksY0ysYQ2U6?= =?iso-8859-1?Q?6x/ZhmZKavZl2jFjQNkiVabBWJouJFWb/d+ec6XGhIt5tH7Gs4MTt/5ynU?= =?iso-8859-1?Q?4IZELOBPz5r4x6LR/jIg2oKpZM/7aL9DlI5+za82?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TYPPR06MB8206.apcprd06.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(366016)(7416014)(376014)(921020)(38070700021); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?ayz5X0RKaDBFe4yG955RmuHk8YcrsPsRpXeu1huXTUXtWL8vf1RY+89CSk?= =?iso-8859-1?Q?qIZV2yPdfP2Rpd7gugcnQLEmqfOFiM3zvO5GYTxl24FW18zRlkzAO19XC3?= =?iso-8859-1?Q?F3ocH/CCS/39qNJZSdRNJnNB66e6+XG4RsdS6NnsJLHz+w/1vIhvUz4/D1?= =?iso-8859-1?Q?bSejRiZlQU4y99+LtIc0twvOzGNoiYy0wvolIFJ9yaFLegv9l2Rml7FkHa?= =?iso-8859-1?Q?x6YTmywV6jYlXJwKZyuO0HejPG69e7qpzZJXjXgHHCdlbxyK/9McFHrrPT?= =?iso-8859-1?Q?qaZ1pL0aI3mNCkR/2UmyouAGQHBXFiSDu7TEFl9cff9+BLZbLU2DVIgXp+?= =?iso-8859-1?Q?69xDkqU6XBh++ayiiMcCGBy9z49FxtxP40D4beHN8Iu91QldakcM8Zp7BM?= =?iso-8859-1?Q?fgJdsK40ORIIOCGomLPgL6qOP9rjWaQSkSNJf59bA9QSy7Dh3dDVknMAIS?= =?iso-8859-1?Q?vaVxazDFUf4Q5wTKsAE2XBPMx47wWCVJLK98gKBLf/70XoVtUmDWh4dXUc?= =?iso-8859-1?Q?J6/iiDodhHlN/V14tU9r1GYfZjv4jUowFd//2sOWuuGbnb7Ehm4WEGsiZM?= =?iso-8859-1?Q?e7iO+ZlPYWmAdxak8Dl0u+6O1mBFVgRxNvutjAJobxfAMnbWfQMmcRBW+p?= =?iso-8859-1?Q?Sd3hXgapUOnXT9yjDuCujOqVqBOie11G+ucQMwx8n2ViXzHVg/OSh1pKqD?= =?iso-8859-1?Q?er7jQolKUaGWqCp4YD7kETjiEwBkXosOE/f9i3vKPwqrSWnq7m9brVKtga?= =?iso-8859-1?Q?nJqxEZdVtaVh2RsI/FvwP0dlEtlMxvAt2Bc5K4Zzzx2adnVS7hB+Xk13db?= =?iso-8859-1?Q?zoANyeGiG8C3+/Nl/7dqUcoP5WkGRGlYgH08XNUlzFYtQaHYWiE4kY7LDp?= =?iso-8859-1?Q?oQKq6ztZQv3IBLyDfQ9rVk3hWLG6Bw1A8qhlL4v8+m4mGK8cEUKfXA2E9Y?= =?iso-8859-1?Q?00bsJL2lZWdTEHk7CydcM7zcMDEV421/pOAP2fXpbr73gshpmR13qtKXGh?= =?iso-8859-1?Q?oksM74oGizcMIn1kHDhHEteE0XdcZKROUICwmJe7rpJxrCRX0vIxkc2Ef4?= =?iso-8859-1?Q?ezI+AjhXCuCSd0PaNqal+SiLyq+tGl7ifq+PYyKkKLS1PWSgh7WVwyyDEj?= =?iso-8859-1?Q?0I8S7h89kHThmoVh7PZZYHUqG1GM7PKTgJqVdByh9KwBF4SYRTmTmmUuBH?= =?iso-8859-1?Q?a9h1JL6nPe4LEyW/hwxi1F+0dQsfOlsIjdDdxeJQjAHyKQcQccQvxd2Qsw?= =?iso-8859-1?Q?VpeCJzkGJAp4mx5kKD0NoSv6B7DbFlf9leD7HKpTltJ7XIHBwdNJg7TIRf?= =?iso-8859-1?Q?sANNLuhjAuSOe1YBjgEWWWqT2yWizHk4QThO7uiyHq6NPIgjlTkWAR0+ny?= =?iso-8859-1?Q?sBieF5R+qp+f8ZlLN7Y3rtIAfb9snz/jrNADBgITqUlBgFYil0DPSyVJcW?= =?iso-8859-1?Q?PVeWxGERCfXU+ObIA7zImBC0CykUt/qLZnRJcYJxfCwkwlFa30IwQKpXo2?= =?iso-8859-1?Q?yiWfwj+5e9OS2F8Y1nH+WNvbZ7AJU6ijpTt/BJ7UFbPc7V+ds8rpSfqpKK?= =?iso-8859-1?Q?LKt75u/Xk5C0PU62CiB9YvE2W9wIEBP48wDL/thtwD81SZdk06rKxX6gr3?= =?iso-8859-1?Q?QQj4Ktyp5miT7qT8aLVMC7MxlxHcEdqQiOgp8XGHJVBYhJDxVUPhEgDJla?= =?iso-8859-1?Q?lE9xKgIBmy59M2/xoxAnZsj9xvphttspmFuT7JRvZFFLN3vwhL9MBWDpDk?= =?iso-8859-1?Q?0ccM41EQswcuvXkt98XzwjJDolR1uIKap8um2QiYDhNjyeJlYumbThoZGs?= =?iso-8859-1?Q?wpADinOWEQ=3D=3D?= Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: aspeedtech.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYPPR06MB8206.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 24d46b21-ba6d-4127-dce5-08de7371c794 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Feb 2026 06:56:04.3741 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43d4aa98-e35b-4575-8939-080e90d5a249 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: RzLJocFwlCyCIIff2nuVZDSQe/gtNTo0Azqi6mzoeQKhnCl2tccvYX+FWx2ZTUFpxVZejQ3zExV5KJbtTBx8U0GfzdcKTKHDGHGR57Exemo= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KL1PR06MB6109 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=lists.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c405::5; envelope-from=jamin_lin@aspeedtech.com; helo=TYPPR03CU001.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 @aspeedtech.com) X-ZM-MESSAGEID: 1771916417415158500 Content-Type: text/plain; charset="utf-8" This patch implements SSP reset and power control logic in the SCU for AST2= 700. It introduces support for the following behavior: 1. SSP Reset Trigger (via SCU 0x200): - SSP reset is triggered by writing 1 to bit 30 (RW1S) of SYS_RESET_CTRL= _1. 2. SSP Reset State and Source Hold (via SCU 0x120): - Upon reset, bit 8 (RST_RB) is set to indicate the SSP is in reset. - Bit 10 (RST_SRC_RB) is set to indicate the reset was triggered by an e= xternal source. - Bit 1 (RST) is a software-controlled bit used to request holding SSP i= n reset. - If an external reset source is present and bit 1 is set, bit 9 (RST_HO= LD_RB) will also be asserted to indicate the SSP is being held in reset. - If bit 1 is cleared, RST_HOLD_RB will be deasserted accordingly. 3. Hold Release and Power-on: - If RST_HOLD_RB is clear (0), SSP is powered on immediately after reset= is deasserted. - If RST_HOLD_RB is set (1), the user must write ENABLE (bit 0) to SSP_C= TRL_0 to release the hold and power on SSP explicitly. - Writing ENABLE (bit 0) is a one-shot operation and will auto-clear aft= er execution. 4. Reset Status Clear (via SCU 0x204): - The reset status can be cleared by writing 1 to bit 30 (RW1C) of SYS_R= ST_CLR_1, which will deassert RST_SRC_RB and potentially trigger power-on if no = hold is active. 5. SSP Power Control Logic: - `handle_ssp_tsp_on()` clears RST_SRC_RB and RST_RB (if not held), and = invokes `arm_set_cpu_on_and_reset(cpuid)` to power on the SSP core (CPUID 4). - `handle_ssp_tsp_off()` sets RST_RB and RST_SRC_RB; if RST is active, a= lso asserts RST_HOLD_RB and invokes `arm_set_cpu_off(cpuid)`. 6. Register Initialization and Definitions: - Adds SCU register definitions for SSP_CTRL_0 (0x120), SYS_RST_CTRL_1 (= 0x200), and SYS_RST_CLR_1 (0x204). - Updates the reset values for these registers during SCU initialization. The default values are based on EVB (evaluation board) register dump observ= ations. This patch enables proper modeling of SSP lifecycle management across reset, hold, and power-on states for the AST2700 SoC. Signed-off-by: Jamin Lin --- hw/misc/aspeed_scu.c | 107 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 107 insertions(+) diff --git a/hw/misc/aspeed_scu.c b/hw/misc/aspeed_scu.c index 9bfe132840..56f7e214b9 100644 --- a/hw/misc/aspeed_scu.c +++ b/hw/misc/aspeed_scu.c @@ -21,6 +21,7 @@ #include "qemu/module.h" #include "trace.h" #include "qemu/units.h" +#include "target/arm/arm-powerctl.h" =20 #define TO_REG(offset) ((offset) >> 2) =20 @@ -144,6 +145,17 @@ #define AST2700_HW_STRAP1_SEC2 TO_REG(0x28) #define AST2700_HW_STRAP1_SEC3 TO_REG(0x2C) =20 +/* SSP TSP */ +#define AST2700_SCU_SSP_CTRL_0 TO_REG(0x120) +#define AST2700_SSP_TSP_ENABLE BIT(0) +#define AST2700_SSP_TSP_RST BIT(1) +#define AST2700_SSP_TSP_RST_RB BIT(8) +#define AST2700_SSP_TSP_RST_HOLD_RB BIT(9) +#define AST2700_SSP_TSP_RST_SRC_RB BIT(10) +#define AST2700_SCU_SYS_RST_CTRL_1 TO_REG(0x200) +#define AST2700_SCU_SYS_RST_CLR_1 TO_REG(0x204) +#define AST2700_SCU_SYS_RST_SSP BIT(30) + #define AST2700_SCU_CLK_SEL_1 TO_REG(0x280) #define AST2700_SCU_HPLL_PARAM TO_REG(0x300) #define AST2700_SCU_HPLL_EXT_PARAM TO_REG(0x304) @@ -915,6 +927,35 @@ static void aspeed_2700_scu_dram_remap_alias_init(Aspe= edSCUState *s, } } =20 +static void handle_2700_ssp_tsp_on(struct AspeedSCUState *s, int cpuid, + int reg) +{ + uint32_t val =3D s->regs[reg]; + + val &=3D ~AST2700_SSP_TSP_RST_SRC_RB; + if (!(val & AST2700_SSP_TSP_RST_HOLD_RB)) { + val &=3D ~AST2700_SSP_TSP_RST_RB; + arm_set_cpu_on_and_reset(cpuid); + } + + s->regs[reg] =3D val; +} + +static void handle_2700_ssp_tsp_off(struct AspeedSCUState *s, int cpuid, + int reg) +{ + uint32_t val =3D s->regs[reg]; + + val |=3D AST2700_SSP_TSP_RST_RB; + val |=3D AST2700_SSP_TSP_RST_SRC_RB; + if (val & AST2700_SSP_TSP_RST) { + val |=3D AST2700_SSP_TSP_RST_HOLD_RB; + } + arm_set_cpu_off(cpuid); + + s->regs[reg] =3D val; +} + static uint64_t aspeed_ast2700_scu_read(void *opaque, hwaddr offset, unsigned size) { @@ -946,6 +987,9 @@ static void aspeed_ast2700_scu_write(void *opaque, hwad= dr offset, int reg =3D TO_REG(offset); /* Truncate here so bitwise operations below behave as expected */ uint32_t data =3D data64; + uint32_t active; + uint32_t oldval; + int cpuid; =20 if (reg >=3D ASPEED_AST2700_SCU_NR_REGS) { qemu_log_mask(LOG_GUEST_ERROR, @@ -957,6 +1001,63 @@ static void aspeed_ast2700_scu_write(void *opaque, hw= addr offset, trace_aspeed_ast2700_scu_write(offset, size, data); =20 switch (reg) { + case AST2700_SCU_SSP_CTRL_0: + cpuid =3D s->ssp_cpuid; + if (cpuid < 0) { + return; + } + oldval =3D s->regs[reg]; + data &=3D 0xff; + active =3D oldval ^ data; + + /* + * If reset bit is being released (1 -> 0) and no other reset sour= ce + * is active, clear HOLD_RB and power on the corresponding CPU. + */ + if ((active & AST2700_SSP_TSP_RST) && !(data & AST2700_SSP_TSP_RST= )) { + s->regs[reg] &=3D ~AST2700_SSP_TSP_RST_HOLD_RB; + if ((oldval & AST2700_SSP_TSP_RST_RB) && + !(oldval & AST2700_SSP_TSP_RST_SRC_RB)) { + handle_2700_ssp_tsp_on(s, cpuid, reg); + } + } + + /* + * If ENABLE bit is newly set and reset state is ready, + * clear HOLD_RB and power on the corresponding CPU. + */ + if ((active & AST2700_SSP_TSP_ENABLE) && + (oldval & AST2700_SSP_TSP_RST_RB) && + (oldval & AST2700_SSP_TSP_RST_HOLD_RB) && + !(oldval & AST2700_SSP_TSP_RST_SRC_RB)) { + s->regs[reg] &=3D ~AST2700_SSP_TSP_RST_HOLD_RB; + handle_2700_ssp_tsp_on(s, cpuid, reg); + } + + /* Auto-clear the ENABLE bit (one-shot behavior) */ + data &=3D ~AST2700_SSP_TSP_ENABLE; + s->regs[reg] =3D (s->regs[reg] & ~0xff) | (data & 0xff); + return; + case AST2700_SCU_SYS_RST_CTRL_1: + if (s->ssp_cpuid < 0) { + return; + } + if (data & AST2700_SCU_SYS_RST_SSP) { + handle_2700_ssp_tsp_off(s, s->ssp_cpuid, AST2700_SCU_SSP_CTRL_= 0); + } + s->regs[reg] |=3D data; + return; + case AST2700_SCU_SYS_RST_CLR_1: + if (s->ssp_cpuid < 0) { + return; + } + oldval =3D s->regs[AST2700_SCU_SYS_RST_CTRL_1]; + active =3D data & oldval; + if (active & AST2700_SCU_SYS_RST_SSP) { + handle_2700_ssp_tsp_on(s, s->ssp_cpuid, AST2700_SCU_SSP_CTRL_0= ); + } + s->regs[AST2700_SCU_SYS_RST_CTRL_1] &=3D ~active; + return; default: qemu_log_mask(LOG_GUEST_ERROR, "%s: Unhandled write at offset 0x%" HWADDR_PRIx "\n", @@ -984,6 +1085,8 @@ static const uint32_t ast2700_a0_resets[ASPEED_AST2700= _SCU_NR_REGS] =3D { [AST2700_HW_STRAP1_SEC1] =3D 0x000000FF, [AST2700_HW_STRAP1_SEC2] =3D 0x00000000, [AST2700_HW_STRAP1_SEC3] =3D 0x1000408F, + [AST2700_SCU_SSP_CTRL_0] =3D 0x000007FE, + [AST2700_SCU_SYS_RST_CTRL_1] =3D 0xFFC37FDC, [AST2700_SCU_HPLL_PARAM] =3D 0x0000009f, [AST2700_SCU_HPLL_EXT_PARAM] =3D 0x8000004f, [AST2700_SCU_DPLL_PARAM] =3D 0x0080009f, @@ -1009,6 +1112,10 @@ static void aspeed_ast2700_scu_reset(DeviceState *de= v) memcpy(s->regs, asc->resets, asc->nr_regs * 4); s->regs[AST2700_SILICON_REV] =3D s->silicon_rev; s->regs[AST2700_HW_STRAP1] =3D s->hw_strap1; + + if (s->ssp_cpuid > 0) { + arm_set_cpu_off(s->ssp_cpuid); + } } =20 static void aspeed_2700_scu_class_init(ObjectClass *klass, const void *dat= a) --=20 2.43.0 From nobody Sun Apr 12 00:55:16 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=aspeedtech.com); dmarc=pass(p=quarantine dis=none) header.from=aspeedtech.com ARC-Seal: i=2; a=rsa-sha256; t=1771916290; cv=pass; d=zohomail.com; s=zohoarc; b=CR06k71I9/lbvEV36enE1pNBVq7BDnkDCa2XQWMwy3ZHIDPpTBfo/h+ew2hQXbZdWflHSJng4eIdLt+f9U6pFXOlMnZKF7Fh3W+RVAkpuao0/EDgVhHBUVuePSK3GejvjRqcFkPWcFLPdRKLSRU1xr75pJ0xmK7cNqqz/vphpXc= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1771916290; 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=KLMVteDKeSztFnB7DlEdsXNoavsyA9g+dxs2AI28N50=; b=NS0pT/5jKfC9EtPPa7u9KYBn5YBi4aYwyZMUlZJ0hxtNWeDAS+VVEvkc1uCwUHOGLgYZs7qq5YhDcpfkCvRNaPaTtuyxDXtHIT8W5/koKsdZ2S6cFKM7dsMKET1ZI1jqTUpyfBQvh8LRJ9lhsld8KUuT/5WQDrPKbwyNtSjXgVU= 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=aspeedtech.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1771916290762933.3147323928372; Mon, 23 Feb 2026 22:58:10 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vumLX-0002ND-PA; Tue, 24 Feb 2026 01:56:39 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vumLN-0002HU-7r; Tue, 24 Feb 2026 01:56:29 -0500 Received: from mail-japaneastazlp170120005.outbound.protection.outlook.com ([2a01:111:f403:c405::5] helo=TYPPR03CU001.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 1vumLL-0005Lc-E8; Tue, 24 Feb 2026 01:56:28 -0500 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com (2603:1096:405:383::19) by KL1PR06MB6109.apcprd06.prod.outlook.com (2603:1096:820:d1::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9632.21; Tue, 24 Feb 2026 06:56:06 +0000 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3]) by TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3%3]) with mapi id 15.20.9632.017; Tue, 24 Feb 2026 06:56:05 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=V/e8JcQ6WEQKXyRItQfiQzTorAokb0Ox5oTHysS+WAGAImJbFB2DCEqy9rywBUvjKj5QKWnyI+MrwIMkxNqTAaURuzvxwha+yrI/+JaFF7tOCDsYftnqPGe5s8oDpmeTt6egO4gaOMkUToyBNmW0EFKOvQ+GNLK/LcEJgPLNlg3O3olC5T+hdMtLjm/4esdnJrx6H5NinQYJY16nLGL677iBsctlDvMAjqkEeTjx2VuR6lMVJRhEpZC+druru6zNTeWPLgRya5MkEWcA73YImm9qNaL1z21hwfu+gtNXrwBFmeWzEst9SlWia9Yc6bhb1xMS4nbeN/8rEHrKX9L3YA== 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=KLMVteDKeSztFnB7DlEdsXNoavsyA9g+dxs2AI28N50=; b=VU5g73S3G0ojfjVk5SOPA2H8FYYSnwJ352IuUC/bgfkI1p5gZCOVJXaA9ogGc+O80uKMYdZzkta5IUML+biSmqCuineCqs0yPkWKly6BQVjtcbJoh4dFhDkpXWgg93FEWrkn0ojbYI1k5dGsOKbkH1ntbVmE2lGgw9ZeYmZnz5aLRsCx5xFRBB1Wft3LlTdWKNS0O4eWyhWpOZxIyWCKxbGxtvR2eZhV/Hk9gdmoQK7xpy3gS7DaH+M+Fp+vLJJCRAkXbX65m1c6lDct6GMxR1xoZlo5tYMtp7mf21gbymQcyzdUCNGW/s0HObzLOjHOgUj/1NMBuCuTfYzNmZcf5g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=aspeedtech.com; dmarc=pass action=none header.from=aspeedtech.com; dkim=pass header.d=aspeedtech.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aspeedtech.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=KLMVteDKeSztFnB7DlEdsXNoavsyA9g+dxs2AI28N50=; b=hRRaR6HPUC5NUDlSw3c3D+4qxbKAX8Pi8WnaqCXtqfGCxG+ADhI02Cq7f2OS54jwhE+/RsG2bVNSKB8xlNRJ2ADCEL9Ftkqp5R3gn+Yw4R7lzNgvfQ/A79zFa0zsbkMeSjOq3KW+KFwD6CLe6K61CHKfyByaxk5RlFjlc6MG8MHu5mVAwjeqVdao+rdsYvt9qzOoW57AM59j01ZnkZ/AZWv/j98guPkiXYvaZDTEVal7TTNfxOVQgdcYProejOY6sTY0APVBRltuH91uudbWXfRQhp5FiKeiSBBHBH2B95Y7cwgt6p8qlNIuEe6uV1qXRTNOjOFJfxbgbel7b3VmzQ== From: Jamin Lin To: =?iso-8859-1?Q?C=E9dric_Le_Goater?= , Peter Maydell , Steven Lee , Troy Lee , Andrew Jeffery , Joel Stanley , Pierrick Bouvier , Alistair Francis , Kevin Wolf , Hanna Reitz , "open list:ASPEED BMCs" , "open list:All patches CC here" , "open list:Block layer core" CC: Jamin Lin , Troy Lee , Kane Chen Subject: [PATCH v3 06/15] hw/misc/aspeed_scu: Implement TSP reset and power-on control via SCU registers Thread-Topic: [PATCH v3 06/15] hw/misc/aspeed_scu: Implement TSP reset and power-on control via SCU registers Thread-Index: AQHcpVqll9uqL8XBHEGA/qoh5piBTw== Date: Tue, 24 Feb 2026 06:56:05 +0000 Message-ID: <20260224065556.3847942-7-jamin_lin@aspeedtech.com> References: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> In-Reply-To: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> Accept-Language: zh-TW, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=aspeedtech.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYPPR06MB8206:EE_|KL1PR06MB6109:EE_ x-ms-office365-filtering-correlation-id: c3063286-0c91-41b2-66a9-08de7371c80c x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|1800799024|366016|7416014|376014|921020|38070700021; x-microsoft-antispam-message-info: =?iso-8859-1?Q?V+mDx+qCP9LbA8R8YXaJXeHeHHqm3qbWu7w3Ow3zYRvVuRh0mvrgg3Wowz?= =?iso-8859-1?Q?xGrUI37R63hkzZ3Xe50HrzW1Symaw+7/NQVu+YEhtmPIeDu4md2veo4a9I?= =?iso-8859-1?Q?dmnDmIfsWgDm5dumK3xcb6H11tZ5Qn0phpAv4iSU6kBGVIzbVjz74lJ5+Q?= =?iso-8859-1?Q?55GLk76zDIZzOglqTUxrN8c83C9Lbh9qH6PNdpK0HE16f6boZ8Pa0UPWnP?= =?iso-8859-1?Q?84v1vHLbu23hfqKkTQ+lO567FTQOhiS9k3aXnZ2Qu1ZZqwnGdvZ1s2sV0K?= =?iso-8859-1?Q?ngqE0LoyG4jld3aILOiM3+Av7ccveDbU4dt5jhmBvwLYo1f69GkeahTqFz?= =?iso-8859-1?Q?PGcsc//r0domUI0kYhRDoHEvn57tsx8I3KLwf5XI8qdEu46bRywlAWouep?= =?iso-8859-1?Q?YrcGC0S541zEsGv+CEeHas+38t3EHaK9g1Df/UIAayIRzqvIGvaqd40RzI?= =?iso-8859-1?Q?s4mGj6nwyhyeSEzNQfVBXgdCnkzzRhBjO4Tl3n4UX+knMPOmiXHPdmaQOk?= =?iso-8859-1?Q?sE2IWV3pqjULuVsqFOyBXqydvPmce7PT3yMk5lR9KumsiBRiIT9S0nbEI5?= =?iso-8859-1?Q?n5E+5PxYprVHBjDvrtB3OWBzFt7+Agtu8UiR7mEEhI+Ply0OhxIDTRG5XD?= =?iso-8859-1?Q?wa3RHpy+lQ0Cave7kG6W6vHIqtBGkKa/pwO6wmazPmHZeKsViZQzaWYPPs?= =?iso-8859-1?Q?WhJnZPro0f07MG1iizMfE6Jd1psaf1kf6GLnlcs7Z6vKiZBzPYLpAXsfWQ?= =?iso-8859-1?Q?t3ecThfClEtfNLzoNT9dthUqYEgmVCLblMB+YLzMqs8v3DY+R2AIObRkOn?= =?iso-8859-1?Q?TaEovfauNGtKvpQD4zmZmZUT99w11BnVNGMVsvOtp6n2WPcb7s2xAuFDkt?= =?iso-8859-1?Q?TkiOjokM033QJO6HJdnBVhhDrq0GqdZRy78xHGIe2COT8LI93atNClTmXU?= =?iso-8859-1?Q?kgapX5q/FNcDT0fxmcX/y3bEAjIH2l5+5T80Kn/YfXNosg2H7VgEoWJGrS?= =?iso-8859-1?Q?ScSDZkMNA235adJZJV+oCM7LHaX2oQSDlHjJ8zvV682B8X//CLRBfYZefX?= =?iso-8859-1?Q?XaDpaGSgVcDqqrDt0ddPA+kwVLLS3UICcDMje6Vqfi7+96kkgkn3/vIdAY?= =?iso-8859-1?Q?8d5xQKLaiwlqzbtCp/4OuezAcLpuhAeQWZVkwi/qVRLusXoHypWqwh4KuS?= =?iso-8859-1?Q?BKpBY5BL0/1gohj7Zpz2Pm4CxG5yYplXEECX6VkKUrn1ZA/Xp9I5AzSunY?= =?iso-8859-1?Q?r8o6gXycK11g4qOLE2qpPBBVQImuKvdZ6OD2m8sM0wyo7ifSd8Q2S2c+M2?= =?iso-8859-1?Q?fAtjKVO/qx1mCw8M5gfTYjvQCpHuW+XfNwx+802mHaHw+XADxbfOfU9EAQ?= =?iso-8859-1?Q?7fl6f8QHLgXBXr7KeivRD2djcKYCBbAaC44hk+qY2wPs5ZxZKRNyveE44G?= =?iso-8859-1?Q?I57J1ISR8uu0+Shb2rs7joSiD4OT53+8fDTBpQBVOMjJIbEEtolNmEdayt?= =?iso-8859-1?Q?hxAmP2Pi8f9mlueDZQdcyyJvZhKQ5te0dkK2bgcKUqINN9SH13XOvqZX6b?= =?iso-8859-1?Q?WxoXbVihrgqtDQu3IWL/S6AZmdJlbOViEu/5jMkJF2DI62BoPF0Iyit/fv?= =?iso-8859-1?Q?AtkZgu33qMCB5r2EJMklBNnHnPnN2iKuxk9v3kuDDyHIBfNQPs317RgYdR?= =?iso-8859-1?Q?8E9O13ppqrtEEzAB0WcNhBEyz6RByuYrGRhFzMnU?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TYPPR06MB8206.apcprd06.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(366016)(7416014)(376014)(921020)(38070700021); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?RwCTxoZ8IOM7Bxu9a/XGXm/jkYeUwqD+9iBxgR8P5pgpoxqOHgj3Qm5Ycv?= =?iso-8859-1?Q?1ctA5bnueVhrcNXJ3xjYwSSIIRygl3s8Cq9yTwXygGUi5enwFRmKMNFDur?= =?iso-8859-1?Q?R0bkpqBYPUvXJ2Kvp+VUsgwqfrAMpg+WzQhQU/tNPpqvqKAeUTL2Y1PVyH?= =?iso-8859-1?Q?MC9erBz6VI8/eJ3I0MdSlFNak2qnQ7aaRaElYYP3kqrf7k+F62Rrs67++A?= =?iso-8859-1?Q?EITR9Fz12k8RPZLY9FTw2SEomd89FMpyXF9bYJj8XtudCrecJigSVp0ckq?= =?iso-8859-1?Q?M45vrCqIucuovHQ98fzhkBUrqIn3rRcByD7CttEeV5zLYkdakcsN5eofzN?= =?iso-8859-1?Q?zpH8QsDqaQ4hqPpzt9GIZ2u5alP62gqNMwIK+nRaZSYK598ss2B+x9OmZu?= =?iso-8859-1?Q?RfOVezqdFqgnObmp98/FGFnbtr2HQSrN31JI/5EpwImHleoSH1a1Fe6KHv?= =?iso-8859-1?Q?IfPBLVf+jurNQpbCuUMRdvSC47IKazXOGQEqaiOZYo4mQd/dXgLElTMObH?= =?iso-8859-1?Q?2lZtsfOoAvY9up377DW5dkSz5IZnVtFReEj6759zXqWZIolUsLf40H/v/x?= =?iso-8859-1?Q?jPIpR+gM5d7kDoFPHt7tKe+Nci9xdXbjkXMtDCCcvjatcTxuKY78NxaLQm?= =?iso-8859-1?Q?ggyBRcDC9x2XLozHzxkCRZssoJ/Aga+ArdG8fqjMI7s64/xGXpGaMbeo0N?= =?iso-8859-1?Q?AJWOdKg4o2kbKsvF93u8RHH198iQ9VFSMk1/FVv2hetioP4cme8Rt0LEl8?= =?iso-8859-1?Q?TRq4Fr7Wf7F8FE7EphKPj+VahKg8o3UPxvjA8vb31NH3RWPoueRuG6WVi4?= =?iso-8859-1?Q?o5EXzHg8qEHaoCvQvF+0YFgWyCuMGhSBfAB8gUa1KWfYRkt5KTm1tzDjeO?= =?iso-8859-1?Q?dWTMN7I/YvkwiYDxzmHKH1wdYYhD8wVROKyA3OO/+qgAz4gj6sOPak+pma?= =?iso-8859-1?Q?alSkgR9IPuH1Q7PJeSeQnbTneiNKpxJ53A2Y7DP4MZG7ImYKN1ASfA/8TC?= =?iso-8859-1?Q?7yZO+xjW7XWzsN6yIeZI4Y44Jtqc70H1eRPjdgX286uVK9VrNUD2+nq70v?= =?iso-8859-1?Q?Z/hZv3Mj+KuABoxmictK9oFt3A6PZE/TH9YOucPsXNWml4q/YkGj9homZG?= =?iso-8859-1?Q?ydBUSMF85fS+RO7fRhy5Bp+INv7hNABY2nQBKY8tBWhjBoMmfrntvN2DiJ?= =?iso-8859-1?Q?VqG6aQiFRBCFVCAuDUV6U5bB32y5W60YUxE+Cv3wZEQ4tsgq7WdGzkr6TB?= =?iso-8859-1?Q?eddIl0Q6XS9VD/8Lr0bvF2iiL/c3vtoGIQLU7HHAKObcoWLs9HkaAHqgMe?= =?iso-8859-1?Q?3Fwa2kKf+H4p+TgPzQAzRUNdABWBcnMCFy3VE1t8iA3uO6bu03fpn3Y9D7?= =?iso-8859-1?Q?FmNWLaBSQOHl5Xz5nEEkjmr1C4GLmaveW7fZ6a5OTc7+E79izsX851xdfP?= =?iso-8859-1?Q?HLOhTrglc1CPnJ7ydemCOrXQOsx5t58arUqD93IVhjmV7DycSOZ8bI4W/4?= =?iso-8859-1?Q?J9vXEIzv3hg63eilxPKE8Y8vnAN96LjT3+Z5Up8M84tPpS+dKf8b4ye4d4?= =?iso-8859-1?Q?bMFJQTaFLedc2rCYhGg/hShnvozwy9oMl3kafSxxdn29HWemH3XNGafn0v?= =?iso-8859-1?Q?fZY3/fk9WaQ9BgoWArHCOJpOd/3QmcZt4uYroScXKVKcB9v2HtpkqZu9I1?= =?iso-8859-1?Q?oEQmgG2NGul7bBcAvQoNccinTQZWZy/5wmgrtds/WDGK6sJ6AZoD5lLRg2?= =?iso-8859-1?Q?2+b1Ozty0+hWmscj/dqCs848NBzOhpeg9NDc6I4EqfDhasF4nz10o2CgFL?= =?iso-8859-1?Q?Ur+f7WZRhQ=3D=3D?= Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: aspeedtech.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYPPR06MB8206.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c3063286-0c91-41b2-66a9-08de7371c80c X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Feb 2026 06:56:05.7089 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43d4aa98-e35b-4575-8939-080e90d5a249 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: feJ2QCWoL7A70kMxxoGYWBOvMBiQ8Sj+HLfwAO7APaLscT7BKBYvJUlD9lTXqKIckbrHm+9Scgg9NpAKr/75UFDqdEw8en8egIjr3uIYz2c= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KL1PR06MB6109 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=lists.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c405::5; envelope-from=jamin_lin@aspeedtech.com; helo=TYPPR03CU001.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 @aspeedtech.com) X-ZM-MESSAGEID: 1771916292907158500 Content-Type: text/plain; charset="utf-8" This patch implements TSP reset and power control logic in the SCU module for AST2700. It introduces support for the following behavior: 1. TSP Reset Trigger (via SCU 0x220): - TSP reset is triggered by writing 1 to bit 9 (RW1S) of SYS_RESET_CTRL_= 2. 2. TSP Reset State and Source Hold (via SCU 0x160): - Upon reset, bit 8 (RST_RB) is set to indicate the TSP is in reset. - Bit 10 (RST_SRC_RB) is set to indicate the reset was triggered by an e= xternal source. - Bit 1 (RST) is a software-controlled bit used to request holding TSP i= n reset. - If an external reset source is present and bit 1 is set, bit 9 (RST_HO= LD_RB) will also be asserted to indicate the TSP is being held in reset. - If bit 1 is cleared, RST_HOLD_RB will be deasserted accordingly. 3. Hold Release and Power-on: - If RST_HOLD_RB is clear (0), TSP is powered on immediately after reset= is deasserted. - If RST_HOLD_RB is set (1), the user must write ENABLE (bit 0) to TSP_C= TRL_0 to release the hold and power on TSP explicitly. - Writing ENABLE (bit 0) is a one-shot operation and will auto-clear aft= er execution. 4. Reset Status Clear (via SCU 0x224): - The reset status can be cleared by writing 1 to bit 9 (RW1C) of SYS_RS= T_CLR_2, which will deassert RST_SRC_RB and potentially trigger power-on if no = hold is active. 5. TSP Power Control Logic: - handle_ssp_tsp_on() clears RST_SRC_RB and RST_RB (if not held), and in= vokes arm_set_cpu_on_and_reset(cpuid) to power on the TSP core (CPUID 5). - handle_ssp_tsp_off() sets RST_RB and RST_SRC_RB; if RST is active, als= o asserts RST_HOLD_RB and invokes arm_set_cpu_off(cpuid). The default values are based on EVB (evaluation board) register dump observ= ations. TSP reset control shares the same helper functions and register bit layout = as SSP, with logic selected by cpuid and distinct external reset sources. Signed-off-by: Jamin Lin --- hw/misc/aspeed_scu.c | 37 ++++++++++++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/hw/misc/aspeed_scu.c b/hw/misc/aspeed_scu.c index 56f7e214b9..15c8b06487 100644 --- a/hw/misc/aspeed_scu.c +++ b/hw/misc/aspeed_scu.c @@ -147,6 +147,7 @@ =20 /* SSP TSP */ #define AST2700_SCU_SSP_CTRL_0 TO_REG(0x120) +#define AST2700_SCU_TSP_CTRL_0 TO_REG(0x160) #define AST2700_SSP_TSP_ENABLE BIT(0) #define AST2700_SSP_TSP_RST BIT(1) #define AST2700_SSP_TSP_RST_RB BIT(8) @@ -155,6 +156,9 @@ #define AST2700_SCU_SYS_RST_CTRL_1 TO_REG(0x200) #define AST2700_SCU_SYS_RST_CLR_1 TO_REG(0x204) #define AST2700_SCU_SYS_RST_SSP BIT(30) +#define AST2700_SCU_SYS_RST_CTRL_2 TO_REG(0x220) +#define AST2700_SCU_SYS_RST_CLR_2 TO_REG(0x224) +#define AST2700_SCU_SYS_RST_TSP BIT(9) =20 #define AST2700_SCU_CLK_SEL_1 TO_REG(0x280) #define AST2700_SCU_HPLL_PARAM TO_REG(0x300) @@ -1002,7 +1006,10 @@ static void aspeed_ast2700_scu_write(void *opaque, h= waddr offset, =20 switch (reg) { case AST2700_SCU_SSP_CTRL_0: - cpuid =3D s->ssp_cpuid; + case AST2700_SCU_TSP_CTRL_0: + cpuid =3D (reg =3D=3D AST2700_SCU_SSP_CTRL_0) ? + s->ssp_cpuid : s->tsp_cpuid; + if (cpuid < 0) { return; } @@ -1058,6 +1065,28 @@ static void aspeed_ast2700_scu_write(void *opaque, h= waddr offset, } s->regs[AST2700_SCU_SYS_RST_CTRL_1] &=3D ~active; return; + case AST2700_SCU_SYS_RST_CTRL_2: + if (s->tsp_cpuid < 0) { + return; + } + data &=3D 0x00001fff; + if (data & AST2700_SCU_SYS_RST_TSP) { + handle_2700_ssp_tsp_off(s, s->tsp_cpuid, AST2700_SCU_TSP_CTRL_= 0); + } + s->regs[reg] |=3D data; + return; + case AST2700_SCU_SYS_RST_CLR_2: + if (s->tsp_cpuid < 0) { + return; + } + data &=3D 0x00001fff; + oldval =3D s->regs[AST2700_SCU_SYS_RST_CTRL_2]; + active =3D data & oldval; + if (active & AST2700_SCU_SYS_RST_TSP) { + handle_2700_ssp_tsp_on(s, s->tsp_cpuid, AST2700_SCU_TSP_CTRL_0= ); + } + s->regs[AST2700_SCU_SYS_RST_CTRL_2] &=3D ~active; + return; default: qemu_log_mask(LOG_GUEST_ERROR, "%s: Unhandled write at offset 0x%" HWADDR_PRIx "\n", @@ -1086,7 +1115,9 @@ static const uint32_t ast2700_a0_resets[ASPEED_AST270= 0_SCU_NR_REGS] =3D { [AST2700_HW_STRAP1_SEC2] =3D 0x00000000, [AST2700_HW_STRAP1_SEC3] =3D 0x1000408F, [AST2700_SCU_SSP_CTRL_0] =3D 0x000007FE, + [AST2700_SCU_TSP_CTRL_0] =3D 0x000007FE, [AST2700_SCU_SYS_RST_CTRL_1] =3D 0xFFC37FDC, + [AST2700_SCU_SYS_RST_CTRL_2] =3D 0x00001FFF, [AST2700_SCU_HPLL_PARAM] =3D 0x0000009f, [AST2700_SCU_HPLL_EXT_PARAM] =3D 0x8000004f, [AST2700_SCU_DPLL_PARAM] =3D 0x0080009f, @@ -1116,6 +1147,10 @@ static void aspeed_ast2700_scu_reset(DeviceState *de= v) if (s->ssp_cpuid > 0) { arm_set_cpu_off(s->ssp_cpuid); } + + if (s->tsp_cpuid > 0) { + arm_set_cpu_off(s->tsp_cpuid); + } } =20 static void aspeed_2700_scu_class_init(ObjectClass *klass, const void *dat= a) --=20 2.43.0 From nobody Sun Apr 12 00:55:16 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=aspeedtech.com); dmarc=pass(p=quarantine dis=none) header.from=aspeedtech.com ARC-Seal: i=2; a=rsa-sha256; t=1771916434; cv=pass; d=zohomail.com; s=zohoarc; b=CdP75GiIPfuXJWl/fv3oZUPpyzO2my6MEO/EFVyhSK6VHwOBqNfCAmASIWoHoo6++vxkfNmuRTXQ44JcfbD4GfUPM+xoe3226nobmvAQsC/oICbtjCFQIU27XY6vvYzCMqYsCbdoK3OLiUPm4xH6sYM7qX5+z+ZDpUXP+873iZk= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1771916434; 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=f7paKfIGTgIbpcUtllL195d4TNIwB8mNoZ621E2KpbI=; b=KBG2AuIY0NgvY7YcCMc1pmdgXshJvkwramDsuFr3ji74pj1LjUcR0iKFFKhi4wrIH3Jo+oojMK4JvJJDqL18Cz4/YKdScBIL42UaUJpffuk6RYIPEwtOBwAHZLOdaRpNQXXLihItpRkmNsY/jJCx2FBGYTss/O1V0YfAKyBwWPI= 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=aspeedtech.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1771916434407551.6822049174718; Mon, 23 Feb 2026 23:00:34 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vumLa-0002Ou-M8; Tue, 24 Feb 2026 01:56:42 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vumLO-0002Hx-Ob; Tue, 24 Feb 2026 01:56:32 -0500 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 1vumLL-0005Ll-EX; Tue, 24 Feb 2026 01:56:30 -0500 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com (2603:1096:405:383::19) by KL1PR06MB6109.apcprd06.prod.outlook.com (2603:1096:820:d1::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9632.21; Tue, 24 Feb 2026 06:56:07 +0000 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3]) by TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3%3]) with mapi id 15.20.9632.017; Tue, 24 Feb 2026 06:56:07 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=XRYoZFo0VJRyj9+R2MmXeUgMAI1WE2W7qqrRwtHNU/mLCYwywFSAtJOztJzeo5f8nnzlyxfGQN1Q5iFAO1/6q+ncvMAnGOHlh54wo8FttOJdG6gUNeYeuk+odmAqmePxjG8VmSd/lfpmC2uQ3dddh+Pc63o8cEX2czTqu8mULGv/z8V7dccp248YoLnX0/qFtdobzMYfJ1PNKh31aF6MNUEidCNL5dVt/cRbMe6xa2R6NSDd0QfHmXLFV6cKzMS6/VCGNybCVI5oKo4ia0otd0VM8ZUo5SoPyTY3Ztxb+q8mf5iwNMBuhc1xrcDnFnV3twPH+vPxr834RB/eozKckw== 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=f7paKfIGTgIbpcUtllL195d4TNIwB8mNoZ621E2KpbI=; b=Pq76jARKAY68dKWmq+6sYjd98i5yUVOlGnvLM4oSxiEfZeCRdklNo6uIbWJ/8gBVGfplDPGFwPh9DchZcGsoxXXqiQWZlItSDMsNHOOLbGMpxhmdzidth4tCzztiUOZ7Yvhck8noRHgjN/1GzCi6x3PHyiDoBoVk0ieUAKuIit7lGruhU2f7pttPi+/L8ACs+dOKzmedt+SytdteJVFX0t8+dn6zg6SuFXhMsBSxu5S4NeMiGz7t45gLDmocmYw2A9SxceBb8Z26qAafTib6GbXgvgv8EjEBetrI8SImdBqQd6pJmSO8mNOoBcQbaJqaV0ANRJQVot6PJbZOuRaHgg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=aspeedtech.com; dmarc=pass action=none header.from=aspeedtech.com; dkim=pass header.d=aspeedtech.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aspeedtech.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=f7paKfIGTgIbpcUtllL195d4TNIwB8mNoZ621E2KpbI=; b=WupHtxR8rKJP7wjdw6rGMzzGbZ0yorbjQNZ2YSpvRQgF8edmMcPq5jynb7y0afe80b/TRUndz2betWwsXg4OXEkOBC4wLxO+56mg33Rd2gce9BOm4zyEkJzxCK75Lx7OlhxvTA41wzdiUxbMcVOeNdI1It+N82wqqLW5uq73QP67rgg4MskYPn5uH9OfAuDXfyQhABHPe65xt3hyQ9b4N/yCrzP+Smx4RU6YVi2o5iwAfGhV/VbKlEj1dGO1TNYMorykBwindUBL1fDobBkUiEx17jWdTdhK+fVsrJa1Qjx+8z35dZzH44kqAUxaGS1+FzxUNdOw4GbBY59cRPKjbg== From: Jamin Lin To: =?iso-8859-1?Q?C=E9dric_Le_Goater?= , Peter Maydell , Steven Lee , Troy Lee , Andrew Jeffery , Joel Stanley , Pierrick Bouvier , Alistair Francis , Kevin Wolf , Hanna Reitz , "open list:ASPEED BMCs" , "open list:All patches CC here" , "open list:Block layer core" CC: Jamin Lin , Troy Lee , Kane Chen Subject: [PATCH v3 07/15] hw/misc/aspeed_scu: Add SCU support for SSP SDRAM remap Thread-Topic: [PATCH v3 07/15] hw/misc/aspeed_scu: Add SCU support for SSP SDRAM remap Thread-Index: AQHcpVqmRLhwfF8aX0eQd2XkDnTYSg== Date: Tue, 24 Feb 2026 06:56:07 +0000 Message-ID: <20260224065556.3847942-8-jamin_lin@aspeedtech.com> References: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> In-Reply-To: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> Accept-Language: zh-TW, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=aspeedtech.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYPPR06MB8206:EE_|KL1PR06MB6109:EE_ x-ms-office365-filtering-correlation-id: 28e57185-437b-4c90-99fa-08de7371c8d4 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|1800799024|366016|7416014|921020|38070700021; x-microsoft-antispam-message-info: =?iso-8859-1?Q?rX3VKcdiSXfzr5nipU3nR9U+VN41g3F7n6Y6n3R461Q/JqjR1kNYdfMM37?= =?iso-8859-1?Q?UgbhGBKM5HZn3lEyE3YfN/Lb1YG6726fvve1MGEP0HgPyaBHEkAx2ah/17?= =?iso-8859-1?Q?qvM3lUY/ckfhAsBdI0pWduTfiI8lKKhpOHRSF4CK0fUV4QbKAzPgzTHH8E?= =?iso-8859-1?Q?9SOmQdbu1h1RD+pHSq32yGt4Fwc1JgE7QXgBJMmd0ytXprNsrKAM97TBSM?= =?iso-8859-1?Q?/QQUy68cjiMTQtnzi8zWuCmdo7hIKU2j8bdwYp26Zbv/Ban6WGmBd5JQIs?= =?iso-8859-1?Q?zzGCmPseOPdjTu2rW3vWMmNmRBE+aUkM6aECYdS2vVp/YHYmI4lhnQvW72?= =?iso-8859-1?Q?PkPsht62/2PVKAnj97SBYozdnKXCSsCJeqpWj3ruUzOb5nNyFyj1p7+GHt?= =?iso-8859-1?Q?8i3rJV3u85AInJL5Nis5lP/8JBGRD9IWL7QWl/8iP9J+bGaMWaTLX7pg/i?= =?iso-8859-1?Q?3V5JNN4lzCRn+JRVXdvFgrmqpGlBc4QCaauw8e6bKawROVPU1onoVBLok0?= =?iso-8859-1?Q?PW9KseJ6daOom+XM3UpGvdaPdv+X8nt+PDhmHg6JKcIaGEODNVIQ/x4IqD?= =?iso-8859-1?Q?XV40HwHp/do4CyfUGRh8G2l09PeMQYqrZR79vzaBaNu3GrvdooDbraUHQE?= =?iso-8859-1?Q?6W84h9wYC1UzLIrHoUcixVCmB4AMlvPOghRzRTT67n4jjIFzIYV1Weu6un?= =?iso-8859-1?Q?4x12cvkQQpDaO5uhi5DdFKMdwlqUcxLr7m8e+13EC2dSpcZhEiisf78o8u?= =?iso-8859-1?Q?eb5BBbpATL0cu8gs0Ehah49BVncMKsBiyIkl/bZl+23d6LXrha1Mo8g/S2?= =?iso-8859-1?Q?Xjg9ZEUYhy42GhBnsOTswsHOgtOEmUc8JWx9T1QIC7E7OkPfMkesQ8W64r?= =?iso-8859-1?Q?75y2eGInk9W5TcOS6fzxMjnCXFY6cggv8cuw3XdMk7c662mbPAgmU60nU2?= =?iso-8859-1?Q?a/HO2yZ/Uj5dRaVcy07s/dOf2NHK+QYskdr3Gqj5aHKHpt5pUkMSQgJJeO?= =?iso-8859-1?Q?3R65gyvaErglyvcuaF1EUHsFO5sJ6J3wvUVOLiuRwpS1XdEFhbmX44V7aT?= =?iso-8859-1?Q?Vjx9fnPxzPXhlgiKiVartGOgfc9A3gZ9r87+jOErUshV2dQgr8ocM8atbO?= =?iso-8859-1?Q?qwl/xSm05uJ163IAl1REmYtICOEv8KEqS26kJSrdfO7G8ZpmSU1PFNizOF?= =?iso-8859-1?Q?KpPE/pyR/8gehaoQ4eQ75pbjTQR8Iv9ZOZxMEV4z0onm0R5XiA20wt+L1X?= =?iso-8859-1?Q?4tp1OkcFUrcK5Fk2wqUeDX7O2d65l3OqYjOkc1uo7hmEwfDC5Hzc6/SBdq?= =?iso-8859-1?Q?tqobROdJnmKo6I+ySida2+eD1sfShTP3ucnQkPNNJb2W/yEbZjySK7AAkz?= =?iso-8859-1?Q?MuQqX9gL2l5z6pddom9vuZCR0bODF8EkBjwT9qn83fcPXDiH5fbzgtRrXP?= =?iso-8859-1?Q?YUiTkl44+yGq+jhMOcFB/QbId2isj+FGxo80yDWxgDxCAu4BHbGYAv1fuD?= =?iso-8859-1?Q?w6mLxILWbwXnjYCNbkiQdo94RSbIkwPXOP6DLpW42krlW3iBzQCHK8bV3E?= =?iso-8859-1?Q?zfFBJbQQTT9dg3AY/ROi6EI/hqjRkXrj8h7yAtscNbzTKXlHJchxIeT9pQ?= =?iso-8859-1?Q?EMzIfYqta5lAZZuPvjbu4RyOOUTuEFjLhaX3f2i2hj4bFaSiE1zycmlGJh?= =?iso-8859-1?Q?LkIoD0VXryuFP/wkKW5JDQGKzgNTl8DrhxP0843u?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TYPPR06MB8206.apcprd06.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(366016)(7416014)(921020)(38070700021); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?MF3H+k+eR6eUvOuxgj1Ym4x1ConG3QMLjeA8Eerlh2I94B0PRJNHIs3+9I?= =?iso-8859-1?Q?Wkto6ZOxnbK3ih1KZtSrpGc24PPnp37zzsDf+h95UG25XXDPSmA1pEA5BH?= =?iso-8859-1?Q?tC7LObGUVThihFZyFXmvJL7kP4m8ZoafHHexEtMzakAlVP56oaGAIf+HWY?= =?iso-8859-1?Q?A82SDUg8kVyDSTUPX+fX6sy7d7Iy6PPr5w3PIZy6esh07nfoPMbDUnLmuo?= =?iso-8859-1?Q?dcMzjOF6jntwNqVuGopOmH/E2y1ZIVrLiH+4QwqkRKDS5sE9PvRZ7gf7CW?= =?iso-8859-1?Q?Bb9VIFOXBcIz71CFWxrn8Z0kCyTcfSAx5vzjPVbHUr6KmE2XHpqJ0ksGhF?= =?iso-8859-1?Q?4V25R5yowXSPD7tCX9NpxLECzdtBuGKxQAPl0SHDRhb5wb2D1vk5VaDfNN?= =?iso-8859-1?Q?ml3FvpXwDyi164nxJe+Ad5YzGREcv3BIF4FsRt2DrzPQ235ynoJUTP3f6s?= =?iso-8859-1?Q?jQWyJKOsivXFL3thDMf2JXA0kGGpiDuRqu0uzvOZzjW/mZzSgDNFxGRaVv?= =?iso-8859-1?Q?N4t1RJIViHbJfOkjsF1xjNkDhLGIiCAofPT7sdeXGddGuliRKi12KsTYDd?= =?iso-8859-1?Q?5m8DHqHo0cJI8OkH+e0w+32+O7ff1apyLZuGQvYOltAX/qOxL56xMiybZx?= =?iso-8859-1?Q?e7Z3Xdepa7mb3lmJdA0JWkk5K8cm0QIkVwJQdd69Qi/0YUKZ97NlWzCNV1?= =?iso-8859-1?Q?PyH/im4QzjLT7aMTOOq1ysVUX7sHI5jUg9Q7akEvYomhvnGKFH7eOLxfmG?= =?iso-8859-1?Q?6g+a6OKUoHWXUBgqP8brawnXKmzZ57MMZJnHRRCETHAg01/vftGKdER19d?= =?iso-8859-1?Q?DU2I9z4XBPFrBUwxWA2sMm6LOmPwK2OnsjxyE9+70ctXOuqeD9Mete1Zi9?= =?iso-8859-1?Q?maHe739jlmfF7gYFrsHgSaduq5ogYlyXreU5OB/xpMrsTM97OSODEAH1is?= =?iso-8859-1?Q?ujzTKqUiI272rkg/G2IOv+TAmmWy3xvUK9A+ZMtmt+4tRr4dqM8Vf9o5tf?= =?iso-8859-1?Q?PJgeL6mQrRADwsqs4Z7rWbagwpOvh5m3OLbqalvq/K1h1x/Qy+Exv/AcRI?= =?iso-8859-1?Q?8/xHT9Z+MKdePp+W/Xdqo23qVTs8rIg9vfFAIBLP7RXJfV+mjAhvUfCNM/?= =?iso-8859-1?Q?jsJ3C+ns8ZaaTq+cKpo5Ucim+poDBrJFTGlt6lIwUQpoEnG5MNb+qF3QL7?= =?iso-8859-1?Q?1zDl8pMwrVtOSP6j01dKIuzJDafEBsDrmV2rPzRxwR++Jv45oKJq9HPi9X?= =?iso-8859-1?Q?jDquH5+2IzhlODsRhcCtQxvTb0UniNmTfEVcDqCDZEL9qxmMmjelzioyHD?= =?iso-8859-1?Q?Vi67Ty3a81KrZRDFDbzz70tMp2Y0PlTfK8+k6C23R93jfJ1mnwVraQYOPW?= =?iso-8859-1?Q?8fem4WOrXFlt6UyZoWrMb1gT/ev8++xgr16q2NSDppmnxNNbkbkotJk456?= =?iso-8859-1?Q?wIns+3C3Bx3zQXHNWXjjzBnpacjaniPXNJyfH6Mv38D0rwI53BpMljulrf?= =?iso-8859-1?Q?soTkayi/C8iaWvTrrBhnA+sz43JlmbZ50wkUS2i8ws2f6QlvpZMvuYaZUm?= =?iso-8859-1?Q?L0o27IEW38xS1GEIIeWQxhW/+wV1dVnYixEmgUC0XPaZY/RxIjcfnmYkDe?= =?iso-8859-1?Q?oKKtOPLH/Xczz0z3LppLU/LcHN0KYwGZx9Y3nqAHYGDc/1CgTgwjpFh/6t?= =?iso-8859-1?Q?GFozgm/oA6KnvgqrmM2FVzpGLW87W9QrLXITIyqrYpEheUxYpbZsTYJF1D?= =?iso-8859-1?Q?9cGCAbsVoikwiL5r7M4BNfFAP91Cxc0wNHM6AkecnXV4a4iSk796lCLYO1?= =?iso-8859-1?Q?iOF/q2DcUw=3D=3D?= Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: aspeedtech.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYPPR06MB8206.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 28e57185-437b-4c90-99fa-08de7371c8d4 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Feb 2026 06:56:07.0801 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43d4aa98-e35b-4575-8939-080e90d5a249 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: RGrjA3GNu4WX7cRvDtGryC/R9btpghgQ3Dn61EduWPPBdvSD7br2h6xRaEiRigWZ4f4WupXTxSiQTWcJuY2hwDhghDrzcQLaWzuYHj7wXd4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KL1PR06MB6109 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=lists.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c40f::6; envelope-from=jamin_lin@aspeedtech.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 @aspeedtech.com) X-ZM-MESSAGEID: 1771916435486158500 Content-Type: text/plain; charset="utf-8" This commit adds SCU register support for SSP SDRAM remap control and runti= me activation. It introduces logic for the PSP to dynamically configure the ma= pping of its own DRAM windows into SSP-visible SDRAM space, enabling shared memory communication via memory region aliases. - coprocessor_sdram_remap[0]: maps PSP DRAM offset 0x400000000 (size: 32MB)= to SSP SDRAM offset 0x2000000 - coprocessor_sdram_remap[0]: maps PSP DRAM offset 0x42c000000 (size: 32MB)= to SSP SDRAM offset 0x0 The SCU registers AST2700_SCU_SSP_CTRL_1/2 and AST2700_SCU_SSP_REMAP_ADDR_{1,2} / REMAP_SIZE_{1,2} allow runtime reconfigu= ration of alias offset, base, and size. |------------------------------------------| |---------------------= -------| | PSP DRAM | | SSP SDRAM = | |------------------------------------------| |---------------------= -------| | 0x4_0000_0000 (SCU_124 << 4) | --> | 0x0000_0000 = | | remap1 base |---| | | - SCU_150: target a= ddr | | size: 32MB (SCU_14C) | | | | remap2 = | |------------------------------------------| | | |---------------------= -------| | | | | | = | | 0x4_2C00_0000 (SCU_128 << 4) |-----| | 0x0200_0000 = | | remap2 base | | | - SCU_148: target a= ddr | | size: 32MB (SCU_154) | |---> | remap1 = | |------------------------------------------| |---------------------= -------| Signed-off-by: Jamin Lin --- hw/misc/aspeed_scu.c | 50 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) diff --git a/hw/misc/aspeed_scu.c b/hw/misc/aspeed_scu.c index 15c8b06487..e806b95935 100644 --- a/hw/misc/aspeed_scu.c +++ b/hw/misc/aspeed_scu.c @@ -147,6 +147,12 @@ =20 /* SSP TSP */ #define AST2700_SCU_SSP_CTRL_0 TO_REG(0x120) +#define AST2700_SCU_SSP_CTRL_1 TO_REG(0x124) +#define AST2700_SCU_SSP_CTRL_2 TO_REG(0x128) +#define AST2700_SCU_SSP_REMAP_ADDR_1 TO_REG(0x148) +#define AST2700_SCU_SSP_REMAP_SIZE_1 TO_REG(0x14C) +#define AST2700_SCU_SSP_REMAP_ADDR_2 TO_REG(0x150) +#define AST2700_SCU_SSP_REMAP_SIZE_2 TO_REG(0x154) #define AST2700_SCU_TSP_CTRL_0 TO_REG(0x160) #define AST2700_SSP_TSP_ENABLE BIT(0) #define AST2700_SSP_TSP_RST BIT(1) @@ -988,6 +994,7 @@ static void aspeed_ast2700_scu_write(void *opaque, hwad= dr offset, uint64_t data64, unsigned size) { AspeedSCUState *s =3D ASPEED_SCU(opaque); + MemoryRegion *mr =3D NULL; int reg =3D TO_REG(offset); /* Truncate here so bitwise operations below behave as expected */ uint32_t data =3D data64; @@ -1045,6 +1052,37 @@ static void aspeed_ast2700_scu_write(void *opaque, h= waddr offset, data &=3D ~AST2700_SSP_TSP_ENABLE; s->regs[reg] =3D (s->regs[reg] & ~0xff) | (data & 0xff); return; + case AST2700_SCU_SSP_CTRL_1: + case AST2700_SCU_SSP_CTRL_2: + mr =3D (reg =3D=3D AST2700_SCU_SSP_CTRL_1) ? + &s->dram_remap_alias[0] : &s->dram_remap_alias[1]; + if (s->ssp_cpuid < 0 || mr =3D=3D NULL) { + return; + } + data &=3D 0x7fffffff; + memory_region_set_alias_offset(mr, + ((uint64_t) data << 4) & 0x3fffffff= f); + break; + case AST2700_SCU_SSP_REMAP_ADDR_1: + case AST2700_SCU_SSP_REMAP_ADDR_2: + mr =3D (reg =3D=3D AST2700_SCU_SSP_REMAP_ADDR_1) ? + &s->dram_remap_alias[0] : &s->dram_remap_alias[1]; + if (s->ssp_cpuid < 0 || mr =3D=3D NULL) { + return; + } + data &=3D 0x3fffffff; + memory_region_set_address(mr, data); + break; + case AST2700_SCU_SSP_REMAP_SIZE_1: + case AST2700_SCU_SSP_REMAP_SIZE_2: + mr =3D (reg =3D=3D AST2700_SCU_SSP_REMAP_SIZE_1) ? + &s->dram_remap_alias[0] : &s->dram_remap_alias[1]; + if (s->ssp_cpuid < 0 || mr =3D=3D NULL) { + return; + } + data &=3D 0x3fffffff; + memory_region_set_size(mr, data); + break; case AST2700_SCU_SYS_RST_CTRL_1: if (s->ssp_cpuid < 0) { return; @@ -1115,6 +1153,12 @@ static const uint32_t ast2700_a0_resets[ASPEED_AST27= 00_SCU_NR_REGS] =3D { [AST2700_HW_STRAP1_SEC2] =3D 0x00000000, [AST2700_HW_STRAP1_SEC3] =3D 0x1000408F, [AST2700_SCU_SSP_CTRL_0] =3D 0x000007FE, + [AST2700_SCU_SSP_CTRL_1] =3D 0x40000000, + [AST2700_SCU_SSP_CTRL_2] =3D 0x42C00000, + [AST2700_SCU_SSP_REMAP_ADDR_1] =3D 0x02000000, + [AST2700_SCU_SSP_REMAP_SIZE_1] =3D 0x02000000, + [AST2700_SCU_SSP_REMAP_ADDR_2] =3D 0x00000000, + [AST2700_SCU_SSP_REMAP_SIZE_2] =3D 0x02000000, [AST2700_SCU_TSP_CTRL_0] =3D 0x000007FE, [AST2700_SCU_SYS_RST_CTRL_1] =3D 0xFFC37FDC, [AST2700_SCU_SYS_RST_CTRL_2] =3D 0x00001FFF, @@ -1146,6 +1190,12 @@ static void aspeed_ast2700_scu_reset(DeviceState *de= v) =20 if (s->ssp_cpuid > 0) { arm_set_cpu_off(s->ssp_cpuid); + memory_region_set_address(&s->dram_remap_alias[0], 32 * MiB); + memory_region_set_alias_offset(&s->dram_remap_alias[0], 0); + memory_region_set_size(&s->dram_remap_alias[0], 32 * MiB); + memory_region_set_address(&s->dram_remap_alias[1], 0); + memory_region_set_alias_offset(&s->dram_remap_alias[1], 0x2c000000= ); + memory_region_set_size(&s->dram_remap_alias[1], 32 * MiB); } =20 if (s->tsp_cpuid > 0) { --=20 2.43.0 From nobody Sun Apr 12 00:55:16 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=aspeedtech.com); dmarc=pass(p=quarantine dis=none) header.from=aspeedtech.com ARC-Seal: i=2; a=rsa-sha256; t=1771916269; cv=pass; d=zohomail.com; s=zohoarc; b=nbMk2mhS0IMMT24Ebcl1q+a2DWzGYT+2dTXbQxfu7tErHO9nKR/+NlGmrwHk4yVE08+xeOSqc0M6Oq5t1URqraaqEj48sNOA95xN8DY/xpAvgBcopGgc5VjO2hoU83/rvh6KGp7V8uMWkppjmwc/ZiJIR9/k/n+3STukwakVwiE= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1771916269; 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=909/AA7w1pR0SLoBsBsXxVHBD2o8blPO+bKUpJbIc3A=; b=HYPROl/FuJIRICvlpXirypvUN0YzpXnKrDLA0jvV0V1Sk1M4ba9xHBmyZmH29Yh9+FO+OC/b7tunX8uweK09Oxvn0zXw+CpVRGVUxAIvERyVBjtUOu8aMNPp5ntV0LwEulhZ0ohZ9F/7MUmkx0kia4ic/jMQ9cHOT9ZE1VBC0F8= 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=aspeedtech.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1771916269310336.6700795913264; Mon, 23 Feb 2026 22:57:49 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vumLY-0002NQ-GI; Tue, 24 Feb 2026 01:56:40 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vumLQ-0002Ia-EC; Tue, 24 Feb 2026 01:56:33 -0500 Received: from mail-japaneastazlp170120005.outbound.protection.outlook.com ([2a01:111:f403:c405::5] helo=TYPPR03CU001.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 1vumLO-0005Mp-SM; Tue, 24 Feb 2026 01:56:32 -0500 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com (2603:1096:405:383::19) by KL1PR06MB6109.apcprd06.prod.outlook.com (2603:1096:820:d1::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9632.21; Tue, 24 Feb 2026 06:56:10 +0000 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3]) by TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3%3]) with mapi id 15.20.9632.017; Tue, 24 Feb 2026 06:56:10 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=boQcyFohwppZdNaaFpiLoPMFzOWWZGov0Ld0Y6JS9a9Nx1cuSchNmJpLTNsuCYDB+Pn4tX7zpQttTJ1cwJ81QH9XsRoKe421QMbTL2ic7/R9tNzj8MyIVBOfHPoENkyObkIXz3OMgzan/NG/giJYPOGEi4v4StpIqPkLC9gAlIfHxCLeD0xj2pVClVSYNfXoDmFYvtmqbqC/m6yRebQ1m+eqfqC6s4K11dD3p/wkAytPRMLjafq0uMOzHUpa5ih99Kf2KI6ojLHWGe7e26C9beO9z0v155yxEov8rU/JaeZYREkrhk7ciTDvU+JsKIGw00USD48AJf9eBhFeNJ7NYQ== 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=909/AA7w1pR0SLoBsBsXxVHBD2o8blPO+bKUpJbIc3A=; b=Q1Ec7A02GxzjjXHa5FJwaEp8ku1HoI4sfPUhVMl6QkFjJ8/jJaRCBB0dp4/EANdyZ7okqzll1ctbEe9+WiNgmelpCUXNYIxgG69sRFmXP+/EB+hbAraGpZ7GH/j6BK83AqANGK9OweH9VT/x9ev24GzkwhE97kz/ZFiPy5u/REI7/IwRqYzywvmknFe994ibdlT7L5AYeIDPJsy9dUV/NCgu6ssBjXmePC6R4LfTMNJx+7am4odzhvW+f4NRS70YR1qhVMiIozwKTKKAd8XFCNcPXYQnVD4I+P9h2hQfD1NPOQmJNi0wZ83rcLz/U031bel/ZNSX1HXbzJwgS7LitA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=aspeedtech.com; dmarc=pass action=none header.from=aspeedtech.com; dkim=pass header.d=aspeedtech.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aspeedtech.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=909/AA7w1pR0SLoBsBsXxVHBD2o8blPO+bKUpJbIc3A=; b=kn73IxFFcjH+PCJmTnvqPykXP3Kjdhu6YjIxIV2DseIUif1Ikak50Ht2Q7tzV2sy8zFLdtaKpOUcvjSw202CRa5xoPrZqMxikDxadqomhkRVAdN5NG1bgRCXx4mofDhXXFnKK8EMTIibxXfY1vx4+gH1dHoXM98KePrNGdiABwkIs988t1eoZeFm+kn6htyHlmkBtvh9icU19UW7sNrQ7OGo+Z97XE5g34CnIdUO6qMa4ZrMqmUQ6fGINWRg0zCvqPYkfzPsyqu2BYaZz8wX1+yLsEMR0GsCCjW/9SOIyJ7vg92+iGuG/Q4IBN+qb3vfCxYbq9QP+fLKqgxJBKalQg== From: Jamin Lin To: =?iso-8859-1?Q?C=E9dric_Le_Goater?= , Peter Maydell , Steven Lee , Troy Lee , Andrew Jeffery , Joel Stanley , Pierrick Bouvier , Alistair Francis , Kevin Wolf , Hanna Reitz , "open list:ASPEED BMCs" , "open list:All patches CC here" , "open list:Block layer core" CC: Jamin Lin , Troy Lee , Kane Chen Subject: [PATCH v3 08/15] hw/misc/aspeed_scu: Add SCU support for TSP SDRAM remap Thread-Topic: [PATCH v3 08/15] hw/misc/aspeed_scu: Add SCU support for TSP SDRAM remap Thread-Index: AQHcpVqnrvR2iiqbokyUTAmTblO+aw== Date: Tue, 24 Feb 2026 06:56:08 +0000 Message-ID: <20260224065556.3847942-9-jamin_lin@aspeedtech.com> References: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> In-Reply-To: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> Accept-Language: zh-TW, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=aspeedtech.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYPPR06MB8206:EE_|KL1PR06MB6109:EE_ x-ms-office365-filtering-correlation-id: 18a06473-e0dd-463c-dbbf-08de7371cac6 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|1800799024|366016|7416014|376014|921020|38070700021; x-microsoft-antispam-message-info: =?iso-8859-1?Q?GcUtlFzlytXVCkz45oB0MFEvT2WvmOEkEmtVkIX0/rbIaFo40ZjRyPrixI?= =?iso-8859-1?Q?ZSlxvoJ9uZCtHCGxGE6v4FStXEiSACWGgZxbEqimPrC2XiZ9d9VUR5OgSA?= =?iso-8859-1?Q?p1HuJWyQmali3TH39mfsP6TEoqGvZX/3IeSUTQVMBxUGI6L6rmOE7VKWs7?= =?iso-8859-1?Q?o1z3gEdVNTbEME5I/R1MZYkj/MJI66XlH0r1u+lFYf4ur/2vweAFrH9BrK?= =?iso-8859-1?Q?2OHROHY6GUnF2oe+2USmfU0hAvGIbd7nWwzM7IJpl54k4U90REHdp3ieC9?= =?iso-8859-1?Q?lymSXy1b9LOoDJK6rNHIIasqOEuIXStvnlXBVj3YnYFRZVApIi4V+5JHZx?= =?iso-8859-1?Q?jZuGqYrJzAJxoPpuHXDziOcMIizqtUdgW3SLTSY18fM3CYPuS3waaKJz4i?= =?iso-8859-1?Q?mFjnVA6QBTGG1W42RBE/KeGbCR6S6tohc0757gpjIenE/bpYl9SjbcSZ8D?= =?iso-8859-1?Q?X60PKp4eppyOW2DTLTaYBx8KyZGEJvsNAuhBgyOPWHSv6/nQvmNadk0XaA?= =?iso-8859-1?Q?qxWuNVgzxDrrRCv5BgpgH0E1i/rrcb5vmds9Ak/YF8V+sb6kn1OWU4yxDn?= =?iso-8859-1?Q?6p8U8JQJzsxpclchMJJxIUaHgViYjP/TJEtlymh5a+typ2mni6eXI71rof?= =?iso-8859-1?Q?0O0RldpnFtFjIqwKW0di3TV79fMo+bJ27D58LCmG6ZxIFay+7dbNLAKN0d?= =?iso-8859-1?Q?FtTdfJ6D9VgGCGW9z61v/wUQ21C2BKPRBkeARhSNhjzIcsAnZi8uJ0+HWR?= =?iso-8859-1?Q?uQqe4pkqBXfqvJIsoh/fNdeQL4r0jwMjQhSNoPjL1f6J12MZXanhBLorTZ?= =?iso-8859-1?Q?RK0WaKaTaZr7/X1H/ocBxGq9x5nSt5dUfZcgv5nhKzNEPu5mJcTA7I20N1?= =?iso-8859-1?Q?DbhYVMYA260qkHMW0PcKgLwMeXIFurPQI0zc37dUfWOPltibPb1j0GOnRk?= =?iso-8859-1?Q?HbSNMZPdeP/81Ze8mZ8CnnR/Dpjxj3uP9AjOb9EMOAyh+N/vgK/Fu1SxuD?= =?iso-8859-1?Q?YlOrpPaP1NEqk4VFhdHEUeFgEVnF+DNpuZPnOIYAcrYiTRGCGx21bE4GmZ?= =?iso-8859-1?Q?tk24tka+XbBG+t+5oKH4bRWhe2OmjS0vz931Yj2ip0xluJcdxztMXsaQ2t?= =?iso-8859-1?Q?m5dqTRyPyG6jpS/Lmuxm5c01eWmlCh6wmIJnCKVBYPNhOuSS67rg5MH28k?= =?iso-8859-1?Q?gIMBqlDSQENDCW+L5/3ELSeWILfZCA4Pg0zEF8fX8ktfV0Dgb0JGjDwf1x?= =?iso-8859-1?Q?0ttVS5JkybdYWRoh8gFJoj93NZBy06t0qPDWDHvVSVjiO2FvmGJzfmiDg8?= =?iso-8859-1?Q?pLt2IMaZZaMIrXGpEvPnr6XtqLxegnnZHEYiXIo+go55bkqg1ln55hKTgC?= =?iso-8859-1?Q?TFYK4eeeRRKfmfGlKDz15Fw3UUPDmdMK7NeUS1+smTANnBMuftSmbWYCOp?= =?iso-8859-1?Q?WQIE2NKIUBLWMNgnzvREQ8kLaOpKf7puX4FWzuaNXS1l+gVRuFKd173rvp?= =?iso-8859-1?Q?IUA0yQi8QsLIwwQm0UxEAF4YBl5266kHCeVNNDbMDiHqiYMlIurWJakuIV?= =?iso-8859-1?Q?+X9CKU3iOaF+O3vhUVnSpJef6HMpagTiuNTorN4ugNXGDXrBvyd+cO0IJh?= =?iso-8859-1?Q?l4PpAwb+wMhuJPhoDEvd9FoTdsNfNYhLQGocXidZgQV6YEe4hIgKkwiHly?= =?iso-8859-1?Q?0cxlflvsfrhKIBJG9xHCd6yfRX+W/R/MScc12WiE?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TYPPR06MB8206.apcprd06.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(366016)(7416014)(376014)(921020)(38070700021); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?yBRvYJvMNF5DRQGjdXnFKMzW3yoj3Z2mHHbFUpFyKfHSug43jiBDMBv3VS?= =?iso-8859-1?Q?dzWMQvvX1w02Cx0sc1Ioi5bBG4QG3K03ATfbRAfGJrvfwewUInoblV5VE+?= =?iso-8859-1?Q?CbuDQHWt1n/tIF65/gnYwCTearrHhWGgNZlsCrtv5gGkgOKQmQykYeo4+E?= =?iso-8859-1?Q?meJobwxiyxMfEX5MVOQNfMTiiSQSwpa1fu25vl7pSGjL1u/xCM2n+7dPEh?= =?iso-8859-1?Q?nUAs9NNAJBwaJhDc6TYT+qZndXE31Q57OV0c6VE/6fNx4vOoNHpuMO09t4?= =?iso-8859-1?Q?cFv/7lx8CKsIhp0oDKuNm3oj3p9d3M1qWr3NtWSDMhtAeDkB8NhZCvpoI4?= =?iso-8859-1?Q?lMWCAZs1Y5Xk56Np5F6jSoXul5fGxNDlD7PRNCfqvaY14AczI6PL0DsXsy?= =?iso-8859-1?Q?oZDDaf7A4okKP5g3LvxCLwfD9Pd+bYO824TWc45M/zZXiIhmKuMijTogum?= =?iso-8859-1?Q?OcfILQfyv4yDriTwZaJ22HpUIddD0eeZHenak3DcrBttuyWaCaB+21tc93?= =?iso-8859-1?Q?BDxN9k4PbVU/NigspXLvg6n/RtsvcQ9XBHrR8pcoO4hiJG+YeapNhgfhAh?= =?iso-8859-1?Q?bTAicDy946/gXsNoIhMnq6Ai5bmIrjMcGccJ7mjdubKmX+oTu9kVYygFXK?= =?iso-8859-1?Q?Hj0gzbVg8ZxSeGSiJBRLYLX+BFAdXasPVB9tqTMZo10PYD6qYggEvSbYmP?= =?iso-8859-1?Q?wbBSsG+MaKMJ4um7Y+6h3wgv3smF4q+VTer9whtjZLPSFLZLpexWAcxlya?= =?iso-8859-1?Q?2AqBJHz7YwvUUVITv9dLoYyCQqJ/sezWvnkKEetB+1q/N4k9n6AVpDqQxw?= =?iso-8859-1?Q?iVc62g5tP0YmmoMEVMSlDyPN/o2qz275WGr8KT360h52BH6EAIeQ8KnZ95?= =?iso-8859-1?Q?FLjj+9xw4h/gwj3jsuKRRySuwLLZ8hbPZ5HxH/nWIfmQ0Q8RfLwMvKm1Gm?= =?iso-8859-1?Q?0Q++hcWhCLaiIWakRGJOCbxun1+fFjY4Rr8gNVdlFEpC34fQ8Nhl3KiRfl?= =?iso-8859-1?Q?6ahwVpt/58kjb9BTdTpsXM2jdT7LRqMbtUKS4pXkCR/k2YwPdUy1yvcd5x?= =?iso-8859-1?Q?zh1M7dAoCY/4eM8uMhI3HcQuaBTFcSedc5q52mNKSygNjGICFZG/G6tC5P?= =?iso-8859-1?Q?YASK11T0Cid2jnldwNxcpqmi0zj5FFTo3sz2DeIkX7oO40tnH0/b6UB/be?= =?iso-8859-1?Q?IxNPWNccyEFTcvtlKLir+AbSkeoyBCLje0Qa1f1TXzZFogWYqKTkBEvkxi?= =?iso-8859-1?Q?wam64Lk2yTd5S72MYrwWq/xzvYSYXfG/wGvpHnV3utokxHngHwz1u3nBnX?= =?iso-8859-1?Q?SeKszlODgmeCDNpCMAtneOhFVK8Wwo93ebl91DMtZkZ4Kw1lfboTmnfef2?= =?iso-8859-1?Q?uNo1yRCBPIiWgx0JlkBpz0tOucAfXP+AAWXYOLsvLoWt7fyY022vIXwsSB?= =?iso-8859-1?Q?NCpPGTJNXtdUWOSiz67Rrr5R3iaWHUMToXnu4s2qf1rIt6FPT1HkMkxkiQ?= =?iso-8859-1?Q?fC9Xx0eSUGwfVZmQr0+Fg668Ty3Jt8ekaZnIrU0urFEm8h37teXHnBE0bu?= =?iso-8859-1?Q?YUMMOvRhVX2QkGK0KVlRIBJ6M0wpSR4JxiNuO6mHSgWD3vNLvUeokjzatl?= =?iso-8859-1?Q?xBfc345pHR7nRDVmRMaxISS7V6RpyPCzVW0lHdbJgQyZyX9SKlSwlLUloB?= =?iso-8859-1?Q?eD8cYUYCCqpXeLGUK9o73+bXPwZ3Z7WE3VK2zSSsSwidbLYkqoohbLvs9l?= =?iso-8859-1?Q?TQkaamTK20Jm1gH1/DVYg0BOuiDu3f3NnXdAXGVA2exDSfhvbDB0XdgcLu?= =?iso-8859-1?Q?b0A9y5uU+A=3D=3D?= Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: aspeedtech.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYPPR06MB8206.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 18a06473-e0dd-463c-dbbf-08de7371cac6 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Feb 2026 06:56:08.4885 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43d4aa98-e35b-4575-8939-080e90d5a249 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: 8v9qTnInGmY586rhFkpr6lMIsJqmpV2AwnvEVGR0SF3o3sVzV3M3US2QS6oONmFgJ+OSNv8ytepmavRl0GmtmB7aB6x4uEiVl4IGnHF4l2Q= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KL1PR06MB6109 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=lists.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c405::5; envelope-from=jamin_lin@aspeedtech.com; helo=TYPPR03CU001.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 @aspeedtech.com) X-ZM-MESSAGEID: 1771916270849158500 Content-Type: text/plain; charset="utf-8" This commit adds SCU register support for TSP SDRAM remap control and runti= me activation. Unlike SSP, the TSP does not support configurable target addres= s remapping through SCU registers. It only supports setting the PSP DRAM base and size,= which are then aliased into the TSP-visible SDRAM window. coprocessor_sdram_remap[2]: maps PSP DRAM offset 0x42E000000 (size: 32MB) t= o TSP SDRAM offset 0x0 The SCU registers AST2700_SCU_TSP_CTRL_1 and AST2700_SCU_TSP_REMAP_SIZE_2 allow runtime reconfiguration of the DRAM base= (alias offset) and mapping size. |------------------------------------------| |---------------------= -------| | PSP DRAM | | TSP SDRAM = | |------------------------------------------| |---------------------= -------| | 0x42E0_0000_0 (SCU_168 << 4) | | 0x0000_0000 = | | remap base |------> | - fixed target addr= | | size: 32MB (SCU_194) | | = | |------------------------------------------| |---------------------= -------| Signed-off-by: Jamin Lin --- hw/misc/aspeed_scu.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/hw/misc/aspeed_scu.c b/hw/misc/aspeed_scu.c index e806b95935..df435016ea 100644 --- a/hw/misc/aspeed_scu.c +++ b/hw/misc/aspeed_scu.c @@ -159,6 +159,8 @@ #define AST2700_SSP_TSP_RST_RB BIT(8) #define AST2700_SSP_TSP_RST_HOLD_RB BIT(9) #define AST2700_SSP_TSP_RST_SRC_RB BIT(10) +#define AST2700_SCU_TSP_CTRL_1 TO_REG(0x168) +#define AST2700_SCU_TSP_REMAP_SIZE_2 TO_REG(0x194) #define AST2700_SCU_SYS_RST_CTRL_1 TO_REG(0x200) #define AST2700_SCU_SYS_RST_CLR_1 TO_REG(0x204) #define AST2700_SCU_SYS_RST_SSP BIT(30) @@ -1083,6 +1085,23 @@ static void aspeed_ast2700_scu_write(void *opaque, h= waddr offset, data &=3D 0x3fffffff; memory_region_set_size(mr, data); break; + case AST2700_SCU_TSP_CTRL_1: + mr =3D &s->dram_remap_alias[2]; + if (s->tsp_cpuid < 0 || mr =3D=3D NULL) { + return; + } + data &=3D 0x7fffffff; + memory_region_set_alias_offset(mr, + ((uint64_t) data << 4) & 0x3fffffff= f); + break; + case AST2700_SCU_TSP_REMAP_SIZE_2: + mr =3D &s->dram_remap_alias[2]; + if (s->tsp_cpuid < 0 || mr =3D=3D NULL) { + return; + } + data &=3D 0x3fffffff; + memory_region_set_size(mr, data); + break; case AST2700_SCU_SYS_RST_CTRL_1: if (s->ssp_cpuid < 0) { return; @@ -1160,6 +1179,8 @@ static const uint32_t ast2700_a0_resets[ASPEED_AST270= 0_SCU_NR_REGS] =3D { [AST2700_SCU_SSP_REMAP_ADDR_2] =3D 0x00000000, [AST2700_SCU_SSP_REMAP_SIZE_2] =3D 0x02000000, [AST2700_SCU_TSP_CTRL_0] =3D 0x000007FE, + [AST2700_SCU_TSP_CTRL_1] =3D 0x42E00000, + [AST2700_SCU_TSP_REMAP_SIZE_2] =3D 0x02000000, [AST2700_SCU_SYS_RST_CTRL_1] =3D 0xFFC37FDC, [AST2700_SCU_SYS_RST_CTRL_2] =3D 0x00001FFF, [AST2700_SCU_HPLL_PARAM] =3D 0x0000009f, @@ -1200,6 +1221,8 @@ static void aspeed_ast2700_scu_reset(DeviceState *dev) =20 if (s->tsp_cpuid > 0) { arm_set_cpu_off(s->tsp_cpuid); + memory_region_set_alias_offset(&s->dram_remap_alias[2], 0x2e000000= ); + memory_region_set_size(&s->dram_remap_alias[2], 32 * MiB); } } =20 --=20 2.43.0 From nobody Sun Apr 12 00:55:16 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=aspeedtech.com); dmarc=pass(p=quarantine dis=none) header.from=aspeedtech.com ARC-Seal: i=2; a=rsa-sha256; t=1771916352; cv=pass; d=zohomail.com; s=zohoarc; b=MTFf/jl4fCQN5D3Q5UxvpvR4iww8i4Wm0WDRwrltZ5NuHSTdo3d2HBUluIpKbkYoV3CCQd7Yz+hNCJxJscUE36CjL5T5H6Qk3v6tPcEmR8fUAim+2rRnt6z5mkLWkhjw2VcVAI6m5hAikMwZ9Sv2rwXZZp/bA99XWiMVxEXwiAs= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1771916352; 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=pAhaFt4rCfCt0CBFA240zsVvKXWCFcXbjAPPbhf/fCQ=; b=nzSI5Y2V8E3UTQrH+tR4VoHKZ+8HZ1Eddv9u3yxFwYcwdZSr/33X5cZI9TVjrbJ0FL/8GsaRHMG1iPmNQ+Yt02e8sqOeBUImzrcdp+yqvaIx04geLAz/QvIKyCKFtAblZhQ3Hm/Yljds9v82MkaV7pwWyN90nLScGf2VP5yy5ZA= 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=aspeedtech.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1771916352086308.4371400860101; Mon, 23 Feb 2026 22:59:12 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vumLb-0002QE-Fx; Tue, 24 Feb 2026 01:56:43 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vumLQ-0002Ib-RL; Tue, 24 Feb 2026 01:56:33 -0500 Received: from mail-japaneastazlp170120005.outbound.protection.outlook.com ([2a01:111:f403:c405::5] helo=TYPPR03CU001.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 1vumLO-0005Lc-SW; Tue, 24 Feb 2026 01:56:32 -0500 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com (2603:1096:405:383::19) by KL1PR06MB6109.apcprd06.prod.outlook.com (2603:1096:820:d1::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9632.21; Tue, 24 Feb 2026 06:56:11 +0000 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3]) by TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3%3]) with mapi id 15.20.9632.017; Tue, 24 Feb 2026 06:56:11 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=H6PR5cRSSaq5V3NM5M3kISet2Dl9DMkeqRxz2AWRn+8TA8sGMIzcmGsKGRWhl5dYbf08sCXOhpOalLVFC4HDnoIPpZd9zhxUAUmzk4zE8XYDw6Z5VGUXnaVJ18dj/ABb5mQhb3bSEHx0UHQlDW6Y2evPvnDaZYq2NgLWlcPrFdO66FntJxyA9ZxXJvpcoRG7mB70mzVX+KeNPo+HLm+3dLLEHmtIOrTbZMqWCUopsT4uO2yNsUCVVAlH5G2w196wBhO5rl5dupFkbwkTytLDkW+7iDouQapKnms8X4Yoh0dVUUDBV0ythi5ppIneW/xAcKRtZkXOnvs2yNOZwmdZtg== 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=pAhaFt4rCfCt0CBFA240zsVvKXWCFcXbjAPPbhf/fCQ=; b=qj+zZXOEeq+TU9Wy4mjsgMOxq3tnMW99ca492it8N4xHsKy4lECp+pn84aoTwJKPw002PuL1g+wE4Knb2SsGcFeU8WueoiSiV4leoSJy/gLVPEdtG+nxTwUXn3BsJnwE4XVUyqanwEqJwA/u4MVqxoiItYy+vhBdPj8nWhc8YwanQ+dMpiG7xSkRx2PxxvY7CLoLs4kPEEKQr9IqgquYPS48YMwWTspNr/q2X6hlI+KQ6RtaqB6kjw3Vwkr6ijiKAE0sd5Di2tP0iCgRfBeSfQ7AmDYKWKaeXKrVAEUXXpj+v/lAYp8tAPk8tWkoi7i2tmItLnMcvKy0ri89aoW8bg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=aspeedtech.com; dmarc=pass action=none header.from=aspeedtech.com; dkim=pass header.d=aspeedtech.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aspeedtech.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=pAhaFt4rCfCt0CBFA240zsVvKXWCFcXbjAPPbhf/fCQ=; b=EZG2LrCz+cvJkIYk/ZQRwO5Af2ZX6SREKtw4oKtrfc5Q8n+MLJJKIWyLiGO2LtLxe9VsnHkTbf0x9IgY4cE7p2t+6XqiN2Tac0sClA5WOmd7hwebi36Du8yxyhGekyRbGsgJ1lA9dEiFvfvF8/3sBAgZi3h2zYxbbA5+M3iXOQ9qCQzZ/BOFogxw8E5JtWstznxk6lL/5EK3Bzpqn2nVtaaaRFOszC2DLqe/kuWdFuTSHX7JQKJrwXDctBrG/0z8zgKkNKb8V5aAxixb2dtezVNmW9JGq3pZ5b3SlF5ADJY8ejEdRw3u3dFce/JcOLPiWYqHYZxPtDjk/WMZzOTydg== From: Jamin Lin To: =?Windows-1252?Q?C=E9dric_Le_Goater?= , Peter Maydell , Steven Lee , Troy Lee , Andrew Jeffery , Joel Stanley , Pierrick Bouvier , Alistair Francis , Kevin Wolf , Hanna Reitz , "open list:ASPEED BMCs" , "open list:All patches CC here" , "open list:Block layer core" CC: Jamin Lin , Troy Lee , Kane Chen Subject: [PATCH v3 09/15] hw/arm/ast27x0: Share FMC controller with SSP and TSP Thread-Topic: [PATCH v3 09/15] hw/arm/ast27x0: Share FMC controller with SSP and TSP Thread-Index: AQHcpVqoLT3TLepfyEqLMEaddPDyBw== Date: Tue, 24 Feb 2026 06:56:09 +0000 Message-ID: <20260224065556.3847942-10-jamin_lin@aspeedtech.com> References: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> In-Reply-To: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> Accept-Language: zh-TW, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=aspeedtech.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYPPR06MB8206:EE_|KL1PR06MB6109:EE_ x-ms-office365-filtering-correlation-id: e71a3867-bde7-4af0-6c1e-08de7371cb35 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|1800799024|366016|7416014|376014|921020|38070700021; x-microsoft-antispam-message-info: =?Windows-1252?Q?lcF5fBiIB7qvMLHacUuoOpYpoF6Utu0E09ajAUCyiGnz3zRocC6Oo01n?= =?Windows-1252?Q?94L0SOKXXtK5l8pIuM/4UbZ5mTaECexqBP+hSDxe5S/wgCCVAkPzXdke?= =?Windows-1252?Q?SrY3kMdPcsj4xkh8uKJeLUFnY87eIBnlhmhcw1pAZOq0+FpsgzzolzXs?= =?Windows-1252?Q?SCZBhusB6oJI0Rn+ztWWIEF9W+7f6xcYR1/fIXqTeN9sZbeLMaF1M8UH?= =?Windows-1252?Q?ykkgQDr1ZWSORdV/7B9d3dTko1P//b6StZB8oob/jrtA2nfOARz3UbR9?= =?Windows-1252?Q?NseuH+SJQxeJj2XYmFnDD1WSsmDmF3bpJKl3fNcO3bDu/43MqQ9yJkb4?= =?Windows-1252?Q?t7XqdOqMGICWWpbhd/9gzhJRBRTYNpJMU1wywHR/tnjKX7Rgh8MEee/0?= =?Windows-1252?Q?NPgZ4Fn92A4cVTlSxTUSVX0eZ0J18twLWA7y2JnEKsqNj81yfsrlGxam?= =?Windows-1252?Q?jlqo6yG/PYzyzYlvOtVMvUd2vLg8BrVTh7fm+rW9neL7KPp1/cOfDzyw?= =?Windows-1252?Q?dNLboaSfvo08rfrKZVWhIkmbs+/PrTcDywc+ociEK9yjH4JL+0HB6PNB?= =?Windows-1252?Q?I1e6NktfwvqynuNyag3N0K1AZD86xIxk8nYV8hebfN41+cyOyk0mzyIi?= =?Windows-1252?Q?hA8vNl6f3z4FBa5hSjgUP9d0dMrXuUbBVsS3LQFU06J1p5YWlRnQH3FY?= =?Windows-1252?Q?3q/z59oDH3PMS4iM3tRe5/BGdgtqeCz0kK0FFJa20f5BeXpzv6QJdgRe?= =?Windows-1252?Q?x7pXPWGA9ldNzFhPwq9MYMDjP9PG6ohwTcE0kb9ZqDds8WZbGb7ynS7S?= =?Windows-1252?Q?ASy/U1EOqk8R8oblAXsrd/9nu6sDBqof/5i7gyEA0C0JPwMI/PPXviOz?= =?Windows-1252?Q?Oh7Pi75PHPr2i/HpyPz8MFQPDVimdRX3ksn3Z2DnSxzEp52Dl17lDj5e?= =?Windows-1252?Q?glw6jQUfOnZXM+JXEknTm56d4XB+IAYlsY83a2j9jzYcFQ0nk5nHxFum?= =?Windows-1252?Q?l/b7LXNkZpe7tbfs96PfY/NkV7MgXnQwiVoosm3vQV/yM/4Kreeg6Zet?= =?Windows-1252?Q?CFIDIrOm/QAhbF6tBGpD5irF5r3YcULfvGjJzAk4qk8VYjLg8He0iOo3?= =?Windows-1252?Q?U+uDV8kHMAmnfNl6ojfQ8rVkScK6XcLhl/fVFRi3iX5DW09YgJ+pn6/Q?= =?Windows-1252?Q?QiGjtm7kmTISk5b1a8P2ogQFLgNa294ffl9xKD+dj2XVXW0508yxGX1X?= =?Windows-1252?Q?fgRQNSH7IOV+wA+UdrcwnwU7w1IWJN3lyz7XXLBft+9y2vcsHyHC2N47?= =?Windows-1252?Q?ZOZ8S+DSSweJGC9zjL+zpBjxk/5TrvHlQjX3V9VFLEuKRFEzsQT/J9H7?= =?Windows-1252?Q?ljCM8VCgiwhKnqvWDPPT8UNeymxhVZdCVY82uNX6SaWZA5UCrryPAcN8?= =?Windows-1252?Q?BbxREtlGbXujso8UdnwoLhSyt88Cr8olV/SnaTt0VgmNXsH8ivAv1deK?= =?Windows-1252?Q?sxXslm6QywC00RAIB0pTEcnzpqYa2yaaehyC5J5KsjoLCN3USS0Jxrh1?= =?Windows-1252?Q?+EaZuB82MZFZXXFO4P/XcuX0cneaAnOwlY6H2lhHiIbhLzU5poih55eo?= =?Windows-1252?Q?YBa8KHlHfcuNqKl2h3/YMv0kTyDd83p6OdGCLZS7wjIJAfWvqBVZmrht?= =?Windows-1252?Q?vg5TBK2pEbYm8cbqBtVp8zCKasmciZ/csO3qSXUeMS/Pjwdsc5mWK2Yn?= =?Windows-1252?Q?XvCzVmEl7W9WirjiM2UjLtNIGv2lTSUIej6tgNIB?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TYPPR06MB8206.apcprd06.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(366016)(7416014)(376014)(921020)(38070700021); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?Windows-1252?Q?xOimel6doDzpI52ZBsAddbYA310tT4/E5kkH7hSxVgOmiUswMV7/QE+w?= =?Windows-1252?Q?0zGUyw66g8bmp1BZ93b7KcV8y43yXEcnJUbGz3RUgyAlZsYae+f4Yji9?= =?Windows-1252?Q?GERIN/qm7kZup9T1cOFnO0AoaFpHdy60jRwG6bouBoBqByyCd6z4JKXj?= =?Windows-1252?Q?aCZ0m/wQo6PQNq61qPbZZyBkivVLJLp6F8gSsvxHJbBM3bsjJRoNlP7t?= =?Windows-1252?Q?mqnntqSgIGvEm8Pwy4asMFiVt73l7Jdqaidfb1QwOAkuIvpIOsFN71Ft?= =?Windows-1252?Q?2lpYrm4aPcLjKRs7WX//zS27FgDvOJtxE5bau4xPgoEbQxtlrNXyOrsC?= =?Windows-1252?Q?krkTmhtdm5YgTJwPjGHTu439P42fp1tVRjDRgBM5vSf4ThsJenHOO/Lh?= =?Windows-1252?Q?Lc4mLEQ1NyOJopmu8H0qxuXiuYs1bj244PubPNKiwDOTGkcVCwRy2Z8b?= =?Windows-1252?Q?oTg2p8ONVrZSg/qlNOCtfLk4iCbEZnY+eZua7meLoiKGFxOdn2KPxKGz?= =?Windows-1252?Q?+lh+7SlMvsn3k5C1mpLB67EhG8isG4lEWMbDSlsHAY5GPu49xhoS4Ki5?= =?Windows-1252?Q?jurFRI5xpHmjV3SnDW8eTSZUKpYh3nWzYRTfw33Dy8PmOuUUW9getLuK?= =?Windows-1252?Q?OU/jAC9fxAjUlXp5WpJxjOxya3qlIKr+cX3fYjnnH+PklYQSTUwv1viY?= =?Windows-1252?Q?ZzPT2XuTxzE/W2aa4Pas+ONqJ/Hgb+OtdEP8XU294+WtcDYR3rUCaIWV?= =?Windows-1252?Q?ajOHpe7r3z652qP7BEvAtZccux9vyLYtIIqTLPaApcW8FjcHrEuWCrrY?= =?Windows-1252?Q?afmUcbeeAvNJfdTgeSGpDI1wcStAr5bi5S9qixm7Xs2XovpkwXDe8Oa8?= =?Windows-1252?Q?A1H5EE7S/xhAyuF7C09ytMMBosbHfZirjhfvGHbbhViz37502HwvJAbm?= =?Windows-1252?Q?eLUSrAtTmtR+IAd6uXLnj8XWF8tVJcS2sgjJXBlUCqQR+L73iQb+74cQ?= =?Windows-1252?Q?LYBjW8kv/ZgyCmlm1qAj1RbmWr0//UcmHTfIJyiH+nUZcpijkiJrrWs3?= =?Windows-1252?Q?icHaYi5lrzsOL9GYk88w9mwD1sf+P8NzFPkw4DoMnU/ugRLfsP2iZa6Q?= =?Windows-1252?Q?F9hows9dOs8kTEEF+xaLfFj+ovpQghVsx6h8CaKN/1+lp7pfOplcJdJ9?= =?Windows-1252?Q?a/fBmu8+/b+ZFKMysBBHymK4wBIId0uLLMgmrjUAW2OcUUqEMphnEs2p?= =?Windows-1252?Q?YfM8i9jC1Yo5eGNSxiGxF0be227Fosx/KsFti6LTuB0e8yeemFnAY8+Q?= =?Windows-1252?Q?D2NhSmGeXPxS/rs9AIKSvyL2MqOXYFOYnzxJlFHdiqMMOvi/3MlNCwj6?= =?Windows-1252?Q?Z8ErJHJZikhcDDu9bI8aaCp73H+IugATiMzoxlTQ8mXoKoqftReHjDOU?= =?Windows-1252?Q?TGlEbhBCWdd2CCXo8/NtFS5R6l5MCJCeu3EPCqmETWOWwdp6kSFUVTRO?= =?Windows-1252?Q?mdk+3TxaAaxKUqMFUQAR0E/D/WKtDAtFnr1GfxrZwMXB/f8GpoeOHY7u?= =?Windows-1252?Q?88K/QI9Muz5bbp2J7lDjCywKlhTLZMQw0vcG3/JBhlu4SIAjT57z2djX?= =?Windows-1252?Q?rK6oErd/jHGdL02B+kaPN06hkkE+YV1InqjEOweKitAIHHKi4NHPJp3G?= =?Windows-1252?Q?BX60boE4kt8FGp8jDCCyyLModg+hBrDlnM1f0IVnxHII47Fpj75B9R/+?= =?Windows-1252?Q?SAGwOHqqBg/r9jKYlg0txgZ7fS8tfzLNEIcBDnjDxI7krompBGHFO+BZ?= =?Windows-1252?Q?puFLVLp6/ma1/SKgYtfvmwLJndPCDGIZnWjTjJmahEuSNTq8pRFWltJL?= =?Windows-1252?Q?AUyeFOWGA8uFWw=3D=3D?= Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: aspeedtech.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYPPR06MB8206.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: e71a3867-bde7-4af0-6c1e-08de7371cb35 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Feb 2026 06:56:09.8866 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43d4aa98-e35b-4575-8939-080e90d5a249 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: fzVwmygS5nTLCJhSJCSMxGBb7Lk67K33V4+RyD7Wf9zmpEXT6oK5vAGWZZS4DOFhD5lHkc6N3iWe6a0hMB6IU64Mfw2sjpsFkhzDyL4NRE0= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KL1PR06MB6109 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=lists.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c405::5; envelope-from=jamin_lin@aspeedtech.com; helo=TYPPR03CU001.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 @aspeedtech.com) X-ZM-MESSAGEID: 1771916353139158500 Content-Type: text/plain; charset="utf-8" AST2700 provides a single FMC controller shared by the main CA35 processor (PSP) and the SSP/TSP coprocessors. From the PSP perspective, the FMC controller is memory-mapped at 0x14000000=E2=80=930x140000FF. The SSP and TSP access the same controller t= hrough a different address window at 0x74000000=E2=80=930x740000FF. This change allows the SSP and TSP SoC models to reference the existing PSP FMC instance instead of creating independent controllers. An MMIO alias is added in the SSP and TSP address spaces to map their FMC access window to the shared FMC device. This ensures consistent FMC state across PSP, SSP, and TSP and matches the AST2700 hardware design. Signed-off-by: Jamin Lin --- include/hw/arm/aspeed_coprocessor.h | 2 ++ hw/arm/aspeed_ast27x0-fc.c | 4 ++++ hw/arm/aspeed_ast27x0-ssp.c | 8 ++++++++ hw/arm/aspeed_ast27x0-tsp.c | 8 ++++++++ hw/arm/aspeed_coprocessor_common.c | 2 ++ 5 files changed, 24 insertions(+) diff --git a/include/hw/arm/aspeed_coprocessor.h b/include/hw/arm/aspeed_co= processor.h index 4a50f688ec..8d45c0b9bc 100644 --- a/include/hw/arm/aspeed_coprocessor.h +++ b/include/hw/arm/aspeed_coprocessor.h @@ -21,11 +21,13 @@ struct AspeedCoprocessorState { MemoryRegion sram_alias; MemoryRegion uart_alias; MemoryRegion scu_alias; + MemoryRegion fmc_alias; Clock *sysclk; =20 AspeedSCUState *scu; AspeedSCUState scuio; AspeedTimerCtrlState timerctrl; + AspeedSMCState *fmc; SerialMM *uart; int uart_dev; }; diff --git a/hw/arm/aspeed_ast27x0-fc.c b/hw/arm/aspeed_ast27x0-fc.c index 38c5d06077..12bbefa825 100644 --- a/hw/arm/aspeed_ast27x0-fc.c +++ b/hw/arm/aspeed_ast27x0-fc.c @@ -161,6 +161,8 @@ static bool ast2700fc_ssp_init(MachineState *machine, E= rror **errp) OBJECT(&psp->sram), &error_abort); object_property_set_link(OBJECT(&s->ssp), "scu", OBJECT(&psp->scu), &error_abort); + object_property_set_link(OBJECT(&s->ssp), "fmc", + OBJECT(&psp->fmc), &error_abort); if (!qdev_realize(DEVICE(&s->ssp), NULL, errp)) { return false; } @@ -193,6 +195,8 @@ static bool ast2700fc_tsp_init(MachineState *machine, E= rror **errp) OBJECT(&psp->sram), &error_abort); object_property_set_link(OBJECT(&s->tsp), "scu", OBJECT(&psp->scu), &error_abort); + object_property_set_link(OBJECT(&s->tsp), "fmc", + OBJECT(&psp->fmc), &error_abort); if (!qdev_realize(DEVICE(&s->tsp), NULL, errp)) { return false; } diff --git a/hw/arm/aspeed_ast27x0-ssp.c b/hw/arm/aspeed_ast27x0-ssp.c index 4a9c8c1406..8efaaacb8f 100644 --- a/hw/arm/aspeed_ast27x0-ssp.c +++ b/hw/arm/aspeed_ast27x0-ssp.c @@ -26,6 +26,7 @@ static const hwaddr aspeed_soc_ast27x0ssp_memmap[] =3D { [ASPEED_DEV_TIMER1] =3D 0x72C10000, [ASPEED_DEV_UART4] =3D 0x72C1A000, [ASPEED_DEV_IPC0] =3D 0x72C1C000, + [ASPEED_DEV_FMC] =3D 0x74000000, [ASPEED_DEV_SCUIO] =3D 0x74C02000, [ASPEED_DEV_INTCIO] =3D 0x74C18000, [ASPEED_DEV_UART0] =3D 0x74C33000, @@ -255,6 +256,13 @@ static void aspeed_soc_ast27x0ssp_realize(DeviceState = *dev_soc, Error **errp) sysbus_connect_irq(SYS_BUS_DEVICE(s->uart), 0, aspeed_soc_ast27x0ssp_get_irq(s, s->uart_dev)); =20 + /* FMC */ + memory_region_init_alias(&s->fmc_alias, OBJECT(s), "fmc.alias", + &s->fmc->mmio, 0, + memory_region_size(&s->fmc->mmio)); + memory_region_add_subregion(s->memory, sc->memmap[ASPEED_DEV_FMC], + &s->fmc_alias); + aspeed_mmio_map_unimplemented(s->memory, SYS_BUS_DEVICE(&s->timerctrl), "aspeed.timerctrl", sc->memmap[ASPEED_DEV_TIMER1], 0x200); diff --git a/hw/arm/aspeed_ast27x0-tsp.c b/hw/arm/aspeed_ast27x0-tsp.c index 6c0f166a34..b7ad828528 100644 --- a/hw/arm/aspeed_ast27x0-tsp.c +++ b/hw/arm/aspeed_ast27x0-tsp.c @@ -26,6 +26,7 @@ static const hwaddr aspeed_soc_ast27x0tsp_memmap[] =3D { [ASPEED_DEV_TIMER1] =3D 0x72C10000, [ASPEED_DEV_UART4] =3D 0x72C1A000, [ASPEED_DEV_IPC0] =3D 0x72C1C000, + [ASPEED_DEV_FMC] =3D 0x74000000, [ASPEED_DEV_SCUIO] =3D 0x74C02000, [ASPEED_DEV_INTCIO] =3D 0x74C18000, [ASPEED_DEV_UART0] =3D 0x74C33000, @@ -252,6 +253,13 @@ static void aspeed_soc_ast27x0tsp_realize(DeviceState = *dev_soc, Error **errp) sysbus_connect_irq(SYS_BUS_DEVICE(s->uart), 0, aspeed_soc_ast27x0tsp_get_irq(s, s->uart_dev)); =20 + /* FMC */ + memory_region_init_alias(&s->fmc_alias, OBJECT(s), "fmc.alias", + &s->fmc->mmio, 0, + memory_region_size(&s->fmc->mmio)); + memory_region_add_subregion(s->memory, sc->memmap[ASPEED_DEV_FMC], + &s->fmc_alias); + aspeed_mmio_map_unimplemented(s->memory, SYS_BUS_DEVICE(&s->timerctrl), "aspeed.timerctrl", sc->memmap[ASPEED_DEV_TIMER1], 0x200); diff --git a/hw/arm/aspeed_coprocessor_common.c b/hw/arm/aspeed_coprocessor= _common.c index a0a4c73d08..c57fae86a4 100644 --- a/hw/arm/aspeed_coprocessor_common.c +++ b/hw/arm/aspeed_coprocessor_common.c @@ -32,6 +32,8 @@ static const Property aspeed_coprocessor_properties[] =3D= { DEFINE_PROP_LINK("uart", AspeedCoprocessorState, uart, TYPE_SERIAL_MM, SerialMM *), DEFINE_PROP_INT32("uart-dev", AspeedCoprocessorState, uart_dev, 0), + DEFINE_PROP_LINK("fmc", AspeedCoprocessorState, fmc, TYPE_ASPEED_SMC, + AspeedSMCState *), }; =20 static void aspeed_coprocessor_class_init(ObjectClass *oc, const void *dat= a) --=20 2.43.0 From nobody Sun Apr 12 00:55:16 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=aspeedtech.com); dmarc=pass(p=quarantine dis=none) header.from=aspeedtech.com ARC-Seal: i=2; a=rsa-sha256; t=1771916279; cv=pass; d=zohomail.com; s=zohoarc; b=P6+wq6eQarvz79ptCmtcAkgtV/Z6PFgYLl7qxmMax+jAxJ0WkQJN0VKOoOyhDw+hJIqQk7y8pgjW6LyIeyJoZd3dnU1xygpFK7DyI6Ow6A3uAAzy5R8B+z1UiNtjKBzAwbIOovKLJ0bDU6Cqc+affQnZkki7Ju4j1008llIa/jE= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1771916279; 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=o+AokFyU3mZivx+X26Jj7/e6Jjozx2g8FNox2EBkk1Y=; b=NiQfadskyc6nISdEAO9i7Ns8glyvXu6hrcz3Oiv3Dn8UI1pUfotmET/kfOil7P9obi57NZOg0NyZ7bg2yD3fpgFI/yWtIW96hqAcs2uiXBqOtIUYa4yOG306ZdES2Fzho5XWPQmLbdM4FPcjNkb811VRjT8rmspa7Vh+0XNhJYg= 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=aspeedtech.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1771916279202607.3903455501988; Mon, 23 Feb 2026 22:57:59 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vumLb-0002PR-01; Tue, 24 Feb 2026 01:56:43 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vumLS-0002Ii-04; Tue, 24 Feb 2026 01:56:34 -0500 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 1vumLP-0005Ll-Vm; Tue, 24 Feb 2026 01:56:33 -0500 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com (2603:1096:405:383::19) by KL1PR06MB6109.apcprd06.prod.outlook.com (2603:1096:820:d1::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9632.21; Tue, 24 Feb 2026 06:56:11 +0000 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3]) by TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3%3]) with mapi id 15.20.9632.017; Tue, 24 Feb 2026 06:56:11 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=iJOpmrtF8x1rSfBBOkReIztqQxIBiKQt2CTy0NjZuFqAlGxwd/faGMhWqfPmWo/yBfkSeRyK1U6eecAwgzsApjo96TivLmFK8ups2lfZj/VfjsXeXnnhZHXJpK8R46POaDpdrc+PMvnuOga1c8ofXo/FzqZ016dAey9tfgp1PZ3gtOH2RIgZX4AVA+s8dJJI9i8NnrxwpFTQsjoxGMzFmBcfDHpNh/8IHhjZjqmMtPOG+7MI3e3GB1cme7oeEgKpdLDdvOHM11wo0qTfKToDaDupTx8IEikq1SCWUI4vMJCwOdqBvW9H+bQX44vD8fR9m8scUy3MsYPmvQMFisIadQ== 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=o+AokFyU3mZivx+X26Jj7/e6Jjozx2g8FNox2EBkk1Y=; b=aoUS5iHMuHYv7VIEMvO9neRvaMDeGW6niuDdkL17lFfqyjH5yA+AvUxov0JlTNiJRPwJdlxN7IrwDGH4+S8LIot7zHOcdldieuTogY8bbwC/9KXfl34B0RjkZcm4n3+rHD2gxhHLL0JbefscC+aSc8uHdvvPQHFHSH8ZVuS90nS4kijVWVTxQ4rRyfpl53JpxQ/01PuvMpueOfUEdCZWRD0hdbirALHPPRmo223gzPbJ6fa1V9yiJc09X5+asMw8VoKQQ/BYJhquJhMG7mygY9Q333GUB52naKgbyVKcaw9Ea9XsCulV77xMZcVU+dFbr4a2PRqFtKKVHyHCAD998w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=aspeedtech.com; dmarc=pass action=none header.from=aspeedtech.com; dkim=pass header.d=aspeedtech.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aspeedtech.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=o+AokFyU3mZivx+X26Jj7/e6Jjozx2g8FNox2EBkk1Y=; b=MrQSt8NzB/hjCFJggd61aLDYvz8T7Xyqm6lQWA1VGreJJXA65FhUEM858SxmSN6sH68zxQNf8dNqSNwNiggDrz9OcSm5DgI0xEm8D3qoj1KWFnWKm4esePaflG5RlJS6omWJZ4JK87ZwP8FeNPwJMBIqWrkASYmSjuIJ+hyDFTdJ5Q3e/Pvl+s7GXO/dLf3xjxzTCKJZA2Mf59vKVPnD3ze2vuAz7XWr4u6+FzJJ/2s/7uohdMkwEoCJWXUoM31n/rGjCnGtCaEnMx2WRXhRJhqVZvWP2O57IP7u4QY+z/AKffD18vUkt83K8mCLZzWpMM58e6WEObC7AnpmYjOk2A== From: Jamin Lin To: =?iso-8859-1?Q?C=E9dric_Le_Goater?= , Peter Maydell , Steven Lee , Troy Lee , Andrew Jeffery , Joel Stanley , Pierrick Bouvier , Alistair Francis , Kevin Wolf , Hanna Reitz , "open list:ASPEED BMCs" , "open list:All patches CC here" , "open list:Block layer core" CC: Jamin Lin , Troy Lee , Kane Chen Subject: [PATCH v3 10/15] hw/arm/aspeed_ast27x0: Add unimplemented Privilege Controller MMIO regions for SSP/TSP Thread-Topic: [PATCH v3 10/15] hw/arm/aspeed_ast27x0: Add unimplemented Privilege Controller MMIO regions for SSP/TSP Thread-Index: AQHcpVqosLoOovkPtEa/thW7Et5aTQ== Date: Tue, 24 Feb 2026 06:56:11 +0000 Message-ID: <20260224065556.3847942-11-jamin_lin@aspeedtech.com> References: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> In-Reply-To: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> Accept-Language: zh-TW, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=aspeedtech.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYPPR06MB8206:EE_|KL1PR06MB6109:EE_ x-ms-office365-filtering-correlation-id: ea222ace-37c2-4a98-239d-08de7371cb9e x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|1800799024|366016|7416014|376014|921020|38070700021; x-microsoft-antispam-message-info: =?iso-8859-1?Q?6InaCvMvoGXNpppt65kubzOruZcZq6R9Cbdx59OudGAqANA4hNHoqsLhq3?= =?iso-8859-1?Q?7AqJeqBZACqeEfCV94vjqq0xliT4OYFV+ZZa4Dbf6sRZWeIDMvxSTxfnBQ?= =?iso-8859-1?Q?WEhTq2nqaGrHOZLeEO8DyWRThkkAU8+QkoLH3YGGqIYh6jdFVaAJElS+UL?= =?iso-8859-1?Q?+/q/1AoyG8lrN88ehg0C+PrAmAEFqr2fKNtdTiwrH7FDQKxXeRQsKPWDrS?= =?iso-8859-1?Q?CCcR/VWhs1g6Oj4vEezW34dkv6jnXFDKCY5t3av++xnAMXxM6theGsXeW9?= =?iso-8859-1?Q?dvRGOOAnEshbVcb5hivq8IxWSFCg6h6DGz4XFJvVr+QPZxKMVQ65dPTatk?= =?iso-8859-1?Q?Dhugu0/zX+JESF6G3QwaOsOhxRDMeFqjmhjl2ERSStjIPbGIISxaGzYa6U?= =?iso-8859-1?Q?wYuu7p5llv3u4bXYK9lpdqW2JyLRYSeUzPEg3znMwBNSHS4SZgOkMHRfAj?= =?iso-8859-1?Q?S+B0D5lb21GFZdyZfK05zfLsmCN1KFa4DnH/+iKPmalXBG/J29RDXjNEUA?= =?iso-8859-1?Q?CB3Zz9ahJdFyDsZHplYVammB/4USsIbhcuNgpc+V8KmyfWUHWDT/2VbyMR?= =?iso-8859-1?Q?5hVm66UmsFhn98XqsYILrt3uhEmVeoMXxaqTH4MZiOrowz5ui8iMQC0cvu?= =?iso-8859-1?Q?Vjn9c32aBOF6NBtmeBQu0xZCrf7NsJEqp4kQFCt2ilouWRc4TQShrrvwbC?= =?iso-8859-1?Q?KvrvBiX/MYVUAXlMt8Mg8Uup2CC2d6PUyqaea2scHUYtSi45f9D0YUuJBr?= =?iso-8859-1?Q?h7CrodWzBXF1gi1cYWaejDZAIhmOetwu1Vu/Usd8/M3+xldFKBi5t+BYfi?= =?iso-8859-1?Q?QWzbXlyF7+rzGlLy+/QZ3Ua6sHMqqUqcuLJUkTe2/TAtWUW2AGaJQ0+iuI?= =?iso-8859-1?Q?RumkbWXeqAEnmpnFTsUg9GokknkQdFqkYvbb3NMs04ZAjsKd0GtaK4amZR?= =?iso-8859-1?Q?osSy2vsgz7dpzsd6bptrVUpaDCpRqejNsez5FKr8JJPtLZQ82Iur5zTdH7?= =?iso-8859-1?Q?Mh9OQZsMGmEfbF4MXOLbweF7UXRik7o2TIRathxQ78Qhg9VkIEtmc/BIuw?= =?iso-8859-1?Q?D5rJKEHoChWIEeRaxvJfKQHwWa8to/cAjiWCPRhS6H8FIMMEPS1D/NbbXc?= =?iso-8859-1?Q?ESXqEYIH0NPG+KyHTLyqAsR9/Tv/eueca+kqmrosHKqgHnckkItKzc8euY?= =?iso-8859-1?Q?AHpkLcWJDyRj2mH47WR4g4Dlm8AVATBwfQitCmyPDcs6pNSB3oe+ExZX/m?= =?iso-8859-1?Q?c9PjsJAXc5fYChAPbo3E3zS60ueI84ICp3V0JvzaBWDXFsg0E/MZhWaG45?= =?iso-8859-1?Q?gg2j45+B0y4Du717FgWz3lJBghKBqxYCcqSWFH4p6WGUBGD9yPcFMhRqdx?= =?iso-8859-1?Q?duAmEBB545gYAnOHL3CHqpL965/iaQOq6ypquIGI2xuEGN5EPJICCV9QVq?= =?iso-8859-1?Q?y/zNoPmSvpIySqFAff41ZSy4tb+yO2E4Vo6eH/gZMcRh3w2N+TcIEGgXSK?= =?iso-8859-1?Q?K9xIj00xoYUqLNimZg1tRyjWwBcZdpvWt3xjvVCJU/cXh7CCV4JPpw//Hp?= =?iso-8859-1?Q?z6WxpK8wqiYwS3PLITEOakmT3ZDo5W5QpZGNGkhT8H+ID2T7Hh0QrKHgfl?= =?iso-8859-1?Q?W8po3t6armUI3XOKRFasiiDUKIE5xhVb5O7KFnCUMuqpfsmo1mpTGw4JWW?= =?iso-8859-1?Q?r/UkUPx2TSvZEpLF2b2n8aZ14jEAjUZQc2/X+eAQ?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TYPPR06MB8206.apcprd06.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(366016)(7416014)(376014)(921020)(38070700021); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?nCKFCqp5TPtp+E8XabKxDv6EC2U5DRaxbJtOAws1A4tDwazTGEonQ5VvSx?= =?iso-8859-1?Q?AtkfWzJAIuDK7LwEdQNP48gaF/lIfE6TlTBMlhjiOygHv/VjFVdabp5jEw?= =?iso-8859-1?Q?oG72s5jTQbVHSB3huWGtNigb8OBIBNX8Tv7V0NINWPyDZTYrjuCbDzNQAk?= =?iso-8859-1?Q?/zIKDUwIhgeM5g2XDlBS/fnM50PNqhJE4QhXP1Uu4vdeneWhhCcrxVaxjL?= =?iso-8859-1?Q?3Fnolv1JzTnxjK6f3uNAUICw83BwlbYrcDBRqvjJVvuuztabZiINk08iqM?= =?iso-8859-1?Q?Er9v6qzoURoPJgws6CZ63kO0U/nQNHMR0wH5TR5LSvBS/QbKvU9zyCV+ir?= =?iso-8859-1?Q?dodyY0ArBWKtfVmT38ktCgfx2P0JgY+OHFl6t5POw1Wqx8U4u1gzIEOQTX?= =?iso-8859-1?Q?3ecUZIkf7bv99dQh99BqVi6RmYpFojBwZrMdLHm5N9mlD/3jg27/53Fz3y?= =?iso-8859-1?Q?nbMOD8c1t5gko4lwgZ+X2P1tlHoWpy6762H3BkW1yv3HUSIXLlbmPdSSah?= =?iso-8859-1?Q?2rtZYPrDV8Xx/QR6dUTANFj+reh5bwJaG+IMOswNNYSG7zBNDKYwxCCUno?= =?iso-8859-1?Q?tM5A3tT1BZ+RWBRCtxE7vkp1c3Mh1HdnCFv/YQ4izhWwLkOh4oxl2K15YA?= =?iso-8859-1?Q?HPoNHqf+e6+gP26lkSfap9Ege58jtW3LID/dZ+sqKKdyKYyZ/ohICFX8td?= =?iso-8859-1?Q?MsomwEuivfDGQzvJDMi2aZ8bmujpr6HhWFPidwDyZLMClM9cAy+4AR4lBm?= =?iso-8859-1?Q?0xgea3RNoarZ2TTi24ub2aKu0leX1qhhCU6fHhhlEGC8OTIO5d94O5crmO?= =?iso-8859-1?Q?DcAykaLZ3sumBWZrpVal69KVE22IMQFY+v7gwdyhsIfNfXBmI5oa1i5fgj?= =?iso-8859-1?Q?JGD6yFNOjJi0hrwN2mO5mlXVecoJKoH9j83EsVzcGQ5d5VUeaFu4GKGovM?= =?iso-8859-1?Q?KKJQSXK3ZZEmcqwC5EsZyivBzDfRhVrSCK1Zl/pgfGFtI6exzTo+xhc12W?= =?iso-8859-1?Q?w7cg+4DhSr9lfZPKQ8e9Y52ykznft7EzWC76Qy/X+EpBSTp2A0GWxnPC4h?= =?iso-8859-1?Q?d0T9eOVyCuD5Cu12wHaIM8miHQGDhytHmWbhkbi1zMPKeECAs2+HtY/IOu?= =?iso-8859-1?Q?M1twkXO5MiZnDVOyYW504M0Wzf28iHd0FWWlti4NrwSy3mRSdxzDvOacdL?= =?iso-8859-1?Q?frWucSsZhMZ2+I5HC5KZ7wkDRqHmfDQ2oZ8dIxYyL/dRHc3AknxrUto72x?= =?iso-8859-1?Q?J9dJKx71qYy00mPMkyiXd9GUll+A9RqzFCGXShLSQMpLQCyrD66qIb9ANu?= =?iso-8859-1?Q?wbWmW2EZOQmEJtFZXQBvK1FII8GxQrsLaEGIzJCY1Dz6cp2YZbNhJgFmfT?= =?iso-8859-1?Q?IcLIqd7FoGyWhTuwW4niIzKIAWmmDtjvjhoh8MYEMZmt+61EuWl7juM3sy?= =?iso-8859-1?Q?rNuy9zOZ2f4k9k3eOE5TsUuOAo0yw6OVOWwE6P1M3gxszNJh7tQbYRPOCT?= =?iso-8859-1?Q?NIjOhCwawO6/vHw3j9Scq1a5n+5M8XrqanhSaMGpJOOE6j/vEU1jG9mJ2n?= =?iso-8859-1?Q?gs9n7kFwnaekjSfEcPRIhzak0gYNrTMoh6zbtfGoxj8fv+4CGKV8h1l7fK?= =?iso-8859-1?Q?s8qrhIF/SzehL2nEPPJ5imVUpkxIAr/YWffXQP6MHXyqp7dJ3ATNaYN4OI?= =?iso-8859-1?Q?+QprbNfXAhoNSnSYa/4tx58ZERL9e1bzJ0+1ZLjv2ZnlrV3l3OCwiuqIQi?= =?iso-8859-1?Q?VyMrbAXzbBbaI1BbAOCCtFCw9jcuo7/4EP0lQE8tyWjCu0tdT2Ypt6M/Zb?= =?iso-8859-1?Q?Z9IHWOigNA=3D=3D?= Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: aspeedtech.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYPPR06MB8206.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ea222ace-37c2-4a98-239d-08de7371cb9e X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Feb 2026 06:56:11.2128 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43d4aa98-e35b-4575-8939-080e90d5a249 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: ALiyqnoqxGJ2Wjk6JRyh9I7MFqQMEfSZgtgWm4dqnGjPFjGhYKJvXxjgWLXs1Vnw/yOCLQqGlwFNhZtNgd28B6eW92Xs2tIii7JF/ZEEpvo= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KL1PR06MB6109 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=lists.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c40f::6; envelope-from=jamin_lin@aspeedtech.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 @aspeedtech.com) X-ZM-MESSAGEID: 1771916280807158500 Content-Type: text/plain; charset="utf-8" The AST2700 SSP/TSP firmware accesses Privilege Controller MMIO regions that are not yet implemented in QEMU. This change adds unimplemented MMIO devices for the Privilege Controller blocks and maps them to their corresponding physical addresses in the SSP/T= SP address space. These stub devices allow QEMU to safely handle firmware accesses and prevent spurious exceptions, while accurately reflecting the hardware memory map. No functional changes. Signed-off-by: Jamin Lin --- include/hw/arm/aspeed_coprocessor.h | 2 +- include/hw/arm/aspeed_soc.h | 2 ++ hw/arm/aspeed_ast27x0-ssp.c | 12 ++++++++++++ hw/arm/aspeed_ast27x0-tsp.c | 12 ++++++++++++ 4 files changed, 27 insertions(+), 1 deletion(-) diff --git a/include/hw/arm/aspeed_coprocessor.h b/include/hw/arm/aspeed_co= processor.h index 8d45c0b9bc..94b5cd257c 100644 --- a/include/hw/arm/aspeed_coprocessor.h +++ b/include/hw/arm/aspeed_coprocessor.h @@ -50,7 +50,7 @@ struct Aspeed27x0CoprocessorState { AspeedINTCState intc[2]; UnimplementedDeviceState ipc[2]; UnimplementedDeviceState scuio; - + UnimplementedDeviceState pric[2]; ARMv7MState armv7m; }; =20 diff --git a/include/hw/arm/aspeed_soc.h b/include/hw/arm/aspeed_soc.h index b185b04186..5b208a979f 100644 --- a/include/hw/arm/aspeed_soc.h +++ b/include/hw/arm/aspeed_soc.h @@ -296,6 +296,8 @@ enum { ASPEED_DEV_IOEXP1_INTCIO, ASPEED_DEV_IOEXP0_I3C, ASPEED_DEV_IOEXP1_I3C, + ASPEED_DEV_PRIC0, + ASPEED_DEV_PRIC1, }; =20 const char *aspeed_soc_cpu_type(const char * const *valid_cpu_types); diff --git a/hw/arm/aspeed_ast27x0-ssp.c b/hw/arm/aspeed_ast27x0-ssp.c index 8efaaacb8f..8a748b42a4 100644 --- a/hw/arm/aspeed_ast27x0-ssp.c +++ b/hw/arm/aspeed_ast27x0-ssp.c @@ -22,11 +22,13 @@ static const hwaddr aspeed_soc_ast27x0ssp_memmap[] =3D { [ASPEED_DEV_SDRAM] =3D 0x00000000, [ASPEED_DEV_SRAM] =3D 0x70000000, [ASPEED_DEV_INTC] =3D 0x72100000, + [ASPEED_DEV_PRIC0] =3D 0x72140000, [ASPEED_DEV_SCU] =3D 0x72C02000, [ASPEED_DEV_TIMER1] =3D 0x72C10000, [ASPEED_DEV_UART4] =3D 0x72C1A000, [ASPEED_DEV_IPC0] =3D 0x72C1C000, [ASPEED_DEV_FMC] =3D 0x74000000, + [ASPEED_DEV_PRIC1] =3D 0x74100000, [ASPEED_DEV_SCUIO] =3D 0x74C02000, [ASPEED_DEV_INTCIO] =3D 0x74C18000, [ASPEED_DEV_UART0] =3D 0x74C33000, @@ -142,6 +144,10 @@ static void aspeed_soc_ast27x0ssp_init(Object *obj) TYPE_UNIMPLEMENTED_DEVICE); object_initialize_child(obj, "scuio", &a->scuio, TYPE_UNIMPLEMENTED_DEVICE); + object_initialize_child(obj, "pric0", &a->pric[0], + TYPE_UNIMPLEMENTED_DEVICE); + object_initialize_child(obj, "pric1", &a->pric[1], + TYPE_UNIMPLEMENTED_DEVICE); } =20 static void aspeed_soc_ast27x0ssp_realize(DeviceState *dev_soc, Error **er= rp) @@ -275,6 +281,12 @@ static void aspeed_soc_ast27x0ssp_realize(DeviceState = *dev_soc, Error **errp) aspeed_mmio_map_unimplemented(s->memory, SYS_BUS_DEVICE(&a->scuio), "aspeed.scuio", sc->memmap[ASPEED_DEV_SCUIO], 0x1000); + aspeed_mmio_map_unimplemented(s->memory, SYS_BUS_DEVICE(&a->pric[0]), + "aspeed.pric0", + sc->memmap[ASPEED_DEV_PRIC0], 0x1000); + aspeed_mmio_map_unimplemented(s->memory, SYS_BUS_DEVICE(&a->pric[1]), + "aspeed.pric1", + sc->memmap[ASPEED_DEV_PRIC1], 0x1000); } =20 static void aspeed_soc_ast27x0ssp_class_init(ObjectClass *klass, diff --git a/hw/arm/aspeed_ast27x0-tsp.c b/hw/arm/aspeed_ast27x0-tsp.c index b7ad828528..5037276f20 100644 --- a/hw/arm/aspeed_ast27x0-tsp.c +++ b/hw/arm/aspeed_ast27x0-tsp.c @@ -22,11 +22,13 @@ static const hwaddr aspeed_soc_ast27x0tsp_memmap[] =3D { [ASPEED_DEV_SDRAM] =3D 0x00000000, [ASPEED_DEV_SRAM] =3D 0x70000000, [ASPEED_DEV_INTC] =3D 0x72100000, + [ASPEED_DEV_PRIC0] =3D 0x72140000, [ASPEED_DEV_SCU] =3D 0x72C02000, [ASPEED_DEV_TIMER1] =3D 0x72C10000, [ASPEED_DEV_UART4] =3D 0x72C1A000, [ASPEED_DEV_IPC0] =3D 0x72C1C000, [ASPEED_DEV_FMC] =3D 0x74000000, + [ASPEED_DEV_PRIC1] =3D 0x74100000, [ASPEED_DEV_SCUIO] =3D 0x74C02000, [ASPEED_DEV_INTCIO] =3D 0x74C18000, [ASPEED_DEV_UART0] =3D 0x74C33000, @@ -142,6 +144,10 @@ static void aspeed_soc_ast27x0tsp_init(Object *obj) TYPE_UNIMPLEMENTED_DEVICE); object_initialize_child(obj, "scuio", &a->scuio, TYPE_UNIMPLEMENTED_DEVICE); + object_initialize_child(obj, "pric0", &a->pric[0], + TYPE_UNIMPLEMENTED_DEVICE); + object_initialize_child(obj, "pric1", &a->pric[1], + TYPE_UNIMPLEMENTED_DEVICE); } =20 static void aspeed_soc_ast27x0tsp_realize(DeviceState *dev_soc, Error **er= rp) @@ -272,6 +278,12 @@ static void aspeed_soc_ast27x0tsp_realize(DeviceState = *dev_soc, Error **errp) aspeed_mmio_map_unimplemented(s->memory, SYS_BUS_DEVICE(&a->scuio), "aspeed.scuio", sc->memmap[ASPEED_DEV_SCUIO], 0x1000); + aspeed_mmio_map_unimplemented(s->memory, SYS_BUS_DEVICE(&a->pric[0]), + "aspeed.pric0", + sc->memmap[ASPEED_DEV_PRIC0], 0x1000); + aspeed_mmio_map_unimplemented(s->memory, SYS_BUS_DEVICE(&a->pric[1]), + "aspeed.pric1", + sc->memmap[ASPEED_DEV_PRIC1], 0x1000); } =20 static void aspeed_soc_ast27x0tsp_class_init(ObjectClass *klass, --=20 2.43.0 From nobody Sun Apr 12 00:55:16 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=aspeedtech.com); dmarc=pass(p=quarantine dis=none) header.from=aspeedtech.com ARC-Seal: i=2; a=rsa-sha256; t=1771916338; cv=pass; d=zohomail.com; s=zohoarc; b=EnL0FgYqq47TjFa7jBbxeUmZF/F94fL4CPZz/GSiz5+yH+PKsldmiFJoqZJ7P6BoKteYzL3MXheI6qxTJLO0bBZq1d/iuIdFq1lstSA1gEwP6dBUxb6fh4HmPqu0izP49SZCqprUu9vl7GH48SHVOL664oAmk5ieijQ7EqjhSjI= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1771916338; 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=0elj0zGmy7KVIEMuVmlIfzrJ5U69tRoaaMBjkQR+hIo=; b=iSGRxsLQWE9s/0o+rXF5HiTrzwIJJA6A3hcBEg8KijeeCVap1+5Vg97siJTOFTHqPAH6yPO33jZ/xZy5U4+NYtpCWVcr8rTUiBme8FLEh6TXkEXv8sTByi6OPVV25CVGS1Q4gEWaIB4MXIC7orRMCn7N0rWs2jRFShmCzNiLhoI= 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=aspeedtech.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1771916338463119.23061169535515; Mon, 23 Feb 2026 22:58:58 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vumLb-0002QP-HP; Tue, 24 Feb 2026 01:56:43 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vumLU-0002Jg-9s; Tue, 24 Feb 2026 01:56:36 -0500 Received: from mail-japaneastazlp170120005.outbound.protection.outlook.com ([2a01:111:f403:c405::5] helo=TYPPR03CU001.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 1vumLR-0005Mp-RH; Tue, 24 Feb 2026 01:56:35 -0500 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com (2603:1096:405:383::19) by KL1PR06MB6109.apcprd06.prod.outlook.com (2603:1096:820:d1::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9632.21; Tue, 24 Feb 2026 06:56:12 +0000 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3]) by TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3%3]) with mapi id 15.20.9632.017; Tue, 24 Feb 2026 06:56:12 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=HBizCRu6NAFtoHggWy8BLHFzDjyLBhV2yiCb8s2WjI0DnQdawIYrVR7YC66KFbwB/dBh4RqutborqWcrhE4odghfocZkhTpw/cqaY8LbMGy65msQUld64AeLiha15vGEj5A7BiHqYrjhObls4EUFLSpB8N4rKDvVnbdbRVoMDwcRGgucdBUDXnTtt9kQsapRe7+G/T4J8F9OA4XO7kg65A2AvoCMan7BSCqB53GGuTdPaBoMyz/mvnlilP4eXMLlk8o3VfnvllihA4n3KnHb3z79AS0tyDMkoprwT0ykuhtgQsQc6zh0Jp96S32zhj6xBYJJ9GaLdsn7+UGIi4H9tw== 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=0elj0zGmy7KVIEMuVmlIfzrJ5U69tRoaaMBjkQR+hIo=; b=u+p3pB/SzvWCgTCVr2N1rlovan29r9uFhjZs+WReANZjLS/FDagAaxdbp+m/PFzMNvA4j2q31fGOIKZ1K+UI69FMHWHv3q9JFhzFPUiZsJKuvm1clg0yFfhHXxQjhkmQuOTc6OEilpvQGi1Cs0LaQnqbiMpye/db6xvyayWs+3YVbhmNVHygQEAWBfuil406W/2CO3+cU8V0cd6Xb1Sfhk2+M+70cDKqvaLRrOYSRPJ18zNQOedAWY9EMfSN1j4ziKnj6aJ4IcSfuXWfpgQsH6fTuwAoD5Edc5KirnJN3rDHFJf60gXW6N2r00G3b3EonGM+LbIs5RzyINARxmDB8g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=aspeedtech.com; dmarc=pass action=none header.from=aspeedtech.com; dkim=pass header.d=aspeedtech.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aspeedtech.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0elj0zGmy7KVIEMuVmlIfzrJ5U69tRoaaMBjkQR+hIo=; b=PnnoZhdqbzIAinrTiGNrLCN08jDaak8RM03i64okHNanxzwR4Uddjp5iBD8a/RZkW80kKnihDe7GzjeBsV3mguOav9EVG77MnuO7bofw3AwlthyZ1e4NN1HZi0JBflkMV+cCif4iHF48oUq/fo8XJK9vN8FoKGmyB0GtK9wPRwx7hA3XskU0T1a3YbYCy7kP00DQqTc1BCwpcX0lXBpK/jaFlcjMNvZ2n2fbKQzn4jwV5QeRcDscNAjwh2EO/a3gJYU/8U+B8rOY7d9cvfDR226fVamIr59ySRDoZe9xNVteNdh9+j2WeNdVGPQUB3lPgnFcow/JYeGs8SKnu8zLcQ== From: Jamin Lin To: =?iso-8859-1?Q?C=E9dric_Le_Goater?= , Peter Maydell , Steven Lee , Troy Lee , Andrew Jeffery , Joel Stanley , Pierrick Bouvier , Alistair Francis , Kevin Wolf , Hanna Reitz , "open list:ASPEED BMCs" , "open list:All patches CC here" , "open list:Block layer core" CC: Jamin Lin , Troy Lee , Kane Chen Subject: [PATCH v3 11/15] hw/arm/aspeed_ast27x0: Add unimplemented OTP controller MMIO regions for SSP/TSP Thread-Topic: [PATCH v3 11/15] hw/arm/aspeed_ast27x0: Add unimplemented OTP controller MMIO regions for SSP/TSP Thread-Index: AQHcpVqp/BAOFXeFikaJEeCH6JZa6g== Date: Tue, 24 Feb 2026 06:56:12 +0000 Message-ID: <20260224065556.3847942-12-jamin_lin@aspeedtech.com> References: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> In-Reply-To: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> Accept-Language: zh-TW, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=aspeedtech.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYPPR06MB8206:EE_|KL1PR06MB6109:EE_ x-ms-office365-filtering-correlation-id: 4e844260-1e46-4c61-1cf3-08de7371cc0e x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|1800799024|366016|7416014|376014|921020|38070700021; x-microsoft-antispam-message-info: =?iso-8859-1?Q?JuqhrnJgHDRHA2Dn5egb+GvXWhN43wNS3lFVI/ST27Yrsxko7s1Sx//M3P?= =?iso-8859-1?Q?qttl1sIIpOu1v6WNWvWrfDKeIDeHpDUBPw7uIp14uVXGesEc07B3wua267?= =?iso-8859-1?Q?qm1zJkm05h78G7Wh4u5d13OqjTw42j+JG7lUPhLewVtlHyhIr14tJIsVmA?= =?iso-8859-1?Q?HuyS1zMrN/pztPVB6vKPztP1qYeT6HZjad3UId/XCQS6Mx45V828dMO1Si?= =?iso-8859-1?Q?9hGMcnYsuekylmKCkdk1xy+MSVA89ozc6fd4Qk9dUz8KjGDEvOB5eaq/vH?= =?iso-8859-1?Q?FNzyCiJs5xnxb91KRicNZhz68W2JTiz+Vq2OWWE+UXmtkT0qgtRuZ89IGF?= =?iso-8859-1?Q?VOjfdkUrP+taihsOLgeFjbFACMxDGhe2U0yP1+1gXca5AUdpkpwKtl3Y27?= =?iso-8859-1?Q?JUg5unqM3E01Igq/RZdAl4J965xFtDmXXes8vtvOsQLTXblGxcwWrdbg2T?= =?iso-8859-1?Q?yjYLt0F16HsnhomEA38Xj1aiJ4/ANFAdUwFrWsR8LG+VD30Yuse/M2jMHY?= =?iso-8859-1?Q?jpTNQV0Jwg/8F4OoXKUuLT0BS5z/aZqEEyCaX8unCVH6XB1/at7/M9vXxK?= =?iso-8859-1?Q?w7tX3MqTXcbBsk5wWufV1dobLiSJsuImp4d/AbBEhwkoaokPvh3wUduFmU?= =?iso-8859-1?Q?sFAUvh1rOYsD1pnBwN3SYAfqoUdnogwpsATo1O7Gd82+/EnrYjDrBRa7ui?= =?iso-8859-1?Q?2dtU0Zsuidn/D13UVrpiQiFmwbeNpzGKPwuojbiyykKA6LpAG+9Xi3N4Wn?= =?iso-8859-1?Q?z2pbJWyclIKehmdvS6hSucizYaM3pTaa775GVu71M0AMTy7Cj3Mde9ma3W?= =?iso-8859-1?Q?K2EZDoeiDWwFD1E9alnCF4xUnZRX9/tw8OVq/LUUB1aL0uiwtfFH/0gIvu?= =?iso-8859-1?Q?hrrVKsO5vTfUUpL3Lg9HoAq50bUNFEUL1OkLw0KiqBQQhY1qnShv7zEF9P?= =?iso-8859-1?Q?6HBCsAsHtF4OTLgXiq1qwVkabJt0S6LhprdfuaZe0/JmPKYAq7VHmF7gxW?= =?iso-8859-1?Q?Jf0q356DtVgSlEbPuCoKKQNtfHL5yUTwXPQIBZN4caNh8jonMm2hXnhlA2?= =?iso-8859-1?Q?FibOqNNgQg2IexlQxo69QqgFyKGQuvayDul/kfVQFrfOJPUjDTDi8pUik1?= =?iso-8859-1?Q?Jw8jt2nm5AP+pKWnJeWtYTbpOkOVs+NzMMQ/d3TXLmEpI7baaBUlafpRF/?= =?iso-8859-1?Q?fNmZKtv/k4Sf1cHVfr9J6/HwPLENS4sX0uZugXJqGrhKS3Tt+sS67VidVc?= =?iso-8859-1?Q?EzjChYLTUwn/Yjh4Vyv1VPP0p3aAVKhJGA2Jfv7/I8LgoZvKBu8wsD44Dq?= =?iso-8859-1?Q?tAp9ZSm4Gzr+LJNqSCBdACSfp9fwHFriO/bXOihrvLz8sW/XHCUweT2JYG?= =?iso-8859-1?Q?Gq9ln5P7sXelQbszz83ArALiKVqp22Su7JwvwzVfmSwJWKT88QfAJEdYeg?= =?iso-8859-1?Q?KHkghOq/zrDiaa8xqcbWBpxut5W5LCAdpmLv/wxUxLCltUO5oC77d+C/bS?= =?iso-8859-1?Q?icETHnFs9+wSuOWNV+K8X+5PsoG1qSqRk1h6TQqK0ghpvKbjlKnQxbTCbf?= =?iso-8859-1?Q?LoB9JLkiZd0t9z5urBE0JGnHrXQRM0Wb0i0AGdNtooRKL3cpTYUjCV5P4Q?= =?iso-8859-1?Q?nwxdvBWpo51oi2FGZCkTCeYY2tKJ8EkFXGR/4EgRJ5HCxZaaSOD1p3pkv6?= =?iso-8859-1?Q?hf1AxwsMHaWDmNYmnh3PkgCxuIlbh29Y3/xBru/7?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TYPPR06MB8206.apcprd06.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(366016)(7416014)(376014)(921020)(38070700021); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?0vDSGfFGvZGudvKPldyBRK5rp7/lzmugO/5N04mPTVdsrY/PWf0OtoILdi?= =?iso-8859-1?Q?25VtlZ6UiJtQ4Ioi9sxif/IrfnxX/Ne9WzCRVpqU4KSLndn+gfF0mivSBz?= =?iso-8859-1?Q?UaiAwrbHW6ed2HE6nyxsKiAJjDRQFGlqc6z+Lm5vomfCH9N/h7zPM9zqHj?= =?iso-8859-1?Q?8MKz41u6NtFPd31gPikbatfDRUesk5X843OS3bfcdbLekGnO2MaiELccbC?= =?iso-8859-1?Q?ac7niViBaXf0m+XgGc6TBHc7OH6LiXSVOKkW6RP56I27jk8XNne9mLdA9X?= =?iso-8859-1?Q?4u51foBUETuEazUG6WyXAwxiceO4euQi/K/lgH1vqjwDjUiJB/vVUqf04I?= =?iso-8859-1?Q?a0e6F1HT36iAM+9Qm7w8Dh3Ugxev3bpOATXVqxJqs9SV3S6yIf/TeWeU15?= =?iso-8859-1?Q?riXM3i5Lcn4YeqisDqfDQiXC7AsThZF+BBSwSnNa59e+PxDq5kqG0h8KoW?= =?iso-8859-1?Q?xTJmehh9GeaHzpYI7B/Gq3IzqKE2hpV7QPSy+Qe8abW4POAxrlpL51MeYc?= =?iso-8859-1?Q?3tSNM3x4nfHio85ocjT4zQrnLVBPqu1w4cbhaCOaEC9Pc4LjvLDJr60HKP?= =?iso-8859-1?Q?46izCmsxxbrauH8s6NG2nWvlS9p28gDMPP1VPSGl81Q+i+yBMQsTGqfGnL?= =?iso-8859-1?Q?K2v80Z12GMM75Mhmm51uXSxFZXleybAf1tFRyxn5fuvU2sMeGs81W9uQoB?= =?iso-8859-1?Q?eg39Fmzr1f1Ql30HfT7UERouL6IRy24TUguaV1CXOecqgyqxfFBedPgvLx?= =?iso-8859-1?Q?Znr6z5uwYhoknJX3IBdK0vTW+rcbyjCTkiZxSyhDUWjOSr2TnJdtCU+TjA?= =?iso-8859-1?Q?YjNR5ecBvzui7uSDMyIsnSk/dR5UPweg5xjxjvGB4vZGurZyQ+n3osBFSt?= =?iso-8859-1?Q?LEI9QsK0GeAHdvXsuXzXTc1TJWrPyY4hYBm3w8zFxM3W3PUgVZwXRNruyM?= =?iso-8859-1?Q?LaOQBGSFc3ghMkWf9oU/80bhKQi4Qi3t0mdhrwCbj5tiSW5LOya2GTg2FK?= =?iso-8859-1?Q?CDaOUeeDu3fbpgzecU0XXfTT/rpFjj10HPpK21UwGpawN2E+omNt2MOSH6?= =?iso-8859-1?Q?6QF52JbU3RZyZuaqEmulx89PnB5yTUN+HF213TQtJ1tlJfXzhQLYRBO0ri?= =?iso-8859-1?Q?LWWGSlbMvXfsMCowZxfrGN9UMUR1NPl5TLuWjfWIDjGsFxZztVu3zypRzm?= =?iso-8859-1?Q?Ze2t577P+8HNdPrqyPW+2vtcq5y6x9/TCVp7iAeTn5PwJdUSVKZYGaimQi?= =?iso-8859-1?Q?O51vHPaYxxcv/6+UPjOztBm1GbpndKBo2xwfdxPJDUwpL+C4Eiw9JlnjQd?= =?iso-8859-1?Q?lwvwDrkah+dAsgDWQXfZcJnoHk4kuYYTD0YywslpuUhdN2Qi6RamCr30Gz?= =?iso-8859-1?Q?5eYC1bi52CYgebGQLJqfAxi9t7HdR8qJfySaLj9NkusrNIcVoTwZzNnmMS?= =?iso-8859-1?Q?xYfm2KNfTdDcYF3HTfImI7xYOvkBZuQRwgjymCONZxYiLdqSsnM6p2cRIu?= =?iso-8859-1?Q?0qGfNPPOzXhWgOe637TdFC1kock6b8nvhVnRASZiw0KNV1cZkAx6xJTiCH?= =?iso-8859-1?Q?LqYokM5/BU2XoVafawmmW/KPGCJ7k5V/nesD1mmR9hezLOJhf4HZjfFhH2?= =?iso-8859-1?Q?w2hApeZALSBSCW/mtRwndklVmDR1xdBk+tGBtuYEVLfFriw6UJ4gTMmM2J?= =?iso-8859-1?Q?Hs1dA8t1H5lMhCbF2g92o77jxkRUO/gdHKeZJJnI1q2VJ0uPGcJhiXL8BJ?= =?iso-8859-1?Q?gh4ATI+rJN+qxPhN63ODfVzBc3erwe3sh3kZaBULhGlK39RbNOiq94eOuf?= =?iso-8859-1?Q?ACxL2L5O0g=3D=3D?= Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: aspeedtech.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYPPR06MB8206.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4e844260-1e46-4c61-1cf3-08de7371cc0e X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Feb 2026 06:56:12.4917 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43d4aa98-e35b-4575-8939-080e90d5a249 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: PFQCLISe5xwBJqEWaZ3id26TFxBsI6eJMEgZJHdCfP76qLD/jsKZjlHMV0lZS03KzW/TCWzOP+NCha3cl3cyl9rNPN57E+giceTSCrOcyjo= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KL1PR06MB6109 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=lists.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c405::5; envelope-from=jamin_lin@aspeedtech.com; helo=TYPPR03CU001.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 @aspeedtech.com) X-ZM-MESSAGEID: 1771916338927158501 Content-Type: text/plain; charset="utf-8" The AST2700 SSP/TSP firmware accesses OTP MMIO regions that are not yet implemented in QEMU. This change adds unimplemented MMIO devices for the OTP and maps them to their corresponding physical addresses in the SSP/TSP address space. These stub devices allow QEMU to safely handle firmware accesses and prevent spurious exceptions, while accurately reflecting the hardware memory map. No functional changes. Signed-off-by: Jamin Lin --- include/hw/arm/aspeed_coprocessor.h | 1 + include/hw/arm/aspeed_soc.h | 1 + hw/arm/aspeed_ast27x0-ssp.c | 6 ++++++ hw/arm/aspeed_ast27x0-tsp.c | 6 ++++++ 4 files changed, 14 insertions(+) diff --git a/include/hw/arm/aspeed_coprocessor.h b/include/hw/arm/aspeed_co= processor.h index 94b5cd257c..4a5a2a6151 100644 --- a/include/hw/arm/aspeed_coprocessor.h +++ b/include/hw/arm/aspeed_coprocessor.h @@ -51,6 +51,7 @@ struct Aspeed27x0CoprocessorState { UnimplementedDeviceState ipc[2]; UnimplementedDeviceState scuio; UnimplementedDeviceState pric[2]; + UnimplementedDeviceState otp; ARMv7MState armv7m; }; =20 diff --git a/include/hw/arm/aspeed_soc.h b/include/hw/arm/aspeed_soc.h index 5b208a979f..10c1d626ef 100644 --- a/include/hw/arm/aspeed_soc.h +++ b/include/hw/arm/aspeed_soc.h @@ -298,6 +298,7 @@ enum { ASPEED_DEV_IOEXP1_I3C, ASPEED_DEV_PRIC0, ASPEED_DEV_PRIC1, + ASPEED_DEV_OTP, }; =20 const char *aspeed_soc_cpu_type(const char * const *valid_cpu_types); diff --git a/hw/arm/aspeed_ast27x0-ssp.c b/hw/arm/aspeed_ast27x0-ssp.c index 8a748b42a4..d4e9cdab32 100644 --- a/hw/arm/aspeed_ast27x0-ssp.c +++ b/hw/arm/aspeed_ast27x0-ssp.c @@ -30,6 +30,7 @@ static const hwaddr aspeed_soc_ast27x0ssp_memmap[] =3D { [ASPEED_DEV_FMC] =3D 0x74000000, [ASPEED_DEV_PRIC1] =3D 0x74100000, [ASPEED_DEV_SCUIO] =3D 0x74C02000, + [ASPEED_DEV_OTP] =3D 0x74C07000, [ASPEED_DEV_INTCIO] =3D 0x74C18000, [ASPEED_DEV_UART0] =3D 0x74C33000, [ASPEED_DEV_UART1] =3D 0x74C33100, @@ -148,6 +149,8 @@ static void aspeed_soc_ast27x0ssp_init(Object *obj) TYPE_UNIMPLEMENTED_DEVICE); object_initialize_child(obj, "pric1", &a->pric[1], TYPE_UNIMPLEMENTED_DEVICE); + object_initialize_child(obj, "otp", &a->otp, + TYPE_UNIMPLEMENTED_DEVICE); } =20 static void aspeed_soc_ast27x0ssp_realize(DeviceState *dev_soc, Error **er= rp) @@ -287,6 +290,9 @@ static void aspeed_soc_ast27x0ssp_realize(DeviceState *= dev_soc, Error **errp) aspeed_mmio_map_unimplemented(s->memory, SYS_BUS_DEVICE(&a->pric[1]), "aspeed.pric1", sc->memmap[ASPEED_DEV_PRIC1], 0x1000); + aspeed_mmio_map_unimplemented(s->memory, SYS_BUS_DEVICE(&a->otp), + "aspeed.otp", + sc->memmap[ASPEED_DEV_OTP], 0x800); } =20 static void aspeed_soc_ast27x0ssp_class_init(ObjectClass *klass, diff --git a/hw/arm/aspeed_ast27x0-tsp.c b/hw/arm/aspeed_ast27x0-tsp.c index 5037276f20..d335d01472 100644 --- a/hw/arm/aspeed_ast27x0-tsp.c +++ b/hw/arm/aspeed_ast27x0-tsp.c @@ -30,6 +30,7 @@ static const hwaddr aspeed_soc_ast27x0tsp_memmap[] =3D { [ASPEED_DEV_FMC] =3D 0x74000000, [ASPEED_DEV_PRIC1] =3D 0x74100000, [ASPEED_DEV_SCUIO] =3D 0x74C02000, + [ASPEED_DEV_OTP] =3D 0x74C07000, [ASPEED_DEV_INTCIO] =3D 0x74C18000, [ASPEED_DEV_UART0] =3D 0x74C33000, [ASPEED_DEV_UART1] =3D 0x74C33100, @@ -148,6 +149,8 @@ static void aspeed_soc_ast27x0tsp_init(Object *obj) TYPE_UNIMPLEMENTED_DEVICE); object_initialize_child(obj, "pric1", &a->pric[1], TYPE_UNIMPLEMENTED_DEVICE); + object_initialize_child(obj, "otp", &a->otp, + TYPE_UNIMPLEMENTED_DEVICE); } =20 static void aspeed_soc_ast27x0tsp_realize(DeviceState *dev_soc, Error **er= rp) @@ -284,6 +287,9 @@ static void aspeed_soc_ast27x0tsp_realize(DeviceState *= dev_soc, Error **errp) aspeed_mmio_map_unimplemented(s->memory, SYS_BUS_DEVICE(&a->pric[1]), "aspeed.pric1", sc->memmap[ASPEED_DEV_PRIC1], 0x1000); + aspeed_mmio_map_unimplemented(s->memory, SYS_BUS_DEVICE(&a->otp), + "aspeed.otp", + sc->memmap[ASPEED_DEV_OTP], 0x800); } =20 static void aspeed_soc_ast27x0tsp_class_init(ObjectClass *klass, --=20 2.43.0 From nobody Sun Apr 12 00:55:16 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=aspeedtech.com); dmarc=pass(p=quarantine dis=none) header.from=aspeedtech.com ARC-Seal: i=2; a=rsa-sha256; t=1771916274; cv=pass; d=zohomail.com; s=zohoarc; b=jp5bH2TWIs5RH3sjh9ulkhiObDxUxAgXkRRPSMOR2XgVZeG62Td5ntoF4mRVevdLFbkNUbSidWMCHuQorKwnuc8S4P/jIMmj1ZrZ3yeV0f7J85cYm+RnSaY9QmcivGafDaWmpj1dZBql4hCVCM02w/1VYCAJ9GtrzUeL9mqnH0M= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1771916274; 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=Wdn49wxih/GxlQRPCZsSv0ZU4aHVolZYhvwrQewYITs=; b=S1M57KwrecuWWcXVEAYj1zrWkHW34ymfr5Xz8dTnCkfNLJS7UwKupIGTyqPZbjpHK/3X9yLTSbmUg7/ptWCYpPDIC02KN0EQLyYd2BiFXAQmfYaWoDpjkDkR5ce6w2K4vVx8pNcg/0goKZ8D3PB9o/KFlNUcXoD7Kq62z67SzG4= 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=aspeedtech.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1771916274911776.4489484239691; Mon, 23 Feb 2026 22:57:54 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vumLU-0002JR-1f; Tue, 24 Feb 2026 01:56:36 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vumLK-0002Gq-8U; Tue, 24 Feb 2026 01:56:28 -0500 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 1vumLE-0005M8-LJ; Tue, 24 Feb 2026 01:56:24 -0500 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com (2603:1096:405:383::19) by PUZPR06MB6171.apcprd06.prod.outlook.com (2603:1096:301:11e::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9632.22; Tue, 24 Feb 2026 06:56:14 +0000 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3]) by TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3%3]) with mapi id 15.20.9632.017; Tue, 24 Feb 2026 06:56:14 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=iv+92eAn9v4YrLFIMkDDRO7NdZz6ANSnx+wzCUStJToPZkWJPCe1rWRt8YjtCUkKTZievBf4cSDfmYN9z94oC+Rei9Z/RG19O2M2zs1fYJSyxIGCEJqlE8k/Nhi9cjZXexf4O4wApC5hP7AGWaSQElc7gkxwEuKAvM2RB8D2Peuw1FgQ08pXF94g+bIy9qAJN33M2V1HodDL7Fb5LJrHEvdpSRfV6daidj/AaByk43xjb2TnBM+czs5sBMNsRRvMeExYz4QkDU3lvwHmz+4spih1pRnvLg+Nf+1e81lGLPg+cpXyZM7PS1eMRqwORlmaQhoZRuoUo1IUdgy99njeGA== 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=Wdn49wxih/GxlQRPCZsSv0ZU4aHVolZYhvwrQewYITs=; b=Q0C/J6Yx/jXK0bsPlvrEd2jCTOMDDJa1rhH1FH34j1fHl6oTdqXxyg1z1Ce50scLDlh8ueDFSy0Ni7Ji3NmpNMKFkklZLbKVYk4qx5UNvaZPtvnyLb7vSJmOH5xb1BuDldHGlor699Do6WrgYiQGS3/N8W46k3g1aU2cVwW2NP8ytoODev5BJkBgm14tGP0gTuiSsMDYAgDmZ+rdJT1S17ZQUrlxqLgy5eYmGecuaQhX37csNw6E42xbbXdkK5oJxQpjcDO4BQyHMdfabcN6/nwQSUWb8PNN1KDBFzks/PBfyig+UDB/No2koXDDMs1JYl5oSOutt3qmImS8lplQWg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=aspeedtech.com; dmarc=pass action=none header.from=aspeedtech.com; dkim=pass header.d=aspeedtech.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aspeedtech.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Wdn49wxih/GxlQRPCZsSv0ZU4aHVolZYhvwrQewYITs=; b=KxUGITbGdo6maPuOx+KiR9rsIaIi0ArMzFSrUXRdVFbmRBUqJU6g04nuKKfG9/p0uGvu8P66oEwwJ9ANEGgvLWXAdlIattkk4EkqzDqx1fsvQc9oQYlweZNiaiIkTU4ASvBBwbLOfRbsuuNViVEcRdzJPl4yErMW3Fnj1Pmfx/79eUaZ888LPIJFHstcPWyq5KW/p3Rl77pUxED3fY7OMXc02Xaoi1TVf/dO4ZfJGSWzTrIrn4DPDvPnng8IrbRHfUcJP4OMlopZ2AdHZp80rjbC8+RM2yXphTEBw5OjH9pCtGd7SoME/A4L/+QbfJa1k69xhCUHBPWkTaMRe7CcwQ== From: Jamin Lin To: =?iso-8859-1?Q?C=E9dric_Le_Goater?= , Peter Maydell , Steven Lee , Troy Lee , Andrew Jeffery , Joel Stanley , Pierrick Bouvier , Alistair Francis , Kevin Wolf , Hanna Reitz , "open list:ASPEED BMCs" , "open list:All patches CC here" , "open list:Block layer core" CC: Jamin Lin , Troy Lee , Kane Chen Subject: [PATCH v3 12/15] hw/block/m25p80: Implement volatile status register write enable for Winbond Thread-Topic: [PATCH v3 12/15] hw/block/m25p80: Implement volatile status register write enable for Winbond Thread-Index: AQHcpVqq9gqwbhjXi0iW1h/cuw62MA== Date: Tue, 24 Feb 2026 06:56:14 +0000 Message-ID: <20260224065556.3847942-13-jamin_lin@aspeedtech.com> References: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> In-Reply-To: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> Accept-Language: zh-TW, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=aspeedtech.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYPPR06MB8206:EE_|PUZPR06MB6171:EE_ x-ms-office365-filtering-correlation-id: 6a8a1ae9-8380-4717-13d0-08de7371cd09 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|376014|366016|7416014|1800799024|38070700021|921020; x-microsoft-antispam-message-info: =?iso-8859-1?Q?1jnJuSTBjTBvmwTuAokMIaBv3fmxlaikteyCyZJku192vy6KB4aycP41wr?= =?iso-8859-1?Q?U6N1z0LZXoUX4XmT+8Q3yCsuKKupav0vyKjqJOgidYwOGcb52L/YyND8lW?= =?iso-8859-1?Q?FFAsXFa+DdIX0Yj/mUBsfgfc9EW70R5szjJlqwNnLuX//+MXBSY0HaYI2B?= =?iso-8859-1?Q?JkJXWw40eRG6CNouilx5yB7tXlRs9JLmFfx9pHSAnAMll9E49w/IcqmPRo?= =?iso-8859-1?Q?N6eqN3zVUEaMz6U6x2V+ZYemK4pBA/Pd7y/YcdoRcxvb7MqYS+COIvUlAn?= =?iso-8859-1?Q?1AqFZjYONiuuTeuo/R1wsWwU5Shns0sv7s3fBWvwFyC7efBBZI1Qjrfrrg?= =?iso-8859-1?Q?CIVeJtuWIWXB1T+nNjH4eRReNViAPXsboZSwDA1l3kMV29BJBV+AmNGhnu?= =?iso-8859-1?Q?m92yFZ5/Yd65LiAqpDW2KLmKMytaVdz87c4oH3VhGQBXlCMa5XleYFbNMk?= =?iso-8859-1?Q?pjn9rvQXYbPyV210R+sioIVAcBXycVAsHCXbuUSZ5VbBf6f30p8MP7vvl3?= =?iso-8859-1?Q?1StI/OP+Vc/Pcg5HGj7ejgH0TbmC3Tcjp/aUq8pg4pndOoSJVjzDtkyHAP?= =?iso-8859-1?Q?reXLtZ/Itn+dl8h7QCEeoPhELSD84mSZC2oZXLt5qnoqXtTAnNGI7cmrjn?= =?iso-8859-1?Q?Pbs1McdjzNOwOmCNstrPPoXRYUL6cmsOzZHZSg5jN6ol1XjGiYRN3/qDEU?= =?iso-8859-1?Q?b75dPlILnVOvDy07H3yCHkvICSyO4mhf7vWYKIZJchfRMbTLBhaxFQmO/x?= =?iso-8859-1?Q?tU1EfU3AMefAOSxXWoGt4zXSaqpcOA/YHPtWOsAY1dUjeptcsyWumhmJV1?= =?iso-8859-1?Q?eBxwykIfA8s20FCmS5wLotdyW0QwF/l9yvA2k8opuVJzrUDo0nP4ZsoQFb?= =?iso-8859-1?Q?kltkfk+WBDNLR56FX6kBW/mvhsPaTRo9vZUTcYEK1ZEBw+A+0qYBminDI8?= =?iso-8859-1?Q?pbry7KiyweLlkpNA1rtNxJuMJInYHwMNfLpdDkesq8PTK2aT/mDZqxk3Lr?= =?iso-8859-1?Q?rtzwPBcW7TbhZMCxmicDJK4Pf01R8aDY+WwixzZtIBB28mISliSdlrKWV9?= =?iso-8859-1?Q?RoNbPgx22ZQQQGqt8BvbM3O33S1Y3vMIjQbjmK94cbx7g6lDafx336XK/J?= =?iso-8859-1?Q?Tcz9jrHZqTyVwiCv8bTajsprpD2RAJWYO9EAKiTElqwPgqCFaPaej+ExC1?= =?iso-8859-1?Q?xM2QtXaSvhIKFGpbFFezTH+YXOkb9NkP91lCM+PZlbX5yTWPrzdprvRBJV?= =?iso-8859-1?Q?/K1ixDnpZcNzDC55JnR4wmjhiuluJ8J7JomIkRE60yuVGhsWwZftUJKJ18?= =?iso-8859-1?Q?jBQe6J169AIzLCNHGAggGY3Ngl/gNj6cqK9Ro1YPcrwNCIKgnsqS+fHVgG?= =?iso-8859-1?Q?C37aX11PH0IUs9A0vZ+vQ8gwL2c0iSwFsijCkmHNqWBN9vW1rg+NgsL0Jt?= =?iso-8859-1?Q?3MBzv0BMh4ipUDZVAllObZXHAmMW+okIPs+d3A0p7HpqTyk9RHk0mCLSsx?= =?iso-8859-1?Q?rYSNimq98XXnXXZ4iT7UpOd8I6pt7y262/Of/aNRdN+otdJ7Ys+KucTPsD?= =?iso-8859-1?Q?u4oCUP/44R4vBJDokDYAwRhhMndSXF+er6x8RBfNIc9kCk+EhRoOWKXH1v?= =?iso-8859-1?Q?IzpRHsOPh+MeQI07Fn7g0EegLf6AMyjGy6Z9Qnt8nERCris7JIc4zT99zi?= =?iso-8859-1?Q?QJKp/yRq18UNoZEisEPR13e7ZWbY8aiHh2YrPEr5?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TYPPR06MB8206.apcprd06.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(376014)(366016)(7416014)(1800799024)(38070700021)(921020); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?nRZruRR1hrWJIkiySsdUHIkfnkgKrULQ77iaQvYXR+d18tbU+fVchQ3o1v?= =?iso-8859-1?Q?DNQEYfE+9U7uY8rox+ViV8PPB8qcOmSI++z1oH9i75EvDwQ969jf5zISDL?= =?iso-8859-1?Q?vc2176f8MRgWKgAqDnSys/xKYIsa75VWrxtYOxLbHzerGDaLLeUcyLbR0l?= =?iso-8859-1?Q?X4NFVK/ye6rEx1YA+bdDurovQp9E/4iVfrBFCT9MH8DUdvAe6se4DnXEvH?= =?iso-8859-1?Q?klNtANfIwuNXnrzDcEN5LoCX0RbOe2R6k5gIFZYOFgqMZ7BadTtSohs8WM?= =?iso-8859-1?Q?vL+wa4ZfVSPEBKmzTfso+71hI4m2TYIurJ8euPbE4SHqkG9BHDDNbf//ZN?= =?iso-8859-1?Q?9o+YTcuCTwn35puz0kWP+QnA9CumVxNnfGx2xtPnd3S/AOzcyhi7Q5BHqq?= =?iso-8859-1?Q?HOj+OxML/VzqFedRDFQfUV5l8DnEaPDJKm2VhXC9pH3LfbEXkr9HuE5Yuo?= =?iso-8859-1?Q?JhADcXqSHa0tpfLbzfd5DosJhmgoTFB7VoR7f8uedQHWsSim0Qvr/0QR0C?= =?iso-8859-1?Q?mBlz3f2gf1wew1+BxGpFB/6dIfvmpmArWhVoj7nxPFg6t/CzcRKrDQBtzo?= =?iso-8859-1?Q?2Xjp4+kQFovCimxHNcraIVBlgAgoU0Py/a1JXpgC9PdDE0//pNQ86etGm1?= =?iso-8859-1?Q?fkVwbbCfDE8hIkN7kfdu6Frzr/zPHK9wzVn3rB2/Cs2scM62KXOBSghAvq?= =?iso-8859-1?Q?63HzV6IQ+4CxgdGQ1HgmN72FY99v9FF71zQSekzeuRyVhLUcpGxmYYLh+7?= =?iso-8859-1?Q?7R/m/WmQuYPhcdsWJz1QE/paA51CWWzk6z+Av+JWSxXZbEF48h8z0sFDGc?= =?iso-8859-1?Q?tusC58qh5SRLY3tXI6yOrr8kEGP/rw79qY6/0ZffakwupYvSbDryzeB9zX?= =?iso-8859-1?Q?Vpy+0YLRa9rnvc36MmTazVC+aVbNXIts9L4bB+ynM9MbcrQea5q2pK8LJ7?= =?iso-8859-1?Q?bfxAsUBThNODau9JIqf5BPtbGxOTePR/gg97NCNmbv5Iy1782ZKEXy7Sld?= =?iso-8859-1?Q?E+kL/RGuSVyvQBxfz0Ty/QSZ4g3q5F4VSDMCdITJVzdNO6eUpCWEO/zXro?= =?iso-8859-1?Q?ovEjzRpDBID/TTQHSC50lz1ONu2wdpFNpD8KiPpB/4FRE2+c9k/NCC4jJD?= =?iso-8859-1?Q?3E765jf4m4JB5CxQs2t9YisVSinPAVmrtLOUKMMgN9vIGy08gTUMzoYdFE?= =?iso-8859-1?Q?gSxvKonj4MZEHBUywDCLmqN9D9cXPk0OPR94fU6bFgrDW8/uZdr/vgfcPu?= =?iso-8859-1?Q?r1/wgzo6ZGL+DYLNmhcs9ayIHivhHHfGmQLlcwFseJWGg75nZ1rwyanibY?= =?iso-8859-1?Q?G/ulGXu7u/txBcxPbGHUwVFePm0VTPnshGPi410NO8MdSVFGjooZx7LLUQ?= =?iso-8859-1?Q?Q0viPngJOrh+vn86NiX/NqZesc8YuaM8UyQXr5uo+Jn2v4xEaIpN0KqxyJ?= =?iso-8859-1?Q?PyRC508oK+h9r3a3MhI/2pClU9FQCJERWKAQy1FGMk0BuYh9dj87pDcteN?= =?iso-8859-1?Q?50LNzMjEpPDWDfMJFaZ6bJ2N/YbEHRI3ELrAKMB6twQCBxe5afYIFsZzRo?= =?iso-8859-1?Q?7XP8RuxB7O0Atp2h+oNvbwz4YU5e6jeeIEdSmmZLHfOBr4dEcA2GhDVGJE?= =?iso-8859-1?Q?9+RrZ7P9FDFSg+FpJbs3MLup3Adk1ux0vyTD0m6rt8xj7IL2vp8Z6XISEV?= =?iso-8859-1?Q?AFB3CZtqtKVAUTPZl3QRyMozt0AwsmmCouA7ABVCZE8x6x2+DYC0/3p/XH?= =?iso-8859-1?Q?JiYE8azHmpxXnJ9k4M61gFRkJWFGWbuBlZaP2vihsYr2kJmVzK0Z8WJ1lI?= =?iso-8859-1?Q?oM5gKYmaeg=3D=3D?= Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: aspeedtech.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYPPR06MB8206.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6a8a1ae9-8380-4717-13d0-08de7371cd09 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Feb 2026 06:56:14.1330 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43d4aa98-e35b-4575-8939-080e90d5a249 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: qdwoQwRYtckOKpDABHi9C2wzjT5uHs/vO2YQ5l/vINaIEhRNjudrD/rpNNez2Msp+z62z8T+wADKUkoGN8RCXNkg1a7vnSYQOSP5jUGW4MM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PUZPR06MB6171 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=lists.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c406::3; envelope-from=jamin_lin@aspeedtech.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 @aspeedtech.com) X-ZM-MESSAGEID: 1771916277255158501 Content-Type: text/plain; charset="utf-8" Winbond SPI NOR flashes require the Volatile Status Register Write Enable (VSR WREN, opcode 0x50) command to be issued before updating volatile status register bits, such as those accessed via the WRSR2 command. Currently, WRSR2 handling only checks the standard write enable latch, which does not fully model Winbond hardware behavior. Add support for the volatile write enable mechanism by introducing a separate volatile_write_enable flag. For Winbond devices, WRSR2 writes that update volatile status register bits are gated by the VSR WREN command. If the volatile write enable latch is not set, such writes are rejected. Signed-off-by: Jamin Lin --- hw/block/m25p80.c | 36 ++++++++++++++++++++++++++++++++---- 1 file changed, 32 insertions(+), 4 deletions(-) diff --git a/hw/block/m25p80.c b/hw/block/m25p80.c index b8a2543c0b..5bb8b8efa9 100644 --- a/hw/block/m25p80.c +++ b/hw/block/m25p80.c @@ -438,6 +438,11 @@ typedef enum { */ WRSR2 =3D 0x31, =20 + /* + * Winbond: 0x50 - Write Enable for Volatile Status Register + */ + VSR_WREN =3D 0x50, + RNVCR =3D 0xB5, WNVCR =3D 0xB1, =20 @@ -510,6 +515,7 @@ struct Flash { uint8_t spansion_cr4v; bool wp_level; bool write_enable; + bool volatile_write_enable; bool four_bytes_address_mode; bool reset_enable; bool quad_enable; @@ -897,6 +903,7 @@ static void reset_memory(Flash *s) s->pos =3D 0; s->state =3D STATE_IDLE; s->write_enable =3D false; + s->volatile_write_enable =3D false; s->reset_enable =3D false; s->quad_enable =3D false; s->aai_enable =3D false; @@ -1305,8 +1312,7 @@ static void decode_new_cmd(Flash *s, uint32_t value) * combinations of the two states are called "software protected m= ode" * (SPM), and status register writes are permitted. */ - if ((s->wp_level =3D=3D 0 && s->status_register_write_disabled) - || !s->write_enable) { + if (s->wp_level =3D=3D 0 && s->status_register_write_disabled) { qemu_log_mask(LOG_GUEST_ERROR, "M25P80: Status register 2 write is disabled!\n"= ); break; @@ -1314,6 +1320,17 @@ static void decode_new_cmd(Flash *s, uint32_t value) =20 switch (get_man(s)) { case MAN_WINBOND: + /* + * Winbond requires VSR WREN (0x50) prior to updating volatile + * status register bits. VSR WREN does not set WEL. + * + * Accept either standard WEL (0x06) or VSR WREN (0x50). + */ + if (!s->write_enable && !s->volatile_write_enable) { + qemu_log_mask(LOG_GUEST_ERROR, + "M25P80: Status register 2 write is disabled= !\n"); + break; + } s->needed_bytes =3D 1; s->state =3D STATE_COLLECTING_DATA; s->pos =3D 0; @@ -1332,6 +1349,16 @@ static void decode_new_cmd(Flash *s, uint32_t value) s->write_enable =3D true; break; =20 + case VSR_WREN: + switch (get_man(s)) { + case MAN_WINBOND: + s->volatile_write_enable =3D true; + break; + default: + break; + } + break; + case RDSR: s->data[0] =3D (!!s->write_enable) << 1; s->data[0] |=3D (!!s->status_register_write_disabled) << 7; @@ -1824,8 +1851,8 @@ static const VMStateDescription vmstate_m25p80_block_= protect =3D { =20 static const VMStateDescription vmstate_m25p80 =3D { .name =3D "m25p80", - .version_id =3D 0, - .minimum_version_id =3D 0, + .version_id =3D 1, + .minimum_version_id =3D 1, .pre_save =3D m25p80_pre_save, .pre_load =3D m25p80_pre_load, .fields =3D (const VMStateField[]) { @@ -1837,6 +1864,7 @@ static const VMStateDescription vmstate_m25p80 =3D { VMSTATE_UINT8(cmd_in_progress, Flash), VMSTATE_UINT32(cur_addr, Flash), VMSTATE_BOOL(write_enable, Flash), + VMSTATE_BOOL(volatile_write_enable, Flash), VMSTATE_BOOL(reset_enable, Flash), VMSTATE_UINT8(ear, Flash), VMSTATE_BOOL(four_bytes_address_mode, Flash), --=20 2.43.0 From nobody Sun Apr 12 00:55:16 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=aspeedtech.com); dmarc=pass(p=quarantine dis=none) header.from=aspeedtech.com ARC-Seal: i=2; a=rsa-sha256; t=1771916423; cv=pass; d=zohomail.com; s=zohoarc; b=AWi/1mcT4kwYcFid9mvFk/bGOUfFyzJW2MWhLA7GMQ/+32m5Aa6n3JAcy0cLw/kPLlhn8sZPmzQYpiBKKC4TFd8iKfDh2p8nHZRY4InGdSp5D5vxVtuewnq/8yH5p7aZkaw8c2GbwEYwB71GqV6YC/fwtSK6h52yYJJqSQCCL+A= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1771916423; 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=oJN2DxV6emGfvwifwTHf2a9x7ynAuuwY/ZimtnSTUsI=; b=iz0Pl9muWdVDQkTFKTp4M/H3DFAwX8uvhjF7FZUGyD64Mvp1XFl6gAsXlTgKlqXvwToexoJmxDsZvcEtGgj6Y/1GArKipBLCda6uJK0J12q+CkAIng9qKcnK4fR01IGnMfmBc35qxtU1Iw9Hz21MwF4sqJhTjYoBcUWkqv9oB00= 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=aspeedtech.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 177191642330136.51339045258146; Mon, 23 Feb 2026 23:00:23 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vumLZ-0002NW-17; Tue, 24 Feb 2026 01:56:41 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vumLU-0002Js-Oi; Tue, 24 Feb 2026 01:56:36 -0500 Received: from mail-japaneastazlp170120005.outbound.protection.outlook.com ([2a01:111:f403:c405::5] helo=TYPPR03CU001.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 1vumLS-0005Lc-53; Tue, 24 Feb 2026 01:56:36 -0500 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com (2603:1096:405:383::19) by KL1PR06MB6109.apcprd06.prod.outlook.com (2603:1096:820:d1::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9632.21; Tue, 24 Feb 2026 06:56:15 +0000 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3]) by TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3%3]) with mapi id 15.20.9632.017; Tue, 24 Feb 2026 06:56:15 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=LIrIN3YpFsKGF9w0UgBaZzWt2yfwt0Nt8gc7TNgjNUMge1t58mfS9YdD907eElF830iSuuEkvBOQ2p5Ze+CUsQtYVnou5r+mGu4EtEl5ryc8HF12BMeSNf4Cmjaj4XSOmHk5O1QbjqL/mmrieWTSwxI0biFsu7te++64HHf0p32FQ0MN53Xz9At509m39gXGmXwDPtGN1zYyBsxokRrlk++myIhR0J5ta5zFxr+hprLDnuU3dBMby3nsBbH4ZQIN/0CVNsWGev4Nutwrgzek93iRX20CxDxmLHKO0Dvk/pvXAXyvbLsQWjBN+2bYVZ3oA/nWI0G5KQtCwhQT514Swg== 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=oJN2DxV6emGfvwifwTHf2a9x7ynAuuwY/ZimtnSTUsI=; b=kwciUrPpivm5bP3YOzwZg6BkXwxT10XRIultX5t9IYWOJEvHPTsW7ZislrZYRhK8/O24I5Q/uWVEMMnLCg+O0t3t3B+OH6Nyr0UxoWkBRXQtDyphgEFqIvVWvQUcAJDByqDofNBRJkPolzREFulEDWHgj2cmRCyCn76FeY6lMUZSD9DRG2PNAOA4QliZJduelDSRpyq2PrFRt5sKiDdGDz4FS4ArzVmnwOPJTlkyz9wFJOSNMqfc0g2l+dnNSPnQiJX7Mx32EdMLVOmmlV/Vs/EXHk5Dqjut2DITnG1EGbbsIw/+FcIyWagDtueeiHQSyFDNHPzD/jzlDM5wKm7Syg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=aspeedtech.com; dmarc=pass action=none header.from=aspeedtech.com; dkim=pass header.d=aspeedtech.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aspeedtech.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=oJN2DxV6emGfvwifwTHf2a9x7ynAuuwY/ZimtnSTUsI=; b=SJBKn07ih1gSCDJegWTyVBTTPvb/cgv7142WeYX9+ccTGj5XReqFRL7Jg/QPdJRzmodRIcX4TVwIyoa3QplXnbt+CLA6zRzuqR6K0uKg2czvMvIeDfN9FUf+g4qV6OSvY0jqibUwS9PfIzWe3SMNZrGm/E0+bk1leC2bu4Aw4uc7y66RdBgjpv/r7dxSUrIXPRc5orb++cTTzH91epfAqxI22Ocq8pYaCpz1kuZ5WVd+Wyxlu6BfhqUOgea5WV7MWAomcK3XUFYtamGpqx34qgOG/LujLwAAyXvTNCZSF2DJH84eK8vVwn99R2VH6tOffMV+oFOBEpkLV4ViQOiUfw== From: Jamin Lin To: =?iso-8859-1?Q?C=E9dric_Le_Goater?= , Peter Maydell , Steven Lee , Troy Lee , Andrew Jeffery , Joel Stanley , Pierrick Bouvier , Alistair Francis , Kevin Wolf , Hanna Reitz , "open list:ASPEED BMCs" , "open list:All patches CC here" , "open list:Block layer core" CC: Jamin Lin , Troy Lee , Kane Chen Subject: [PATCH v3 13/15] hw/ssi/aspeed_smc: Add Data FIFO-based flash access support for AST2700 Thread-Topic: [PATCH v3 13/15] hw/ssi/aspeed_smc: Add Data FIFO-based flash access support for AST2700 Thread-Index: AQHcpVqra1q8Jao2sEmkBPdk6Ph9OQ== Date: Tue, 24 Feb 2026 06:56:15 +0000 Message-ID: <20260224065556.3847942-14-jamin_lin@aspeedtech.com> References: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> In-Reply-To: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> Accept-Language: zh-TW, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=aspeedtech.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYPPR06MB8206:EE_|KL1PR06MB6109:EE_ x-ms-office365-filtering-correlation-id: 35d6ab66-e42c-4d3a-9256-08de7371cdd8 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|1800799024|366016|7416014|376014|921020|38070700021; x-microsoft-antispam-message-info: =?iso-8859-1?Q?GGQQNuMfCaF/I5leSxK6qTFaQJI+uEgD3diQrEdJtNj1ZxuLhx7tOa9U2h?= =?iso-8859-1?Q?FTmMF+bz10Ai3hBhq6KPyRaF+6UFLJcgqMh1fe95IgTPbgvu7iEZTwpXK9?= =?iso-8859-1?Q?9EsmL+KgRuuif1wFzwb2CvFxYKXezw6TWS2xWrHHv4uQWymT3S1RCbtrQI?= =?iso-8859-1?Q?LaNzRU7af7n+OtMoM00ZHPHzwpS2nYlySYaguze7KYgmq8hA41b9Fe21Dp?= =?iso-8859-1?Q?MDOcL/R93Pv476huRvE3T8jXll7BXIJz+SKiesyufoDjxN3SI3PFKtnlAd?= =?iso-8859-1?Q?x6+EwdDF5NkD9UX/g/mIFMU54iorg242WQcqmqRQ6L60+zcLERRGW7GjAU?= =?iso-8859-1?Q?67F+bWtZz5C5G9TJQ/SgyaQm6Rq3pRMT0Jo198EGdhI7s7PluzU8UtXUVC?= =?iso-8859-1?Q?FvzDZaHOecaKPdtsjccHZr7MS4YKpcQJ66D3AmRx0nEAHirrj9WZIgLBvz?= =?iso-8859-1?Q?71b60hmxhVlDSOF9jJs6KuY8MYxFAOJ68MCjiWcs8tO6Gc1OplyYimszCi?= =?iso-8859-1?Q?4E8EkZsGHo/v7kbHY48I52tnwa7fh0opK11EhqlFCFusUEw4agCTfqFMKv?= =?iso-8859-1?Q?G6qCKRZtO0c9bloqZx7kxpbx+4JXeFdquwKbRwipSIBxTfW0jxADEhpOLs?= =?iso-8859-1?Q?OE3RSBoXRygCrDfOEw+ThKY09ngczKuB5Ewtkja2d8FIzzmqgdaWD+QU6/?= =?iso-8859-1?Q?5UC7BD4+chBFDc0rTGQBQFdgPlCRf0kZgeJ5F6Th9C7m+/4vowAw5IGe7o?= =?iso-8859-1?Q?S4t4rV3+A+ql0etVsoFI0F2jrlaf8iixlzmVjD0Sz5zs1Wvdf7sLqKKCDg?= =?iso-8859-1?Q?Gk9UZ2fyL8em1idnt4XVMEtqL5ZcGfq+zrjsv71P1TGdd74kvYBK/xpYJU?= =?iso-8859-1?Q?lOIF2CSfMCOTfGT+Mq3SHytkixxoTDNZfPFIMQQcg+wnW+Y2jjVGepMosY?= =?iso-8859-1?Q?foijseGLS0irAQpR2mqCuwKFtdgUhuthohwxyKdXfi8Y78LyvxWcyOctq+?= =?iso-8859-1?Q?ZYhtj99XmdLgR0cSKcPjWLqRfsW63I6LoRWE40+WTyR7FZrhFnJAUUEJnz?= =?iso-8859-1?Q?DZuBxmsvfazXDByugOalcX8nV9htgEGDGNYa8rT+u9R9TtK/OYJZk9lCzm?= =?iso-8859-1?Q?f1NX1tY8VAycFjotpJb0Y7vHAByJZDfH3dxlZMhw/rUCQUC/6MoJB/z5EF?= =?iso-8859-1?Q?24hOH7XtJC49D6YbX/zFOjHaDw8WaVMsB4RDCo/vJCsr3sS8aduG/GVBlU?= =?iso-8859-1?Q?ajkbCBK1KvnYSPf9CMPs7OjkscGVGv5LLPwySS6RC+nZaDgQGX/jnkPD1M?= =?iso-8859-1?Q?hmhET7KrOCLpy7zFIZQCrMyyWDAFhyQWn7PBBqhwbT1JslsJ/0rqM/HCxE?= =?iso-8859-1?Q?8DBQgqVbMdUwKc48AxZOwfHffcRT/S7+hA/KgEIuoFrVuPKfWaU2EaXzun?= =?iso-8859-1?Q?20dDlBWU6mVdF8cgCpzHzzXMjZgUaegbyB98dudzIoa/o+FI/UVqrYNd0u?= =?iso-8859-1?Q?fBQ9aPm7ne1xJu8t/6WCVcJe9M8516VLbOxr5v5TzpE7kxk2D9z3C9r5Xx?= =?iso-8859-1?Q?Vi2RmFJzHevgg7ygbrXmTILRrqk6iMMnZmVG11Bu8oUMyWvm7XPchpoPVH?= =?iso-8859-1?Q?f0gT2SEc/C2qoTiIuoD2TZStz/BWPX9POsBJlnTc5Sv14mWJ79ajOh/+L4?= =?iso-8859-1?Q?5xsTgO0Wbdu9KGqS8VXK8XlMPeS5G8FyHUE9p6Pt?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TYPPR06MB8206.apcprd06.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(366016)(7416014)(376014)(921020)(38070700021); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?cN0eFJ2Xv0iisngb3D8nX86ZPEio+fIt5/kYgOpdHKrK0hL58yCy8h+gd4?= =?iso-8859-1?Q?6yypZC8/pvek68jMBaULg4YciiuzYMTxqxtvmytLUjN00ca+fuMaP97EoV?= =?iso-8859-1?Q?pLq0c83TCDcunTfO0LTSeWDZzMQjf6Zdy/T8Kw/72OE5X/FL0Cqo1NEmhz?= =?iso-8859-1?Q?ylsET3bydpKVyN/8huO1dxPua+LKG1y24G37Sw+dcxvsJnXorfphrwul+7?= =?iso-8859-1?Q?/wW1TXgPyToaz1jXzsmeFkja6ftn8xRjD28EzdnXiLE+SxH871nEetJHcV?= =?iso-8859-1?Q?YRZ2Z4BusQwWOY4g3f9PSvJlkYb/O/wPR5P2IXKxVJJA/pxl1S/AqC1m8T?= =?iso-8859-1?Q?PGIcXWydTM7V9adt2Qo3l2/mgQ+c+eaUV/Hq3y77AblcX6PYZeG5qe+OcP?= =?iso-8859-1?Q?2vSX9IVt0hGxsfBHBOV0da/68gYxDAfHQsOxuHLbOWJa3QwDXAiv4F7n8C?= =?iso-8859-1?Q?qtcEdKtgGts7aXxtvRchLRfZG9ikUB3EgJxbZ1kq9az0bqYZUhy4Lx75CS?= =?iso-8859-1?Q?lBZ1nsw1SXLDHgvYGsTFajG1RWoVH+fT4duzNSwHJZIAF5H5ThSmJq3xF0?= =?iso-8859-1?Q?r5xamkiOobxvHbFz6GQU3HpIcmQIuLAWvpvGKelgtn/M9RQGF0MOMLHXP3?= =?iso-8859-1?Q?DEfVwmJuDENJCVFt+sXnKMKZWj0dJtUFZmqYzYhiW3aI2/vNjU+trrUi2F?= =?iso-8859-1?Q?DK4kbsJrJBwzp0uL3xgkWEPdBia1+4bRVWe8fXUm/9+/CjpBGTr7715LDS?= =?iso-8859-1?Q?ArGjtGLVP05SpfBpHEe+mfpQOXgZjucE4rIpzFnU6TKPSU+vX9YxW5iIZ8?= =?iso-8859-1?Q?pu26cqy19DhvMgE2cAPWFpg6an+qeDoaGM++WIm19v8kE+ErK+0WHypS+p?= =?iso-8859-1?Q?rZhYa5s5YoLNFQyIhfcEeYPM2ecNpWqF+lzfU6uYIh62byoFa5qZGD2MXy?= =?iso-8859-1?Q?PECpZIfh/D7mgArF4dyC/BFg+CT1rntTxxO1o6MP042iPYaNeHKH5tcg/i?= =?iso-8859-1?Q?wVEvyta/xdGe34pefogt3t4NTCE9MX3pzplkcy66wKSu7aXah9SEdWsrSe?= =?iso-8859-1?Q?qZgXbR1xqkI+Gjx1SkQnyF98wkhF0zSayVkt3Z7skNb3t++gge9GLK6GsS?= =?iso-8859-1?Q?RjCW0+tK6wbloR1igNr/aqSbRVx6dhyfzfoSG0LiXcRiD6785oeR0LKQGp?= =?iso-8859-1?Q?PImzu8EUMmkymaUQFzHNOB6CaZ2UVE80J4XaYRVFxXs3C81yP1sjJeypVl?= =?iso-8859-1?Q?LEZvyhDOck1hk5kTbQxGQz/X3CGAKjWy/h6fUJ1K97aDMPQwm5PL1rJn2Y?= =?iso-8859-1?Q?BRgrSDN+gwk+WPNsVPs0VQWzPInC20Yu6ytVViDU8gpTpcRiK9XItzw6we?= =?iso-8859-1?Q?w7DIPrUqwYR06MjOgC89+4GNURpDZEkccL4m83CYM0argKzidCh4i6vHC0?= =?iso-8859-1?Q?9O46kLZLbPU+GTxJsavSrhStqjS5ZUk955oT6EM2qqezfbY+VfkveKU9Om?= =?iso-8859-1?Q?kC7DqKrXvGgyAKetZBB5pruMvyeBPd2//x8S4vwZcPKrH2Tv0OdxaQaz+i?= =?iso-8859-1?Q?S9HVKTa2u8ugP+mVgAkfSJxSvsYRoeTEPQqPUUHBsqH8Qu9NIjlq1UELn4?= =?iso-8859-1?Q?vQ/nR9+ujttInxfREddKGHZCCxZNAfPmo8Q2Q2alFaSb+XI6TNN0VXYm1Q?= =?iso-8859-1?Q?eYRLOQCBdIY52qrwdNlXWw2bE4AqLmXTLJANtX/MXzdpXvmvmciufP/7t3?= =?iso-8859-1?Q?Y88JipU7ergH/moPPPp3qUOYbpwzdtL6o4dKkWnNy7jpaBvO3qc8t5miv1?= =?iso-8859-1?Q?h3LtDVvaJQ=3D=3D?= Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: aspeedtech.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYPPR06MB8206.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 35d6ab66-e42c-4d3a-9256-08de7371cdd8 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Feb 2026 06:56:15.4883 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43d4aa98-e35b-4575-8939-080e90d5a249 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: F5YW5JHBdfcVJ8/iChSOdG9e0n1m6u+k9SLZ65A8ZaQPuiQA9EkHeiZyvd5en3IFRBM70y4F55DZtYA1ZGWIiP+/ygSe9ABmTP4MiRxLoMc= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KL1PR06MB6109 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=lists.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c405::5; envelope-from=jamin_lin@aspeedtech.com; helo=TYPPR03CU001.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 @aspeedtech.com) X-ZM-MESSAGEID: 1771916425470158500 Content-Type: text/plain; charset="utf-8" AST2700 supports a Data FIFO mode where flash accesses can be performed directly through Data FIFO MMIO offsets. The Data FIFO start offset increments by one for every 16MB of flash address space, allowing the chip select (CS) to be decoded from the Data FIFO offset. This change adds Data FIFO support to the Aspeed SMC model and introduces a class callback to translate Data FIFO offsets into CS indices. For AST2700, the Data FIFO offset is matched against the segment start address of each CS to determine the target flash device. The SMC register region size (nregs) is also extended dynamically based on the number of supported chip selects to cover all possible Data FIFO regions. Signed-off-by: Jamin Lin --- include/hw/ssi/aspeed_smc.h | 3 +- hw/ssi/aspeed_smc.c | 111 +++++++++++++++++++++++++++++++++--- 2 files changed, 105 insertions(+), 9 deletions(-) diff --git a/include/hw/ssi/aspeed_smc.h b/include/hw/ssi/aspeed_smc.h index 76831422c6..640efade94 100644 --- a/include/hw/ssi/aspeed_smc.h +++ b/include/hw/ssi/aspeed_smc.h @@ -47,7 +47,7 @@ struct AspeedSMCFlash { #define TYPE_ASPEED_SMC "aspeed.smc" OBJECT_DECLARE_TYPE(AspeedSMCState, AspeedSMCClass, ASPEED_SMC) =20 -#define ASPEED_SMC_R_MAX (0x100 / 4) +#define ASPEED_SMC_R_MAX (0x300 / 4) #define ASPEED_SMC_CS_MAX 5 =20 struct AspeedSMCState { @@ -116,6 +116,7 @@ struct AspeedSMCClass { AspeedSegments *seg); void (*dma_ctrl)(AspeedSMCState *s, uint32_t value); int (*addr_width)(const AspeedSMCState *s); + int (*data_fifo_offset_to_cs)(const AspeedSMCState *s, uint32_t offset= ); const MemoryRegionOps *reg_ops; }; =20 diff --git a/hw/ssi/aspeed_smc.c b/hw/ssi/aspeed_smc.c index b9d5ecba29..ed6cedabcb 100644 --- a/hw/ssi/aspeed_smc.c +++ b/hw/ssi/aspeed_smc.c @@ -163,6 +163,9 @@ /* Read Timing Compensation Register */ #define R_TIMINGS (0x94 / 4) =20 +/* Data fifo */ +#define R_DATA_FIFO (0x200 / 4) + /* SPI controller registers and bits (AST2400) */ #define R_SPI_CONF (0x00 / 4) #define SPI_CONF_ENABLE_W0 0 @@ -212,6 +215,7 @@ static const AspeedSegments aspeed_2500_spi2_segments[]; #define ASPEED_SMC_FEATURE_DMA_GRANT 0x2 #define ASPEED_SMC_FEATURE_WDT_CONTROL 0x4 #define ASPEED_SMC_FEATURE_DMA_DRAM_ADDR_HIGH 0x08 +#define ASPEED_SMC_FEATURE_DATA_FIFO 0x10 =20 static inline bool aspeed_smc_has_dma(const AspeedSMCClass *asc) { @@ -228,6 +232,11 @@ static inline bool aspeed_smc_has_dma64(const AspeedSM= CClass *asc) return !!(asc->features & ASPEED_SMC_FEATURE_DMA_DRAM_ADDR_HIGH); } =20 +static inline bool aspeed_smc_has_data_fifo(const AspeedSMCClass *asc) +{ + return !!(asc->features & ASPEED_SMC_FEATURE_DATA_FIFO); +} + #define aspeed_smc_error(fmt, ...) \ qemu_log_mask(LOG_GUEST_ERROR, "%s: " fmt "\n", __func__, ## __VA_ARGS= __) =20 @@ -758,6 +767,7 @@ static uint64_t aspeed_smc_read(void *opaque, hwaddr ad= dr, unsigned int size) { AspeedSMCState *s =3D ASPEED_SMC(opaque); AspeedSMCClass *asc =3D ASPEED_SMC_GET_CLASS(opaque); + int cs; =20 addr >>=3D 2; =20 @@ -783,6 +793,18 @@ static uint64_t aspeed_smc_read(void *opaque, hwaddr a= ddr, unsigned int size) trace_aspeed_smc_read(addr << 2, size, s->regs[addr]); =20 return s->regs[addr]; + } else if (aspeed_smc_has_data_fifo(asc) && addr >=3D R_DATA_FIFO) { + cs =3D asc->data_fifo_offset_to_cs(s, addr << 2); + if (cs >=3D 0) { + /* + * Data fifo mode only supports SPI user mode. + * The flash address is provided by the SPI command/address cy= cles, + * the MMIO addr parameter is ignored. + */ + return aspeed_smc_flash_read(&s->flashes[cs], 0, size); + } + aspeed_smc_error("Invalid data fifo offset %" HWADDR_PRIx, addr <<= 2); + return -1; } else { qemu_log_mask(LOG_UNIMP, "%s: not implemented: 0x%" HWADDR_PRIx "\= n", __func__, addr); @@ -1156,6 +1178,17 @@ static void aspeed_smc_write(void *opaque, hwaddr ad= dr, uint64_t data, } else if (aspeed_smc_has_dma(asc) && aspeed_smc_has_dma64(asc) && addr =3D=3D R_DMA_DRAM_ADDR_HIGH) { s->regs[addr] =3D DMA_DRAM_ADDR_HIGH(value); + } else if (aspeed_smc_has_data_fifo(asc) && addr >=3D R_DATA_FIFO) { + int cs =3D asc->data_fifo_offset_to_cs(s, addr << 2); + if (cs >=3D 0) { + /* + * Data fifo mode only supports SPI user mode. + * The flash address is provided by the SPI command/address cy= cles, + * the MMIO addr parameter is ignored. + */ + return aspeed_smc_flash_write(&s->flashes[cs], 0, data, size); + } + aspeed_smc_error("Invalid data fifo offset %" HWADDR_PRIx, addr <<= 2); } else { qemu_log_mask(LOG_UNIMP, "%s: not implemented: 0x%" HWADDR_PRIx "\= n", __func__, addr); @@ -1989,6 +2022,39 @@ static void aspeed_2700_smc_reg_to_segment(const Asp= eedSMCState *s, } } =20 +/* + * Convert a data fifo offset to a chip select (CS). + * + * Data fifo access starts at 0x200. The data fifo offset index is + * calculated by subtracting the data fifo base offset from the MMIO addre= ss. + * + * The data fifo offset index increments by 1 for every 16MB of flash addr= ess + * space. Each offset step therefore represents a 16MB address decode rang= e. + * + * The CS is determined by matching the data fifo offset index against the + * segment start address of each CS. + * + * Returns the CS index on success, or -1 if the offset is invalid. + */ +static int aspeed_2700_smc_data_fifo_offset_to_cs(const AspeedSMCState *s, + uint32_t offset) +{ + AspeedSMCClass *asc =3D ASPEED_SMC_GET_CLASS(s); + uint32_t start_offset; + uint32_t fifo_offset; + int i; + + for (i =3D 0; i < asc->cs_num_max; i++) { + start_offset =3D (s->regs[R_SEG_ADDR0 + i] & 0x0000ffff) << 16; + fifo_offset =3D start_offset / 0x1000000; + if (fifo_offset =3D=3D offset - (R_DATA_FIFO << 2)) { + return i; + } + } + + return -1; +} + static const uint32_t aspeed_2700_fmc_resets[ASPEED_SMC_R_MAX] =3D { [R_CONF] =3D (CONF_FLASH_TYPE_SPI << CONF_FLASH_TYPE0 | CONF_FLASH_TYPE_SPI << CONF_FLASH_TYPE1), @@ -2023,6 +2089,27 @@ static const AspeedSegments aspeed_2700_fmc_segments= [] =3D { { 0x0, 0 }, /* disabled */ }; =20 +/* + * AST2700 supports data fifo mode with a base data fifo start offset of 0= x200. + * + * The data fifo start offset increments by 1 for every 16MB of flash addr= ess + * space. Each offset step therefore represents a 16MB address decode rang= e. + * + * Assuming each chip select (CS) can use the maximum flash size of 256MB: + * 256MB / 16MB =3D 0x10 offset steps per CS. + * + * Data fifo start offset for CSn: + * 0x200 + (n * 0x10) + * + * Examples: + * CS0: 0x200 + * CS1: 0x210 + * CS2: 0x220 + * CS3: 0x230 + * + * asc->nregs should be set to: 0x200 + (asc->cs_num_max * 0x10) + * to cover all possible data fifo regions. + */ static void aspeed_2700_fmc_class_init(ObjectClass *klass, const void *dat= a) { DeviceClass *dc =3D DEVICE_CLASS(klass); @@ -2042,14 +2129,16 @@ static void aspeed_2700_fmc_class_init(ObjectClass = *klass, const void *data) asc->flash_window_base =3D 0x100000000; asc->flash_window_size =3D 1 * GiB; asc->features =3D ASPEED_SMC_FEATURE_DMA | - ASPEED_SMC_FEATURE_DMA_DRAM_ADDR_HIGH; + ASPEED_SMC_FEATURE_DMA_DRAM_ADDR_HIGH | + ASPEED_SMC_FEATURE_DATA_FIFO; asc->dma_flash_mask =3D 0x2FFFFFFC; asc->dma_dram_mask =3D 0xFFFFFFFC; asc->dma_start_length =3D 1; - asc->nregs =3D ASPEED_SMC_R_MAX; + asc->nregs =3D 0x200 + (asc->cs_num_max * 0x10); asc->segment_to_reg =3D aspeed_2700_smc_segment_to_reg; asc->reg_to_segment =3D aspeed_2700_smc_reg_to_segment; asc->dma_ctrl =3D aspeed_2600_smc_dma_ctrl; + asc->data_fifo_offset_to_cs =3D aspeed_2700_smc_data_fifo_offset_to_cs; asc->reg_ops =3D &aspeed_2700_smc_flash_ops; } =20 @@ -2083,14 +2172,16 @@ static void aspeed_2700_spi0_class_init(ObjectClass= *klass, const void *data) asc->flash_window_base =3D 0x180000000; asc->flash_window_size =3D 1 * GiB; asc->features =3D ASPEED_SMC_FEATURE_DMA | - ASPEED_SMC_FEATURE_DMA_DRAM_ADDR_HIGH; + ASPEED_SMC_FEATURE_DMA_DRAM_ADDR_HIGH | + ASPEED_SMC_FEATURE_DATA_FIFO; asc->dma_flash_mask =3D 0x2FFFFFFC; asc->dma_dram_mask =3D 0xFFFFFFFC; asc->dma_start_length =3D 1; - asc->nregs =3D ASPEED_SMC_R_MAX; + asc->nregs =3D 0x200 + (asc->cs_num_max * 0x10); asc->segment_to_reg =3D aspeed_2700_smc_segment_to_reg; asc->reg_to_segment =3D aspeed_2700_smc_reg_to_segment; asc->dma_ctrl =3D aspeed_2600_smc_dma_ctrl; + asc->data_fifo_offset_to_cs =3D aspeed_2700_smc_data_fifo_offset_to_cs; asc->reg_ops =3D &aspeed_2700_smc_flash_ops; } =20 @@ -2123,14 +2214,16 @@ static void aspeed_2700_spi1_class_init(ObjectClass= *klass, const void *data) asc->flash_window_base =3D 0x200000000; asc->flash_window_size =3D 1 * GiB; asc->features =3D ASPEED_SMC_FEATURE_DMA | - ASPEED_SMC_FEATURE_DMA_DRAM_ADDR_HIGH; + ASPEED_SMC_FEATURE_DMA_DRAM_ADDR_HIGH | + ASPEED_SMC_FEATURE_DATA_FIFO; asc->dma_flash_mask =3D 0x2FFFFFFC; asc->dma_dram_mask =3D 0xFFFFFFFC; asc->dma_start_length =3D 1; - asc->nregs =3D ASPEED_SMC_R_MAX; + asc->nregs =3D 0x200 + (asc->cs_num_max * 0x10); asc->segment_to_reg =3D aspeed_2700_smc_segment_to_reg; asc->reg_to_segment =3D aspeed_2700_smc_reg_to_segment; asc->dma_ctrl =3D aspeed_2600_smc_dma_ctrl; + asc->data_fifo_offset_to_cs =3D aspeed_2700_smc_data_fifo_offset_to_cs; asc->reg_ops =3D &aspeed_2700_smc_flash_ops; } =20 @@ -2163,14 +2256,16 @@ static void aspeed_2700_spi2_class_init(ObjectClass= *klass, const void *data) asc->flash_window_base =3D 0x280000000; asc->flash_window_size =3D 1 * GiB; asc->features =3D ASPEED_SMC_FEATURE_DMA | - ASPEED_SMC_FEATURE_DMA_DRAM_ADDR_HIGH; + ASPEED_SMC_FEATURE_DMA_DRAM_ADDR_HIGH | + ASPEED_SMC_FEATURE_DATA_FIFO; asc->dma_flash_mask =3D 0x0FFFFFFC; asc->dma_dram_mask =3D 0xFFFFFFFC; asc->dma_start_length =3D 1; - asc->nregs =3D ASPEED_SMC_R_MAX; + asc->nregs =3D 0x200 + (asc->cs_num_max * 0x10); asc->segment_to_reg =3D aspeed_2700_smc_segment_to_reg; asc->reg_to_segment =3D aspeed_2700_smc_reg_to_segment; asc->dma_ctrl =3D aspeed_2600_smc_dma_ctrl; + asc->data_fifo_offset_to_cs =3D aspeed_2700_smc_data_fifo_offset_to_cs; asc->reg_ops =3D &aspeed_2700_smc_flash_ops; } =20 --=20 2.43.0 From nobody Sun Apr 12 00:55:16 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=aspeedtech.com); dmarc=pass(p=quarantine dis=none) header.from=aspeedtech.com ARC-Seal: i=2; a=rsa-sha256; t=1771916467; cv=pass; d=zohomail.com; s=zohoarc; b=AZOOwOzPfFpgWkiGDrH6rJ2lCzNcnxSp3eFHTMuMglAJZ+8ykyc8BRFGk/xvcYSDBDEAukFYRCFXqX7tv7Ga8S3yYw4vUcJO948oqQF9pWztNQ3SntPf5D//gKA2OV/JksI8lMJSJZS4kl0BOORFdbOc1uYrjAhzxeE49QI9W0Q= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1771916467; 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=fqaBL0HL+JAd+SOAycglOfwhMy3PC1QxcpdpqetNRNg=; b=APe9a6t/JmhdtmG3lcBZDMdZTvBDm1jcKULDWt4UqNVIoiD3OhKwTJPzU0O7usfYGcuaQ/X+c4ng/ExQQHUeX7xXoHNmPqE18ZvA+6mmIZDkmgfXpDK/QMxGEywNnv0C/tRPB9ByykkNY4pmew5ZvE+7oNrTM3BSFNBflaXVFN4= 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=aspeedtech.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1771916467338468.12162229643775; Mon, 23 Feb 2026 23:01:07 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vumLZ-0002Nc-Ft; Tue, 24 Feb 2026 01:56:41 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vumLV-0002KT-Vy; Tue, 24 Feb 2026 01:56:38 -0500 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 1vumLT-0005Ll-Ht; Tue, 24 Feb 2026 01:56:37 -0500 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com (2603:1096:405:383::19) by KL1PR06MB6109.apcprd06.prod.outlook.com (2603:1096:820:d1::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9632.21; Tue, 24 Feb 2026 06:56:16 +0000 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3]) by TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3%3]) with mapi id 15.20.9632.017; Tue, 24 Feb 2026 06:56:16 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=EgnRuyD39J8xYlAAndaVssSnfbEZgURQauMlUoH6jog1n9wy8JZf8JlZzoA9+MoUq6ezE9iQ55in/FT9twphfEOByqRGaURG5YceOXvuTbzcPBIQDkMSa+tp2tZeEoAJSaOp99GT+glycyqiGEuuV9/V2TEyc22tuRjcTpD5a25qXY84yORymzokziTunz21rRoYH8lXwSd3aFilb8OPfCymmLqo08IENGCncZtb2IjKdyO4CTCtya8MZ/0cZJIrlYtcpgCz6H7ntQi/jByAjQBtxUvBGiBpQG5tCx27Gq+yiNb/T9y6IopJUbL2GpJHuUhYn2Ky8tRDBcCKyUMQmw== 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=fqaBL0HL+JAd+SOAycglOfwhMy3PC1QxcpdpqetNRNg=; b=ZJ/GSRHffja2tl1ZI9ySSV7FZk25BwwwH9FJ9P1+8xtrwC7pqqgs/epT6i+uHhv6OyQr0np6+VuGKrig8rJ7M9gLmEDnn1R87qH2YsOWkrnqWOtbxOLYefhXY6ltDkSkq5Wm25QmkgfUUUwiVBQnHQfwAhV9uZ0fsjTOPaUTNPho7LFP497cWX71WTsNJ1ITLRUnJzS8wdpLS1Ig5buhUMF3riFCfWzPHMcay/iLcvsEUqiKrpU3CRfLlWX7ALkORjnctMWGUMellEFuXaaDRe+c6+AZ4TxzGjJOwwud6T7FMhMyi1VoPdU6j3aPmmkFZsy45EUfOE43OFXMxRvzyg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=aspeedtech.com; dmarc=pass action=none header.from=aspeedtech.com; dkim=pass header.d=aspeedtech.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aspeedtech.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fqaBL0HL+JAd+SOAycglOfwhMy3PC1QxcpdpqetNRNg=; b=ceG/bFUtoeTqoTsWNDH4wNxa7a2U0GLyzr2GCIZEROyFF7KmxDFIj1//qUCC3jQSEoYBClyuKgpvIostdGDkjBDfpvqFphYZyxphHpPBLalIf05o8V7th+wMGuNhHqtqdnF7ZGrbb2XUuW1DEgjZcv0onf2le3ENN1WVvgve0pvoquW+lo+b1JwRpO5EHaFZ1BLvPP9yHQIJPu06/oIi5Tm4/mLnM2NnZMRuNByFoXVwoNyx5Jgu6d4caaWYpOxMtHAgrVC4aGbytLNJvBOKXDi38/7lgMEi/5BGesp3kf6pSwKTEqhpC3IxvM/pfJMZIvwVJQtYHq+UnDKUJP843Q== From: Jamin Lin To: =?iso-8859-1?Q?C=E9dric_Le_Goater?= , Peter Maydell , Steven Lee , Troy Lee , Andrew Jeffery , Joel Stanley , Pierrick Bouvier , Alistair Francis , Kevin Wolf , Hanna Reitz , "open list:ASPEED BMCs" , "open list:All patches CC here" , "open list:Block layer core" CC: Jamin Lin , Troy Lee , Kane Chen Subject: [PATCH v3 14/15] tests/functional/aarch64/test_aspeed_ast2700fc: Boot SSP/TSP via PSP and load binaries from DRAM Thread-Topic: [PATCH v3 14/15] tests/functional/aarch64/test_aspeed_ast2700fc: Boot SSP/TSP via PSP and load binaries from DRAM Thread-Index: AQHcpVqs4nJ25EF9bkax9h3bgQKspA== Date: Tue, 24 Feb 2026 06:56:16 +0000 Message-ID: <20260224065556.3847942-15-jamin_lin@aspeedtech.com> References: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> In-Reply-To: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> Accept-Language: zh-TW, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=aspeedtech.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYPPR06MB8206:EE_|KL1PR06MB6109:EE_ x-ms-office365-filtering-correlation-id: ebc05eb3-0082-4044-ca7b-08de7371ce97 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|1800799024|366016|7416014|376014|921020|7142099003|38070700021; x-microsoft-antispam-message-info: =?iso-8859-1?Q?J1j+VbmlhbJyWh6rQ5167ZK1a6rO6zsgBLAf+Oe5ArleHdf602wqnIZsxX?= =?iso-8859-1?Q?GjpP/GXsr+Dhle9oZH2FU2wS/8ADX7ozCrBd6r7Q4T+CTtotlLb85Ee2mJ?= =?iso-8859-1?Q?R9m8NPD67Etsn0OLtE29fohcSKLYFO1AXtQqgUu+K2UaT5oEuk3V56EoYt?= =?iso-8859-1?Q?9jw+Clv62LnOeWDwmTEUWa2Y3lohYYxsHtpgrf55a4N/BB48BDAMzPtua2?= =?iso-8859-1?Q?gwb0HdNdG4Qjib89bZHhQzkjNsSDymnoVmPeF+yMMK/MC8G5TuWMoTBdXT?= =?iso-8859-1?Q?fyqbAJR4gJBfNZMhcV80/PP5XiZdzhzqCvAli73m1qRKY6UXRI3pjC7JzH?= =?iso-8859-1?Q?BPkhp8OAaSX68p190dBGNN9MhjUNkdqGE7laoewmY+idvl5/ruBe69ydvX?= =?iso-8859-1?Q?rv3LyXzV2+Ad2rL4gfvAyHOd2QG3mZMBwdsO3WBVrbKZkE+7EyBZNWLXbg?= =?iso-8859-1?Q?lxu1bT/dAkC4XumOie2BcNYduxRKVVcuLgTta+zMgssY9OP7fDfBf2u9vs?= =?iso-8859-1?Q?vvGZvjKrVUFGPXJbC5hzO9Z7T1MfbtefGhJbu5sJ3+vZbxzEZy2a6maKWJ?= =?iso-8859-1?Q?Upo8J9Caowmi2GqaS48lzxnuXSsdtwU4nEEBbpNnVJSerEHeMsOUJpjjM8?= =?iso-8859-1?Q?sssIQdBfZcvDC6o5XOetxd9kY7/LPd6tDmkRHhdvtf2vvqu5rugZ18Q+db?= =?iso-8859-1?Q?eV+i4uQOWAny2RbvM84vslioe9TqsFHDJNoq9g0+Vp0vjbn3bL6VkXgD3c?= =?iso-8859-1?Q?/JhEgA799eGZdyQuCo/V9wt/20GUkzYiBTvJ8PuzOIIIoqxoZGVksCqdj0?= =?iso-8859-1?Q?M3Lp0QXP/dVofKdtYOQK/SN6t1dkYQ/TlwYiUi8hevHWjdG+qNTCCoZ5JV?= =?iso-8859-1?Q?g6p1xNNkFPmrHzwwZzadbKY9un77RjLYuTHnLE7MKveHs4tmvl0N/l8frz?= =?iso-8859-1?Q?yqHBbxbMw8/SkKCFCe+/lL1fwuH1/8u1qnfVSFdB0GZP70TzdWl/Vr8FfW?= =?iso-8859-1?Q?52DTv8logEZpKoIGgD+ieixtvt4gvhv6Oi5GSq2WnxstG+SrhLbEfhA/5x?= =?iso-8859-1?Q?RPgI3qUbOyyiwxRqc5/GDpROTOk6zPB+aEIQvG4dUnpgKF/XXoN/ZP3JiD?= =?iso-8859-1?Q?G7v5V4R4xVH+FDTK7CtWHw8UnxlWLhdMkuFq3b1Bp30RHmcOzQONCU+/Rw?= =?iso-8859-1?Q?XdeJwVJlIxl3nmH/CbcEwKXqcdpCmu5oSjfrVnzrCPA7m5elxomtiNjH7c?= =?iso-8859-1?Q?pBvaeQ1Ta1roxup9M1GlIYINJhLW2n+UWxdeeRXX0cgHt3zZlh8izFi1oi?= =?iso-8859-1?Q?jr8AG0wGKqlsV6LAGFBndQx93g0d4emHFEp6v2xeoEP8wO16iuSbM/VzC8?= =?iso-8859-1?Q?FUk9aFjOj98lZabgLo+4lMP0oAILMIzi5+gR+/Rz+VePE/fFt07Y4T0aBq?= =?iso-8859-1?Q?om2t2txw9YzeyekvoTijLYRpuUj7Js3dtUlYbzuBEOiQxb8c0jRRPjOqnb?= =?iso-8859-1?Q?/JOGyHKJOkQcOvkECVErKbZ9HEWFxyG4ioIh97DzcWdUU/pFnyFDi1Furc?= =?iso-8859-1?Q?dMYuBv+vLf0iyEOt1wgMZVwNP78lIYJMIMOO4PvEUNcmo6dTJBl0YVQh6J?= =?iso-8859-1?Q?YYmIbBBq9v+daHwJwR8OjBGiQEkpSJTkvSEfGa5DhXwCQQtjBEV/Gc8Q?= =?iso-8859-1?Q?=3D=3D?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TYPPR06MB8206.apcprd06.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(366016)(7416014)(376014)(921020)(7142099003)(38070700021); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?jeFj98RsQVYeIGgiCLxKHmtbZyoBEVO7SNCOiKyzTOXidq/AiAYuhDMFDt?= =?iso-8859-1?Q?2QGbHx3Dm0K1oGpo9DYTfW8Jro8Ozfi6MmtzUvlmmwDPSNz5Zhqfl1dOMe?= =?iso-8859-1?Q?zIP04jIjjSsmxdHJ1iMuJIWB/dEWHsXZVcn1PPkTMHUX+iiwGyTiJCZk+J?= =?iso-8859-1?Q?9iY7cs3Z82uQFHUF32gaAhKFZtDAih0hDo2NmkFMTffqXJ/0tWL8qB2K+v?= =?iso-8859-1?Q?P14Dk3uA/9Ere1wFv9nQOv/e4A2IatredHlRPdXLszQWRLVbloj8PDpCcn?= =?iso-8859-1?Q?54w6gTcUsvnM1+BCuuOcImsHkUPV5rq8qC25s6AVLJzPgFVbRuXErHoXz+?= =?iso-8859-1?Q?twK5nazmmhLpmYIRfADceqCFpEGEr8lS8R5EX3FFAF4H7RanWlPKYhsV9x?= =?iso-8859-1?Q?vDwJq6zpkwYL7SJtCOuTX1mGpqwabtrga6gfHiwFH6UtAzhoT9LLSWLenK?= =?iso-8859-1?Q?tpLmESjzfqGD9eAEUaYuGcJ8B3+K9M4K+JWlRLLnBHGRhUf6BG2JxaNkAQ?= =?iso-8859-1?Q?SHptiwSlbLRwzFpRg/NsbyKQd4CW9aEeCPmnYfr3Q+RDfgR+CFJX9EOOwh?= =?iso-8859-1?Q?MtKQa2QIK4NBk4QkBVwuLeSYQ2dzy/IjM8JCcaxCK4PlXBfMsPpxhp/kKQ?= =?iso-8859-1?Q?fxo3EKULhM0NaJr/iPob43yggJtofOiuc0A1cOUW/9+iv8kIvs8azPuhfr?= =?iso-8859-1?Q?PsrJlGPpkkJOIvHwIFfpbKKBKsnzzXHHl7ebkBl0T8jSgDGXvZEblBVEtV?= =?iso-8859-1?Q?omZ+Rn+X58uT4pcZ4PEzbKkHD7iTmGMs1Lol6RuFotSlJrvzYINcFQazox?= =?iso-8859-1?Q?bRyyRZR9N2TmgyBCBTdqDCeRl0WXAR4yEeVAugZ9Oefh6pwhY28bjBs9PF?= =?iso-8859-1?Q?TtFNhSdIFkD1EwyvZEX9xiSHKjeMfE9TxK/NPMwUHO3cKFfD3JdO+JBS6w?= =?iso-8859-1?Q?shiPRDXD+ndZFeeS4YMER+H2r8VM5lHgqrrF4WkZHROTBe7P7qnJxpmQpx?= =?iso-8859-1?Q?LiwiH9ymbSnF6a9Rpcyv5IxLxvDtUs9Hp/WrqUALKgJrLK62OVaUQ1nAI/?= =?iso-8859-1?Q?Mg+r2ggVQFWgQYBLKlsCaoZ6fUFp6N7/Bx6hbSxidL1rTTTEkDhALzy2jQ?= =?iso-8859-1?Q?5D5XlF2Jq7V8LAXCvpmSCU5UJgDMTzSAVrmpmB9Au2oBBr1OwM4DQ94GdX?= =?iso-8859-1?Q?+kM8IsBdtqUIgZzrnmRJqySFDMBvenmjB2i+CoJwhJdfBPXDequIh+vGtT?= =?iso-8859-1?Q?VHOIF1blt2yO1DUUox/a4v4OMQaovBRbnWXutYjjcqZDqTmGjQ1Tw1wihG?= =?iso-8859-1?Q?qMtIP8FqhGD7qC9Q1/ftZkhb6PX1G/lVf3FycotdWRt+kzgug+oHPWKriB?= =?iso-8859-1?Q?IItdCrxUbFrMuKOI265g4HaN5mBmZcyN3VOK9xNXwa/4W8ZGvuQ9ssQQRk?= =?iso-8859-1?Q?cZbuiqBCJ0u2IfPtVnbpRZA+sGUGT7jCvNTywhzVidF1bIjdWaLt5Nm6QI?= =?iso-8859-1?Q?3W0/hhaTU8QgZHUviyn1+fDV2qmgNFSEdrX/sY7XfogLTLMsuWD5+5wayN?= =?iso-8859-1?Q?JenGZY8trnNJkj0cAEZmAclyLrD+qIBgHfe9XkWKhtZCCHklBuAU2diUyq?= =?iso-8859-1?Q?Y1S7hEp6bNhdXLh2PhZ5IeqiDJrQCptkNmV5kYx3qxMOWGYu0XVFKBKsom?= =?iso-8859-1?Q?2lay2L52VVoz3eRajVBdLuadF/X46ZdhGfPhDSXQ4dH7cPXx2PIBYTnNJm?= =?iso-8859-1?Q?YhCh3ugjgcVZJfWLYjbjphXCknW4h2/pXwNxvDgVS18YAWywyBUqDSxTLZ?= =?iso-8859-1?Q?fcaYmlCZZQ=3D=3D?= Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: aspeedtech.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYPPR06MB8206.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: ebc05eb3-0082-4044-ca7b-08de7371ce97 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Feb 2026 06:56:16.7484 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43d4aa98-e35b-4575-8939-080e90d5a249 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: NgmAmGG26RglAJ+TuU46CQmhxTt6Suqn7K7RYrs5JzIGpLgNM38mCEYQgCg7C79E/TzLipmqRCE0At5tWNF/A/ToZBJMmCoJpydFoz0eSpY= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KL1PR06MB6109 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=lists.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c40f::6; envelope-from=jamin_lin@aspeedtech.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 @aspeedtech.com) X-ZM-MESSAGEID: 1771916469730158500 Content-Type: text/plain; charset="utf-8" SSP and TSP now boot in a powered-off state by default. Enabling them requi= res the PSP (Cortex-A35) to explicitly set SCU control registers at runtime. Th= is behavior aligns with real hardware. Update the AST2700 FC functional test to reflect this behavior by enabling SSP and TSP from the U-Boot shell before booting OpenBMC. The test now programs the required SCU registers, saves the environment, and boots the system so that SSP and TSP are powered on when the PSP starts. Additionally, switch SSP and TSP loading from ELF-based CPU loaders to binary images loaded into PSP DRAM at fixed addresses, and remove the use of snapshot mode. Changes include: - Add enable_ast2700_ssp_tsp() to configure SCU registers via U-Boot - Remove snapshot option from QEMU command line - Load SSP binary at DRAM address 0x42C000000 - Load TSP binary at DRAM address 0x42E000000 Signed-off-by: Jamin Lin --- .../aarch64/test_aspeed_ast2700fc.py | 34 ++++++++++--------- 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/tests/functional/aarch64/test_aspeed_ast2700fc.py b/tests/func= tional/aarch64/test_aspeed_ast2700fc.py index 51ee8bc787..3b68f37b63 100755 --- a/tests/functional/aarch64/test_aspeed_ast2700fc.py +++ b/tests/functional/aarch64/test_aspeed_ast2700fc.py @@ -23,13 +23,17 @@ def do_test_aarch64_aspeed_sdk_start(self, image): self.vm.add_args('-device', 'e1000e,netdev=3Dnet1,bus=3Dpcie.2') self.vm.add_args('-netdev', 'user,id=3Dnet1') self.vm.add_args('-drive', 'file=3D' + image + ',if=3Dmtd,format= =3Draw', - '-net', 'nic', '-net', 'user', '-snapshot') + '-net', 'nic', '-net', 'user') =20 self.vm.launch() =20 + def enable_ast2700_ssp_tsp(self): + exec_command_and_wait_for_pattern(self, + 'setenv bootcmd "mw 12c02204 40000000; mw 12c02120 1; ' + 'mw 12c02224 00000200; mw 12c02160 1; run bootspi"', '=3D>') + exec_command_and_wait_for_pattern(self, 'saveenv', 'OK') + def enable_ast2700_pcie2(self): - wait_for_console_pattern(self, 'Hit any key to stop autoboot') - exec_command_and_wait_for_pattern(self, '\012', '=3D>') exec_command_and_wait_for_pattern(self, 'cp 100420000 403000000 900000', '=3D>') exec_command_and_wait_for_pattern(self, @@ -43,6 +47,9 @@ def enable_ast2700_pcie2(self): =20 def verify_openbmc_boot_and_login(self, name): wait_for_console_pattern(self, 'U-Boot 2023.10') + wait_for_console_pattern(self, 'Hit any key to stop autoboot') + exec_command_and_wait_for_pattern(self, '\012', '=3D>') + self.enable_ast2700_ssp_tsp() self.enable_ast2700_pcie2() wait_for_console_pattern(self, 'Starting kernel ...') =20 @@ -50,17 +57,6 @@ def verify_openbmc_boot_and_login(self, name): exec_command_and_wait_for_pattern(self, 'root', 'Password:') exec_command_and_wait_for_pattern(self, '0penBmc', f'root@{name}:~= #') =20 - def load_ast2700fc_coprocessor(self, name): - load_elf_list =3D { - 'ssp': self.scratch_file(name, 'zephyr-aspeed-ssp.elf'), - 'tsp': self.scratch_file(name, 'zephyr-aspeed-tsp.elf') - } - - for cpu_num, key in enumerate(load_elf_list, start=3D4): - file =3D load_elf_list[key] - self.vm.add_args('-device', - f'loader,file=3D{file},cpu-num=3D{cpu_num}') - ASSET_SDK_V1100_AST2700 =3D Asset( 'https://github.com/AspeedTech-BMC/openbmc/releases/download/v= 11.00/ast2700-default-obmc.tar.gz', 'e2b8f043fe8063dd3b6ded93422e38bd41914dc9c3202199507652df024de= 4dc') @@ -118,6 +114,14 @@ def start_ast2700fc_test(self, name): 'addr': '0x400000000', 'file': self.scratch_file(name, 'u-boot.bin') }, + { + 'addr': '0x42C000000', + 'file': self.scratch_file(name, 'zephyr-aspeed-ssp.bin') + }, + { + 'addr': '0x42E000000', + 'file': self.scratch_file(name, 'zephyr-aspeed-tsp.bin') + }, { 'addr': '0x430000000', 'file': self.scratch_file(name, 'bl31.bin') @@ -138,13 +142,11 @@ def start_ast2700fc_test(self, name): self.vm.add_args('-device', f'loader,addr=3D0x430000000,cpu-num=3D{i}') =20 - self.load_ast2700fc_coprocessor(name) self.do_test_aarch64_aspeed_sdk_start( self.scratch_file(name, 'image-bmc')) =20 def start_ast2700fc_test_vbootrom(self, name): self.vm.add_args('-bios', 'ast27x0_bootrom.bin') - self.load_ast2700fc_coprocessor(name) self.do_test_aarch64_aspeed_sdk_start( self.scratch_file(name, 'image-bmc')) =20 --=20 2.43.0 From nobody Sun Apr 12 00:55:16 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=aspeedtech.com); dmarc=pass(p=quarantine dis=none) header.from=aspeedtech.com ARC-Seal: i=2; a=rsa-sha256; t=1771916319; cv=pass; d=zohomail.com; s=zohoarc; b=Qrh1U4g2tQPSi6WHcx+inO2vtQEIVdsuoS3ry08Xg6/GBR4qwdkfGFpsbpxyHyepYSKcC55NkHt3QCcNkciUrIyUNejoaI5s/luGY0gwH5DUPTx3BPOvu/lknoQsxqqmaqAdlPClOyWlDalcASALXVI0qIHqMlLy8JQ1lxm8Sk4= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1771916319; 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=VR0Cc2aY9xLxkrs1ykzGpDtSU7if/X/AVBKZ+S9X9NA=; b=CWebKBw7IqhawxgRliYaNBa/o5yTXX6gaR2UzYzyxa1I8KipF5ON2YAYR/pZruTlUqeFTnI/dBHwaFNe+/28KVTyPzLbRAqE0P9ajD95xwB7JRr8GgoWARmKmzqIGEft8Pq55DVnZOHpq37OJMK1qqlQUTfF8foVKXvMek2Twf0= 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=aspeedtech.com); dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1771916319568433.92291765073935; Mon, 23 Feb 2026 22:58:39 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vumLa-0002O4-5R; Tue, 24 Feb 2026 01:56:42 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vumLX-0002Md-Ao; Tue, 24 Feb 2026 01:56:39 -0500 Received: from mail-japaneastazlp170120005.outbound.protection.outlook.com ([2a01:111:f403:c405::5] helo=TYPPR03CU001.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 1vumLV-0005Mp-Hh; Tue, 24 Feb 2026 01:56:39 -0500 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com (2603:1096:405:383::19) by KL1PR06MB6109.apcprd06.prod.outlook.com (2603:1096:820:d1::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9632.21; Tue, 24 Feb 2026 06:56:18 +0000 Received: from TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3]) by TYPPR06MB8206.apcprd06.prod.outlook.com ([fe80::e659:1ead:77cb:f6d3%3]) with mapi id 15.20.9632.017; Tue, 24 Feb 2026 06:56:18 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=TcBQAl6LCh6K23KjcyCpQYUQCthLLsu9ZIsl3jybladvGb1wxsTY+23347AF7jn1rOpP6kuhGZ40H2U0Af0tVqgpzLxrUWuNgF0SczYaTetJyMrDaADULSSuDAGf9UqdRj8Xw9HoEsw4hIzyVaESTWQJlVGdd04ywW2nxTWptODBbro4One9JRMSWfGxyIlZ87ivLb/pTdKtvY32qqekRV94Ooc+yokAAq0sfAnO1oSpBXBFLS9LBMTLa/KSCo/tCkrWbyNE1PQgoE5NCVyGJf5MKJ36acTZ6uPsqyOqUdYMidfqPWAKqshAQwO/oOO/GA23KCK4+v58bdJWgi7E3g== 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=VR0Cc2aY9xLxkrs1ykzGpDtSU7if/X/AVBKZ+S9X9NA=; b=WExGLNmLrN7eHZC4w0MhezJBE+uy9NOIwebhSK7qL6HereOaxZyMo8uqDubZoZxcRs/VOPZ4eQT6h1iWOn1jScPN55fcOj6O90hqU7tvxmuhzAviJUGxfQrjGBtwDkdv8WvTkQqnjhoedgjmlKQhVEhT6cNIYhSEaW5iG94oZBu7QrMAFz61GKqAqmyOVu/y/TW3qlyJcjWtNITvJ8+kxWDCTGqFb0xCbgLCi41tTjiVnumjkxmVp89P57UVKhZPr+cNuw0TtWLPArWf79jRnBSTmaOlQrOd6LSy0i4RcQDeoCsiowVRhdhyGvWh5k28mfnLSsmecg9JqesXCgPyyw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=aspeedtech.com; dmarc=pass action=none header.from=aspeedtech.com; dkim=pass header.d=aspeedtech.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aspeedtech.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=VR0Cc2aY9xLxkrs1ykzGpDtSU7if/X/AVBKZ+S9X9NA=; b=D92QgUQ7ro5A0nPSo87ofVXloeouctrJyTVCMb6szh2hNnw6+jWnoG/eCQfl4lHn9YkQ4XdykmdQqPTQpLU/lQ4nUbclkYpcsob7vbFq9lgTuzkEJPfCCgqiVGDTxBnZXz6Ig8ZkJirdxLQcJKjQZBJj2tS4tiFE4W4l5pdft5Qx3xEvIu/8YgNeAT6ftnArPtDrRUc2Rju9gp3WRYIw2RIy6e9R7HKdgAaUcDidMV04PsYXKdxFJXbv0pHtQOGg+t6ug91t+kZ+cPgROTRwloLgG8WeM9ulZBIYTluslfaZRteBEv7SiIOXlY9gqTFsKyG0jqR26bhufLNoNvXmjQ== From: Jamin Lin To: =?iso-8859-1?Q?C=E9dric_Le_Goater?= , Peter Maydell , Steven Lee , Troy Lee , Andrew Jeffery , Joel Stanley , Pierrick Bouvier , Alistair Francis , Kevin Wolf , Hanna Reitz , "open list:ASPEED BMCs" , "open list:All patches CC here" , "open list:Block layer core" CC: Jamin Lin , Troy Lee , Kane Chen Subject: [PATCH v3 15/15] docs: Add support vbootrom and update Manual boot for ast2700fc Thread-Topic: [PATCH v3 15/15] docs: Add support vbootrom and update Manual boot for ast2700fc Thread-Index: AQHcpVqs8Lll/k01tk6nkgzwydrVWg== Date: Tue, 24 Feb 2026 06:56:18 +0000 Message-ID: <20260224065556.3847942-16-jamin_lin@aspeedtech.com> References: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> In-Reply-To: <20260224065556.3847942-1-jamin_lin@aspeedtech.com> Accept-Language: zh-TW, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=aspeedtech.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: TYPPR06MB8206:EE_|KL1PR06MB6109:EE_ x-ms-office365-filtering-correlation-id: af7b3c41-7b27-444a-3e28-08de7371cf62 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|1800799024|366016|7416014|376014|921020|38070700021; x-microsoft-antispam-message-info: =?iso-8859-1?Q?CzxlbdjIJSTe+9jVIgB9xy247Y94daS2WJ2jjxB9AAzbEABaDj5hi4whff?= =?iso-8859-1?Q?TxYX/jF0RYeSbt9hOthadRkR2Efy0ubvZgvsVKBNn8m2BpqRUJDqPA/STs?= =?iso-8859-1?Q?cdZp2VjYNUyfqQkqNP51i9HYG6N67EHZrCqRSwxDsCzTkpulPvl2tYg3Md?= =?iso-8859-1?Q?Vvk3pdGr0Wb++TeBGk1Ex28k4AWnuywF0OoaLSO3uftYNuqbzcvt/BUuSt?= =?iso-8859-1?Q?VGnH1UTxDLHt5pHw5szGcvJaX2r2+4md+rWrsJEdd8ISBf+9QsAt5TC5Hc?= =?iso-8859-1?Q?50BCitLm2oG1bWcumw6vRcOSHQNBH2X4AXwrBD5COib1DTTfJYO6xmfpy/?= =?iso-8859-1?Q?B3FxJnEvJPLE0lwDnhyi8R465KShvjh+QLJsBF1utkNH2DB5dSyR63YXD8?= =?iso-8859-1?Q?Xk2nwtU/h5FHQfTfJc4UnFv5A+Wk637NScHzm2MjVcF2tsFj0F+9aimbFr?= =?iso-8859-1?Q?z/TBMjhrOqOsdNW5f4xOA+bkishc2YT1+i8T1fg9LT92egw13pNK0EjM4p?= =?iso-8859-1?Q?e7WJbZEpWKKY9LEStyc7pN78FBKRDUnwQrwR20mItEUi3QE46EoPqaZc2R?= =?iso-8859-1?Q?+ZiIJnCJ9t1MQEBMCZMkRKzJXy1rgQgMuhZG7w128s6XwW733GKgj5nju0?= =?iso-8859-1?Q?8a2mxbpn3/2sSaitPqIJr6T7f8yhiUJHy9z0Zw3YPn6fB8oVrBg/BLxmOv?= =?iso-8859-1?Q?bMPt1IEL0cp/q0NsyOotCaugAedR8VR95GESHHjoKp0WK8A+V0beoZCHEq?= =?iso-8859-1?Q?SPRKXNocuItjo64IOTDBRfNFFOWOIJn/416ergEz3FrdPQRCUJWpplLF+n?= =?iso-8859-1?Q?YQ/ZpM5e/6nz4XBV+qN4AiUcfgxdeVAdhubPgYnfiLrvCn5Z2hlWBYBsf3?= =?iso-8859-1?Q?oaZhgQmadjDEcrGy70wdFB5L7nDyQe4OmLoZFaXDIYiY1SVxBdCXQJxgWg?= =?iso-8859-1?Q?n/L9KH0oZxbXeI/wctFjMtQ3HUt0d9kGVr1GM+/gITkIzgXrLKqplJmzOA?= =?iso-8859-1?Q?UqyKy2x+D86UgsEK+z7orDnvT3OBKhuWrA3/DpyGEvlR/qpBua6Hx86Zxq?= =?iso-8859-1?Q?HnLFJusEAiPluIWSN8pZvzGLHOq98Ha1uh6LoYqzA9d2a4Qw01mSL3dMms?= =?iso-8859-1?Q?hynW5v51oOp+0Y0f8tCQtrs2wJBmgtJYU1JmQj9YvW5XS/9UbHt1eC+NPN?= =?iso-8859-1?Q?CIUO/OOS//+pA6xB8DIHCMa29eHAuLH9I/qQBxruJGBw6uyuLCwKea0utz?= =?iso-8859-1?Q?0dxLiOtRwRhrO8kc7UwMUAA6hXeAT6DuMNoWnIwy1HsarYRXN9xo2Ox6+K?= =?iso-8859-1?Q?y/iwOLb93J8DvAgcZr/cSAWj42VcR+iG5njW1X5fbRc4Los3yb7fn3tut6?= =?iso-8859-1?Q?lKbBmLNw1a+jXyne0bCfxoEXNSHWn3MnL7WtpFUHq4xaAZijmeji3ju+2r?= =?iso-8859-1?Q?Ms9VrYV4bjkpLoDX5RP6bbYWZbSod7DLaYSV3aAzdc1XzmViN+o2qduWAt?= =?iso-8859-1?Q?dJuWyz8z9lxoaHsE3K4Bfd4QLvd8CeDKsVSM+zms/nQdx0EIdGKjFVHaa3?= =?iso-8859-1?Q?wK7YUOLvkEByzG4ILCsxcftoA7RoNpKNdXFyP6oPBcwrVcVq1CYYYxbZev?= =?iso-8859-1?Q?YTZTMxApT7KPeY+PXYaXIM70+5rJ6UkQAgocWvDTwMzLwK8WAthQ3IW86p?= =?iso-8859-1?Q?CguZ9Hwk3d+tclgcqmYRpj6xzkHFNK6HcV3b+qcH?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:TYPPR06MB8206.apcprd06.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(366016)(7416014)(376014)(921020)(38070700021); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-8859-1?Q?K8wWWHlIKhyNeRKiEUTTtmmu45/rOpxv31IuAeHdpKao4kL6qguqbk2dQ3?= =?iso-8859-1?Q?PdhbHRjbtmEPnhHLURO9G8rSS0oGJrlSiwG8lmv/EJOw6cW4e83iWLAjuM?= =?iso-8859-1?Q?grbwkj7bJdAhT+uiye1m3qZkCpOm6Sscr8qADqVSIQXxFMZEL+s0G714E9?= =?iso-8859-1?Q?NY5zfoWcmv5Io33q8GORtaeyoKdKdTxqOT16BcVCP6H4MHlrBG9ix5zQ+4?= =?iso-8859-1?Q?BFatQrFD7sDLJXVRUXZM52LUuaoh3YSHaxTlmfC1b/ih8Y1aOuCDFcwIvf?= =?iso-8859-1?Q?dUvgukM5NTgkTkTjh/RM8/jape76JZc5vtstxTuMtZak9iDJT+/pSyxQNY?= =?iso-8859-1?Q?oq7O4nVdL+xRO+hwb/PCACnx02awqDRDTgGlF8bc/cL082aMj6QtFsTdil?= =?iso-8859-1?Q?0qD54edaB5TQM00SJGqPMRaokh0An4HQELnnDOjz0xp6ZktL++vwVKj0Ff?= =?iso-8859-1?Q?SbUoXNMud/tev1eZlMSs2mRtAtRmo2gE8JNBxvEf4SUGyBDpZSM703AvId?= =?iso-8859-1?Q?os4Wjx0oxCqn1zooHUAQY6rlQKZDOsrJKjXAxvvWAG78oCrgrLnUdseIjg?= =?iso-8859-1?Q?d8+LEzHrPopvOJA49jI/gdCQp4aROIcrKzZn0z08cvStXMP6IUXWI6augj?= =?iso-8859-1?Q?k6w3wq8pFeQ6ZwywwLCfF7BsjJ8C5LCh/HGxKw+5+B78kGUWfEOaxRnU0A?= =?iso-8859-1?Q?CEh+3f5LvS0rPdJKT8O9Lan6ct9fSm0dMyGOvc37T5EZAWbCUlUQ9M+0NW?= =?iso-8859-1?Q?GsMxROmrLft9+A+cxGTzh19O1CdU9Pa9dSYkUEP4Z8WLxqWCU6zLB7Qupf?= =?iso-8859-1?Q?8VXaV2G+TD9z/d8lNcEAaRHQRMhV/JKfRvVzP5+DkDsAUOcOPYqRp7IlRd?= =?iso-8859-1?Q?4TkxLfRkrr5fIvjAHp38BResOkaXH/bS46N/Q2z8Ny/8d8ptVWd/n3QmBY?= =?iso-8859-1?Q?Biii4bxI/i4qhR5c2ECepEtuLXLe5Qyu+6WUEvGlvX2ge5B9lkrwOugZCz?= =?iso-8859-1?Q?ycl+UK6Vm93/bH1WIhaswmgCZPvx/OaoOR6xk4zJqweBBIdwtleKJsmkhs?= =?iso-8859-1?Q?8cw6w1ROotf5yUF9j2e9YrnDUV+KwsA3nlNWEEMe7vyY+7+7w4C8DVc4lf?= =?iso-8859-1?Q?7bCl1u+itSaGs4NfEGpQX9oKQVHVkFWt6W9upwekQMB/ZNCa1kDMqO2q6J?= =?iso-8859-1?Q?adOrx1uJb4EGt4EGH9SOSsGbotu+KeLTVv1fnkWY4XdekutX80m/jTngIa?= =?iso-8859-1?Q?CtMcOaw68Wu7SDl8kLbvSIxY/7oNlAf1KPbZ4dzfXtAmovu6zJ8ZqzOB0Q?= =?iso-8859-1?Q?gNeYimpkmGYV0qa49srerJbHsf2KoWGyqqIDZVS8YCIc3YFfFAhr23ePUT?= =?iso-8859-1?Q?wn2oFtxTzn+Fum1D9I1uMelX5ywCrqYludxCd12wSr0cebE0DAxN5RkakF?= =?iso-8859-1?Q?CO8OEdOhyg9npwzxYLS1XVP8xTwDrBt/DJryZWHN9OkrjXT9C2b9fcxPYr?= =?iso-8859-1?Q?6E4tt5hmZsBSeA171eniSNydccCxDTegtK+UeRdu0ucJuxQfuaCM9LnTGt?= =?iso-8859-1?Q?cad9N05bnOP0d4pONvRdj4sDYUVDs0Y9GfrCXP3qDkLrhZPBUYd+frwTdW?= =?iso-8859-1?Q?BwxTytXbhzAGTYkj+FPFoG2tmZcG/uSHLxr5tIS+Ym1seCLsL5BN4OZ/IX?= =?iso-8859-1?Q?5uCP04JOFr2X/aRwW/+SpPniAEEHA7WxhLzW7XHWjetcWlougeov12D6HV?= =?iso-8859-1?Q?dqWbDewrlE8R1CtKjOCuOdvLj5McktJOVwurcViDv/EUqOIGaxXRFnRrt5?= =?iso-8859-1?Q?6inxh40mNg=3D=3D?= Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: aspeedtech.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYPPR06MB8206.apcprd06.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: af7b3c41-7b27-444a-3e28-08de7371cf62 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Feb 2026 06:56:18.0794 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43d4aa98-e35b-4575-8939-080e90d5a249 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: LjXPlHiBts7FPBOrwdZo1ItIvLesDD1/1Ro2DTsfsLW9AXF7FCHAxv1mUweapjiw6f9QE8sDhgqPxpBQYq3huv+kIxpSDaAT9RvkPM5Cc6E= X-MS-Exchange-Transport-CrossTenantHeadersStamped: KL1PR06MB6109 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=lists.gnu.org; Received-SPF: pass client-ip=2a01:111:f403:c405::5; envelope-from=jamin_lin@aspeedtech.com; helo=TYPPR03CU001.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 @aspeedtech.com) X-ZM-MESSAGEID: 1771916342471158500 Content-Type: text/plain; charset="utf-8" Signed-off-by: Jamin Lin --- docs/system/arm/aspeed.rst | 37 ++++++++++++++++++++++++++++++++++--- 1 file changed, 34 insertions(+), 3 deletions(-) diff --git a/docs/system/arm/aspeed.rst b/docs/system/arm/aspeed.rst index d0054a7dbb..0f83189e67 100644 --- a/docs/system/arm/aspeed.rst +++ b/docs/system/arm/aspeed.rst @@ -389,18 +389,26 @@ Booting the ast2700fc machine AST2700 features four Cortex-A35 primary processors and two Cortex-M4 copr= ocessors. **ast2700-evb** machine focuses on emulating the four Cortex-A35 primary p= rocessors, **ast2700fc** machine extends **ast2700-evb** by adding support for the tw= o Cortex-M4 coprocessors. +There are two methods to boot the ast2700fc machine. + +Manual boot using ``-device loader``: + +In this approach, users manually load firmware and assign entry points via= QEMU loader devices. +By default, the PSP begins execution at address ``0x430000000``, the load = address of the bl31 +firmware. The SSP and TSP start in the powered-off state and must be expli= citly enabled by the +PSP through writes to SCU registers. =20 Steps to boot the AST2700fc machine: =20 -1. Ensure you have the following AST2700A1 binaries available in a directo= ry +1. Ensure you have the following AST2700 binaries available in a directory =20 * u-boot-nodtb.bin * u-boot.dtb * bl31.bin * optee/tee-raw.bin * image-bmc - * zephyr-aspeed-ssp.elf (for SSP firmware, CPU 5) - * zephyr-aspeed-tsp.elf (for TSP firmware, CPU 6) + * zephyr-aspeed-ssp.bin (for SSP firmware, CPU 5) + * zephyr-aspeed-tsp.bin (for TSP firmware, CPU 6) =20 2. Execute the following command to start ``ast2700fc`` machine: =20 @@ -410,6 +418,8 @@ Steps to boot the AST2700fc machine: =20 $ qemu-system-aarch64 -M ast2700fc \ -device loader,force-raw=3Don,addr=3D0x400000000,file=3D${IMGDIR}/u= -boot.bin \ + -device loader,force-raw=3Don,addr=3D0x42C000000,file=3D${IMGDIR}/z= ephyr-aspeed-ssp.bin \ + -device loader,force-raw=3Don,addr=3D0x42E000000,file=3D${IMGDIR}/z= ephyr-aspeed-tsp.bin \ -device loader,force-raw=3Don,addr=3D0x430000000,file=3D${IMGDIR}/b= l31.bin \ -device loader,force-raw=3Don,addr=3D0x430080000,file=3D${IMGDIR}/o= ptee/tee-raw.bin \ -device loader,cpu-num=3D0,addr=3D0x430000000 \ @@ -423,6 +433,27 @@ Steps to boot the AST2700fc machine: -snapshot \ -S -nographic =20 +Boot using a virtual boot ROM (-bios): + +In this method, the virtual boot ROM (vbootrom) handles the full initializ= ation sequence. +It starts the PSP, which then enables the SSP and TSP by programming the a= ppropriate SCU +registers, following the hardware behavior. + +Execute the following command to start ``ast2700fc`` machine: + +.. code-block:: bash + + IMGDIR=3Dast2700-default + + $ qemu-system-aarch64 -M ast2700fc \ + -bios ast27x0_bootrom.bin \ + -drive file=3D${IMGDIR}/image-bmc,if=3Dmtd,format=3Draw \ + -serial pty -serial pty -serial pty \ + -snapshot \ + -S -nographic + +Serial Console Redirection: + After launching QEMU, serial devices will be automatically redirected. Example output: =20 --=20 2.43.0