From nobody Mon Jun 8 07:24:43 2026 Received: from SN4PR2101CU001.outbound.protection.outlook.com (mail-southcentralusazon11012020.outbound.protection.outlook.com [40.93.195.20]) (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 41A7736C0BD for ; Wed, 3 Jun 2026 05:28:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.93.195.20 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780464529; cv=fail; b=C3gXK2iZxDC/hfbcjqbR6ujcto9P6JFQSywroywt23VFhDulJQNj8gsTE0MP63zJurekumdi9+6taCGwfqqJnOokH8dkSmcYiVo5HngB4fsAYFyNCwEUZVcUC1iI7c+Q0mrmF64866zecvQ9H8/HZ3r7Pzl3w3IZuwDTYqRaoJ8= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780464529; c=relaxed/simple; bh=ni1WOiIW0Yuitu6AKd8U98Z185N0xfFqwlIriX1dQuo=; h=From:To:Cc:Subject:Date:Message-ID:Content-Type:MIME-Version; b=BECSc5tMsRP9IAj6tDXQbQSz7iI6l7HQyKNaF3WqmXxJ519BvbN4f5HHSrR9EFx3qAuHN7LA/Ph/CXYCRX45mje6MPbC7DnkVIyrKoRemE33FYz1uOeShOBmhXRJZcRLfT1acVDq5HVoft69/H9EQrB3vQeApzgd2Tv9edxTDaU= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=altera.com; spf=pass smtp.mailfrom=altera.com; dkim=pass (2048-bit key) header.d=altera.com header.i=@altera.com header.b=VpLNoCd7; arc=fail smtp.client-ip=40.93.195.20 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=altera.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=altera.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=altera.com header.i=@altera.com header.b="VpLNoCd7" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=D3noFWul6jfK71o90ayWVm2M7XKHXaElEpqc5J6q7T5K0TenWfnqdg1UM7UZkL69hk7pdlnIyotYEkPYDG7Jx8NBE6hXe3s8vUWBg7j/8XDYGiv336Puv2UQVt5CyfLe595HkDZrHX/rcHTelHCB8Rd6kzJak8eoHycGxZK30VCeJeeagA0z0D97b04hmZSWavaD6H+Z9MhagaA/FpdE68NP2TmBpy3DVcJmc17QMoqUV6C8v1AlfA2En3KxTRTnWR3tYPjnWRJoKYpA2mSWUYvHYMI/5YQbiwbrkUW8xH22Pu1UV51V6+ub2msGoDcwKZidJXeIhWps+tBfC0JnVA== 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=qaS6To3QmW7oB/6HqORkFes4fCHC3IhAgiuIdFNWN58=; b=pLHvTX5FJWN31uPLFULmT+LLu0ovZxI91d6zoTf30XGAGHpCZf+wJ61Ckm6TTlt5iYaT3O5bO5TBA+HGoVmV1P5hRxPIATyOgRwbU9HH77+bmXZfftGoQRQbOx0ObG8N9t8iVj8lzuKV+dwZdTgrnSGrIlNw0SVt42JFLEV2JQCKRa9W6HWaOQOsV+k2wNex+GRL8M1kGQPXo07lx81aSJ8vGGj7uUhSlkxJkgPENNUXOxZTA6OuR9V/yME+71jmiO0TxscaOeOb+/Ct7mZlDapM4vTdaY7Y3s3SX/j14JFa6S/TK+IPaYwjmKpI1XPHCtTx7TR8VaARg0b/GJqrvA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=altera.com; dmarc=pass action=none header.from=altera.com; dkim=pass header.d=altera.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=altera.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=qaS6To3QmW7oB/6HqORkFes4fCHC3IhAgiuIdFNWN58=; b=VpLNoCd7dTWHqW7LrfHr6jqQQJJ1p0uBraTQrcIbKcF7swhLcDs0/XSJnGg3G/QMfXIQG8YcePVHZY7W4sKHBFgbeLlzLSicOD5LrWZFG+QX2TXc00XtsO63R5FqbBkGC+IcJn+9u+fK/xjKSCAf+F+8UPXDQZwM3NHLWnZ7zr9jirOZh1N4eNV4kqChJTZHcpdmw4IoRzTPD3S8LYC8IH3IRbe+LzqBQxj4h2ODl2/A69Stan4sbyeAuJovLd04j+v6vZjeLei1cUdAwSKORLGmWFrQgfjAEwikPqZjailjrYUgsOBNS2us8pscUFlrNLZX4QhDuaeAg+deOh2+Cg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=altera.com; Received: from SJ0PR03MB5950.namprd03.prod.outlook.com (2603:10b6:a03:2d3::20) by SA2PR03MB5804.namprd03.prod.outlook.com (2603:10b6:806:fb::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.92.7; Wed, 3 Jun 2026 05:28:44 +0000 Received: from SJ0PR03MB5950.namprd03.prod.outlook.com ([fe80::53a0:bf93:6b6b:de01]) by SJ0PR03MB5950.namprd03.prod.outlook.com ([fe80::53a0:bf93:6b6b:de01%4]) with mapi id 15.21.0092.006; Wed, 3 Jun 2026 05:28:44 +0000 From: tze.yee.ng@altera.com To: Dinh Nguyen , linux-kernel@vger.kernel.org Cc: Tze Yee Ng , Adrian Ng Ho Yin , Nazim Amirul Subject: [PATCH] firmware: stratix10-svc: Add support to query Arm Trusted Firmware (ATF) version Date: Tue, 2 Jun 2026 22:28:42 -0700 Message-ID: <1f10da89de094a046bc49d160d877f4b4de1e2d7.1780464384.git.tze.yee.ng@altera.com> X-Mailer: git-send-email 2.43.7 Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SJ0PR05CA0073.namprd05.prod.outlook.com (2603:10b6:a03:332::18) To SJ0PR03MB5950.namprd03.prod.outlook.com (2603:10b6:a03:2d3::20) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR03MB5950:EE_|SA2PR03MB5804:EE_ X-MS-Office365-Filtering-Correlation-Id: 754742ca-5d47-4d3d-34a7-08dec130fab8 X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|376014|6133799003|18002099003|55112099003|3023799007|11063799006|56012099006; X-Microsoft-Antispam-Message-Info: AeEsUbyC9ULq7RfXPIbvhyGUeHJJbQ013guy8HvwrwFZLp2EKp2OW6xCNyQHc+nP2VJDGRHW1D2z97uDhcmZk5nvZg49BOBC2x74wOGsQma7PjF/dD2gdwncTuSQ3PQLGfVQRWm7NmKDHVIpcDX6lDMlBdLe9h26mQbV+ZDidH14qmBS8PhLfJ3PygZTdlOhnC4tdK6BBMUP9rMBpko4lEDhW1YSrC2jmb5rFc87LGvxztOGsOy5Mv8qrX4g9lRZARwITmYvXagkc6YJmVGd/l2EA0j8KMDh8nzukZbTzjMgXc8SIXLWpu441KGvJxVmDIDZ8EAY62bCXrW4rox21vAAeLkWAer8GgyNd6CtSRltGp3Qk69ixaVVBGtGJp/mRcNFxJMEcwvo6rQhi8oiADcLEXuAPB0+Bypdr63q5dR2gv9+V3fkk8nHw6IobkNv0lKjqMxOM6CqcOXphh9tSqOcrvy8jzbtr5M5x0AbHoR/thrD+MMm8lLJ0ltNi7fmfzUwdI5opscHkQ5YgpOJQplFucHghlchU5vVbyJP5ibqnewa3iOtOLnP23H7jPusVZLbJudcjTFi1r/QN63RisNZTxezN54e48UG2O+n2ujq3c2SlzlQC6YCleGwdmVm1Idel8xGZg5YKJksN2fvSzgfPd9nYu1A3HRyex1HtbYsQwE7lppGDZONT94Spx1o X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR03MB5950.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014)(6133799003)(18002099003)(55112099003)(3023799007)(11063799006)(56012099006);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?W/PyTlTIg1TwnTz/Kx24oAqNWLDYlLYfFud4zmosAhMBBaheyTPUpOfw8fIz?= =?us-ascii?Q?GeHRfYRVZAKeTCDEOhtLDU19kLp4kHil7kjrfwftDrku9To+K/0dRn8NU/IK?= =?us-ascii?Q?2YU8nB/NGVVCk1q61B5CHnaN/BOho/SFMDaC36QO9GOYTRcpvTfgHShJGL4q?= =?us-ascii?Q?Ymg6o4jcOjjUBMZOIf60oTbQgC/w9AQkVBo+AJQ3G44Q4IFcDVUvvGntFuhM?= =?us-ascii?Q?EY4ZgXu1yML/U59sa2LvdLGCTBnSb9yuyTyK566Kkkl1CTP88vfEitrK58oT?= =?us-ascii?Q?lHazgeHCJOCNuq8oyug/UfkCxNHDiYR7U7tyThCQcg88BjP4c11pQkJrjYrr?= =?us-ascii?Q?xpLIN/qHvnij0NaJ7bvLBvF9kWxG3McuxwW0klEGvsVvpIKEwnw4wUk3vBX4?= =?us-ascii?Q?6ppPd1J0hyYGiaWJaPNsbXPC7EARiHRp9JBN50HvW8HT+F9DA6PqzzhuBFqR?= =?us-ascii?Q?cX8b+TindNAlSbzTcWydi7tFrhAK46GprMpaIlploIRoJL6Anufq1LZ9SWil?= =?us-ascii?Q?UXD5ZPv2yH5MFOq96dv1AIAkMg9OgpbIWWZIZQLEXWXu65XDyxBv1sy+NPLn?= =?us-ascii?Q?+k1605Ktb2qHVLXZDdq670U3SBLt/vOERBPdrHPMwcc3RXAjcM1ttOks7dh2?= =?us-ascii?Q?iTvaxF0/XrNg4T77ghFpZbFri4AgIzIrvM3rLNhIesm2qRjO6ruz0rpraUgU?= =?us-ascii?Q?c+4kGuDDbvrZmllpBQ2oa00u2F1505O1dm/bb/vh4DvCEfS963bM3NRtHtYC?= =?us-ascii?Q?ULPw5Rm/Q12CIWP5PsajH//HIGK0OfwvvVrFU7uUNXIpQ60yIvbnejthqcKv?= =?us-ascii?Q?M7UnaK65tZRWL5fY5ZuSX+37s8+WX721lfk/bIl/xnfOv4ox+5WyJmesCjhx?= =?us-ascii?Q?A/34kshp3vpPuqUDjHusiRhB0DZp0I9l9kkqDgRTNfF2GbAnznbZzPqsB/lk?= =?us-ascii?Q?plzNzigPtTyzdJHs8ZHJ0ISbxnUMqoBWufFebWiWGrNAAkN0BjSleN2Es69W?= =?us-ascii?Q?3A4eNISVIFHuAKb0bCLA2sNEsFWa+lbt38YCZr3NUCxJk7fx+X+ggnrCCp26?= =?us-ascii?Q?ivmSAw5+QgMZluFw2izTZhJUAKc5GXX8vCGGs+Rmoj/3bBQePWybEWM835Gs?= =?us-ascii?Q?3xrihrrnm/+fwRIAQ7lzR/JPjmUS1sdxqclr3to5QsTcSYJbjBJSPOX8557n?= =?us-ascii?Q?B7SHFY63fMNT9x26tCqAZJHMKHNuvX/BrtK5RL1aHLQ9lUAkqRMBxxtocoW+?= =?us-ascii?Q?QjG0AmTaRu96l2TCHBKXXbr8Bs1orE49+8shupvma7zmhaqz7qha0ttnLcMy?= =?us-ascii?Q?GOUY7XdzgIzdultCSbIUOyS3jX7vI6rTwXAhsi8pM9xw8/XnW3d0cKSpgGsn?= =?us-ascii?Q?0zFZq0Ht7v3Y3Z9glEewr2vCx0u7vn/mgfsSKz4py6Zp3cPtUS1yoPqm7T+4?= =?us-ascii?Q?l3pjSOtJbwW4S57Q//gSbTAtfMGfeHMjbM+iEgpC1AUNIFqPSpD6uJBkd4bB?= =?us-ascii?Q?mKMQ36jiHSfvp218F1uqn7y8cq/rKtYC4wXFG8153VmROJ/Eu4v6yW0JrpBz?= =?us-ascii?Q?kftgIwkyQinA+rS7MJFmEART1hdgBhCvLt7gYwG1AZ37eHBjWZKMreaTq7q4?= =?us-ascii?Q?F5aAp47UYw/UR5U1UF6HGU1GP/MeMy8Ew2CMAMrOB8drTr/5PsQBCk58ytpi?= =?us-ascii?Q?VpYAqzpQXX8iq9eCv0+NIoAKipkNFSANfs86gkZJ/2ZOdKfGBLNbdVTJYrGg?= =?us-ascii?Q?b2rUYB2CqA=3D=3D?= X-OriginatorOrg: altera.com X-MS-Exchange-CrossTenant-Network-Message-Id: 754742ca-5d47-4d3d-34a7-08dec130fab8 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR03MB5950.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Jun 2026 05:28:44.4476 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: fbd72e03-d4a5-4110-adce-614d51f2077a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: +tR+qhHHE3uQevgfSX7DIYZ1FzvCKAclO6mI3emXxBHS0ipG++eYxEpN1r5f954a2b1EQZMc12aSw39lUiY0bA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA2PR03MB5804 Content-Type: text/plain; charset="utf-8" From: Tze Yee Ng Add entry in Stratix10 service layer that allow client to retrieve the ATF version at runtime, which is useful for system diagnostics, compatibility checks, and ensuring the correct secure firmware is in use. The change introduces: - A new service command definition in the Stratix10 service layer to initiate the ATF version query. - A corresponding macro definition in the header file to expose the command ID for use by other components. The service layer uses a Secure Monitor Call (SMC) to communicate with the ATF and retrieve the version string, which can then be logged or validated by client application. Signed-off-by: Tze Yee Ng --- drivers/firmware/stratix10-svc.c | 12 ++++++++++++ include/linux/firmware/intel/stratix10-smc.h | 19 +++++++++++++++++++ .../firmware/intel/stratix10-svc-client.h | 7 ++++++- 3 files changed, 37 insertions(+), 1 deletion(-) diff --git a/drivers/firmware/stratix10-svc.c b/drivers/firmware/stratix10-= svc.c index 1ef65bf845fc..c5c61c7c69a6 100644 --- a/drivers/firmware/stratix10-svc.c +++ b/drivers/firmware/stratix10-svc.c @@ -489,6 +489,12 @@ static void svc_thread_recv_status_ok(struct stratix10= _svc_data *p_data, cb_data->kaddr1 =3D &res.a1; cb_data->kaddr2 =3D &res.a2; break; + case COMMAND_SMC_ATF_BUILD_VER: + cb_data->status =3D BIT(SVC_STATUS_OK); + cb_data->kaddr1 =3D &res.a1; + cb_data->kaddr2 =3D &res.a2; + cb_data->kaddr3 =3D &res.a3; + break; case COMMAND_RSU_DCMF_VERSION: cb_data->status =3D BIT(SVC_STATUS_OK); cb_data->kaddr1 =3D &res.a1; @@ -722,6 +728,12 @@ static int svc_normal_to_secure_thread(void *data) a1 =3D 0; a2 =3D 0; break; + case COMMAND_SMC_ATF_BUILD_VER: + a0 =3D INTEL_SIP_SMC_ATF_BUILD_VER; + a1 =3D 0; + a2 =3D 0; + a3 =3D 0; + break; case COMMAND_MBOX_SEND_CMD: a0 =3D INTEL_SIP_SMC_MBOX_SEND_CMD; a1 =3D pdata->arg[0]; diff --git a/include/linux/firmware/intel/stratix10-smc.h b/include/linux/f= irmware/intel/stratix10-smc.h index 418ce3994218..6e042943b6ce 100644 --- a/include/linux/firmware/intel/stratix10-smc.h +++ b/include/linux/firmware/intel/stratix10-smc.h @@ -537,6 +537,25 @@ INTEL_SIP_SMC_FAST_CALL_VAL(INTEL_SIP_SMC_FUNCID_FPGA_= CONFIG_COMPLETED_WRITE) #define INTEL_SIP_SMC_SVC_VERSION \ INTEL_SIP_SMC_FAST_CALL_VAL(INTEL_SIP_SMC_SVC_FUNCID_VERSION) =20 +/** + * Request INTEL_SIP_SMC_ATF_BUILD_VER + * + * Sync call used to query the ATF Build Version + * + * Call register usage: + * a0 INTEL_SIP_SMC_ATF_BUILD_VER + * a1-a7 not used + * + * Return status: + * a0 INTEL_SIP_SMC_STATUS_OK + * a1 Major + * a2 Minor + * a3 Patch + */ +#define INTEL_SIP_SMC_ATF_BUILD_VERSION 155 +#define INTEL_SIP_SMC_ATF_BUILD_VER \ + INTEL_SIP_SMC_FAST_CALL_VAL(INTEL_SIP_SMC_ATF_BUILD_VERSION) + /** * SMC call protocol for FPGA Crypto Service (FCS) * FUNCID starts from 90 diff --git a/include/linux/firmware/intel/stratix10-svc-client.h b/include/= linux/firmware/intel/stratix10-svc-client.h index 944362657282..af13dacdf5ac 100644 --- a/include/linux/firmware/intel/stratix10-svc-client.h +++ b/include/linux/firmware/intel/stratix10-svc-client.h @@ -158,6 +158,10 @@ struct stratix10_svc_chan; * * @COMMAND_HWMON_READVOLT: query the voltage from the hardware monitor, * return status is SVC_STATUS_OK or SVC_STATUS_ERROR + * + * @COMMAND_SMC_ATF_BUILD_VER: Non-mailbox SMC ATF Build Version, + * return status is SVC_STATUS_OK + * */ enum stratix10_svc_command_code { /* for FPGA */ @@ -192,7 +196,8 @@ enum stratix10_svc_command_code { COMMAND_SMC_SVC_VERSION =3D 200, /* for HWMON */ COMMAND_HWMON_READTEMP, - COMMAND_HWMON_READVOLT + COMMAND_HWMON_READVOLT, + COMMAND_SMC_ATF_BUILD_VER }; =20 /** --=20 2.43.7