From nobody Mon Feb 9 03:34:04 2026 Received: from BN1PR04CU002.outbound.protection.outlook.com (mail-eastus2azon11010027.outbound.protection.outlook.com [52.101.56.27]) (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 1E17125F7A4; Tue, 16 Dec 2025 06:49:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.56.27 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765867787; cv=fail; b=a1NAUzsRpxhZ8DiyVuVdmxJgc/SIoiX9Q9M/v1LcRNxEHvbKoo320i+zWvV/TaarX6ap9LBzZbQSTuUL/GYkxnOkzdB/HqwUcZE1wXCIns4z8z40lrq/lrGQzzFm7g0QGiBCn47nKokbIzH6HfmCaa1nzB6wXKVUrIkUjL5oAFM= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765867787; c=relaxed/simple; bh=7AJ9nsc8jHlRujlyoPfjhAJ7ZbtsyaDbdk00Z5AVLTo=; h=From:To:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=BxzjZrqFyWU2cc6dUA/xGYz9rzjKOjk0q3xJ/RXzQhRXyt0+dxAKGalWa5dV4mQV9R1nXCXVkJT2na3WGMytPd0NMHovq7068EsyKfr20pWV3V21YPTVpJHj67ohSUub1cmCX3LFouHMcXJ5RtKdQwZ/ovkJNiDno5p0QeA13R4= 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=xAQAX8XG; arc=fail smtp.client-ip=52.101.56.27 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="xAQAX8XG" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=VX8MlM/djQCSQA+g+NoDP3U3GG8HM5dJQnsz9t1xM0D6S7Ikpwr7ug0TwEc9sR4ZHuo59YpFASk9EOTSKim8yeKnhYVJaNPutdGk2VtvN2np0pvfWxgA6P3f+2tRsESYn9MIS3f3Cdq1fvoBYC0sD+rz7gUZe5U7CY06aJdxUi2Un4vJ52eK8NHDXCGNMoiQrExVbMEhzgzD+6mH8NN82e4BgS2iZteLWJCIgC5oJkq0tg3aiLmMD78Owh4uDfAjJk37e0cGsxuP3RekzMuB/LCE9SCgapASsOQTxM6NwRI3d/AcUAEEqCuffteJzfUBeyETmuJ13gkSCUAi7gycRA== 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=gp9ZnT7FyrZJ8xn6LGBOhKKikKdJco3u6NQJ7g8cW2s=; b=CBWuDxfaQfLNU1BCQiAGmjKW8UJwMKP/AVNWRb3VY26nRDogre21meHiJgUzY1YLXh7Rm8aPqecKOHNa/MG6/V6ivHneiQuk32v/gmnsG/+7lxwIWvPmK3Lab7sPW5CQY4oYL4hAeBxU3gEnuoROWtHUqS9b9Rr84CU7Q0TxzZHsOMxGHha75Cu+2Rdv/YSvVa7uYNj2p3Y2guaYYlw4OnUV91WiUzpMek6JFw6pJ4q+AjRC8hagORB4X8fkY+rCU9n7Fz2oR+sMS1L1Iphj59NIrqTMf7H0wOik/k7QCESnRszovjfk5cvPmt5DLuD1nl8DAOxgxVK/1CtKGFWaaQ== 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=gp9ZnT7FyrZJ8xn6LGBOhKKikKdJco3u6NQJ7g8cW2s=; b=xAQAX8XGkz2nGO9Euyr8pDOaTcKuLQ7jtEGkZnbR01x8O9zoo5cZ5Un93F47f8UsJy3Uj7y/n9Kj6PaGznCnijKqHCHm1BJDyRJbQiWTgAgoBY9exa/VpkHTKcNJgBGDTRkNgAuRwaxGbJlMnLAAZpeIjc/2MLv9w2KwFbqspa75/33c3Ciaut27wq4sFyb7t1GL41H86WO7xYDm4jv7DjSHi1xBMFaiwdD1BbabBPpG+I1Z0i+BezhEiILyGnEI+PGeT8YK7gj/+8nAoGf/k2DP8Zf+i0ULoa2qf+dHyZ3dKj5TTbhcFEGDyiiz1g5QsAvqVfiBqix7gn8mp5WVtw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=altera.com; Received: from BLAPR03MB5458.namprd03.prod.outlook.com (2603:10b6:208:29d::17) by DM4PR03MB6857.namprd03.prod.outlook.com (2603:10b6:8:40::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9412.13; Tue, 16 Dec 2025 06:49:30 +0000 Received: from BLAPR03MB5458.namprd03.prod.outlook.com ([fe80::7eda:fa34:15f9:e656]) by BLAPR03MB5458.namprd03.prod.outlook.com ([fe80::7eda:fa34:15f9:e656%5]) with mapi id 15.20.9412.011; Tue, 16 Dec 2025 06:49:30 +0000 From: muhammadamirulasyraf.mohamadjamian@altera.com To: Guenter Roeck , linux-hwmon@vger.kernel.org, Dinh Nguyen , Rob Herring , Krzysztof Kozlowski , Conor Dooley , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Ang Tien Sung , Khairul Anuar Romli Subject: [PATCH v1 1/5] dt-bindings: hwmon: add altr,socfpga-hwmon.yaml binding Date: Mon, 15 Dec 2025 22:49:22 -0800 Message-Id: <20251216064926.15817-2-muhammadamirulasyraf.mohamadjamian@altera.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20251216064926.15817-1-muhammadamirulasyraf.mohamadjamian@altera.com> References: <20251216064926.15817-1-muhammadamirulasyraf.mohamadjamian@altera.com> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BYAPR08CA0008.namprd08.prod.outlook.com (2603:10b6:a03:100::21) To BLAPR03MB5458.namprd03.prod.outlook.com (2603:10b6:208:29d::17) 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: BLAPR03MB5458:EE_|DM4PR03MB6857:EE_ X-MS-Office365-Filtering-Correlation-Id: 4d785098-61b5-4f79-9044-08de3c6f4342 X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|366016|1800799024|921020; X-Microsoft-Antispam-Message-Info: =?utf-8?B?YU9SMTkyVFN2TFdiOFpuZ2tpSUprVkd4NC9FenpVUld4VVBmUlRrY0dlK1BU?= =?utf-8?B?eDVZNUN3NjZwaUsyN1d1VU84MnJ5ZkhhVWJVYWwzcVlrOU9oczFTcXJuMndM?= =?utf-8?B?V2FwcWFmZENwTXl3bzNkS1I5dDNkRlUwUDViNjJQM3piQWF0RTZ4ZzU2S2Qr?= =?utf-8?B?a2tOcDJFU3owSjhPdVpveExrRlZQZXpmMGhiUmxXb3RiY0pDZU1FYXV0KzdC?= =?utf-8?B?UnRnNEdydTVLYkwwelEvQWdubG1aTFc2RmgxY3NKQzZsanlOY3BCT3h4RUp5?= =?utf-8?B?VDc2ZDlZUVE0aFYyQ043Nk5MRGRPNjZocVhJQkIvZVJkK2orQVEwb25QdEJE?= =?utf-8?B?QWJPU25qeGpEQU9KampMclFMTGpNYVN5SnRzL3dqR1JDV1RqU2pTS3BqLytq?= =?utf-8?B?L1JmaEI1WGpnVzJ2VTFMdkNJZUMvOHNMTjBzcU0yNHhscWovUzA3SWF4dUg2?= =?utf-8?B?cjZpQ0U4RUQ3N0FlWm9FaU5xOVp5NGlzcUxDSWVWcU1LblMvbDVOKzNPMmRo?= =?utf-8?B?YnJHVEdZS1B4OXZuV0VBOWtqc2xtT2ZuWFU2Z2o0bUdnOVB0TWpPR2xlWTl3?= =?utf-8?B?RTBVa1Z6YXlwcmJmMWZCYXFSczJiZmF0bTcwOVVCQjdIT1FJdlhhU2xsWWRq?= =?utf-8?B?dkNjY0lQcUtIUm9Ed25Ia2ZqREx4REtoZVlEaUo3a1ljRFJad05VT3JIbzBO?= =?utf-8?B?QkpRY0hJcmFob3YwUzh1WlRZYmJxaGNoekR3di9NODFRNDcxaTAyNVBocjR2?= =?utf-8?B?N3RXbHgycHJ2dU9nNlBvUDFsR0lSYklzWkFHWVplUEhQL20rdkUzNU9LU0s3?= =?utf-8?B?eWY3S3ZGTSs2RFl3VU5aemk4K2NyeXRRZXA5eXBzWTdhSVdBS1FZbEZkZmhv?= =?utf-8?B?Rm1UTDNvYy8rREoyT0JKUzNiQklNOGxBOGI4aXR1VGcwQm1wdktQcyt5ckcw?= =?utf-8?B?cGI3NERDYkNuQS9DTlBGMTZldXVXcjJxY1ZKNzVYbm5RVHNycU85L1NIM0tG?= =?utf-8?B?YWtneEU4NVdLWjJOVkpvdG44SFhDS0I4NXZzcXNaUHg4L0RVOG83cXJHSXl1?= =?utf-8?B?QVQwaVJKSHI2Z2p4WmxYdkJLNmNvT0QwbVdhbHhwWDA3QlNqYS9kSUpxbFg2?= =?utf-8?B?b3hsRGNjbW9tbk9wZzA1TSs4THljb3pjU2xCUnEzSUJtWVFpY0p5QnRjNUhv?= =?utf-8?B?US9PYmd6U3JJVk96M2ZCL0RlaVU4OFVXS2tiRWlNc0l5cGJoV1Nxek81ZWZC?= =?utf-8?B?cnZsL05obGhqeWFSOERoMzR6cnFBbk5GUXkxazgyR0JNeVgycTJkVHM0WCtV?= =?utf-8?B?NmxyWEJuRWVaSU9xMWlNZmNsbkp1OVRNSlRsYm9sclB0bWRYR3JqbTNybk9C?= =?utf-8?B?S04xTEZOcGVaRy84UG1YRldXdWxvVG14b0xkMDQ5akVmaUJES3BHNXFseXVS?= =?utf-8?B?NnJZbTgwY2x1RUlWY1U2R3FDSkdzSWZDT0xudTNDcXpRQUtsOEpsMHBtWWlO?= =?utf-8?B?bUF6dTNoOTJlWW1rQldpaGpKY1BBYjVaM0oyb0h6Y3o0eFJJWks0WWtzRmps?= =?utf-8?B?Wm5tT0FtOGhrL2QxdFV5YzcraXJ6dEFLbkFqaElhWTQwckFPZWxKKzlFT3RO?= =?utf-8?B?RlZSa1VFRWJzNWY0bkNGOUIxQytxek13Y2trQ1lHRVNtQnRIUk1VRVVJb2lM?= =?utf-8?B?c3VEZkNUZzNyOU8rZWtONlVSWlJLZUxTSTVFYVViUW1zbDYxbWpLMk5laGd5?= =?utf-8?B?ZStxYzI4T25jQ3F3TExBd0NuclRXNnozZmcxSmJZWnFtMjNqMC9ENE1vaEFT?= =?utf-8?B?R3BqK25mMWFNS1FNRWRDcmJqSzF2S1lNRy9GZUZEWFpsQXk1Z2tUZG0wbXdD?= =?utf-8?B?ZHZhLzRYc1hscDByMnVjTFdSVkFuWkVVdTB1SEpqMGZaN3BMQkJwbEZTRUZs?= =?utf-8?Q?rt0knLdYhkXWd3nnIek5qObLENBMo4tP?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BLAPR03MB5458.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(366016)(1800799024)(921020);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 2 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dEZNblZwcXBFVVJ2eGwzVHZGa0JYN2R2MEp6QXo1SDJkbzJIVysyT2U0b3lP?= =?utf-8?B?QWdoRGFqbG9zQXRibnl5Q1g2NDlWcHkwNlNpckRxSVlhS3VhZkdGSXNTWllt?= =?utf-8?B?bG5tU1pXUitUeEpGaDBUZkNSNHQ0VXRKdUNFMU5vOHUyZDZaUXRnTU5oV2lF?= =?utf-8?B?Nnc2SDdOSnFoME5jVUx5ZlJzQ29icS82V3lidlUrTC9WMzJUWmpOMmVOTWtl?= =?utf-8?B?YTA4bHJVVDF5N1F2NVZicVZ2SXNldDF5UENKYkgvSCtUdGNFcG5nWVB5Nysv?= =?utf-8?B?YzVPMk9YejROSFJZR3VaVnFQT29wbHhsaHh4TTZ3eDNHVXNLNE9BWlJURy9z?= =?utf-8?B?L0RuUzl2Qlk4bTlvUjl0dmFLSFRBWmpDZlp3SGpNZXUxTmdBemRZQlRSY1RO?= =?utf-8?B?blF2WjlGamd1YjcwN1ZDbk5EWkJEU1JaTU94b3A5QmY1SFJndWxrRThLbm5O?= =?utf-8?B?UHAyWXppd01raWJ4MWJ5UVFjUzY3UTF5TVlqMGkwakNxNXNURlF0OGUvQWty?= =?utf-8?B?eWkwLzcrOE5ib0xVdEN1bmNTQmtZNjBKVWJuNUN2TWV5ZGJ4SEQ5MklCVmo0?= =?utf-8?B?N1pyWHQrRFNhcTlPSWQxRkpGd2J1TXJTT3BFdVRFeXE5REdndU9ZWWF1dC8z?= =?utf-8?B?eHFHVU42UmMwTWhrRTRoRHR3UkJxeFJtRGNXTVVPc01nSENHYlprZ2dJcE1X?= =?utf-8?B?dmxJMTJHdmRiWVIvbEFBK2NXQjF2S0U1TG9tREFqbk9QMmJmZG9qT3JWVW5h?= =?utf-8?B?VGdEc0FENklnbkUxdytQZ3p1TnFMT0N1ZDVwaUR6akFEWTFhNi9SNm5aSUFN?= =?utf-8?B?ZGw5UW5QVE5JS2FnMUFvT2IzRWhBN3M1SG1FME9tT2JWZllEaEVhYlFLOUhv?= =?utf-8?B?U2JoTERveUJyeDNwUEE0UEppNm4wcy9wUEhEOFQyWnlRZTIyZFlydzZjbWFD?= =?utf-8?B?ZkRRM0RwVUhWODlrRzJMTFl4Uk12U0pCTTliYmpvR2RUZjh2SktYeDVPTnNG?= =?utf-8?B?cTdYNFFzK0dicTRmdkdSakp3cU8wQ3BTbWl2Nzd2cVdVaUpXbGpTTEtsQmpY?= =?utf-8?B?OEFDWkEydTBGWVd5SWRWa1BjcDVSd1lyM2FPdXFyTkh0emZ6OWlQOFlidERC?= =?utf-8?B?cHkxVE0ybzhobDMxTzdISWxjbjhLY0oxZTBHaldGMU5XNVNqZUFKT1lEYktZ?= =?utf-8?B?MVV1cC8waE9UTzk1alNoUlY5ZjZGR1B5UUorbGRNTEV0UU03ZGczQXM4L3RX?= =?utf-8?B?U3BnWU9WSFlnTXorSm43VlBwSnNMdkRXZDJDWWtPWlNyV0duNHc2K3FWelFl?= =?utf-8?B?WXg4ZUZNNVIza01jQUhBZStncys5a3FPUmgxM2lRQk5uR3B4alI0VEFyRmxW?= =?utf-8?B?aVk0eFBHcVQ3ZnVLWEd4SnBiUG5lN1gxanNjSjFhVzdtWkRmZWoxeDdZUkZq?= =?utf-8?B?YVFJZVUzT2RITExvTzQrWlZJcHZnVS9mVWs1c21adXVjVkNkOEhYZ3cyVW4w?= =?utf-8?B?enZxR2Fra1RMQkdSZEVySVNKUFNkVC8zeEllekdabGROMDk3MWhSb2hxcFBO?= =?utf-8?B?emxYckpVVkROaTZvZ041dVZNUDVOK04vaERad1VtSDBQems4MDBqUER6UlBI?= =?utf-8?B?eDhwNUxkem9GbjV4dWViTUJEajAxMTQ3TnFOeExDcFkzaVJJbTY2MWZxMmpp?= =?utf-8?B?OWE4eWhwSlh1VjFLSWJIT0NQdmROS1kxc0pYTmErOTVsUzhtdmtoTGNuTEpj?= =?utf-8?B?N21yQUNubml1OC9KempBdFpPR3YzUm9xS3VIR3YrUXNPaXlleDdWRGJLMWh6?= =?utf-8?B?MDJubXBTRTlHTEtQN01qcWJaREZrejVLRzN6WHJyKzE5MU0veUtJcStwSUdO?= =?utf-8?B?NmJjb0gwQ0Z3TVF0UGN3NzgxOHQ2VEpBQ3dtN0w0SmcrN3lrcVJsMDBZM3RH?= =?utf-8?B?WXlLRzhPZkhzS09STTF2NXh0ZzVYczh0ZHZnNVd0STZiTjZQOFFiWXVqZjRk?= =?utf-8?B?MGFIWGpjK2p4VXUrVEpDNDNld1VPOWptaUMwZFk0TFBtU09UTjdwUDNUTlpk?= =?utf-8?B?RnFLUFd4UEl6Yms3K2J0RzI3RlhoK3VYZ0xwRjh0Z0VzQ2UvanJsT1dudjJV?= =?utf-8?B?VS8vNm9ENmxJREpsQlBCREJxY3NRQU9VSVZnS25uMDg3VmFqcTM4V2JGOVFr?= =?utf-8?B?cTdWMnQvSnNUZ2lsbERDRHI0Vy9peEFrQ0ZsY05ZZXZ3TmRGdGRWc0U4cXZ0?= =?utf-8?B?cnpOYkFPb2ZaalV1SkhGWFpyZ1NwSnVieFAyYWpLOXFpbzh5Y0J6L2pLazhi?= =?utf-8?B?U0JSTmpFdE8yUlMwb2orZWlUMVB5TSt1OG1YT1N5RmNISVF0YjVYbFJlN2J2?= =?utf-8?Q?siI+Ssto7wfG0karwMlHIyLlZoR83XgmtUrTYZEgdjDkD?= X-MS-Exchange-AntiSpam-MessageData-1: 3MGm7bBOkGd3tA== X-OriginatorOrg: altera.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4d785098-61b5-4f79-9044-08de3c6f4342 X-MS-Exchange-CrossTenant-AuthSource: BLAPR03MB5458.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Dec 2025 06:49:30.1771 (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: HbEMCh5+NHSW27nEGwULjrSRMJOggr6UhS/m+9hPSyYL0H8imF1AQD7isYbseXuRxnaIrz2X9LgLcB60APDA0j0ZQVUlqQBkPZfIT7KLSOMZFeenUf1NrQc5Q5RAhIVGI5qPYveRCZx+U/cLdbBo5A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6857 From: Muhammad Amirul Asyraf Mohamad Jamian The Altera SoCFPGA platform includes a hardware monitoring (hwmon) device that reports voltage and temperature sensors critical for system stability and safety. Without a proper device tree binding, the kernel and userspace tools cannot correctly interpret or configure these sensors. This binding provides a formal description of the device=E2=80=99s properti= es, including the 'compatible' string for driver matching, voltage and temperature parameters with scaling and threshold definitions. This enables the kernel to correctly identify the device, interpret sensor data accurately, and manage threshold-based events. Signed-off-by: Khairul Anuar Romli Signed-off-by: Muhammad Amirul Asyraf Mohamad Jamian --- .../bindings/hwmon/altr,socfpga-hwmon.yaml | 286 ++++++++++++++++++ MAINTAINERS | 7 + 2 files changed, 293 insertions(+) create mode 100644 Documentation/devicetree/bindings/hwmon/altr,socfpga-hw= mon.yaml diff --git a/Documentation/devicetree/bindings/hwmon/altr,socfpga-hwmon.yam= l b/Documentation/devicetree/bindings/hwmon/altr,socfpga-hwmon.yaml new file mode 100644 index 000000000000..b69611c8bc7d --- /dev/null +++ b/Documentation/devicetree/bindings/hwmon/altr,socfpga-hwmon.yaml @@ -0,0 +1,286 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/hwmon/altr,socfpga-hwmon.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Altera Hardware monitor SOC FPGA + +maintainers: + - Ang Tien Sung + - Muhammad Amirul Asyraf Mohamad Jamian + +description: | + The Altera SoC FPGA hardware monitor unit provides on-chip voltage and + temperature sensors. You can use these sensors to monitor external + voltages and on-chip operating conditions such as internal power rails + and on-chip junction temperatures. + + The specific sensor configurations vary for each device family and + each device within a family does not offer all potential sensor + options. The information below attempts to illustrate the super set of + possible sensor options that are potentially available within each + device family, but the user should check the documentation for the + specific device they are using to verify which sensor options it + actually provides. + + Stratix 10 Device Family + + Stratix 10 Voltage Sensors + + page 0, channel 2 =3D 0.8V VCC + page 0, channel 3 =3D 1.8V VCCIO_SDM + page 0, channel 6 =3D 0.9V VCCERAM + + Stratix 10 Temperature Sensors + + page 0, channel 0 =3D main die + page 0, channel 1 =3D tile bottom left + page 0, channel 2 =3D tile middle left + page 0, channel 3 =3D tile top left + page 0, channel 4 =3D tile bottom right + page 0, channel 5 =3D tile middle right + page 0, channel 6 =3D tile top right + page 0, channel 7 =3D hbm2 bottom + page 0, channel 8 =3D hbm2 top + + Agilex Device Family + + Agilex Voltage Sensors + + page 0, channel 2 =3D 0.8V VCC + page 0, channel 3 =3D 1.8V VCCIO_SDM + page 0, channel 4 =3D 1.8V VCCPT + page 0, channel 5 =3D 1.2V VCCRCORE + page 0, channel 6 =3D 0.9V VCCH + page 0, channel 7 =3D 0.8V VCCL + + Agilex Temperature Sensors + + page 0, channel 0 =3D main die sdm max + page 0, channel 1 =3D main die sdm 1 + + page 1, channel 0 =3D main die corner bottom left max + page 1, channel 1 =3D main die corner bottom left 1 + page 1, channel 2 =3D main die corner bottom left 2 + + page 2, channel 0 =3D main die corner top left max + page 2, channel 1 =3D main die corner top left 1 + page 2, channel 2 =3D main die corner top left 2 + + page 3, channel 0 =3D main die corner bottom right max + page 3, channel 1 =3D main die corner bottom right 1 + page 3, channel 2 =3D main die corner bottom right 2 + + page 4, channel 0 =3D main die corner top right max + page 4, channel 1 =3D main die corner top right 1 + page 4, channel 2 =3D main die corner top right 2 + + page 5, channel 0 =3D tile die bottom left max + page 5, channel 1 =3D tile die bottom left 1 + page 5, channel 6..2 =3D tile die bottom left 6..2 R-tile only + page 5, channel 5..2 =3D tile die bottom left 5..2 F-tile only + page 5, channel 4..2 =3D tile die bottom left 4..2 E-tile only + + page 7, channel 0 =3D tile die top left max + page 7, channel 1 =3D tile die top left 1 + page 7, channel 6..2 =3D tile die top left 6..2 R-tile only + page 7, channel 5..2 =3D tile die top left 5..2 F-tile only + page 7, channel 4..2 =3D tile die top left 4..2 E-tile only + + page 8, channel 0 =3D tile die bottom right max + page 8, channel 1 =3D tile die bottom right 1 + page 8, channel 6..2 =3D tile die bottom right 6..2 R-tile only + page 8, channel 5..2 =3D tile die bottom right 5..2 F-tile only + page 8, channel 4..2 =3D tile die bottom right 4..2 E-tile only + + page 10, channel 0 =3D tile die top right max + page 10, channel 1 =3D tile die top right 1 + page 10, channel 6..2 =3D tile die top right 6..2 R-tile only + page 10, channel 5..2 =3D tile die top right 5..2 F-tile only + page 10, channel 4..2 =3D tile die top right 4..2 E-tile only + + N5X Device Family + + N5X Voltage Sensors + + page 0, channel 2 =3D 0.8V VDD + page 0, channel 3 =3D 0.8V VDD_SDM + page 0, channel 4 =3D 1.8V VCCADC + page 0, channel 5 =3D 1.8V VCCPD + page 0, channel 6 =3D 1.8V VCCIO_SDM + page 0, channel 7 =3D 0.8V VDD_HPS + + N5X Temperature Sensors + + page 0, channel 0 =3D main die + +properties: + + compatible: + const: altr,socfpga-hwmon + + temperature: + description: + The temperature node specifies mappings of temperature sensor diodes= on + the SoC FPGA main die and tile die. + type: object + properties: + '#address-cells': + const: 1 + '#size-cells': + const: 0 + patternProperties: + "^input(@[0-9a-f]+)?$": + description: + The input node specifies each individual temperature sensor. + type: object + properties: + reg: + description: + The temperature sensor address format contains a page number= and + a channel number to identify a specific temperature sensor. = The + page number selects the region of the device that the sensor + resides. The channel number selects the temperature sensor d= iode + in the page. The page number is defined in the upper 16-bits= of + the reg value while the channel number is defined in the low= er + 16-bits of the reg value. Channel 0 is represented by the va= lue 0 + and channel 1 is represented by the value 1, and so on. + label: + description: + A label to describe the sensor. + required: + - reg + additionalProperties: false + required: + - '#address-cells' + - '#size-cells' + additionalProperties: false + + voltage: + description: + The voltage node specifies mappings of voltage sensorson the SoC FPGA + analog to digital converter of the Secure Device Manager(SDM). + type: object + properties: + '#address-cells': + const: 1 + '#size-cells': + const: 0 + patternProperties: + "^input(@[0-9a-f]+)?$": + description: + The input node specifies each individual voltage sensor. + type: object + properties: + reg: + description: + The voltage sensor address format contains a channel number = to + identify a specific voltage sensor. The channel number is de= fined + in the lower 16-bits of the reg value. Channel 0 is represen= ted by + the value 0 and channel 1 is represented by the value 1, and= so + on. + label: + description: + A label to describe the sensor. + required: + - reg + additionalProperties: false + required: + - '#address-cells' + - '#size-cells' + additionalProperties: false + +required: + - compatible + +additionalProperties: false + +examples: + - | + temp_volt { + compatible =3D "altr,socfpga-hwmon"; + voltage { + #address-cells =3D <1>; + #size-cells =3D <0>; + input@2 { + label =3D "0.8V VCC"; + reg =3D <2>; + }; + + input@3 { + label =3D "1.8V VCCIO_SDM"; + reg =3D <3>; + }; + + input@4 { + label =3D "1.8V VCCPT"; + reg =3D <4>; + }; + + input@5 { + label =3D "1.2V VCCCRCORE"; + reg =3D <5>; + }; + + input@6 { + label =3D "0.9V VCCH"; + reg =3D <6>; + }; + + input@7 { + label =3D "0.8V VCCL"; + reg =3D <7>; + }; + }; + + temperature { + #address-cells =3D <1>; + #size-cells =3D <0>; + + input@0 { + label =3D "Main Die SDM"; + reg =3D <0x0>; + }; + + input@10001 { + label =3D "Main Die corner bottom left 1"; + reg =3D <0x10001>; + }; + + input@10002 { + label =3D "Main Die corner bottom left 2"; + reg =3D <0x10002>; + }; + + input@20001 { + label =3D "Main Die corner top left 1"; + reg =3D <0x20001>; + }; + + input@20002 { + label =3D "Main Die corner top left 2"; + reg =3D <0x20002>; + }; + + input@30001 { + label =3D "Main Die corner bottom right 1"; + reg =3D <0x30001>; + }; + + input@30002 { + label =3D "Main Die corner bottom right 2"; + reg =3D <0x30002>; + }; + + input@40001 { + label =3D "Main Die corner top right 1 HPS"; + reg =3D <0x40001>; + }; + + input@40002 { + label =3D "Main Die corner top right 2"; + reg =3D <0x40002>; + }; + }; + }; diff --git a/MAINTAINERS b/MAINTAINERS index 5b11839cba9d..8ac7fef4563a 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -936,6 +936,13 @@ ALPS PS/2 TOUCHPAD DRIVER R: Pali Roh=C3=A1r F: drivers/input/mouse/alps.* =20 +ALTERA 64-BIT SOC FPGA HWMON DRIVER +M: Ang Tien Sung +M: Muhammad Amirul Asyraf Mohamad Jamian +L: linux-hwmon@vger.kernel.org +S: Maintained +F: Documentation/devicetree/bindings/hwmon/altr,socfpga-hwmon.yaml + ALTERA MAILBOX DRIVER M: Tien Sung Ang S: Maintained --=20 2.43.7 From nobody Mon Feb 9 03:34:04 2026 Received: from CO1PR03CU002.outbound.protection.outlook.com (mail-westus2azon11010040.outbound.protection.outlook.com [52.101.46.40]) (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 BA2E8311971; Tue, 16 Dec 2025 06:49:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.46.40 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765867793; cv=fail; b=suvpfVxHbkJjI9QynbZRu3V0h0z8910YShYLbbPv2XS0QYEeYkUqq61o+EAa8wP4/aTcRMVptGVmCsmsDHykJlG4QWrpPbaRB6Aibu00Q1+yML0owy+Fh4Juz4OfbP5p5tBerNLxDQnk4erG7xteY33wGD6Nnxu5To6a6FNeMfY= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765867793; c=relaxed/simple; bh=JW3bXKLBJjhe7u9Bwlls9d+Fkk+Ayb0wzm4ZUVieMzY=; h=From:To:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=q8dlWvZ68+uWX31OICJ8zOI2UNtYyuAk/L6I4kQ+g8OFSIx3wxoKZMu2Cyn0pcM5GfADTf+pBdWzBRp+nLarJ5M/EFU+e8L19d0yFhgOYfiBfpRyD7LrxuctNQv1ls2WWOuEm0TU+0d9ic0mWg8lE24AKYudqBcWbvgAFIao44U= 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=Aq4F3JyC; arc=fail smtp.client-ip=52.101.46.40 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="Aq4F3JyC" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=pttJK4nUlj1iU4KI8rVoJj5CQr2s9PU9lnZN8cgeGEV+nzdG6zB9Xt3xMNFgSGnj8l9wgC0FOPH99W7FAAZ/R79eWEngnvuy4ktFv35i2kF4+/+lBxXI7SusOY7dcyW+aBljAviT/Fg917cyjb75dxdepUdGmyAqOKEUnqmcO3zHiYDuNcw4WHJQYhnc7rVmjSDLupIDM1HBHwOObZrdHmPXgAn3CwXx/oM6Cg1ZlktB9rx/jIBoPi7jPVzNmleUYOiyj+G8vegomOReLanGzRzRNXo/OwP7v+WilS/2HmqmFuEE6eNnAfu27nSdcVKYQb/znQ4pGAP2TppC+BKHXA== 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=KE0QteFmlnwQIEufoEcUem42TkpdJo0dY++5+stmHYE=; b=hSun7pu7JRj6o5DYk/ucv46+zGLSAsFynZ/IydrBSCEU54yAdclrUe9jDBuNXWrDtTNjO0+yeE8UqkK/GRPaj4g4TMGQvED36Yy7nWndXk9lsFu1WC5FzFgNWs+tuMNoNGDmC/NKDR3ck3adNVLRqUabiStiSSVAbMqCSRQ416zMXaJlZmqQUHtz6gZI+cGKXtn12W3GbpYC4e7DjVUKvLYRLwmXXmRm5tzzTvPvpAsUW56qj45bYsCtqOj/S8EzTFqCNuUkdTrn0HsIXLyicalVYPWOscyESjqf1TPpr54HmD/stdTiIhxa3DQLs4grF+t3Dtq5E6AKKs73aW6pRA== 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=KE0QteFmlnwQIEufoEcUem42TkpdJo0dY++5+stmHYE=; b=Aq4F3JyCeysWU5PwpgVu5Dpt/qJKIlGxjHnY0NeDnk7O8n3n0bDbg3m7CFubZ15rWr5C8Rb33q7A5t/1w0Hxn/jVVaTtNKfSsDHuRgaz/mCXmEjZN7ITLrZVLc/PvhEkbwMdQkWBHmPjyO1lIocLvXe8hg87qrVJiZ2LHwcHc0IMEiWITvZXkz5dHd0MTwVt3mrF5Lnf3DB9ddMcwgbkb9elhOAL+8NelGH09gJeHSzsqfgdrEuG9HYDl9n/N6Ola7+EZdHTWXu+rAUL2MxgDIJGyVfXnxPoaEvUZva2dH+HAC3r6DwkyE9ox/aMO1HJd/DwqJtTpo3BHuJukOvavQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=altera.com; Received: from BLAPR03MB5458.namprd03.prod.outlook.com (2603:10b6:208:29d::17) by DM4PR03MB6857.namprd03.prod.outlook.com (2603:10b6:8:40::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9412.13; Tue, 16 Dec 2025 06:49:31 +0000 Received: from BLAPR03MB5458.namprd03.prod.outlook.com ([fe80::7eda:fa34:15f9:e656]) by BLAPR03MB5458.namprd03.prod.outlook.com ([fe80::7eda:fa34:15f9:e656%5]) with mapi id 15.20.9412.011; Tue, 16 Dec 2025 06:49:31 +0000 From: muhammadamirulasyraf.mohamadjamian@altera.com To: Guenter Roeck , linux-hwmon@vger.kernel.org, Dinh Nguyen , Rob Herring , Krzysztof Kozlowski , Conor Dooley , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Ang Tien Sung , Khairul Anuar Romli Subject: [PATCH v1 2/5] dt-bindings: firmware: svc: add hwmon property Date: Mon, 15 Dec 2025 22:49:23 -0800 Message-Id: <20251216064926.15817-3-muhammadamirulasyraf.mohamadjamian@altera.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20251216064926.15817-1-muhammadamirulasyraf.mohamadjamian@altera.com> References: <20251216064926.15817-1-muhammadamirulasyraf.mohamadjamian@altera.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BYAPR08CA0008.namprd08.prod.outlook.com (2603:10b6:a03:100::21) To BLAPR03MB5458.namprd03.prod.outlook.com (2603:10b6:208:29d::17) 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: BLAPR03MB5458:EE_|DM4PR03MB6857:EE_ X-MS-Office365-Filtering-Correlation-Id: 2ef322e0-b61b-40d6-29c5-08de3c6f43f3 X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|366016|1800799024|921020; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?+FxrHoMCWwdDL/3jBGxkys68tbCVKL+fc69T0ExPYvTyY2LN1EXzbdCaj6al?= =?us-ascii?Q?Kc4t9W7pZJ0FToaG/w4qK6xISLuvx4LpDMtzs4c/egB4lntUaegbYfC5/g2D?= =?us-ascii?Q?R+CCcp8sl0TpZJid0E70Gcui+Xi5v/IXu3Cq7HXmM7pAXF+NazDhLRVJqgaK?= =?us-ascii?Q?wlu8mqTB1DuFuGZaAkcmccsyRn0nkOKUpzh0AeAfuS0aj0BuG01kGQeuBioK?= =?us-ascii?Q?AzEO23ZV7DyCgi2KKmwR6N6lyeVTRr5T0KfaGAaTP6/S1vkRLnmjx8F8fBtJ?= =?us-ascii?Q?oBuWVwRayLUpzleAY1pK9uKycdEfknJva04mKoY7g/bTfbkTSZ5Aui/O2dT9?= =?us-ascii?Q?Wk0qOFjn5lCZDTZgoG9Rj90T7yksLLJ1lj77Zm0UmYCGS5l9R795bdRpJNaU?= =?us-ascii?Q?d/DLULXX3IQxlFUv6I03jtj+r/boCWBI8wdHCEkIfJUcO0AHVvlsvApcirFP?= =?us-ascii?Q?Yl9aEjIU3u0+xJ5UoH0+of2vqzwh2pZ52PbNndpYjpd79eK1KuvM9YO+M+Qh?= =?us-ascii?Q?ZPsTQiV7PUKMtJ22cYhj88G0lw8g+ghz3rgJASW4pPxM7wUiQXVdKBRClcNj?= =?us-ascii?Q?YKX76yf7ZOBl793zQz74eWB+tpFtNttEO3AFRvr7ooZ9pMmYiV3LHsPj8PM7?= =?us-ascii?Q?9pNZDVA1dLdO75R1zMUtDz/eAbJ5LV1ZZ7iwzu7zs9zEbnRbdIXC4iqghfMS?= =?us-ascii?Q?yFvuwntI0Gk++bZ0IdwmYL1mQm+sq7jT/2iBQKP4zyzHnswiCm1PlQgoYAGW?= =?us-ascii?Q?7bipDBAmINbTZ8G0P+No53gyKTSaJLS6+Z9gNyKyig6IGgIGgbMSACzpUUc/?= =?us-ascii?Q?gnUZ0siQwkAwLN+zi1aUoZhRMLk0ih/kLbKc+EvXeopqx+yZB821upvmZqgs?= =?us-ascii?Q?o42+YuZcCra47fP115Nb2W8zRCuUWX6hREFVjtmwXWctnds0AojKdJduIzru?= =?us-ascii?Q?L205TOslPriJOwyM6RPjnmzIJsCG2yC8wCsnlZpRKijzyxXKe3pOnouYxlOz?= =?us-ascii?Q?p36tlaqRNjMP+WkCCX74OmtykfQic/klQInOu9KDBJggRLwxa0enGtphoOMD?= =?us-ascii?Q?3IFyPUVFMWYFtqfl5VR5tGHFdNFhKw/TdLBLes7d5qSRH4nrxRJWhhDedYkZ?= =?us-ascii?Q?ts+GXKDIOkauY4P72WsQ1y5a7SkGNKJBvuR5tXnH7efQv2jv51XWANR2Rit1?= =?us-ascii?Q?8MaV/L53vgXp/aXH8DQCIlBFd30ejphDv2JZdJK4/UB2Z04j8vdcp1JBBXOC?= =?us-ascii?Q?KEvFiy3JqB/UMld+PWd1qGrD54ccxSCaNn0mZGz6cgNsVb0MDkAewU28ykYM?= =?us-ascii?Q?XFG6ojczkzjhXH+DVPkGXpnTsSuqjYougJ0vyPyQNJ5OnGu8YDU/Nc0cunfD?= =?us-ascii?Q?Mk1u7+AbnxXaCTSQdNty9QxdD0waphCXq3Zi8KL36kruD3UL0AlMPqSk790i?= =?us-ascii?Q?OWHi8M1R9s7i+8htRG17m9eJ0SAyR/WfGAw8aSf6LpDNcc/J/9+ul3gl6N4o?= =?us-ascii?Q?HvYDCl3HutiOFgI=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BLAPR03MB5458.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(366016)(1800799024)(921020);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 2 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?DtBpjsAE1vd+D+uLvBh7zSZEtDOXj02Vi5LzB8OPFX/QQQtITQWpWIMZLnJV?= =?us-ascii?Q?+hB0XnS2tdieWlkVJm50Lcq9+P4rr6iFxCSRrkMRpezO1RTWUjV3YlRgHjQh?= =?us-ascii?Q?l5+mTiEIulCtO42HNcaYp+HOMXcbfisx+AMFksZp+8UQqCU83KY58yRIFrBb?= =?us-ascii?Q?MWKNyT/sRUQTQ/zoFRpR5AcUoVelViOvfk5+bCMR4RuTQOewQsMIuXtp+W3s?= =?us-ascii?Q?ZxCdipwK8d/3hYiq5O4p52lGTtRwlJByqTvLX+pRhVoBOib6mruoNXH83Gpu?= =?us-ascii?Q?r2PSrNuObxyJpKiiP6RKsBEiBslBjT7MlrDWM16T3SouzIjLl/OfLrYIR1zS?= =?us-ascii?Q?JviiR4LPj0DwShCqp2OPMLjn0onbgmRKjLN6LyUd74T/BPzE5EC2/noCjOw1?= =?us-ascii?Q?4V97qCNkJHxMG2oAGgRMdktrvHrL4ZnYFCoUXPpBa+9+BcHTFQZO3UGYuKIf?= =?us-ascii?Q?joagfc2SDGbkw88+hrWJXKcf3MCihOpp8eE4O8kLaYJg0iG2y2UhPsxmqaPv?= =?us-ascii?Q?mx5BjW2FfYZ6pctsT9S/VXgVFyYdb+zmsKJs/tdNOhz58mEr3vM72iGUUr/0?= =?us-ascii?Q?EPe/fOlpzxGK5+bfBMbjxhoswa98xcnvIOfYxMoe6ZfzsBQPjX24Cl2aF7mU?= =?us-ascii?Q?fssQii08Rm+edOVwfEG3GSI8lTJWixiPqv5pstOTqRRCIf3h5V6ncBgXoSDx?= =?us-ascii?Q?c8QtQvYyMvc/XFdWpl2rYDityaXoiy2Er65bKDRDCPUYchOH80yvvF+pvuhW?= =?us-ascii?Q?Xv3Bsl+5nijGBD1wMugiO38+J/SqllydvKPpEpP2nm3+OSS2knGOe+paYWJT?= =?us-ascii?Q?zn/aPbYNxXidxU2BbsgLAbaNBV4l1KK60tNffojc11Zw2WdgNv7BN2FZM2LG?= =?us-ascii?Q?eV1CPji6SK9mpnwVGfJt8GiAwZLTU2tk280u2FDwOR1f4/tPfWsIxi0FQCvj?= =?us-ascii?Q?NRMy9aRYPKgPWbTrTHvTo9CpXWqRvuBGdRMZLWkYnB+5j/uX0Qb/Y7PQV7NU?= =?us-ascii?Q?auRXdfFZCTn4JcvGPchRNWjyjk7c0d71eMgdxshbQC85CCkvOt0xAq/v7NW5?= =?us-ascii?Q?EEae3e8WNTM5+SBAads7SYw2Kgqo2E50HT3mwxOgUhzNd+3jBToWnAPqT8R4?= =?us-ascii?Q?VkS1VEzw19+MsuvcbS0xgOno2HhI4agXGmip2OVt3YmWr+FG+P8XlhzrCgKx?= =?us-ascii?Q?BEmT34ahkuAQ2C3r4Ow0+DHDGJQ/jKWDX1Q1uAY+178z8eWXTTmQpbQMtGNo?= =?us-ascii?Q?NMIDjJ3ETK+zAf6lWnoQZgH1GOUyzGotMnG68mDX41SaQa1md7RYZFDYyQ+r?= =?us-ascii?Q?WrQ4uYvfmQZT2h5d5tVIXqljhY+bigtmfqQLLF6QChaVOWhwGuwRT/VjyNpz?= =?us-ascii?Q?dmaRPzlwdwjLerqBU89Yy1yfVVsE46+goNKNKrklm6m7HBD6g0k3XNH58w2X?= =?us-ascii?Q?F4MZ2aBhm1D2x8DhytU5cHfemt1ZeA/8wsK2QRoD/yK96l/LjuePS6ZM5JuB?= =?us-ascii?Q?XtiqmeXO4yPkEFTvRoV4HLpHWd21XKNKBDEunoeQnL2UPISdme4JTW9h9LJP?= =?us-ascii?Q?G9FIGiN3y0c70H20NeC2tuYGRKyCMOEObX1hmbGE9Xq5nE2FgwFtJajT68LJ?= =?us-ascii?Q?tx2A+3vnuCx02gUFQDVAfYePABHvdSHWDDmQ0mdwjusTgL9uuoeXfnnZlwWM?= =?us-ascii?Q?+ENkrPZ8p46OH5b9IB0y6tIJTBdz0EjdA86/nYOdQ8VABc1en/DRzWnl5jN1?= =?us-ascii?Q?v9AglCjlqiWH+xNNicU78AV45lFP6j/BUv/3HICy/p+uoPnYU1b4A9Unj9fx?= X-MS-Exchange-AntiSpam-MessageData-1: UqksL3kYfVMwAw== X-OriginatorOrg: altera.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2ef322e0-b61b-40d6-29c5-08de3c6f43f3 X-MS-Exchange-CrossTenant-AuthSource: BLAPR03MB5458.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Dec 2025 06:49:31.4079 (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: d7/Zv6mx9JqGmJm8J0fuZrK+FQzJ/+1XVo4O95+DVlyD5eGw3nw/E7Vmi5LToJM/YMe4Y6Z8fd3I7NbUo+NyGjU8tBeIbZG+8BfzTYGs0wVwSGTiSfeGwTq5GaLc/Af1j/icbvSNJbPAFdBL4flxug== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6857 Content-Type: text/plain; charset="utf-8" From: Muhammad Amirul Asyraf Mohamad Jamian Altera SoCFPGA support hardware monitor feature through mailbox. Hence, hwmon property has to be added to the DT to enable the feature beside the hwmon bindings and driver. Signed-off-by: Khairul Anuar Romli Signed-off-by: Muhammad Amirul Asyraf Mohamad Jamian --- .../devicetree/bindings/firmware/intel,stratix10-svc.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Documentation/devicetree/bindings/firmware/intel,stratix10-svc= .yaml b/Documentation/devicetree/bindings/firmware/intel,stratix10-svc.yaml index b42cfa78b28b..4767904c7b76 100644 --- a/Documentation/devicetree/bindings/firmware/intel,stratix10-svc.yaml +++ b/Documentation/devicetree/bindings/firmware/intel,stratix10-svc.yaml @@ -62,6 +62,10 @@ properties: $ref: /schemas/fpga/intel,stratix10-soc-fpga-mgr.yaml description: Optional child node for fpga manager to perform fabric co= nfiguration. =20 + hwmon: + $ref: /schemas/hwmon/altr,socfpga-hwmon.yaml + description: Optional child node for hardware monitor to altera socfpg= a. + required: - compatible - method --=20 2.43.7 From nobody Mon Feb 9 03:34:04 2026 Received: from BN1PR04CU002.outbound.protection.outlook.com (mail-eastus2azon11010027.outbound.protection.outlook.com [52.101.56.27]) (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 7432033557C; Tue, 16 Dec 2025 06:49:48 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.56.27 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765867794; cv=fail; b=hE5iAirAoHccxTbX/dvmx62OkKoujjs9hG9Of4KLE3BV5nLpefTTuwCZFm2qtNMr+LNVU/rqpw2S+e6VBzGuq7MoQij/4rt7t03P4H2WD4z2xIl13DPWUtwd4TD6KGsysEl8hD/MAxCfOfuWWvRirC7D2kxMA6qCeJGLmuM4XhM= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765867794; c=relaxed/simple; bh=Vb15h59m0rw6Djt/J5yzcIMmgGBXeL+x2WyOoSilfMQ=; h=From:To:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=QMxPkT8CofsOfsb9creR28fiTv8QuVgooSWme7Fle3AKvzfSsRfFlx1dGEjiQijIORQDCOB/KmTul1NdRD1iQVL8htn7Yqgpc6vaMBJT1Mclw8n8OSlL6Z53q7qKR07wvWyGdnInSU23RvWHSdI5S2R6d8RvTtiDbP1y7otwF/0= 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=FnfyY8n9; arc=fail smtp.client-ip=52.101.56.27 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="FnfyY8n9" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Ary40RBlQgMZEGdGcAPUClhHLv3TMj8bFyQYxm7V43fkbRJQ7C98CR88IK8WqP+IwRbysyCkv1gEyVi7wAMYpBHilRFCHpx9Pt+mHPNtLt/JUDEUASv73wz0rY84sfA94zHOdd3435muxTigpUSpPNLT/wd/+6wlMu5VVBvRgl5fI0uoSA36akH9RzqGOXh7FiiLGaO9n5KescdTYbiYQRa4+EdtRHVTcN9j0UVnRHRuGma4FyuR4zNyWiSdV8r/yIO0Y/sgcOjM6755OQh1AC1I7q5ehzWxZaG8fKMcFw9dFpQqiioh23CyuAS65/ggeSoAnx+Mo9KtMpk5uUtJ3g== 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=yOhp4XDogw0IeTkkfXyG0F/SI1wH7B5mMvV96EqVJtc=; b=wPQSvQEK5CMPJC8qIsEV/8AJV7OtFQDDMOrRdazESca8nAYJBEMNI80Si5MAoWoQzAxtJramjUyPErkAJtnoChFa1N6ChPBDg//lULlQNk/0wRh5VuCjrbGtN6X66fAVAhgyLvh7su/b8MmM4PrjTGIIxaOSL3UE3nAPVDhkqx7UkOYHxrd4uG3NUJIKbO3F00/k77mivqOp1A+8sY6TCZN3NcdsqXSi2zw2ywsO+MGeqc2pc32qIr9XaDuGaDs96MExmtHfuecDfM8lacRFOQhCdXXU6zWiDvoroPcNMnG7w3prImDSAPv+rj1KtXuB3DlETgMFE+gjOlu0CC3S2Q== 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=yOhp4XDogw0IeTkkfXyG0F/SI1wH7B5mMvV96EqVJtc=; b=FnfyY8n9rnAL/IpHpAVngtO6k10M53xzXxleJ1h6omuPlNkOv381RIYIEgauxgfbxDZGvHrTbIn+VqomrPhJ2jOrq9WewRMtjMnAX8qO1zJMbvTLs9IEkuKM+B9Ng9yZQn+5U1SjbBpo07d15ktjjxPPUygBjaOlSo4H190+hs7qZkgbWUll8rPAffe8xSbNzUNfumB4p441tQBgGD9V9MfBlF1L+wd/2MOifQo5+jk3zwbi/L/BoRPZTeT7Geo4NsCWBqnn7Qjzy4Wgdn2t4ouKwHd42WZaBnCnG8p5MMVyTm97uSuVNCRDln0y3MmKkCQ3txY7M47Rr7B5zwjBPw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=altera.com; Received: from BLAPR03MB5458.namprd03.prod.outlook.com (2603:10b6:208:29d::17) by DM4PR03MB6857.namprd03.prod.outlook.com (2603:10b6:8:40::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9412.13; Tue, 16 Dec 2025 06:49:32 +0000 Received: from BLAPR03MB5458.namprd03.prod.outlook.com ([fe80::7eda:fa34:15f9:e656]) by BLAPR03MB5458.namprd03.prod.outlook.com ([fe80::7eda:fa34:15f9:e656%5]) with mapi id 15.20.9412.011; Tue, 16 Dec 2025 06:49:32 +0000 From: muhammadamirulasyraf.mohamadjamian@altera.com To: Guenter Roeck , linux-hwmon@vger.kernel.org, Dinh Nguyen , Rob Herring , Krzysztof Kozlowski , Conor Dooley , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Ang Tien Sung , Khairul Anuar Romli Subject: [PATCH v1 3/5] hwmon: (altr-hwmon): Add initial support for SoCFPGA Date: Mon, 15 Dec 2025 22:49:24 -0800 Message-Id: <20251216064926.15817-4-muhammadamirulasyraf.mohamadjamian@altera.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20251216064926.15817-1-muhammadamirulasyraf.mohamadjamian@altera.com> References: <20251216064926.15817-1-muhammadamirulasyraf.mohamadjamian@altera.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BYAPR08CA0008.namprd08.prod.outlook.com (2603:10b6:a03:100::21) To BLAPR03MB5458.namprd03.prod.outlook.com (2603:10b6:208:29d::17) 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: BLAPR03MB5458:EE_|DM4PR03MB6857:EE_ X-MS-Office365-Filtering-Correlation-Id: 6699cd8f-a529-4869-e6b4-08de3c6f44a7 X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|366016|1800799024|921020; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?fdSLaY/jGCt8O9ZWJw0Y8oI/SWpUokHxoJB7aA+eWWDezhzqLdLytvKxVmFd?= =?us-ascii?Q?LQV4kYipKxOxet12STEl4JCs4W6nTuIIsoAvtamO4bDGCYMxn7sV3GM/7bgH?= =?us-ascii?Q?t2sc5hWSgF/3o0C+dj4hwavWEAJqqzYAm0r8EFqdiIqYfEvCRGjCttt2Fc9R?= =?us-ascii?Q?dMS91EelxmP/BWZWgKBg6YPaXtchGbElNzh2VBje9TsuHSeu4v7ndT0jjXTl?= =?us-ascii?Q?c783Csqcj5IHjc5EnPYM2NV7GgeeMCDm5RqAcDAsjN6iv78bA9CNUr4mXaaM?= =?us-ascii?Q?zoFo0j1tf3t6BHqth2aRIcLaXRjXaY+uRj+biseNgBiv9Jw0m0Ka5lwsAnZu?= =?us-ascii?Q?HAXhK+y/CHbJCUy8v0u2FRSLwPNHYrs4zHpL4Q0uHbms0XaFAz2kE/f4aXJM?= =?us-ascii?Q?0Vr2bo30mWGeLpM44ROsLNkzvtwSCv+ryD0dZM3RW3HGeOLnnu9i6aVVxY5Y?= =?us-ascii?Q?2uWt+3Kcab9ERtbCbHOFz1JU7Q2VGCTs7TmFpIOfdlG231giLxGNOh7BKmkL?= =?us-ascii?Q?0RfjmLVEvhX7T2DJxCHuZPu3/PKG9X4PK+KGlXzLcRHyQTHSkgl6gjBN3dQ6?= =?us-ascii?Q?NHpsnuZSgXWe7i//CEQgM/ZfeBYerjzHxFwPfthT/xymFgsdjFtHcH1oa0lD?= =?us-ascii?Q?ghBkVq18KO5tSDokrR8CJMYAa2JdTUdEAeo9nLMBcBTBhE4Nj1PvwyagZiLE?= =?us-ascii?Q?R1xI1rEBBqRhhMR7NWgLuNZ0j54HvTrNCVBPELuMu39ZP3JiOvbL0jJ96/7d?= =?us-ascii?Q?u605FsRwtAjyaGbppWdc3qq5Gmuxrj2TAonRLrziQBks5/U1AnLcEGA6ECbQ?= =?us-ascii?Q?daqyBRyfrFBKoIC3Tvjov/6tpVkdOq69Dvnh7qqV/BQu/LhkzdKFhZhfV3n6?= =?us-ascii?Q?pCCTYXM2pn15+yBrYag4qh+Zm+hyina+yA8z+lKU7suLWXHfrj9p+d7zwfei?= =?us-ascii?Q?wUmIWf29N7WTFVN1khvVW0nUBin3VjGTInwps5GFf9TPTPM1Wv7JnOHKhdrW?= =?us-ascii?Q?az+y4x4B7j3IQFM3ZGelNSgVWhFxqLWpGJ9ipuy5dHug5oAsbenHA5QobD12?= =?us-ascii?Q?C3rdJhH/RiXZ5Kyp6NYFhtCJA6j3BzDaJ5npVvBClRGcBK9EyWB5rED4/z5O?= =?us-ascii?Q?inGlEpqK+zDhaRBeHE0w81mXvcYfTsk4/T/RmDZ1FJfYCJiREpw5o9Mzp5N6?= =?us-ascii?Q?EpCdNwSqruOZko8zS9yX3xTx2qwPRLiHb84RQhSHQ169b0M0wmMGDDIY93iP?= =?us-ascii?Q?AGezy9toqD2m9WWcX0k6OvO6oQ49cP28R24EMPFQruSLEOXcUx+vmQBUbj47?= =?us-ascii?Q?F7eltZCVZCuNii6MXHGu8pt6KHBFgxvgURDY3ce1rGMYMSkWNKxKpETg77kd?= =?us-ascii?Q?aI5EeTLh+jkgBSVfZ48LE/A48kDGyfxzyGPMSb8P508g7rwUsaKTHJsQOk10?= =?us-ascii?Q?SKXs/iLhRvEhwmsJHAyJbSWOnuPh/6Fm5ekojur/FnIMacgS9iGRzzkl0w3K?= =?us-ascii?Q?CA89+hvvTOjaNCU=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BLAPR03MB5458.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(366016)(1800799024)(921020);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 2 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?CmGQpON4QCgdMG1BmREJivYvBFh6n1Y5SXkVcd0Wfp7paHg/Ep1CDix6GCIk?= =?us-ascii?Q?AvexgiQcJtei2UNJ6QWk2aJdxpR24L2jp5LfWwO4JUgnp9GItFyMAZZe1Q+O?= =?us-ascii?Q?kzFwkf3xPBPFVi3BjE2su9jCwjuZk8mFwUYBhtCACb0qUC3cUoeKKyI3+0G3?= =?us-ascii?Q?1A4Jy4NU8JqBSXv6X2wrwX2Vub3hD3zEO4jQh9sSjaf0mP63uXK52qIMWhTn?= =?us-ascii?Q?7uZIl6hdwyC1IoewB8RktPFi1HRPtsb0aVPYJJ+WvY2gd45mtmQzekkjaqNo?= =?us-ascii?Q?7CNJzsdo6ZaqVPR3t9UThJhDnVLyMoN2+ljZaEwKPjTuRpF10jH4D/kWmPSu?= =?us-ascii?Q?+DIO3Ovb9T1Gmccj01dY/CvNHzgahgvi+U4Xs6Jim/IXY55UHh+CpvEgZSaN?= =?us-ascii?Q?HE+fHPOQCCcO2JiApY+1lpJ1zg42JZmXl1RSs5uCmjhdLhiq/Ltp2RC7hQ7W?= =?us-ascii?Q?9H53tLr0Oj84cKHrzOK8cnfaPr7W1UaV0nU7hJsPlYNCtSQSzXM+p4LJttGD?= =?us-ascii?Q?cQWIkrBhd3Xp3M+3SPuN+U74vxxIKHDQXXinYZpjZ/LwF7qlbm8OkOwUD6aw?= =?us-ascii?Q?XHBkr3cRVgjakwYb5Xs3Wbzplwef/gBTre9IPPoKWAeGtgnzLH6dxMTVYF/b?= =?us-ascii?Q?s6qNbGSQ4NIwcEyIFKyZtRTHaZrhRt4G+UHt6Zpi1ZLezOZaSkIbnhZYIEx5?= =?us-ascii?Q?Wk8R0AwTXzxO38rO7HaK4a4+6eG2Vad29fQ2OI80iX5qZ6i1nI97MnsMXbir?= =?us-ascii?Q?cnFcFz0vc7ZuXmUt2u7Vkl+92XgwN+JkfzEnmkbQDcR8qK7t2WYqEvnw6GVe?= =?us-ascii?Q?Eo5BvGgKvgVPozYU6yEPf/W4KYYTO6yZLJAUDY8Jg0T8MZ5vtkA46m1K67zO?= =?us-ascii?Q?BgA23yEgJHZ+RDs45Osd2aStuBR7fD01jFRPxtDylff9bON/0TX/YRsY/Czu?= =?us-ascii?Q?bPEGCiyexNWR9fDhdP/N4qRThW7avc7+VPImWCVep41B+hdgSd/Xhg2lYXxC?= =?us-ascii?Q?PfGWJdzSyA/STT5f8hDZbrhbzy7mwNKjKKEEBmyC+rw8eEejmGajzww4VxwE?= =?us-ascii?Q?vbujiO6phxxLR6vOa8PYEXX8heYXxAsCSVEBszfVdSlz9MdwPu8IixAJJLNT?= =?us-ascii?Q?EHBlD6eTseXuW+Cs/bz/QKzl06S/r1/GluUoj1kpnlO0fQmX3cqPqp+7xLjQ?= =?us-ascii?Q?4S5eoC5hicQEOgKH6+4dDofex0RZ3e8WcEW6Utqev/rZB7kyZKeYgZlLNj7n?= =?us-ascii?Q?hGvALtsXMHD9TyomC0zYt/DUKks+79fI2AtS3sUHFBuaczLH+q68Ibaff/yn?= =?us-ascii?Q?rm4eDQt1FS5V6p4CGrEoXcIQ5a1LfLvBTp6lp2IE/HnzO0wZX9V4l19k7P6R?= =?us-ascii?Q?8OXzTXT3rCG7kycpv5BbjU1Z2dN3xl4wIguq80H30zDICVR2msbmYjaN7oRl?= =?us-ascii?Q?pAbKYfE9mPrvdef6Bl4y6Tto+rJs88oZFZBhR4s+nWNXxCe36dpoCy+h3H6Q?= =?us-ascii?Q?HR60hHt0jMxo5hIzEv35KuwxxPq9g+gXlia5cOfkOHBy9zDflw0wy57SyLu/?= =?us-ascii?Q?ZeUYIS9xsyDfLZ7lOzfPw+QyAYkVQD1TvsM/zcXe6ABfZRTG32YYNlfYmyDE?= =?us-ascii?Q?QgCNbX9/L9E80JyVRVhu+W7TynkXEb3hdrsRNRvUzD9Q6RJx4a9ls+WVtD1E?= =?us-ascii?Q?72z99eM5eHdEe1izJY/DIfEVdSlB88PiU2TFg/kX/jIHjBqxPzOM+FadQz8L?= =?us-ascii?Q?7fUjUjfATUpPKd8EU+tS4ib4G+387wZsN545zEQOQqD00sqKAzT13169PsxW?= X-MS-Exchange-AntiSpam-MessageData-1: ydFOkvurPqtaSg== X-OriginatorOrg: altera.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6699cd8f-a529-4869-e6b4-08de3c6f44a7 X-MS-Exchange-CrossTenant-AuthSource: BLAPR03MB5458.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Dec 2025 06:49:32.5213 (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: jYIQyBKN0YnYrApQt8HVt2ug5maMEvx6qDbqMdHixNZSRmgUwbQpP2jAhM+kmVLvmGBWme+MVpDgKDtQzHaSJYZj64nZiwR6wNJ/su1DwejjrZ2TFeNbP/7AfFhHi/lGMHMMo9a/8U23+f2sBjtYHg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6857 Content-Type: text/plain; charset="utf-8" From: Muhammad Amirul Asyraf Mohamad Jamian This patch introduces a new hardware monitoring (hwmon) driver for the Altera SoCFPGA platform, enabling kernel support for monitoring voltage and temperature sensors critical for device health and system stability. Changes include: - New driver implementation 'drivers/hwmon/altera-hwmon.c' providing sensor reading and event handling capabilities tailored for SoCFPGA hardware. - Build system integration by adding Kconfig and Makefile entries, allowing users to enable the driver in kernel configuration. - Documentation added in 'Documentation/hwmon/altera-hwmon.rst', detailing driver features, usage instructions, device tree bindings, and configuration options. - Update to 'Documentation/hwmon/index.rst' to reference the new driver documentation, improving discoverability and user guidance. Signed-off-by: Khairul Anuar Romli Signed-off-by: Muhammad Amirul Asyraf Mohamad Jamian --- Documentation/hwmon/altr-hwmon.rst | 32 +++ Documentation/hwmon/index.rst | 1 + MAINTAINERS | 2 + drivers/hwmon/Kconfig | 10 + drivers/hwmon/Makefile | 1 + drivers/hwmon/altr-hwmon.c | 427 +++++++++++++++++++++++++++++ 6 files changed, 473 insertions(+) create mode 100644 Documentation/hwmon/altr-hwmon.rst create mode 100644 drivers/hwmon/altr-hwmon.c diff --git a/Documentation/hwmon/altr-hwmon.rst b/Documentation/hwmon/altr-= hwmon.rst new file mode 100644 index 000000000000..3ef1ca0d1686 --- /dev/null +++ b/Documentation/hwmon/altr-hwmon.rst @@ -0,0 +1,32 @@ +.. SPDX-License-Identifier: GPL-2.0 +Kernel driver altr-hwmon +=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D + +Supported chips: + + * Intel N5X + * Stratix10 + * Agilex + * Agilex5 + +Contributor: Kris Chaplin + Khairul Anuar Romli + Muhammad Amirul Asyraf Mohamad Jamian + +Description +----------- + +This driver supports hardware monitoring for 64-Bit SoC FPGA and eASIC dev= ices +based around the Secure Device Manager and Stratix 10 Service layer. + +The following sensor types are supported + + * temperature + * voltage + + +Usage Notes +----------- + +The driver relies on a device tree node to enumerate support present on the +specific device. See Documentation/devicetree/bindings/hwmon/altr,socfpga-= hwmon.yaml for details of the device-tree node. diff --git a/Documentation/hwmon/index.rst b/Documentation/hwmon/index.rst index 85d7a686883e..d37d4cbbe8b5 100644 --- a/Documentation/hwmon/index.rst +++ b/Documentation/hwmon/index.rst @@ -40,6 +40,7 @@ Hardware Monitoring Kernel Drivers adt7470 adt7475 aht10 + altr-hwmon amc6821 aquacomputer_d5next asb100 diff --git a/MAINTAINERS b/MAINTAINERS index 8ac7fef4563a..01f776fdbf6f 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -942,6 +942,8 @@ M: Muhammad Amirul Asyraf Mohamad Jamian diff --git a/drivers/hwmon/Kconfig b/drivers/hwmon/Kconfig index d9bac1e3057b..4351725831d3 100644 --- a/drivers/hwmon/Kconfig +++ b/drivers/hwmon/Kconfig @@ -2122,6 +2122,16 @@ config SENSORS_SMSC47M192 This driver can also be built as a module. If so, the module will be called smsc47m192. =20 +config SENSORS_ALTERA_SOCFPGA + tristate "Altera SoC FPGA Hardware monitoring features" + depends on INTEL_STRATIX10_SERVICE + help + If you say yes here you get support for the temperature and + voltage sensors of Altera SoC FPGA devices. + + This driver can also be built as a module. If so, the module + will be called altera-hwmon + config SENSORS_SMSC47B397 tristate "SMSC LPC47B397-NC" depends on HAS_IOPORT diff --git a/drivers/hwmon/Makefile b/drivers/hwmon/Makefile index eade8e3b1bde..4ae4726bd0cb 100644 --- a/drivers/hwmon/Makefile +++ b/drivers/hwmon/Makefile @@ -218,6 +218,7 @@ obj-$(CONFIG_SENSORS_SMPRO) +=3D smpro-hwmon.o obj-$(CONFIG_SENSORS_SMSC47B397)+=3D smsc47b397.o obj-$(CONFIG_SENSORS_SMSC47M1) +=3D smsc47m1.o obj-$(CONFIG_SENSORS_SMSC47M192)+=3D smsc47m192.o +obj-$(CONFIG_SENSORS_ALTERA_SOCFPGA) +=3D altr-hwmon.o obj-$(CONFIG_SENSORS_SPARX5) +=3D sparx5-temp.o obj-$(CONFIG_SENSORS_SPD5118) +=3D spd5118.o obj-$(CONFIG_SENSORS_STTS751) +=3D stts751.o diff --git a/drivers/hwmon/altr-hwmon.c b/drivers/hwmon/altr-hwmon.c new file mode 100644 index 000000000000..beecfa8537a4 --- /dev/null +++ b/drivers/hwmon/altr-hwmon.c @@ -0,0 +1,427 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Altera SoC FPGA hardware monitoring driver + * + * Copyright (c) 2021 Intel Corporation. All rights reserved + * Copyright (c) 2025 Altera Corporation. All rights reserved + * + * Contributors: + * Kris Chaplin + * Ang Tien Sung + * Adrian Ng Ho Yin + * Khairul Anuar Romli + * Muhammad Amirul Asyraf Mohamad Jamian + */ + +#include +#include +#include +#include +#include +#include +#include +#include + +#define HWMON_TIMEOUT (msecs_to_jiffies(SVC_HWMON_REQUEST_TIMEOUT_MS)) + +#define ETEMP_INACTIVE 0x80000000 +#define ETEMP_TOO_OLD 0x80000001 +#define ETEMP_NOT_PRESENT 0x80000002 +#define ETEMP_TIMEOUT 0x80000003 +#define ETEMP_CORRUPT 0x80000004 +#define ETEMP_BUSY 0x80000005 +#define ETEMP_NOT_INITIALIZED 0x800000FF + +#define ALTR_SOCFPGA_HWMON_MAXSENSORS 16 +#define ALTR_SOCFPGA_HWMON_TEMPERATURE "temperature" +#define ALTR_SOCFPGA_HWMON_VOLTAGE "voltage" + +struct altr_socfpga_hwmon_priv { + struct stratix10_svc_chan *chan; + struct stratix10_svc_client client; + struct completion completion; + struct mutex lock; /* protect fpga mailbox access */ + int temperature; + int voltage; + int temperature_channels; + int voltage_channels; + const char *altr_socfpga_volt_chan_names[ALTR_SOCFPGA_HWMON_MAXSENSORS]; + const char *altr_socfpga_temp_chan_names[ALTR_SOCFPGA_HWMON_MAXSENSORS]; + u32 altr_socfpga_volt_chan[ALTR_SOCFPGA_HWMON_MAXSENSORS]; + u32 altr_socfpga_temp_chan[ALTR_SOCFPGA_HWMON_MAXSENSORS]; +}; + +static umode_t altr_socfpga_is_visible(const void *dev, + enum hwmon_sensor_types type, + u32 attr, int chan) +{ + const struct altr_socfpga_hwmon_priv *priv =3D dev; + + switch (type) { + case hwmon_temp: + if (chan < priv->temperature_channels) + return 0444; + + return 0; + case hwmon_in: + if (chan < priv->voltage_channels) + return 0444; + + return 0; + + default: + return 0; + } +} + +static void altr_socfpga_readtemp_smc_callback(struct stratix10_svc_client= *client, + struct stratix10_svc_cb_data *data) +{ + struct altr_socfpga_hwmon_priv *priv =3D client->priv; + struct arm_smccc_res *res =3D (struct arm_smccc_res *)data->kaddr1; + + if (data->status =3D=3D BIT(SVC_STATUS_OK)) { + priv->temperature =3D res->a0; + } else { + dev_err(client->dev, "%s returned 0x%lX\n", + __func__, res->a0); + } + + complete(&priv->completion); +} + +static void altr_socfpga_readvolt_smc_callback(struct stratix10_svc_client= *client, + struct stratix10_svc_cb_data *data) +{ + struct altr_socfpga_hwmon_priv *priv =3D client->priv; + struct arm_smccc_res *res =3D (struct arm_smccc_res *)data->kaddr1; + + if (data->status =3D=3D BIT(SVC_STATUS_OK)) { + priv->voltage =3D res->a0; + } else { + dev_err(client->dev, "%s returned 0x%lX\n", + __func__, res->a0); + } + + complete(&priv->completion); +} + +static int altr_socfpga_read(struct device *dev, enum hwmon_sensor_types t= ype, + u32 attr, int chan, long *val) +{ + struct altr_socfpga_hwmon_priv *priv =3D dev_get_drvdata(dev); + struct stratix10_svc_client_msg msg; + int ret; + + mutex_lock(&priv->lock); + + reinit_completion(&priv->completion); + + switch (type) { + case hwmon_temp: + if (chan > 15) + return -EOPNOTSUPP; + + /* To support Page at upper word and channel at lower word */ + msg.arg[0] =3D (((u64)1 << (priv->altr_socfpga_temp_chan[chan] & 0xFFFF)) + + (priv->altr_socfpga_temp_chan[chan] & 0xFFF0000)); + priv->client.receive_cb =3D altr_socfpga_readtemp_smc_callback; + msg.command =3D COMMAND_HWMON_READTEMP; + + ret =3D stratix10_svc_send(priv->chan, &msg); + if (ret < 0) + goto status_done; + + ret =3D wait_for_completion_interruptible_timeout(&priv->completion, + HWMON_TIMEOUT); + + if (!ret) { + dev_err(priv->client.dev, + "timeout waiting for SMC call\n"); + ret =3D -ETIMEDOUT; + goto status_done; + } else if (ret < 0) { + dev_err(priv->client.dev, + "error %d waiting for SMC call\n", ret); + goto status_done; + } else { + ret =3D 0; + } + + *val =3D ((long)(priv->temperature)) * 1000 / 256; + + switch (priv->temperature) { + case ETEMP_INACTIVE: + case ETEMP_NOT_PRESENT: + case ETEMP_CORRUPT: + case ETEMP_NOT_INITIALIZED: + ret =3D -EOPNOTSUPP; + break; + + case ETEMP_TIMEOUT: + case ETEMP_BUSY: + case ETEMP_TOO_OLD: + ret =3D -EAGAIN; + break; + default: + ret =3D 0; + break; + } + + break; + + case hwmon_in: // Read voltage + if (chan > 15) + return -EOPNOTSUPP; // Channel outside of range + + msg.arg[0] =3D ((u64)1 << priv->altr_socfpga_volt_chan[chan]); + priv->client.receive_cb =3D altr_socfpga_readvolt_smc_callback; + msg.command =3D COMMAND_HWMON_READVOLT; + + ret =3D stratix10_svc_send(priv->chan, &msg); + if (ret < 0) + goto status_done; + + ret =3D wait_for_completion_interruptible_timeout(&priv->completion, + HWMON_TIMEOUT); + + if (!ret) { + dev_err(priv->client.dev, + "timeout waiting for SMC call\n"); + ret =3D -ETIMEDOUT; + goto status_done; + } else if (ret < 0) { + dev_err(priv->client.dev, + "error %d waiting for SMC call\n", ret); + goto status_done; + } else { + ret =3D 0; + } + + *val =3D ((long)(priv->voltage)) * 1000 / 65536; + ret =3D 0; + break; + + default: + ret =3D -EOPNOTSUPP; + break; + } + +status_done: + stratix10_svc_done(priv->chan); + mutex_unlock(&priv->lock); + return ret; +} + +static int altr_socfpga_read_string(struct device *dev, + enum hwmon_sensor_types type, u32 attr, + int chan, const char **str) +{ + struct altr_socfpga_hwmon_priv *priv =3D dev_get_drvdata(dev); + + switch (type) { + case hwmon_in: + *str =3D priv->altr_socfpga_volt_chan_names[chan]; + return 0; + case hwmon_temp: + *str =3D priv->altr_socfpga_temp_chan_names[chan]; + return 0; + default: + return -EOPNOTSUPP; + } +} + +static const struct hwmon_ops altr_socfpga_hwmon_ops =3D { + .is_visible =3D altr_socfpga_is_visible, + .read =3D altr_socfpga_read, + .read_string =3D altr_socfpga_read_string, +}; + +static const struct hwmon_channel_info *altr_socfpga_hwmon_info[] =3D { + HWMON_CHANNEL_INFO(temp, + HWMON_T_INPUT | HWMON_T_LABEL, HWMON_T_INPUT | HWMON_T_LABEL, + HWMON_T_INPUT | HWMON_T_LABEL, HWMON_T_INPUT | HWMON_T_LABEL, + HWMON_T_INPUT | HWMON_T_LABEL, HWMON_T_INPUT | HWMON_T_LABEL, + HWMON_T_INPUT | HWMON_T_LABEL, HWMON_T_INPUT | HWMON_T_LABEL, + HWMON_T_INPUT | HWMON_T_LABEL, HWMON_T_INPUT | HWMON_T_LABEL, + HWMON_T_INPUT | HWMON_T_LABEL, HWMON_T_INPUT | HWMON_T_LABEL, + HWMON_T_INPUT | HWMON_T_LABEL, HWMON_T_INPUT | HWMON_T_LABEL, + HWMON_T_INPUT | HWMON_T_LABEL, HWMON_T_INPUT | HWMON_T_LABEL), + HWMON_CHANNEL_INFO(in, + HWMON_I_INPUT | HWMON_I_LABEL, HWMON_I_INPUT | HWMON_I_LABEL, + HWMON_I_INPUT | HWMON_I_LABEL, HWMON_I_INPUT | HWMON_I_LABEL, + HWMON_I_INPUT | HWMON_I_LABEL, HWMON_I_INPUT | HWMON_I_LABEL, + HWMON_I_INPUT | HWMON_I_LABEL, HWMON_I_INPUT | HWMON_I_LABEL, + HWMON_I_INPUT | HWMON_I_LABEL, HWMON_I_INPUT | HWMON_I_LABEL, + HWMON_I_INPUT | HWMON_I_LABEL, HWMON_I_INPUT | HWMON_I_LABEL, + HWMON_I_INPUT | HWMON_I_LABEL, HWMON_I_INPUT | HWMON_I_LABEL, + HWMON_I_INPUT | HWMON_I_LABEL, HWMON_I_INPUT | HWMON_I_LABEL), + NULL +}; + +static const struct hwmon_chip_info altr_socfpga_hwmon_chip_info =3D { + .ops =3D &altr_socfpga_hwmon_ops, + .info =3D altr_socfpga_hwmon_info, +}; + +static int altr_socfpga_add_channel(struct device *dev, const char *type, + u32 val, const char *label, + struct altr_socfpga_hwmon_priv *priv) +{ + if (!strcmp(type, ALTR_SOCFPGA_HWMON_TEMPERATURE)) { + if (priv->temperature_channels >=3D ALTR_SOCFPGA_HWMON_MAXSENSORS) { + dev_warn(dev, + "Can't add temp node %s, too many channels", + label); + return 0; + } + + priv->altr_socfpga_temp_chan_names[priv->temperature_channels] =3D label; + priv->altr_socfpga_temp_chan[priv->temperature_channels] =3D val; + priv->temperature_channels++; + return 0; + } + + if (!strcmp(type, ALTR_SOCFPGA_HWMON_VOLTAGE)) { + if (priv->voltage_channels >=3D ALTR_SOCFPGA_HWMON_MAXSENSORS) { + dev_warn(dev, + "Can't add voltage node %s, too many channels", + label); + return 0; + } + + priv->altr_socfpga_volt_chan_names[priv->voltage_channels] =3D label; + priv->altr_socfpga_volt_chan[priv->voltage_channels] =3D val; + priv->voltage_channels++; + return 0; + } + + dev_warn(dev, "unsupported sensor type %s", type); + return 0; +} + +static int altr_socfpga_probe_child_from_dt(struct device *dev, + struct device_node *child, + struct altr_socfpga_hwmon_priv *priv) +{ + u32 val; + int ret; + struct device_node *grandchild; + const char *label; + const char *type; + + of_property_read_string(child, "name", &type); + for_each_child_of_node(child, grandchild) { + ret =3D of_property_read_u32(grandchild, "reg", &val); + if (ret) { + dev_err(dev, "missing reg property of %pOFn\n", + grandchild); + return ret; + } + ret =3D of_property_read_string(grandchild, "label", &label); + if (ret) { + dev_err(dev, "missing label propoerty of %pOFn\n", + grandchild); + return ret; + } + + altr_socfpga_add_channel(dev, type, val, label, priv); + } + + return 0; +} + +static int altr_socfpga_probe_from_dt(struct device *dev, + struct altr_socfpga_hwmon_priv *priv) +{ + const struct device_node *np =3D dev->of_node; + struct device_node *child; + int ret; + + /* Compatible with non-DT platforms */ + if (!np) + return 0; + + for_each_child_of_node(np, child) { + ret =3D altr_socfpga_probe_child_from_dt(dev, child, priv); + if (ret) { + of_node_put(child); + return ret; + } + } + + return 0; +} + +static int altr_socfpga_hwmon_probe(struct platform_device *pdev) +{ + struct device *dev =3D &pdev->dev; + struct device *hwmon_dev; + struct altr_socfpga_hwmon_priv *priv; + int ret; + + priv =3D devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL); + if (!priv) + return -ENOMEM; + + priv->client.dev =3D dev; + priv->client.receive_cb =3D NULL; + priv->client.priv =3D priv; + priv->temperature_channels =3D 0; + priv->voltage_channels =3D 0; + + ret =3D altr_socfpga_probe_from_dt(dev, priv); + if (ret) { + dev_err(dev, "Unable to probe from device tree\n"); + return ret; + } + + mutex_init(&priv->lock); + + priv->chan =3D stratix10_svc_request_channel_byname(&priv->client, + SVC_CLIENT_HWMON); + if (IS_ERR(priv->chan)) { + dev_err(dev, "couldn't get service channel %s defering probe...\n", + SVC_CLIENT_HWMON); + return -EPROBE_DEFER; + } + + dev_info(dev, "Initialized %d temperature and %d voltage channels", + priv->temperature_channels, priv->voltage_channels); + + hwmon_dev =3D devm_hwmon_device_register_with_info(dev, "altr_hwmon", pri= v, + &altr_socfpga_hwmon_chip_info, + NULL); + + init_completion(&priv->completion); + platform_set_drvdata(pdev, priv); + + return PTR_ERR_OR_ZERO(hwmon_dev); +} + +static void altr_socfpga_hwmon_remove(struct platform_device *pdev) +{ + struct altr_socfpga_hwmon_priv *priv =3D platform_get_drvdata(pdev); + + stratix10_svc_free_channel(priv->chan); +} + +static const struct of_device_id altr_socfpga_of_match[] =3D { + { .compatible =3D "altr,socfpga-hwmon" }, + {}, +}; +MODULE_DEVICE_TABLE(of, altr_socfpga_of_match); + +static struct platform_driver altr_socfpga_hwmon_driver =3D { + .driver =3D { + .name =3D "altr-hwmon", + .of_match_table =3D altr_socfpga_of_match, + }, + .probe =3D altr_socfpga_hwmon_probe, + .remove =3D altr_socfpga_hwmon_remove, +}; +module_platform_driver(altr_socfpga_hwmon_driver); + +MODULE_AUTHOR("Altera Corporation"); +MODULE_DESCRIPTION("Altera SoC FPGA hardware monitoring features"); +MODULE_LICENSE("GPL"); --=20 2.43.7 From nobody Mon Feb 9 03:34:04 2026 Received: from CO1PR03CU002.outbound.protection.outlook.com (mail-westus2azon11010040.outbound.protection.outlook.com [52.101.46.40]) (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 C71ED3358C9; Tue, 16 Dec 2025 06:49:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.46.40 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765867799; cv=fail; b=MQxoG7GqMAoBPUkIBKTeeCm3Mb4jj4U6CEvdlrgNpEfM4B18LC1Rs4QuTi8oYxv+JthDuK30VjFqbiH9KUzt9Cgk9tEu0zikjhAKUmMdFgcU2s68+IDxIqyVR8+WQUthwq30PJZ/QZBKkBj6mbV+aMFaeDG0O40swm2KO1wJp4s= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765867799; c=relaxed/simple; bh=7QLedPnDn9r6MSgtqNDHnroSvy0l3TAldfnS7ZwN0L4=; h=From:To:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=ptIxJUTpm1rgTj47DLLGvB8lbRgSOmy2XgaqEUuPMecKjT340Dis9++fkPsACReOczeOuJ3zyxia3axZ1f+Raxs0orJxTFS3edOkFbovVfR314VrJ4L2X61wDjuX1JoXjavRMIG3NeEfYi6UVo0szDdg1gY6WHoOoT3A4fzAU6c= 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=UD8RHwMI; arc=fail smtp.client-ip=52.101.46.40 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="UD8RHwMI" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=iErrqdjoV4Gznl+Xq0D2Hzo3Pvk98sy265RJFJzolAaSM9kwfbwmPvZTxBrfGhARHBBYB9lC545HLSLnm4IJv4rX6vZUqyOPq7liSDUJfqYzH+QKU3H7NH5UDRcxgx9OXU6Fd7hXMh/tXrSn8RrQjPq3MaESGjX9eTPeCgZ/WIPe8Mp2tGqxXwGAH9N1oWAoe+KzFt/7Sha6AVA6OhKnP4YXXJTTf+gGcRxYXE9qcf2kaxktRvA5vyUDEhoE/nqeCvD4Glpudn1DP5IFN5zIWMyrsRj12br16iTNpDeL5GYXVfb1M86NCG/Z0K5nR7xorDuYO+qTjOsnHydVFwQVpA== 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=os5bdvhJhBnKmcgqS8qPo1au3vSXDI6ES8d6pON+nTw=; b=sbcANBevzieV6/ojdwtyKMBNePv2xnSyjVzEl/Wx4DZbnbY+m5hot1wCk9CuN1Q74tJojD5yR2z5dmySdJUQs2qReHIvk/WGj/deK5EXg6pUir3XKLdPT8az6bRD4sBlhhesQAvx+3mQxdzuR4yWIq2aF+7bpQI2VOykfhaSwpwsWqGwF+GoiKRAkj21ZesQQx/su4vKVCV7j6rGtOD0bvC1eSx3gJQx+hrMak7xiIGc4Va22skhNUVzfZmhb6+2pgRYCgTVnMOL2f177ZgEN4bkp0fk//DYBYaBO/xAew+g8VCVN1EP+1zxDwWoWYv2xx+TBI4hgw8oV6dUb/OXuA== 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=os5bdvhJhBnKmcgqS8qPo1au3vSXDI6ES8d6pON+nTw=; b=UD8RHwMIz2DuiO0gLzNPEAZTAYdFWVPkOYqlSaYtap8y9j9zFV4sUjUwpVa8zKZidb0kf6V6lhYPrvivoYHaRbcbbBalnQ+oaw+DSHdCBEm7jF5K/iOhBS9YuNY9hTu3XviOy2A4bOPlPZtU+JRvmZ8+KR+tGseKzXa/KlFRXmmH5arh5CX0Fgr20xA0muzImi2NgGBv5xanl2jBSRxz9C2/SmyrJKMHOli+yAkEX16tL4sTYt5PmJvD9BTx7AFvO2llzqxUKQk7pwgRNMTVSxNX1kHbP+Lb00fqV9MAljf3EUI6cemEjbsVAl7sLJZTeWrv4/X8W44Sihc6U2obaA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=altera.com; Received: from BLAPR03MB5458.namprd03.prod.outlook.com (2603:10b6:208:29d::17) by DM4PR03MB6857.namprd03.prod.outlook.com (2603:10b6:8:40::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9412.13; Tue, 16 Dec 2025 06:49:33 +0000 Received: from BLAPR03MB5458.namprd03.prod.outlook.com ([fe80::7eda:fa34:15f9:e656]) by BLAPR03MB5458.namprd03.prod.outlook.com ([fe80::7eda:fa34:15f9:e656%5]) with mapi id 15.20.9412.011; Tue, 16 Dec 2025 06:49:33 +0000 From: muhammadamirulasyraf.mohamadjamian@altera.com To: Guenter Roeck , linux-hwmon@vger.kernel.org, Dinh Nguyen , Rob Herring , Krzysztof Kozlowski , Conor Dooley , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Ang Tien Sung , Khairul Anuar Romli Subject: [PATCH v1 4/5] arm64: dts: socfpga: stratix10: Add hwmon node Date: Mon, 15 Dec 2025 22:49:25 -0800 Message-Id: <20251216064926.15817-5-muhammadamirulasyraf.mohamadjamian@altera.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20251216064926.15817-1-muhammadamirulasyraf.mohamadjamian@altera.com> References: <20251216064926.15817-1-muhammadamirulasyraf.mohamadjamian@altera.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BYAPR08CA0008.namprd08.prod.outlook.com (2603:10b6:a03:100::21) To BLAPR03MB5458.namprd03.prod.outlook.com (2603:10b6:208:29d::17) 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: BLAPR03MB5458:EE_|DM4PR03MB6857:EE_ X-MS-Office365-Filtering-Correlation-Id: 9c5f02b5-d6f2-4448-e6f3-08de3c6f4551 X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|366016|1800799024|921020; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?XkLZjFULV1vlP0xz5WdlSgAsre1wjquPnx1WV6+cC0DK4NmNi08L6KGkGyu7?= =?us-ascii?Q?w1EmjVYhQUQskZ9oWEU5/j0ao85vnfgnBt1MU0I2+tjCMFt/fJ5bhgzgY8hg?= =?us-ascii?Q?vOug1fGMdNQffVHsWdSxZeVY/iFDZyOivEqmvEuK+HnxF3QTNRqvct2GO/Cc?= =?us-ascii?Q?/AJGD3Zk51KWws4xXf7p72fcQ37VjiPooJu9XqjqwbdYyb8o5sQTpt9i48re?= =?us-ascii?Q?3O9taPBhYtcuAru4aNkcSWNCor3P4EUABHT3ZY08tQ+NpE+JoOTlij9nsrwN?= =?us-ascii?Q?xi9EU9/0RDrnekymDmkxV1W3mObEpphrv+7R5puLFERXTLvkRk6SG9NxhXya?= =?us-ascii?Q?Oi6O9Uwjlqb4kMKLVs5ODUWqYhmz9jxiDVoejArmWn7p7X300jiv76kuO7oM?= =?us-ascii?Q?me+1xXsXqMJNF8zalMbPSy4Ys0M0FlPvqWLgXC2mgMqD6M0/Nv6igmP4Ph9a?= =?us-ascii?Q?Fx+UGxiz0wq9Ierwqk/aqYYRDJXVpH3DjRCoWXB9IMSyXJiYxAYHb8dIXOSC?= =?us-ascii?Q?ibdABlMCnguD8K13M3ChXSWKddXDiJNYMW7orHzfI3p6z3kcyYNamu17RXSX?= =?us-ascii?Q?/jLmFFD5mhXXrQm3CnZDbSf3tcui/0pSs7FlBFe7S2qHH1XJSWE7bOqI8Fsh?= =?us-ascii?Q?aoTjirNm34gYO/YmR9l+2vO7pb3NsYVjY2oRpGEa2lE1s/+Tg49JwhU8ERfO?= =?us-ascii?Q?jAziFeXEOIRfQ0ceaBazS4RJpYqw1kXI624wGQ5CqhNbmn+A9t4V96Qyl4A2?= =?us-ascii?Q?RcQo366Jc7rIBtkNDV6AUKxKqBQPcv3i9EBLlzTRKeK8RhweUdIWZl9JTeBQ?= =?us-ascii?Q?wM8zHxGsn4t642a/nsr1HmpYSVU2U+eCF5xNWip0JkDJr1D3m0rOIOy+Lyuu?= =?us-ascii?Q?iawZWeDEfG/5mBO4tH77JyN0wxPwKcegqL7dRHP4YT+tdNjaEc705ED1WHeu?= =?us-ascii?Q?i1cjNjkHGYhgQ8z9pzCM/ltRJREAYO0OkTJXDMsYF3yBcmsROu5FrhKJTrkl?= =?us-ascii?Q?7i9/63v0ZgGVjZxZL0wE+1Q4kd8hK/dwi1qfp3H4YMnmGKWuw3oAxL2a8C9N?= =?us-ascii?Q?he7dbOxHFnkV6loSPyBtLvqcEKWryc4BF/TIMyXl470Y5WzeUUJDtIN89VP/?= =?us-ascii?Q?8gYlh/w3kdloahlCcgtIMLD+Hn7w4S0070vrtU5GYMcdmQ751RP2hZ3FgIz6?= =?us-ascii?Q?c2rtSdzxrmBadCw1wlkmShVpA2wGm+lvrjG4b0zCVEBL7BgqXgkI4sqIRpDx?= =?us-ascii?Q?3RK5v41hv08J+nspuWP2wSdmwpesQwKAknBYThRvNXn3o3+9UIMN5G9RoBtF?= =?us-ascii?Q?/EVzoJEfnG38NEs4p9Kib9KZ5GXpp6VQKUZzLVCwb/PiCD67F9CCpeZORz43?= =?us-ascii?Q?DJdSANOwu45eNpwMY13AGFKJ8kRwuF+jz5j+BSA63jouJuXqkqcRIHdKW0Ai?= =?us-ascii?Q?BN6dyfYhRHqnRsCeon2DZMw72CbuPPdhb0lN9MGmKeissJLgR9n+5Wldrb3a?= =?us-ascii?Q?1Bjmkr+8/Q5s2LE=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BLAPR03MB5458.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(366016)(1800799024)(921020);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 2 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?64ejHtHFnBuEIa7atq+GzDf71JwDanFVqL4L8hMnslsU7jrazGhGFsksBO5x?= =?us-ascii?Q?tBhEsmka5RDjUi5smTP/8Qaq8UUxMBSDscxCYm/R2fkDDWkcmYyI0cGKk0Qi?= =?us-ascii?Q?V4jWUiLppPxhVCu72Ro2Uspo/SKVFdRWnbwFBV2My9SB5gvALqgGlTMI0oY1?= =?us-ascii?Q?wE6n2QF3YrU3yUqGvVoINzNBa7E0URx2J7vIHRmWY1h8Z6jtLxkm9sMHNzaQ?= =?us-ascii?Q?Z2lOmQnCO/7RykB3gjJ4L2x0j/U6303rJIDQwV3/SYkGIikhTxmYkr22w6vD?= =?us-ascii?Q?D9Vhx+nW3QUkjUo4zRoW4V3U6UUJ1fP3VRdk5W617BnDb2fncii22nv6XDAG?= =?us-ascii?Q?oanic8bWre7AtB6La786CFqX34ZVvYLqIKpd/VlV4DBlZ6EAapI8suAWpNmO?= =?us-ascii?Q?SKwBIqCmuCScJGnsgCrLlfDEeTLDkr/YD/vQvhbnHNdmdUfA6Ybkh5kJbqnj?= =?us-ascii?Q?ZWOjnS3qT5vFtZ0vTF/rcKG/TIokSs2iRaeJzeyEXsk03kTCtDt8kwVwW/BN?= =?us-ascii?Q?ojoJ0WXkgNN5SgCI0eZ9T1fmQMiK8Bgalj3hCi7MabufU+h9nmlOeYVRHp5Q?= =?us-ascii?Q?iH9tB1nrTitDfIdbZJ3ITlHvvzJAKGH2OWDrNyaMjHtwjV0m9EtJG9DPpmYW?= =?us-ascii?Q?h5h1KYiP4Ngy8VVE3XwwuG7odLpear6yIXb4JD+YjoUEdbsD1g1m+hTenMyZ?= =?us-ascii?Q?uv54rTfPZt/5df3Qo+hTR0PHP8oa2Pd95uQWJ8iiAZ2oADl25kmh+7guiJxU?= =?us-ascii?Q?cqjnoEJ54upjOriE5mf9DZDC46QVIqDJlNuDPUBgN6B7/Hd5j/Fa6GCSgp8N?= =?us-ascii?Q?E4jQUbZAGg+taHmjCa0Vbm7+aitV26Or8+B2BuO5fIuDzurKHd/VPDE2srd6?= =?us-ascii?Q?e58XSednwM1snXnXWV6jt8n2dBRojYRjDJt7yI5r+/AIWXzDW3qpWOcLu/jV?= =?us-ascii?Q?Cc0JGxYz7DgIuIQnAyDt0cgsL1WVmB/YrkxgF4Wh5L42962GxNWTjiOtXSKA?= =?us-ascii?Q?Tj2gRT7QMgyjEgMax0uY6pkzQubCWu5qDZN4x41uh0Klhkq2ZXl2GRGMbgma?= =?us-ascii?Q?tJe0rlZrL/R+A0PFQRx8KrIk/TIhd9LXMuu9UK8psTUL/gRP8LafaWvDBRvC?= =?us-ascii?Q?reZ253YoTi4phQ77v6Csvo64l1c03rA6V1AsqNK2vcEZkGGbsBhJ6cOq62/2?= =?us-ascii?Q?fNPwJyEwiPeMe96m6PTQ+v8O6z8j2/yowFXYNTrWvVMenOLlPpMsc+IQTDaL?= =?us-ascii?Q?o7xLsaqVQjnyFkyGu2juDAQTDv0R38n/qarZe9hT0MP9KfE0955R84NAf4qb?= =?us-ascii?Q?x3FLeYgDclWVJwXyXKamJKhJwLogc+5kIS/bhiZlEXZSO/yyNh4NGH/vUwwb?= =?us-ascii?Q?d7pGqebPPq9RoARXhe/oYi++LI845aXjyM/CyKq/4b6RSVdJmDwOOB1gUXuY?= =?us-ascii?Q?oaoTLVnQnfPbeJ8gt/aq453U9UWH8Leuef0iQ5vxrNPvzMj7CFdvQzj9LUF1?= =?us-ascii?Q?O+MZ3NkBYwOUHMvtS8KX4Z2cbwbMagoTuf0PnpOPzwlalK2on4GZNwqOjkdm?= =?us-ascii?Q?/ok6bnhrfJwHC5SiLFWdrFskKAzXzDE8KZuCtOXRsgsdtqMjce1uIocbuSSb?= =?us-ascii?Q?NbEmRCHtwHHgPQMWfypBFhuIjBpbYpUjEmkZ03FFs/+vPvmJ8KcPmoeejsHW?= =?us-ascii?Q?n2XXGOqTvKjSxQErf6rvrFUC+XZhLPCe/TxO5q5f2kt30y+jEBThfOTCCaLf?= =?us-ascii?Q?dAnkD39EzYE4yu8Mn2jRYWWx67u2sslvPP1ZX6KJ4hGN9byvjXiaJg1KI8f8?= X-MS-Exchange-AntiSpam-MessageData-1: oQDbcy7i9AyGhQ== X-OriginatorOrg: altera.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9c5f02b5-d6f2-4448-e6f3-08de3c6f4551 X-MS-Exchange-CrossTenant-AuthSource: BLAPR03MB5458.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Dec 2025 06:49:33.6713 (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: CaFgMK8XPPAW9+Gq3Z5b8pqHxHXmmpIsjjc8PNcgwBQgx5qlAADi3LsOSDsa3PI1GGa7BIbI+WEbUB6BFQr1HHe6G4JUCWWcC+JF6e9ZuRbmtJSgxF99Kw1EcBqThur4/Bwj2kyJ3E397vwQiOaY6A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6857 Content-Type: text/plain; charset="utf-8" From: Muhammad Amirul Asyraf Mohamad Jamian The Stratix 10 SoCFPGA platform includes hardware monitoring capabilities that require proper device tree description. Currently, the Stratix 10 device tree lacks an hwmon node, preventing the kernel from binding the corresponding hwmon driver and accessing sensor data. This hwmon node with the compatible string "altera,socfpga-hwmon" ensures the hardware monitoring subsystem can be initialized correctly, enabling accurate voltage and temperature monitoring. Signed-off-by: Ang Tien Sung Signed-off-by: Khairul Anuar Romli Signed-off-by: Muhammad Amirul Asyraf Mohamad Jamian --- .../boot/dts/altera/socfpga_stratix10.dtsi | 4 +++ .../dts/altera/socfpga_stratix10_socdk.dts | 31 +++++++++++++++++++ 2 files changed, 35 insertions(+) diff --git a/arch/arm64/boot/dts/altera/socfpga_stratix10.dtsi b/arch/arm64= /boot/dts/altera/socfpga_stratix10.dtsi index 657e986e5dba..73eead7ffdbb 100644 --- a/arch/arm64/boot/dts/altera/socfpga_stratix10.dtsi +++ b/arch/arm64/boot/dts/altera/socfpga_stratix10.dtsi @@ -78,6 +78,10 @@ svc { fpga_mgr: fpga-mgr { compatible =3D "intel,stratix10-soc-fpga-mgr"; }; + + temp_volt: hwmon { + compatible =3D "altr,socfpga-hwmon"; + }; }; }; =20 diff --git a/arch/arm64/boot/dts/altera/socfpga_stratix10_socdk.dts b/arch/= arm64/boot/dts/altera/socfpga_stratix10_socdk.dts index 58f776e411fc..63309001f1c5 100644 --- a/arch/arm64/boot/dts/altera/socfpga_stratix10_socdk.dts +++ b/arch/arm64/boot/dts/altera/socfpga_stratix10_socdk.dts @@ -197,3 +197,34 @@ root: partition@4200000 { }; }; }; + +&temp_volt { + voltage { + #address-cells =3D <1>; + #size-cells =3D <0>; + input@2 { + label =3D "0.8V VCC"; + reg =3D <2>; + }; + + input@3 { + label =3D "1.8V VCCIO_SDM"; + reg =3D <3>; + }; + + input@6 { + label =3D "0.9V VCCERAM"; + reg =3D <6>; + }; + }; + + temperature { + #address-cells =3D <1>; + #size-cells =3D <0>; + + input@0 { + label =3D "Main Die SDM"; + reg =3D <0x0>; + }; + }; +}; --=20 2.43.7 From nobody Mon Feb 9 03:34:04 2026 Received: from BN1PR04CU002.outbound.protection.outlook.com (mail-eastus2azon11010027.outbound.protection.outlook.com [52.101.56.27]) (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 BB5F9320CCB; Tue, 16 Dec 2025 06:49:54 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.56.27 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765867800; cv=fail; b=cxiL/Fwwi37DkH70OjpzcjyZ01SS9SOgNajw2nkbjvDRnDaiq8PkLF3jj0uGWw3AU4/5R/utHVaZ3i3Oe+oyQcLH4DMbfxwLViSHFUOOe5gg9WsTUQGCuIfP8cMxIo3San6363DLo8wso5F2KmomJ5a8EmSn+2D8TVgDbpjI6i8= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765867800; c=relaxed/simple; bh=6IQXYvRq0sBL0FuCDRLajT5ROKsIU3h2AbqNfuU3uk8=; h=From:To:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=lnoah7Owe11orspqkx3Zlx6WM5oKCMoQjlJO7Jcr/kKO8CoYcYpGWk5D/v3kPAFf17mVPifr25g1tpGjrHln9IYR+dCT8mX94t5gcSd0xVCzLbG8YxLIaZ4NoGNqFf/WF422J4MzK4mDYiAwHP0Q8or+KmwYakKcPY3S71saKbw= 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=GoP00wsO; arc=fail smtp.client-ip=52.101.56.27 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="GoP00wsO" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=cjVLkJyUgpA71d9oXY0dnlg4+N4Efawh0CuZytqvGKcC5JVnngFoX67cKOvz/H0x41a2IhA4fD5V17L3ZSO2ATS6Zt0buAQaSJ433Om8T3lYvHreOForPyZqC/pGxUfaYq0PmN2tJVQBl2p1hpN6B+PZ3A20NwLviJvp0fPl9UuT97LQzYoy31q/Gqy/AHDzyYD+EzqQk5jBm0AgoyR1rOqPkr8JN6rqBUCA8/+wLvDm8bZ/gS0Vs75K2ErE1Q7SuygugUDErbMvgjYSXVBOvLTSxeZUWbMmZF4JCl1G5VtqaS7UAqY6AhoDfCBnB4dqD+g26BhJsrYpL/B3L7tVNg== 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=aFL8SptuXtqd1+Bf+1Jii15iIltF3szi1VA4UJY0eQs=; b=GE1YxItETlLXrx8A3h3AoAR6H/zzxNtJcBaVHEaF8pBLlxO4edZgh0t8oH9PTqZw3LRLq1853SscQlYwW+JoaWjZ8LaUyM3W9DmMla9IdjmfnR1BmULwUUNow50Z0leDN9vOHOo3LTqipUDmx0y48hTKH187AF7RSId646V9Wxw/Af6evU73ZdJhtwjCTrd2IBdjYV7vcNfDSVBr20KrK1WePvEZzjHFbCjYQxgE5Ne1wwTnUqdNAftHCUIZa3eTf2LgyuDqte5RnXYGRd7onq4Fk+o2yqZnF0P2Q/KAj0eCXC1gqwgTjIqZcvOCEqGOYc00JejoFnpa6z7+vPGJCg== 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=aFL8SptuXtqd1+Bf+1Jii15iIltF3szi1VA4UJY0eQs=; b=GoP00wsOuYAskw2VKI7tgZMXL/8mQFx8qmYQGWG7vYe//N2CV+HnQZT2S9Rny+E7EiOGy4+GHerP85OhGu4oyXDL7UgLo1mFnobUZtbvdc8TPudj39pWnYp10a88Q4KQuZS4kdN7x6pfjkb9PrHXqknJdUUBjLIA7Tvc+yqevN9JraPRu5eS1xg5rEE3Uvg8uQSN7OPFHb8RlMAhfuwaqJ0L+/9cHUVuw/V6eAcxgN0f0aIK3pXFWJBeRk+UoOo0/wl/kMRNu+gk8Jpapttu7puVHIUMwgqoDEcNoR54JiZFsnWxS4+9zi/LalGUCGGxDWEN8qhxxrZ5ZFXVDUOGGw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=altera.com; Received: from BLAPR03MB5458.namprd03.prod.outlook.com (2603:10b6:208:29d::17) by DM4PR03MB6857.namprd03.prod.outlook.com (2603:10b6:8:40::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9412.13; Tue, 16 Dec 2025 06:49:35 +0000 Received: from BLAPR03MB5458.namprd03.prod.outlook.com ([fe80::7eda:fa34:15f9:e656]) by BLAPR03MB5458.namprd03.prod.outlook.com ([fe80::7eda:fa34:15f9:e656%5]) with mapi id 15.20.9412.011; Tue, 16 Dec 2025 06:49:34 +0000 From: muhammadamirulasyraf.mohamadjamian@altera.com To: Guenter Roeck , linux-hwmon@vger.kernel.org, Dinh Nguyen , Rob Herring , Krzysztof Kozlowski , Conor Dooley , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Ang Tien Sung , Khairul Anuar Romli Subject: [PATCH v1 5/5] arm64: dts: socfpga: agilex: Add hwmon node Date: Mon, 15 Dec 2025 22:49:26 -0800 Message-Id: <20251216064926.15817-6-muhammadamirulasyraf.mohamadjamian@altera.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20251216064926.15817-1-muhammadamirulasyraf.mohamadjamian@altera.com> References: <20251216064926.15817-1-muhammadamirulasyraf.mohamadjamian@altera.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BYAPR08CA0008.namprd08.prod.outlook.com (2603:10b6:a03:100::21) To BLAPR03MB5458.namprd03.prod.outlook.com (2603:10b6:208:29d::17) 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: BLAPR03MB5458:EE_|DM4PR03MB6857:EE_ X-MS-Office365-Filtering-Correlation-Id: 4209d714-8197-43e4-5f48-08de3c6f4606 X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|366016|1800799024|921020; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?aFgjjnn3JtRi9EqpSLF+QkAOeiHaH+NQ7tN/ZiPybZSa4OI2+Mg1k3/d+qRu?= =?us-ascii?Q?k/C/fPEl+ByTHp1Uu57BEznIs86HR1ar785ZwUQF/1nYMOngVPCv9sXIkqae?= =?us-ascii?Q?b4tceKikDLHwxipuOrpu+0Zs0TwnmSr2iqTfl2Y8LDKKNyLMCLAZZe48DJ55?= =?us-ascii?Q?WXJQAIrconfks2D+xVwEeitjARKYFp5nQZ7IyyYh3ni2Fhf00qyAnYrjXvmt?= =?us-ascii?Q?3iNRygp+GgUz8uGZsLQmT4yQp3QQPDhiAfHSg0oApkMnmGzsMK91+eFfQ0Vc?= =?us-ascii?Q?tKB3/VRN0cGHtHaxBMhwtidfQyg8cD7QIPI7yhC4uW/3NnesSzZegz8HWlKr?= =?us-ascii?Q?JqmGEmdAwuk0ke2qGgXm3SUNMgvQPSDc9m/WbzpKfkRV/Pje5CB3cqS0ev7P?= =?us-ascii?Q?6Ifc2L5DxyzMQ9W/D3KzHmlP6x8gB0ZppvArvv++qwgv1ns481oJYHPxZode?= =?us-ascii?Q?SyIxGKyEyMB5upVkLKFwQLX57yUF2PD/iYATc5A1QQJcPBw7xVYPhf7af/aV?= =?us-ascii?Q?CGIupaPAr6o3Mw0n05N3se+enNmA8LnfsQ1IIPuOE76nIRBZSf/Gn+OniBnn?= =?us-ascii?Q?aJ2zWpNXgVJkG3HMmsrgxnW0MhBMFroqM6rzbEGDdrRkWta3VADwPTGq2kcr?= =?us-ascii?Q?GIo5r+YEWTetgWEOy7zYloioDeVVjO1fKKJqgX29XRnd92Fq5Uz3Fc79qQcv?= =?us-ascii?Q?226uCvcvsn2/sFCDfxy/oISxXJAQMnoFQwjnonvhqPYVYwW2tS/GbUx2nrpg?= =?us-ascii?Q?HNFg0kUMdVcnXTdXp5C3NctVzVJFtfaAc6Te7jZqTFAKlA2dFbTwKBhBuqb4?= =?us-ascii?Q?giHOlzP+OEPNWwuaW+X6cgfeTxcgdmhtWfSi31bZffZFvezHDmTWWKoooeML?= =?us-ascii?Q?dvW1e43JyG8tghA0msBa+0eH5KtvF99Hf21sZUsy5hx6xuxqZnSqT8DpiVvU?= =?us-ascii?Q?q5MjKCcuERT6b31q5+EqJzqj2PGpCSO6ZiU6/lJoVOEEAlCzC04rVN1eP9KF?= =?us-ascii?Q?/D5BKV5COYZwXqzsPfE3wM0DXmoF36vbh+/275pg1eZuPlOnIJIM1d2OjVJF?= =?us-ascii?Q?baqb1Zcpz+HdsAN21fX17gLcdzsS4rVFGj0jkT1kJFaa2THWQ6rWkjWPofCE?= =?us-ascii?Q?KrmZiamlOc+lhqcP+Buuae0IYiwcNWs2S0cZbGyNhHytvCClTSGYDNziJ2LF?= =?us-ascii?Q?5sei7Sh8ImONDQI44nAgovs+VPJgM0DcTtIlMlyY9m+6c1XErdcMva+qOh/G?= =?us-ascii?Q?M+gGzu2RRk3/HuIBUX0QOCh0OM9GmInNuxLiisWjjHMyc3mhxyAw4HZjUDmD?= =?us-ascii?Q?le/EqdQ2efjUCtD5IMPHTJ0bi9FqXNCP5cTQBVFd+K0ovzU3zSCtZuk0cCN+?= =?us-ascii?Q?EKHDXkP2In17eSEFSgqvbPXRC0cNFqrlBgsgYfMNQHkM9vkEl0rsIOYAPWYr?= =?us-ascii?Q?lBvN0vJDXpimZu0IA4dMyflaBeAKdi7+4RdqwGAJ6hAh9kTUdm4HqGyz9mM+?= =?us-ascii?Q?/X5B4F/92Cdyklc=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BLAPR03MB5458.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(366016)(1800799024)(921020);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 2 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?LVobKCbv5oIFn5/TPf5xa/SbrFa1L1mpZN2ixd+wOJR8YCP0rP2KyHxTrGT7?= =?us-ascii?Q?OLfw3svj/eEKbfBgMMaXvhqQsPX6lBXTlZc3bLEiYeBFTuCekU3uN5L1okZU?= =?us-ascii?Q?xa8G0hni+G8SHfABK00JuVy0yBTVLy+hW3wJ38A7CWHwQyVraWoAxKPQ48Dq?= =?us-ascii?Q?5S2yAXkyYV+7NHvL2B5eDaiCQqbh/fT+9t0sGzUxrqNoDOKyA/6GBfIt2AS0?= =?us-ascii?Q?WHS/slKvffIbnVhtRxKevr4B+XQv3XdK2VaEo6TdKur0ZHCIT3+1+F99omC9?= =?us-ascii?Q?N0VkAbPHPZ7MvJnVkjrDmop7sG5GGz3J6ErONDKambyKT/L6B7G7ECZkWAIL?= =?us-ascii?Q?1xHC34Wwx3IDxm88VL7SyoUnCWjnAOwzhg1+EncRVv8Cfalks82prwlsHUVz?= =?us-ascii?Q?V2jpADvBcVh11ExIFKxi5y/8m4PHQZpCXN/FvVHdNmJuU+lYgUwIW+zlv1vH?= =?us-ascii?Q?AFSCqGBK1q8/Ghts2FhF8RZXdke1qI3mwVJphsAsIQp1SHN+cuvrFIqT2mxs?= =?us-ascii?Q?tBS/alxWBdgUeYwTtYb52deoZNikZxhhXK50iRMn3NVYgayiybY7PWdFm5+S?= =?us-ascii?Q?eVzprwUsBbSzpkNmV0uJSH2obghLEQpvrrFLFcX0/fOTCzmCeA4RGSZxKgSY?= =?us-ascii?Q?Ae09e3EGPLfE4R/SVpFJ+fXcZ3vDA9Vo4zosQzG0roMY+Bjs94Jjsw3nTce+?= =?us-ascii?Q?yqSK6et6JCbY9878Dm7dIxqZue1wEVPgQrRqPTYoiNUDzOQ+qr5J8ozwUAwz?= =?us-ascii?Q?3NgPG07IAa7B1O/R1Wj55HOhVrbxkNsYtOA0kx0EMkxxBwLmHi8p0/0ZTTyE?= =?us-ascii?Q?qyDNrWNqvHC9qQpea4l1H3oIJsMQK4g0GGpm352Bo/w79oLrb1/Iog+eORgX?= =?us-ascii?Q?gzdc6Ji4cOpYE/aE9c1AdqtnsLBND6wvwWRdsXT8TyJye6t/s6P88UjPplb/?= =?us-ascii?Q?79K10wKe5cmXzUk974/zkOzIZXhRjLKqxpEYoP05v5drNS91FgeZSqr9tb3L?= =?us-ascii?Q?dG6+Ulo+65EwxrDboscQS84mhuDzAciFNQ2sb04xbi+PvkmPF/PoxmTbeYkb?= =?us-ascii?Q?ObJyIVkhRBWCcj5wqIEvFjidwXqYrX/ftPicnKmUAwta4zUt6YoFVm5/QGpv?= =?us-ascii?Q?motId+ri1uRlBy+7Z409zTOEu0kTs6rlgSXOKRCxvHa2ATYXoHphK7A6qe9w?= =?us-ascii?Q?BtYJaWBBKX6GCE482KFyVnPaPqZSEIJHsX8msqBxOG03wOy+1wftCg+3DgH8?= =?us-ascii?Q?ca6Q0+W6RKVOUmUxlRnQsSeHK+HOrJtoUvwedF2pvifVnRsUoWHaGxv9tDqp?= =?us-ascii?Q?RvXh4wsvaA/mVjj2GxzyhxKwDClx9TbFZ9mORhcNwRznDkis8T7ECKBqXNer?= =?us-ascii?Q?jcVynIhwl4yGovLmVb/uib+jM7xoPOabWVr67suICVVX8TUwA6lpYbuNpoRw?= =?us-ascii?Q?UqtY4/TBTl6hF1jPm72b7tnfxXRuhs2xP2Srb3nF8v2UUGSb2oYdm1lUcvBd?= =?us-ascii?Q?mnS9YvvWMRXo0GZTjBe2c3NLqvpWbUNjT5rHm5qrhNZtbI5Ky4TwY/pqN+gf?= =?us-ascii?Q?wIQbZ91bQN4U8Q+sMhAmCVRwWUskBqP0FX1tH7+ECoKBA+2gOXMNO7PNvU3i?= =?us-ascii?Q?1h/XakGDfvopL0Ive0g9p8CyeSDGxuQ63LRaTvaWXDqNt/XFpen2z3kM/9IV?= =?us-ascii?Q?E9Zx21RS3X5MJ0+w5JHBDgpK7YWXHzJg1fd5d1GJAc0ANMcmZmjMb5552ySQ?= =?us-ascii?Q?FwkNjj4nprhZCwfuLJQ7ieRZaFpzLltJoPg4CXLkW/LJisyzZhPupShDueSt?= X-MS-Exchange-AntiSpam-MessageData-1: J1Ny2NNDJrqyXA== X-OriginatorOrg: altera.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4209d714-8197-43e4-5f48-08de3c6f4606 X-MS-Exchange-CrossTenant-AuthSource: BLAPR03MB5458.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 16 Dec 2025 06:49:34.8170 (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: VClAIDJP70yvcPl1iuaHeRLrJH8AbrzkQFYwSEh4p0eeeUSeTQBBPuC4GgcKudFALeqXYf1jA1yTFyp5DPuAKyCo9GKxosxw82JAPWLSMS4XQ4Gf2nF/CTYVEIsxEz1XVfBFOfU9tkUm+fS17jt+2g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR03MB6857 Content-Type: text/plain; charset="utf-8" From: Muhammad Amirul Asyraf Mohamad Jamian The Agilex SoCFPGA platform includes hardware monitoring capabilities that require proper device tree description. Currently, the Agilex device tree lacks an hwmon node, preventing the kernel from binding the corresponding hwmon driver and accessing sensor data. This hwmon node with the compatible string "altera,socfpga-hwmon" ensures the hardware monitoring subsystem can be initialized correctly, enabling accurate voltage and temperature monitoring. The node is added for Agilex OOBE Daughter Card, Agilex with NAND daughter card and N5X. Define the temperature sensor locations to demonstrate the maximum temperature value rather than the individual diode values. - arch/arm64/boot/dts/intel/socfpga_agilex_n6000.dts - arch/arm64/boot/dts/intel/socfpga_agilex_socdk.dts - arch/arm64/boot/dts/intel/socfpga_agilex_socdk_nand.dts For N5X, only the main die sensor is present. Also, add Voltage Monitor labels for the N5X device to align with the descriptions from the N5X documentation. - arch/arm64/boot/dts/intel/socfpga_n5x_socdk.dts Signed-off-by: Ang Tien Sung Signed-off-by: Khairul Anuar Romli Signed-off-by: Muhammad Amirul Asyraf Mohamad Jamian --- arch/arm64/boot/dts/intel/socfpga_agilex.dtsi | 4 ++ .../boot/dts/intel/socfpga_agilex_n6000.dts | 66 +++++++++++++++++++ .../boot/dts/intel/socfpga_agilex_socdk.dts | 66 +++++++++++++++++++ .../dts/intel/socfpga_agilex_socdk_nand.dts | 66 +++++++++++++++++++ .../boot/dts/intel/socfpga_n5x_socdk.dts | 46 +++++++++++++ 5 files changed, 248 insertions(+) diff --git a/arch/arm64/boot/dts/intel/socfpga_agilex.dtsi b/arch/arm64/boo= t/dts/intel/socfpga_agilex.dtsi index 0dfbafde8822..0e91a331da69 100644 --- a/arch/arm64/boot/dts/intel/socfpga_agilex.dtsi +++ b/arch/arm64/boot/dts/intel/socfpga_agilex.dtsi @@ -69,6 +69,10 @@ svc { fpga_mgr: fpga-mgr { compatible =3D "intel,agilex-soc-fpga-mgr"; }; + + temp_volt: hwmon { + compatible =3D "altr,socfpga-hwmon"; + }; }; }; =20 diff --git a/arch/arm64/boot/dts/intel/socfpga_agilex_n6000.dts b/arch/arm6= 4/boot/dts/intel/socfpga_agilex_n6000.dts index d22de06e9839..f45a76bff82a 100644 --- a/arch/arm64/boot/dts/intel/socfpga_agilex_n6000.dts +++ b/arch/arm64/boot/dts/intel/socfpga_agilex_n6000.dts @@ -64,3 +64,69 @@ &watchdog0 { &fpga_mgr { status =3D "disabled"; }; + +&temp_volt { + voltage { + #address-cells =3D <1>; + #size-cells =3D <0>; + input@2 { + label =3D "0.8V VCC"; + reg =3D <2>; + }; + + input@3 { + label =3D "1.8V VCCIO_SDM"; + reg =3D <3>; + }; + + input@4 { + label =3D "1.8V VCCPT"; + reg =3D <4>; + }; + + input@5 { + label =3D "1.2V VCCCRCORE"; + reg =3D <5>; + }; + + input@6 { + label =3D "0.9V VCCH"; + reg =3D <6>; + }; + + input@7 { + label =3D "0.8V VCCL"; + reg =3D <7>; + }; + }; + + temperature { + #address-cells =3D <1>; + #size-cells =3D <0>; + + input@0 { + label =3D "Main Die SDM"; + reg =3D <0x0>; + }; + + input@10000 { + label =3D "Main Die corner bottom left max"; + reg =3D <0x10000>; + }; + + input@20000 { + label =3D "Main Die corner top left max"; + reg =3D <0x20000>; + }; + + input@30000 { + label =3D "Main Die corner bottom right max"; + reg =3D <0x30000>; + }; + + input@40000 { + label =3D "Main Die corner top right max"; + reg =3D <0x40000>; + }; + }; +}; diff --git a/arch/arm64/boot/dts/intel/socfpga_agilex_socdk.dts b/arch/arm6= 4/boot/dts/intel/socfpga_agilex_socdk.dts index 9ee312bae8d2..33b5286655ef 100644 --- a/arch/arm64/boot/dts/intel/socfpga_agilex_socdk.dts +++ b/arch/arm64/boot/dts/intel/socfpga_agilex_socdk.dts @@ -136,3 +136,69 @@ root: partition@4200000 { }; }; }; + +&temp_volt { + voltage { + #address-cells =3D <1>; + #size-cells =3D <0>; + input@2 { + label =3D "0.8V VCC"; + reg =3D <2>; + }; + + input@3 { + label =3D "1.8V VCCIO_SDM"; + reg =3D <3>; + }; + + input@4 { + label =3D "1.8V VCCPT"; + reg =3D <4>; + }; + + input@5 { + label =3D "1.2V VCCCRCORE"; + reg =3D <5>; + }; + + input@6 { + label =3D "0.9V VCCH"; + reg =3D <6>; + }; + + input@7 { + label =3D "0.8V VCCL"; + reg =3D <7>; + }; + }; + + temperature { + #address-cells =3D <1>; + #size-cells =3D <0>; + + input@0 { + label =3D "Main Die SDM"; + reg =3D <0x0>; + }; + + input@10000 { + label =3D "Main Die corner bottom left max"; + reg =3D <0x10000>; + }; + + input@20000 { + label =3D "Main Die corner top left max"; + reg =3D <0x20000>; + }; + + input@30000 { + label =3D "Main Die corner bottom right max"; + reg =3D <0x30000>; + }; + + input@40000 { + label =3D "Main Die corner top right max"; + reg =3D <0x40000>; + }; + }; +}; diff --git a/arch/arm64/boot/dts/intel/socfpga_agilex_socdk_nand.dts b/arch= /arm64/boot/dts/intel/socfpga_agilex_socdk_nand.dts index 98900cb410dc..5246bf8b14b5 100644 --- a/arch/arm64/boot/dts/intel/socfpga_agilex_socdk_nand.dts +++ b/arch/arm64/boot/dts/intel/socfpga_agilex_socdk_nand.dts @@ -114,3 +114,69 @@ &usb0 { &watchdog0 { status =3D "okay"; }; + +&temp_volt { + voltage { + #address-cells =3D <1>; + #size-cells =3D <0>; + input@2 { + label =3D "0.8V VCC"; + reg =3D <2>; + }; + + input@3 { + label =3D "1.8V VCCIO_SDM"; + reg =3D <3>; + }; + + input@4 { + label =3D "1.8V VCCPT"; + reg =3D <4>; + }; + + input@5 { + label =3D "1.2V VCCCRCORE"; + reg =3D <5>; + }; + + input@6 { + label =3D "0.9V VCCH"; + reg =3D <6>; + }; + + input@7 { + label =3D "0.8V VCCL"; + reg =3D <7>; + }; + }; + + temperature { + #address-cells =3D <1>; + #size-cells =3D <0>; + + input@0 { + label =3D "Main Die SDM"; + reg =3D <0x0>; + }; + + input@10000 { + label =3D "Main Die corner bottom left max"; + reg =3D <0x10000>; + }; + + input@20000 { + label =3D "Main Die corner top left max"; + reg =3D <0x20000>; + }; + + input@30000 { + label =3D "Main Die corner bottom right max"; + reg =3D <0x30000>; + }; + + input@40000 { + label =3D "Main Die corner top right max"; + reg =3D <0x40000>; + }; + }; +}; diff --git a/arch/arm64/boot/dts/intel/socfpga_n5x_socdk.dts b/arch/arm64/b= oot/dts/intel/socfpga_n5x_socdk.dts index 0034a4897220..5ca111c158c4 100644 --- a/arch/arm64/boot/dts/intel/socfpga_n5x_socdk.dts +++ b/arch/arm64/boot/dts/intel/socfpga_n5x_socdk.dts @@ -126,3 +126,49 @@ &usb0 { &watchdog0 { status =3D "okay"; }; + +&temp_volt { + voltage { + #address-cells =3D <1>; + #size-cells =3D <0>; + input@2 { + label =3D "0.8V VDD"; + reg =3D <2>; + }; + + input@3 { + label =3D "0.8V VDD_SDM"; + reg =3D <3>; + }; + + input@4 { + label =3D "1.8V VCCADC"; + reg =3D <4>; + }; + + input@5 { + label =3D "1.8V VCCPD"; + reg =3D <5>; + }; + + input@6 { + label =3D "1.8V VCCIO_SDM"; + reg =3D <6>; + }; + + input@7 { + label =3D "0.8V VDD_HPS"; + reg =3D <7>; + }; + }; + + temperature { + #address-cells =3D <1>; + #size-cells =3D <0>; + + input@0 { + label =3D "Main Die SDM"; + reg =3D <0x0>; + }; + }; +}; --=20 2.43.7