From nobody Sun Apr 12 02:49:36 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