From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7D50A32571D for ; Wed, 28 Jan 2026 08:54:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=45.249.212.187 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769590481; cv=none; b=la+XLGHe5wD8yiZmPRMBMEJ2uZRiV42O+PzBhN9YSZSUxoI1XYUw9jbBcaOiFa2+B+H3ycV+QOCioDkySkIiwHzkcwGjWKImpV1wyka8pMTMN8omEPIeLpzumA1yxzwDE8Wzt9smJWPNDB1bkFnOA7LQCa/NiznTi+RlD0o8KTM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769590481; c=relaxed/simple; bh=PN6nqnDbSvTZaXG0bujk5YBzQ7fx5fNsGQeNLO/HA0w=; h=Message-ID:Date:MIME-Version:Subject:To:CC:References:From: In-Reply-To:Content-Type; b=W7ZJsRDakxLRZzmfYQQXYvqORn7WKuNcW/2OaKp0XCUoxxF0HJgD2kiOUIqDdfhKzS7ziTgMGJNpWuln5CmKNh3xW7gUwctkkn65A8H3mUP2/KkuWbR5CcYdFX6pPUEs0cRojgBm1SP2iRhTaYIV9mbK1d/HzxdiiKiOCAKwG7A= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=huawei.com; spf=pass smtp.mailfrom=h-partners.com; dkim=pass (1024-bit key) header.d=h-partners.com header.i=@h-partners.com header.b=cSvlc/DL; dkim=pass (1024-bit key) header.d=h-partners.com header.i=@h-partners.com header.b=cSvlc/DL; arc=none smtp.client-ip=45.249.212.187 Authentication-Results: smtp.subspace.kernel.org; dmarc=fail (p=quarantine dis=none) header.from=huawei.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=h-partners.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=h-partners.com header.i=@h-partners.com header.b="cSvlc/DL"; dkim=pass (1024-bit key) header.d=h-partners.com header.i=@h-partners.com header.b="cSvlc/DL" dkim-signature: v=1; a=rsa-sha256; d=h-partners.com; s=dkim; c=relaxed/relaxed; q=dns/txt; h=From; bh=uSRxGQMVakqJAI9OsqmLrPrVSmdBo3KliKpjz9CBqds=; b=cSvlc/DLID79AKaSD63ON/B+6e/abQY9s6S5XFiIj8FlgbqFPf6GBjB7UUTNgY08e3+GTy9kn tGbUwn4UjxrFK+e+Xn+IZpW5PETjZrru/gvPgQRdzOK8AV9SvO5JRN9oDvzNJJRtptbzka2MPp2 zrlsMGa0QR1tUfwG6LDNf1M= Received: from canpmsgout01.his.huawei.com (unknown [172.19.92.178]) by szxga01-in.huawei.com (SkyGuard) with ESMTPS id 4f1GKR4grsz1BFSb for ; Wed, 28 Jan 2026 16:54:03 +0800 (CST) dkim-signature: v=1; a=rsa-sha256; d=h-partners.com; s=dkim; c=relaxed/relaxed; q=dns/txt; h=From; bh=uSRxGQMVakqJAI9OsqmLrPrVSmdBo3KliKpjz9CBqds=; b=cSvlc/DLID79AKaSD63ON/B+6e/abQY9s6S5XFiIj8FlgbqFPf6GBjB7UUTNgY08e3+GTy9kn tGbUwn4UjxrFK+e+Xn+IZpW5PETjZrru/gvPgQRdzOK8AV9SvO5JRN9oDvzNJJRtptbzka2MPp2 zrlsMGa0QR1tUfwG6LDNf1M= Received: from mail.maildlp.com (unknown [172.19.162.197]) by canpmsgout01.his.huawei.com (SkyGuard) with ESMTPS id 4f1GF75313z1T4Fx; Wed, 28 Jan 2026 16:50:19 +0800 (CST) Received: from kwepemf100008.china.huawei.com (unknown [7.202.181.222]) by mail.maildlp.com (Postfix) with ESMTPS id 2D8FC40363; Wed, 28 Jan 2026 16:54:32 +0800 (CST) Received: from [10.174.178.24] (10.174.178.24) by kwepemf100008.china.huawei.com (7.202.181.222) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.36; Wed, 28 Jan 2026 16:54:30 +0800 Message-ID: <0944256a-bcc6-56fa-e3f9-eb3a83c45505@huawei.com> Date: Wed, 28 Jan 2026 16:54:30 +0800 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH] arm64: cpufeature: Add support for the MPAM v0.1 architecture version To: Ben Horgan , , , , , , , , , , , , , , , , , , , , , , , , , Jonathan Cameron , Kefeng Wang CC: , , , "Zengtao (B)" References: <20260104133434.1887677-1-zengheng4@huawei.com> <37f87d5d-bd70-4b13-93e0-8024108be948@arm.com> Content-Language: en-US From: Zeng Heng In-Reply-To: <37f87d5d-bd70-4b13-93e0-8024108be948@arm.com> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: kwepems500001.china.huawei.com (7.221.188.70) To kwepemf100008.china.huawei.com (7.202.181.222) On 2026/1/27 22:30, Ben Horgan wrote: > Hi Zeng, > > On 1/4/26 13:34, Zeng Heng wrote: >> According to the MPAM spec [1], the supported architecture versions are >> v1.0, v1.1 and v0.1. MPAM versions v0.1 and v1.1 are functionally >> identical, but v0.1 additionally supports the FORCE_NS feature. >> >> ID_AA64PR | ID_AA64PR | MPAM Extension | Notes >> F0_EL1. | F1_EL1. | Architecture | >> MPAM | MPAM_frac | version | >> --------------------------------------------------------------------------- >> 0b0000 | 0b0001 | v0.1 | MPAM v0.1 is implemented. >> | | | MPAM v0.1 is the same as MPAM v1.1 >> | | | with FORCE_NS which is >> | | | incompatible with MPAM v1.0. >> --------------------------------------------------------------------------- >> 0b0001 | 0b0000 | v1.0 | MPAM v1.0 is implemented. >> --------------------------------------------------------------------------- >> 0b0001 | 0b0001 | v1.1 | MPAM v1.1 is implemented. >> | | | MPAM v1.1 includes all features of >> | | | MPAM v1.0. >> | | | It must not include FORCE_NS. >> >> FORCE_NS is a feature that operates in EL3 mode. Consequently, the current >> Linux MPAM driver is also compatible with MPAM v0.1. To support v0.1, the >> existing driver which only checks ID_AA64PFR0_EL1.MPAM for the major >> version needs to examine ID_AA64PFR1_EL1.MPAM_frac for the minor version >> as well. >> >> [1] https://developer.arm.com/documentation/ddi0598/db/?lang=en >> >> Signed-off-by: Zeng Heng > So far we've avoided added MPAM 0.1 support as we don't know of any > machines using it. What's your motivation here? Do you have a machine > with MPAM 0.1 that runs mainline linux? > Thank you for your questions and for reviewing this proposal. Regarding your inquiry about hardware usage and motivation: Our KunPeng 920C chip (and numerous legacy SoCs in the same family) indeed implement MPAM v0.1 extensions. These are widely deployed in server and embedded equipment. More importantly, the product roadmap for these platforms explicitly includes migration to mainline Linux kernels MPAM driver for long-term support, making upstream MPAM v0.1 driver support is a critical requirement. In the other hand, MPAM v0.1 extension version is formally documented in the ARM MPAM architecture specification (still included in the newest ARM DDI 0598D.b version). The specification explicitly defines v0.1 as a valid implementation for earlier hardware. Supporting documented architectural features is essential for the goal of hardware compatibility. About technical compatibility, the MPAM v0.1 is designed as a functionally compatible extension with the existing MPAM driver framework. After having tested this on actual Kunpeng 920C hardware and other MPAM v1.0 platforms running mainline kernels, this ensures zero regression risk for v1.0/v1.1 users. Best regards, Zeng Heng