From nobody Sun Feb 8 15:01:37 2026 Received: from DUZPR83CU001.outbound.protection.outlook.com (mail-northeuropeazon11012032.outbound.protection.outlook.com [52.101.66.32]) (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 A29D5309EE7 for ; Mon, 19 Jan 2026 09:56:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.66.32 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768816564; cv=fail; b=eG0soMlxwKU4ZDGbyC0x1r+o8HqBQcq3bzl5z1kOfw4TOuJuefBv3AEkIEUUnyBqMIkQQdvvIw65T/PfrNlQ/keFbriDTRwRCWNmygrIlHXRC0dhf8ZdxfVPJxbbw3+qiNnNuz+oZhYsQ6gsBIxMwH4TJs7Myorbhff11rxn/6I= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768816564; c=relaxed/simple; bh=/rKmKNphZtSA/zY3kXG6P2OQS9xoeHmMYBrTZxfuhgI=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=kHDx9ZlbnE05EI68x63a7nEL6WOlEF2H19pKns3ld08qsRC+HUIPoFE5xY991TKorfi/Z2JbmkYQUNRnsHcJHk7ra+yTNAnlikrBnvfnIWNQ94sco8ZZzLV45R+5Us7urCDDatVVskP1h+LT/JELrAxq0wf8+XSbN62hhNbEJ0s= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com; spf=pass smtp.mailfrom=nxp.com; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b=a6cRKYvU; arc=fail smtp.client-ip=52.101.66.32 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b="a6cRKYvU" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=NcHpIPybqcoMH6HJuZSXLUx5xMx/DXKF4XP+68kf06GR1utCoIq4aeLZY3kjYB4N5GW2E4sWZFRtgc3jDSFwr+ds8tlAhAJwIlYzcbph//ZRaslFveQ1/mErV37AznTngesW5VG5fJDSG5ctjEOFK1cn/auY8FQovEuJip6eQEiiHGaZFmnVxzazXTMrRm5lQL0jOkZnH98JMzf3H30hMQ5LKB2nIFZYs/BS98JJsTWqRAFGZN0JfuUFYAQJ7L93Tjd9ZNVUxeFJQk/6klHS/ILfUzfxNQi5H7rX2fd7g9UuLk62YRPew+S9EHFQP3LnvpOCF/4Yy0jSL3KkoXwYdg== 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=A0ToPWlqM5IariVFWZrV+Cn4lvYFEG4jRycm7SqFCkk=; b=KSs8TQygDJiCnrbjiX1eO7AIFrGDwY55G4wLUYp99HHh7cykFSAgJCDwGXWXigVFtIeb579//dss+0k2PJwKE+LnQNSRBJOloPjtaLqu3juc7rCsHxvdB+ewuzITi+0sK9xHEE2/i257u7e+5UAaYP0KOzZMT80vCv71RnArygENuFeHcB9nejRB0i5w4yXLVFG+gdPJFdolW0agZ5rPSc+62JT5u5cgcBidPrSniqwqZCOpeLSGHd3hcU4420UPnoJ/N/8y1+QXNzmMbQHCf8iWsHhiFcrxt4LEO5kYtPE/8G2v+zGMGMSAfWycSOiQaRJLCNUXtyU8CpJctL3Ttw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=A0ToPWlqM5IariVFWZrV+Cn4lvYFEG4jRycm7SqFCkk=; b=a6cRKYvUnbXTV0uEDPIn1GDc4OGctVhoKKUwF1l46+nEYW7b2VKTl+vc04BNjpL5goEkmrlryQYdzlfZGaCB4gPdRvL3MyAtHv9+Lp82uu6eZzc7PWUAKuD9T6eAkMCRBPvUn9A84SJCWH1IBETBbcG1edeqUTpmxkpDvlnDixXdBjCd1b42cjmGpYVLdwhM5ZuJhf6ergv0cbozxiLim380OOoHuClMTiTKw7TO/tkGPL2PgLFjPXnhdOZSVRfUqVrG+O1Mfw12RVjUQkdU4ckQX3frlOIgaEk+1qPLP6YE4gYDZ/vVHhuAKBp1+fROCgVowzqgiIjmeIEz9875TA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from AS8PR04MB8420.eurprd04.prod.outlook.com (2603:10a6:20b:3fd::16) by GVXPR04MB10899.eurprd04.prod.outlook.com (2603:10a6:150:225::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9520.12; Mon, 19 Jan 2026 09:55:59 +0000 Received: from AS8PR04MB8420.eurprd04.prod.outlook.com ([fe80::3f0f:857:96a5:17f]) by AS8PR04MB8420.eurprd04.prod.outlook.com ([fe80::3f0f:857:96a5:17f%3]) with mapi id 15.20.9520.011; Mon, 19 Jan 2026 09:55:59 +0000 From: Zhipeng Wang To: daniel.lezcano@linaro.org, tglx@kernel.org Cc: shawnguo@kernel.org, s.hauer@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, matthias.bgg@gmail.com, angelogioacchino.delregno@collabora.com, linux-kernel@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, chun-hung.wu@mediatek.com, walter.chang@mediatek.com, jstultz@google.com, amergnat@baylibre.com, aisheng.dong@nxp.com, jindong.yue@nxp.com, xuegang.liu@nxp.com Subject: [PATCH v2 1/4] clocksource/drivers/mmio: Export clocksource_mmio_init() Date: Mon, 19 Jan 2026 18:55:08 +0900 Message-Id: <20260119095511.3030739-2-zhipeng.wang_1@nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260119095511.3030739-1-zhipeng.wang_1@nxp.com> References: <20260119095511.3030739-1-zhipeng.wang_1@nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SG2PR06CA0241.apcprd06.prod.outlook.com (2603:1096:4:ac::25) To AS8PR04MB8420.eurprd04.prod.outlook.com (2603:10a6:20b:3fd::16) 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: AS8PR04MB8420:EE_|GVXPR04MB10899:EE_ X-MS-Office365-Filtering-Correlation-Id: 9cb9343c-447c-4685-556a-08de5740f296 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|52116014|7416014|19092799006|366016|1800799024|38350700014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?6X9e4+C66L7JtoGIi5D9qTuaIDVWxHYETl37ZyUFChpxjp1h0wlxSOboMkCZ?= =?us-ascii?Q?3dLo5tcyr56NNA9zGREUtXEIug8DTxaFZvvJ3y/32F1EMf89/n53utdTpVNz?= =?us-ascii?Q?Ch5XFC27sFBXHLhLsZpUXqXwCDK0Ac+VL3Rcu83ALvAvg7O2rWRlNtwaflUr?= =?us-ascii?Q?Jww1IhSMNSE/cKJvF+H94yFJ6O4pbWNKbrQRf70Tzpil8XHVnd05ZpSUSsRH?= =?us-ascii?Q?qwGTroW/oonbnigvLeIarWtU8qnYzrvmayEODn7X1e1gp6BasGQyRVW/CSdt?= =?us-ascii?Q?rk3AbH96CKZy/bitgY0SCkJQI7BInbM1Hs6AYDEGh2pepk75cqjN8vzMbE7c?= =?us-ascii?Q?c7ALETzfwBWllcPS6x3ONTdzgOJSk+RScF9nQTARdiYjGnG2e5hyZUcOtiZi?= =?us-ascii?Q?9kJ6QYjr8XHW2FLJ5dp5PRzF4G2IU7ii5KRJsROhK7eXklo2Ahu0tDyYA4vt?= =?us-ascii?Q?y1/JhcBgZuR+DR5ZQXWrKlnUHL1MtvpDIH9VQ4IwNzzqQtUV2VwugcOzaPQF?= =?us-ascii?Q?pEHLdQp4BTOgC6jxNwTAWaDPHHEQV8LN7BShNELT2GZLxUpJQsoFDSIS3/It?= =?us-ascii?Q?bB6Gubo/dOUvVW95e7igmufuJ7eqg8V0Xpe/oIxDB+B+swfeDh8BvSs9PjQD?= =?us-ascii?Q?M4JYa6irF5ksYUcP57buLyuxSEdu3jrBvh6NjklPsNH6ZsrBvdU6SbNMAbqp?= =?us-ascii?Q?8WeP/VntO4ol4PUjKT5Iow0pYMbTiec9nHxO16dQO71hEJLYWj9H2ttr+fbK?= =?us-ascii?Q?yVu0iEI5L7ehHJsoS5kCJs26pdxcnUrz0RjAXu32DkfnuDtGK0C6vBNM9Vyo?= =?us-ascii?Q?Pk2QAC6FSXShQ8vNXS6J/y8Ui3X5gbf6zJ80Nh9gT09dNZC6Un2IxQT2Q0K4?= =?us-ascii?Q?p4KqFVwdxb+0WR7nLg3E5nqH8ly9RQ3StiM0Kx5+Gk4Q7ojrKkC6y22ON/NB?= =?us-ascii?Q?Ga+6QHfh2FZvCDeDnBv7fOhTJiS0ApdE6TVYWY4rCbOhAN3kIDiPWrI3sFq5?= =?us-ascii?Q?IQvHPL+9E8kWP+WjsxwbdbPpRaCqeFtX61DMMJ/Z2lytYc8o+XFMmooBWz1l?= =?us-ascii?Q?Gi+fqwW+yU8BFfp9oOwdDjij26/37q7I+g3HO10NTzNR9Sv9v8CR2jza2esC?= =?us-ascii?Q?IYqr+V1LYvvxjlsLi7TVm6eSbMnnLz/SxM9u2woOrjNODve4d+0rupukA1EJ?= =?us-ascii?Q?LOeRyjNAzCA+Eo9fgfTeIlmJL3vC5isIJ5TEomLHz2dllBYPm6mQ0AQlbS6A?= =?us-ascii?Q?FPUxYI/OYxLHVhTXpd5irXMaXgN+8I1ttHmRnv/GpbbX/tcgBK8EfniAKZOI?= =?us-ascii?Q?ET7GCSNqfyioL5dG5/816g3piCl4qI3Ji5ZhAL9O6jILffl4Ogf1Yu+bTvZ0?= =?us-ascii?Q?VG3rxgB29iavutMXUR4VRyfnuZppo7nb7poNXFkWmJXrpaDcfiIwie7IapzT?= =?us-ascii?Q?eyQsAF37gKAKDRimH4hXLbEWFdpZaQ3uR0xfYKimMYlfWbZm2Z+35vc9B7DD?= =?us-ascii?Q?auO0NOwUTzgOMLPAdcpoCNl3W1+TI2jIWw0scfyOzuonyK8KmtX8GJkRpKAO?= =?us-ascii?Q?K7+mJIPWZmTa1drTo3DEgu+yLmJbGK3lDR71069AouHbTTpHeXoGt8rE3Srq?= =?us-ascii?Q?4F0Z1rWcGLTKnXtT2lQGhTc=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8420.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(52116014)(7416014)(19092799006)(366016)(1800799024)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?jJdR+wINn2YxSYg5RSVzy3MtGT/1HFmlCtUDDm1QNIMZzsTiP0uWq7FuMb8w?= =?us-ascii?Q?vZM8g/8JMekCCluPfnyne3l9wl6n1Z1hSukOXpJsqP3A9YITcdwIDvoC+Rza?= =?us-ascii?Q?Apxpf3wg1+Tf2rfWYZ0YCiXrZTkvp7wavw7lt1eOsNg1bGSZLrEd3ieAaHkI?= =?us-ascii?Q?nUoEH5zsQ3ZV+g/Sz2gb93aR6VnYfkVBjqhdctNHC5VwmfwEpnZ8fZbazUo2?= =?us-ascii?Q?70apgV2AnKzL6ZO0CZc6mbRuCkvE/S78iVaLOKkyGsuHcqYQb7YV7NZUEL07?= =?us-ascii?Q?uq2NyJq/nwBg/BBsIuZfXZTD/tZpgn7DnXw/g3SdxOuSOsnl4SMRVwH6tmZQ?= =?us-ascii?Q?qob/Gpw8TVDk42c1TIFcCfrnz+CKxcO9eJ80ltY4ZnndIxnzflIr2oblBd5l?= =?us-ascii?Q?Jj/8qpvTm1ZYjfPfliilGp7JeF6A7X6uz3T6ppFSjks4wrwI47DIee3V+7iW?= =?us-ascii?Q?i5dpFsI5/CstjK/63S+JmOW6nAtOCs3NQNHgcD79KkAjWc19WlSwaeMFpFXG?= =?us-ascii?Q?5fNl9syBP7lTPQpzpTHjFToGyesB7V6hZek1jJBO3F8Dkb/1NP+Q4YJ+bt5T?= =?us-ascii?Q?4P06t3c6/KgAh7cV8Z4XdLf0ORs5XK72s1kKq3VSSy7liw5pR6NUvqC6FPNN?= =?us-ascii?Q?dp8ELKMUfw5GFb+i8MFxDc2lgJ2Rnt1L4+UOYJU3h6Qgx5IYz8FtaTOsi81O?= =?us-ascii?Q?LSLHQ5u9SHDrtp/qbQQ971rW/K9a7264awUsN7cqT5jklDjG2vV7CYy0hJ46?= =?us-ascii?Q?a1gpIvv3TZb9FCiz6KvbtbikTSNz4N/nYKeSryOJnGsQs8pefTOIPIMYtDdm?= =?us-ascii?Q?vzVppXnEpumnVaF0empz82AR0CWreKZvu4EGCuzSnSBUR69YN3YXZ8WR5NC8?= =?us-ascii?Q?JnGjQ7ZkGNHCS+RZ3M+hQJXJqjTUmDWaoOKP9SMQ1K+mfTlmjgUUfqz+sm9t?= =?us-ascii?Q?QB0uY8VhEkVNsX6crS/gV0lN1k+xaKiaweJK14ZE+if/6ciqXa99+8pYdFYo?= =?us-ascii?Q?2l05x2aDzcHNMEO8eoE7xfVbkcDhUTuVTX7GDD2ncpje/T1zyWmtjmo8b6DV?= =?us-ascii?Q?y61qXVfd1/0O8Il3PQSeF2AjaVswF0XrpKnTXkYKCOGqTlBuc+GQFoe0TXQV?= =?us-ascii?Q?jrsgluXj8RTbOWCsZ0TdpnPc7vicvSUlQRIRV1h21h+/1gxbg9W9IohWMd3s?= =?us-ascii?Q?kcDx9ppKRiyQsvUwAaXZLFOu7eP7ULESI2TEd0wtHuUWN9BV3hDeM4tryZrG?= =?us-ascii?Q?jeMG79NVetFpf/mCYwWsRf70A+4NuwNcz/qeEsT4ARoRw0+50rrpSU0IZdxq?= =?us-ascii?Q?DLqbe6o0HFcuMvNe697UkJh7+4o6xgfRUXQeWwrnHFIgMQT7wIwKHwuC2nw/?= =?us-ascii?Q?uDbsy9QUEYeg/RFSvYuB8KGv+cSDlGYJpblMQugB9La9iH3msSI3L7o2NIIk?= =?us-ascii?Q?DqU2IeC2U4uEtU/LMnJf3kICWf9POwTpZZFoGm4KBSoDywdxhnD73yPoSTjR?= =?us-ascii?Q?CicvUb89MGwcrjXSNg33lv4foXtwvhYBT4FKYrFTDZo23QYGUNGTEGzmc+oR?= =?us-ascii?Q?OMIoaXazQ3OFoSUyZOlY1x1Fg7RalRarZZWc4J8gyd4FRxbC6ETEeCa6LGLN?= =?us-ascii?Q?nrN6rmFRvZf12YsC+EiB1bLi5HTuTCxgtQTE2/1dSdb6VCPN/5Y/zyTVZ2Kq?= =?us-ascii?Q?bUOG9pSpr0d8xVds7KMNFucQp3hr6nW0s9PW8zbJuC5AxcuiUKzUQsytN7zH?= =?us-ascii?Q?adoNZpiVig=3D=3D?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9cb9343c-447c-4685-556a-08de5740f296 X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8420.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jan 2026 09:55:59.4746 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: bQ5h3i1yG06o7dg3UAODt+Up37Uwp+cOBPKolkubixhB30qjBdR6JZHQMs67rAwgWCdNr8uK6ASPwmuuiE3S4g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB10899 Content-Type: text/plain; charset="utf-8" From: Chun-Hung Wu Export clocksource_mmio_init() and clocksource_mmio_readl_up() to support building clocksource driver as module, such as timer-mediatek.c. Signed-off-by: Chun-Hung Wu Signed-off-by: Walter Chang Acked-by: John Stultz Signed-off-by: Zhipeng Wang Reviewed-by: Daniel Baluta --- drivers/clocksource/mmio.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/clocksource/mmio.c b/drivers/clocksource/mmio.c index 9de751531831..95b591c8aa4a 100644 --- a/drivers/clocksource/mmio.c +++ b/drivers/clocksource/mmio.c @@ -21,6 +21,7 @@ u64 clocksource_mmio_readl_up(struct clocksource *c) { return (u64)readl_relaxed(to_mmio_clksrc(c)->reg); } +EXPORT_SYMBOL_GPL(clocksource_mmio_readl_up); =20 u64 clocksource_mmio_readl_down(struct clocksource *c) { @@ -46,9 +47,9 @@ u64 clocksource_mmio_readw_down(struct clocksource *c) * @bits: Number of valid bits * @read: One of clocksource_mmio_read*() above */ -int __init clocksource_mmio_init(void __iomem *base, const char *name, - unsigned long hz, int rating, unsigned bits, - u64 (*read)(struct clocksource *)) +int clocksource_mmio_init(void __iomem *base, const char *name, + unsigned long hz, int rating, unsigned int bits, + u64 (*read)(struct clocksource *)) { struct clocksource_mmio *cs; =20 @@ -68,3 +69,4 @@ int __init clocksource_mmio_init(void __iomem *base, cons= t char *name, =20 return clocksource_register_hz(&cs->clksrc, hz); } +EXPORT_SYMBOL_GPL(clocksource_mmio_init); --=20 2.34.1 From nobody Sun Feb 8 15:01:37 2026 Received: from AM0PR02CU008.outbound.protection.outlook.com (mail-westeuropeazon11013064.outbound.protection.outlook.com [52.101.72.64]) (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 C6AE81D5174 for ; Mon, 19 Jan 2026 09:56:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.72.64 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768816572; cv=fail; b=urRAqMQFxjO+TZoyNXBqTjF+q+2asWROVy1uHCddGWEbf1kP/7lpEOekVnOiYYRqztyPKAvyN6BOH6Y9JSNEeH0Vt/hXyNsDUf3AerMWoeG7U0xC4kXH1+kpQmT32x3/QwTUS/ecp5JMQcFgC0Z3FQjAph1stk0p6pvgxf3OmWo= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768816572; c=relaxed/simple; bh=pp5EMhI+dquLsKN0R1Fpup2hpzWfSsFmd8FzUyIAhs8=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=U8K4Ul+TIyyl4u9JzEtWVVZ+Kmyv1WjFEco9kBqLhw+iSPKGXtv0tqCdqq3B8snLoLZHueXmfX6UOWF4PvjcxDHpFarLzoSX4giMnaFkxlrxh/ecNrQMtss/Cr4WvVsThKPrvqgz1ibIQo6XJJwS6bYIfxiIxyXnXseh7w1KNas= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com; spf=pass smtp.mailfrom=nxp.com; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b=oNindopk; arc=fail smtp.client-ip=52.101.72.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b="oNindopk" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=j+JczITwbd6/0+8m6GJrJC1rF5d5/MaR6uAD3FSlVGbuYnVlY3Ij/UqcePpmDzidACiubz6+KUuDzpRXD5aN0Ok+5CUbW+jXpXHCCYKil7wx2aESIUV5V3h/S3OSVjJ1zwI5dZyhWZU/MlitqRedYewc1zcNAJQSCD7ULvJjQofP6ht57iKVww0Xx3sh1cI1/GfOqIS+6F8L7jEA+TrkJFVMQ4ky3tQUW5k3wRFSN6s4S1fCn7sHWn+9V8exsFhPegXT28KFgUYsIJpUDpXQ4YwXy/hIbtsC+2HKFFPDbOAlmAqDSTs9Fb3ypdxZ6rkWp4csekhY271YCwL0UQFW1A== 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=ynAS0eWEy3UKmc6VFbP2xJivzKk3iDrWzs5NNMed9wU=; b=Z3d5Mknqzx1q9GY+23/mnY4Z5tdfCTHgvDs94t4RHJZoJybPPMRshiAsNXJ2Z7udLHr2Zq7/wgNybv6yisI07KLZ95p12FeZ2zjnnuevpKdhjsSXJlKw4ibPheLn05sPAGDruFjhWgKiLDvurdP4aCilOqdYj6etkrab9NPP1rpwnSdvg4Ebzbe0EqUBObm1lBJhrc5zVylf5kBmbCKE6HRehGurVHD3C21x1h6lAlVP+UhUPa4uleHe1NY/AhWS5RuEGUfIjo+WPoUoZJl+eMidLG87wBojX4L+ar08MuDaMJZrz/GGkXm4MBhLWPcygbqjgLgYhhDt/WF+nn2xdg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ynAS0eWEy3UKmc6VFbP2xJivzKk3iDrWzs5NNMed9wU=; b=oNindopkdWUWWAjx+7U05Xmfa1zrUIjDmgEo+elsdrAStlSOVNX5vgNIKcWkVRZeTM5dBsaLZ34jBbu8ydgCH+9nFuTKwKawciJ4KvLlw/cKdRgucqD6yezT5KNdbBj46OxJDCPBJeLtOuL0swPPyqRCi5+nCqzjuKxJkZsPfHESWMjH0/t5HbSfSpqJqZKobRoCcBOa16w/mxdfuz29zeE1G2TgZiPrnd9u5txFUMfwnj4N/2Zx7tSlICdVZ6pPEV/6fHgSkp3DWUJHJTlXeybcJMyP7mSx/N0owZZA07Ij0BaI+W8Xy9r0e7Sm0udvklj2Fq2wFXwPVf+f9IeIng== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from AS8PR04MB8420.eurprd04.prod.outlook.com (2603:10a6:20b:3fd::16) by GVXPR04MB10899.eurprd04.prod.outlook.com (2603:10a6:150:225::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9520.12; Mon, 19 Jan 2026 09:56:07 +0000 Received: from AS8PR04MB8420.eurprd04.prod.outlook.com ([fe80::3f0f:857:96a5:17f]) by AS8PR04MB8420.eurprd04.prod.outlook.com ([fe80::3f0f:857:96a5:17f%3]) with mapi id 15.20.9520.011; Mon, 19 Jan 2026 09:56:07 +0000 From: Zhipeng Wang To: daniel.lezcano@linaro.org, tglx@kernel.org Cc: shawnguo@kernel.org, s.hauer@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, matthias.bgg@gmail.com, angelogioacchino.delregno@collabora.com, linux-kernel@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, chun-hung.wu@mediatek.com, walter.chang@mediatek.com, jstultz@google.com, amergnat@baylibre.com, aisheng.dong@nxp.com, jindong.yue@nxp.com, xuegang.liu@nxp.com Subject: [PATCH v2 2/4] clocksource/drivers/timer-of: Remove __init markings Date: Mon, 19 Jan 2026 18:55:09 +0900 Message-Id: <20260119095511.3030739-3-zhipeng.wang_1@nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260119095511.3030739-1-zhipeng.wang_1@nxp.com> References: <20260119095511.3030739-1-zhipeng.wang_1@nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SG2PR06CA0241.apcprd06.prod.outlook.com (2603:1096:4:ac::25) To AS8PR04MB8420.eurprd04.prod.outlook.com (2603:10a6:20b:3fd::16) 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: AS8PR04MB8420:EE_|GVXPR04MB10899:EE_ X-MS-Office365-Filtering-Correlation-Id: 39bdff20-80b2-4343-ece7-08de5740f78c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|52116014|7416014|19092799006|366016|1800799024|38350700014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?NlvYxPao9bv+Kvr7WDjYJHvGAbJchDROvUTsd8hRFeUiSrXgkKULZl8T7Ekt?= =?us-ascii?Q?AY13whb6E8fFJ58hSsb8egiToWZGfH5vjxaZxFl2iczA6VNaka3lNSdYQuX6?= =?us-ascii?Q?UGnFfEq4N1+ovDqKblXIgP932SBny4xV9kQPmcjpyGVGAy3rhCHcHHD2lc+F?= =?us-ascii?Q?WpDY/FazH1ua51ONev1mTOKLh52HlfYiyDxWGeB31jAVvi0tQMyTuQuQloJk?= =?us-ascii?Q?FF535Io5NSdEid6N98m6PWn8AGnlzysb2uSp37kL9hIeuu06BMqKm3nv+3y+?= =?us-ascii?Q?njR+ch7Dc09rYsqsCoTbfSX/oDCc+E45dT8eSOfUD3gb5upgPsEjk53ANbdU?= =?us-ascii?Q?op15irPDLM5/Od8+NRKoG/ziRpHGFPm1EXXFWXxhVk3ysTXESV7A3GgQ8jvh?= =?us-ascii?Q?NZYkJX41J/NB1ef25Jpkmj85r5GFI4qv2++iXU5AjdtImXwJ5dDYbVdI9PgW?= =?us-ascii?Q?mgnbGT6yEBa9PrJV9/nE4BCA0der/cgQDmQvrFid1Zno1vHYwsFNcWlB9sXO?= =?us-ascii?Q?l6dUok2qEwTtro7atqx+bK9jvTbZMuN5z7wBCLkr1WFAw4oSgruQEouaXPKe?= =?us-ascii?Q?sZGewoFQRWTQJQ2LSjYk6Mm46GEWbRSH3WfI5tW+nfqE7sLdba3e6BLVM6HT?= =?us-ascii?Q?FjD2O/HvqQjKkKEzes7XmfKbIotzWj0/d9NucyGEqMO4d3gdGC/pljRylVPh?= =?us-ascii?Q?lqiQsB3hgbeHKZjjHkFVMSrShmEn+p97+RM3zaNKYWgWRXLidIuoLlJq5JHr?= =?us-ascii?Q?fNIg0BuXM995h9wilKCkcVnm+3zGD5q/nOzDU0zVKRn4mrF5qKN/T579iYp5?= =?us-ascii?Q?bbyG4ZQeUj+oAZDp1PleC0XGYyKeGxrkGKBxeZ6vgEy3qvGhapK+U8Kf+Ja5?= =?us-ascii?Q?Ggyxbq260qerQ/iqkTepdUwbBuv2hTURY3OrGpt/b5lFISAqj+s3C8FyDFUj?= =?us-ascii?Q?AIATlsighcri7tza4U1Dts0WrpUgCjYEX0TRRV9NX3aMGyOwU9deBAmFy98w?= =?us-ascii?Q?8oRtH/aM9CH6GivbJQoBc1ch7pBz0Aj+ItSGcXnUqRmRncoYpZUkOiVnC60I?= =?us-ascii?Q?cCckrRvVVmrqBYXlRr3GVW09WXLepzjHhcTcKL78f+4SlGzhz/a8mjsa4HFE?= =?us-ascii?Q?+sWSQG774Czck9KjLrqNx7fpIG3A9e0HdkE4ge3Gr+4Wc4bFng74ZAOoX32m?= =?us-ascii?Q?U2WssQ8hbpoWYra/UGjFXT4zbXNMvnF+IPBrjs93NFt5FKU6ccTxbeybMYdp?= =?us-ascii?Q?JxlJjk0veQ1SmW7HSqdKTBpw74Gr1wN4x4lJcwt6azanA6cEs/ji81KDMRrC?= =?us-ascii?Q?kXtJjIF3LF/rKD0HVZ7gwFzLgh+zq2NOIkU2AQ3NzCYs6Zj/K0hLqkQw6DG+?= =?us-ascii?Q?t7X0yGw6g2YV616yFH1rm07SdoV6/5NMga3sJqevUiYu62zrNPFfueA0r4ry?= =?us-ascii?Q?BQUPkBd91Kud82uKgCt7wP3sm0pCRezX9ARAFyRt32E1rKdh3mJWHHh5KWrw?= =?us-ascii?Q?QZIyJxb5oHp4jZWRp9PLgIOozMCNRzozGWuNU1ixnibCzmG+E0e8rCATsVmy?= =?us-ascii?Q?k5xN+e0hFy22IZOK39Y7UfJ75R3QVy5cpdfA8K2JvuFOi1x+nEbxLjCg1YbT?= =?us-ascii?Q?xlIn7ZcV68TRI1263Z2x5Lc=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8420.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(52116014)(7416014)(19092799006)(366016)(1800799024)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?z1QgJ4Vn/xpgTqCcFoLO5YFfLseUgj46WoPT8FJC4UIxAKivyNkunXFMV9pb?= =?us-ascii?Q?Ru1EZaIPQP0IQiZA2gIGl9Ke9VoQOxlpF9LeyEYkLaGeJsY35QQu3s5tamwc?= =?us-ascii?Q?ucA2UlAUV0kwR+Z6fpvUbxdqv0lil4DQDAbMT8ll3LYXMBvkJg8vd1fwBOSO?= =?us-ascii?Q?ezO/iqgNbaH9dlBM6gy2/whfiNlTu8APolt7s7GbwFRUBwy/8Joist2K540e?= =?us-ascii?Q?gjbx2U3zsgjrPFTTmbXsCAfz5GnU2DFCocfa6DBkoQH7asDSg/beAJ3TbjTV?= =?us-ascii?Q?Uyvp6H2zL+4tWVgzbX/lGEc4nDMUug2V6Em2P0IJ3o7BWlCDJxca2petthtM?= =?us-ascii?Q?b4eyPrCE5Z76NdBMyE0U9fV1E5z3dkngqlV0YifILKojXfdGumGZDXEGK8ig?= =?us-ascii?Q?BTab+AHRIFW9roJSAkUcX//n0KQNblmq/pzdeWArqrcER0SWQCK9S7+vbO6E?= =?us-ascii?Q?hwWdlBvb4TIp+kLIyNW5bUVp+6hsHofklsM3xlGgxfW2zGOkU+b3x1ORbjS8?= =?us-ascii?Q?Uh4tya++usQaE9BmbUCdUzfWt/BGncQrSSK9H+bWwIBXeNOktDdH3dy8LsIN?= =?us-ascii?Q?wqpUFIEG2lKuYWB1X3eKqaaD1Xd43qNmanj92oTKkNjWWxkYtEyPFtWJT49E?= =?us-ascii?Q?BB8ATvz/Ea/k+IIV+AJ6Pn+34fRmKkpL+n9hmB+Ee/r86rbEe3IcME023f1F?= =?us-ascii?Q?O6qRQReZm2ZJeYcSW42AynGsF3MsyVEzsdGKRvv4Xg7jcwugUZTWoxaKdaXk?= =?us-ascii?Q?TbwE5n5O4sOjwbt1MzDy3mPfcyLmwZ60TGq1vO4npNOimzZGhiX1e5uUU9E4?= =?us-ascii?Q?2bfwMkIyR5B241loZkHzvjEeOq1N8MCHTh4JeltsaXjGYb/JihPJmX7U5uub?= =?us-ascii?Q?KSGVk9jweKDhiV/4++raryG809iz8pWSZuNOrKNpwZyGD/NPHiafLrX0xRyC?= =?us-ascii?Q?ZY2hbZ+5HIIfQZobwMZtG0lVqGKBH5i5nCAayK6OcJ2gz/piZolB7Le5wTXc?= =?us-ascii?Q?zetMtu9+mEDgq5UUtOO30H+72npR+QH1Ow1OZq7rRM27xoK2upMNldqMnW7e?= =?us-ascii?Q?FQ311+dp4i+ACzkUEAJaTZzWFuq3iyLBSiUaP2H6qkFNd3HkS9GBzB0EWuCP?= =?us-ascii?Q?2cSkQctoqX2G13I2KqkMHs+4jm8GWgrEMzpaWF8AH9cKTWDyAvppat1MvU2t?= =?us-ascii?Q?mu3mInaJ14TRnAzeD/XLroCrE32WEThGpdG4DCUopdEIuH5pxRWhPhL2OzaY?= =?us-ascii?Q?0qA3MmQGolhXaGKpKsmk5ksP44hC/qReRuQpJQWQJZYUkUG2NT6/TqP+ppIa?= =?us-ascii?Q?YdEjNKKVPXQoNgyuZq1jxjveVN0u5zcRXd1xhjAQBpWvGg+MloPewYTG2CAW?= =?us-ascii?Q?FejnnOvTwn1kkfumv4rR6lpOS2vI4O4kpLzBhRhXtCRalESU2aKtjUSJd3sU?= =?us-ascii?Q?4aXgQvupzOdWSXLel9xIlLxI50hwMrHu0JTpOsDOlsbwjpYaw2PDs5R0UvVv?= =?us-ascii?Q?XnAShshfIMjtXbi8CmNZjjslblayFfPUvDe6iIIcA/cgRp0b+U+r0YQgGPw3?= =?us-ascii?Q?20/GKxEsoam/DPumugcr+KXCG5jIoXychbvSk4k6NR8iCeRDAn83SDmaq7gp?= =?us-ascii?Q?3oF+EWIqQZcAJaX+Og9fQfwRfr4rylnH9AUeaaj7OLfG3IaNRto9Aule/d6c?= =?us-ascii?Q?7jr4RLJwDMj6zEY9ZwVi5FlWmmd/PXLCvjnfbkjXwvp4hbvWBZAOktqPGyNV?= =?us-ascii?Q?7nz2+Vu+jQ=3D=3D?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 39bdff20-80b2-4343-ece7-08de5740f78c X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8420.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jan 2026 09:56:07.8378 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: h9BbwaZX9m3YCZWCMGQZgBl7fd4g1ioYnB9xLTN1myTIX/imzl+p39gl/Sd7Dwq2zuDSi4mlrfIvm/4omg//UQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB10899 Content-Type: text/plain; charset="utf-8" From: Chun-Hung Wu Remove __init markings to allow timer drivers can be compiled as modules. Signed-off-by: Chun-Hung Wu Signed-off-by: Walter Chang Acked-by: John Stultz Signed-off-by: Zhipeng Wang Reviewed-by: Daniel Baluta --- drivers/clocksource/timer-of.c | 23 ++++++++++++----------- drivers/clocksource/timer-of.h | 6 +++--- 2 files changed, 15 insertions(+), 14 deletions(-) diff --git a/drivers/clocksource/timer-of.c b/drivers/clocksource/timer-of.c index 420202bf76e4..b7c186dc83da 100644 --- a/drivers/clocksource/timer-of.c +++ b/drivers/clocksource/timer-of.c @@ -19,7 +19,7 @@ * * Free the irq resource */ -static __init void timer_of_irq_exit(struct of_timer_irq *of_irq) +static void timer_of_irq_exit(struct of_timer_irq *of_irq) { struct timer_of *to =3D container_of(of_irq, struct timer_of, of_irq); =20 @@ -41,8 +41,8 @@ static __init void timer_of_irq_exit(struct of_timer_irq = *of_irq) * * Returns 0 on success, < 0 otherwise */ -static __init int timer_of_irq_init(struct device_node *np, - struct of_timer_irq *of_irq) +static int timer_of_irq_init(struct device_node *np, + struct of_timer_irq *of_irq) { int ret; struct timer_of *to =3D container_of(of_irq, struct timer_of, of_irq); @@ -82,7 +82,7 @@ static __init int timer_of_irq_init(struct device_node *n= p, * * Disables and releases the refcount on the clk */ -static __init void timer_of_clk_exit(struct of_timer_clk *of_clk) +static void timer_of_clk_exit(struct of_timer_clk *of_clk) { of_clk->rate =3D 0; clk_disable_unprepare(of_clk->clk); @@ -98,8 +98,8 @@ static __init void timer_of_clk_exit(struct of_timer_clk = *of_clk) * * Returns 0 on success, < 0 otherwise */ -static __init int timer_of_clk_init(struct device_node *np, - struct of_timer_clk *of_clk) +static int timer_of_clk_init(struct device_node *np, + struct of_timer_clk *of_clk) { int ret; =20 @@ -137,13 +137,13 @@ static __init int timer_of_clk_init(struct device_nod= e *np, goto out; } =20 -static __init void timer_of_base_exit(struct of_timer_base *of_base) +static void timer_of_base_exit(struct of_timer_base *of_base) { iounmap(of_base->base); } =20 -static __init int timer_of_base_init(struct device_node *np, - struct of_timer_base *of_base) +static int timer_of_base_init(struct device_node *np, + struct of_timer_base *of_base) { of_base->base =3D of_base->name ? of_io_request_and_map(np, of_base->index, of_base->name) : @@ -156,7 +156,7 @@ static __init int timer_of_base_init(struct device_node= *np, return 0; } =20 -int __init timer_of_init(struct device_node *np, struct timer_of *to) +int timer_of_init(struct device_node *np, struct timer_of *to) { int ret =3D -EINVAL; int flags =3D 0; @@ -200,6 +200,7 @@ int __init timer_of_init(struct device_node *np, struct= timer_of *to) timer_of_base_exit(&to->of_base); return ret; } +EXPORT_SYMBOL_GPL(timer_of_init); =20 /** * timer_of_cleanup - release timer_of resources @@ -208,7 +209,7 @@ int __init timer_of_init(struct device_node *np, struct= timer_of *to) * Release the resources that has been used in timer_of_init(). * This function should be called in init error cases */ -void __init timer_of_cleanup(struct timer_of *to) +void timer_of_cleanup(struct timer_of *to) { if (to->flags & TIMER_OF_IRQ) timer_of_irq_exit(&to->of_irq); diff --git a/drivers/clocksource/timer-of.h b/drivers/clocksource/timer-of.h index 01a2c6b7db06..367d7023c623 100644 --- a/drivers/clocksource/timer-of.h +++ b/drivers/clocksource/timer-of.h @@ -65,9 +65,9 @@ static inline unsigned long timer_of_period(struct timer_= of *to) return to->of_clk.period; } =20 -extern int __init timer_of_init(struct device_node *np, - struct timer_of *to); +extern int timer_of_init(struct device_node *np, + struct timer_of *to); =20 -extern void __init timer_of_cleanup(struct timer_of *to); +extern void timer_of_cleanup(struct timer_of *to); =20 #endif --=20 2.34.1 From nobody Sun Feb 8 15:01:37 2026 Received: from AS8PR04CU009.outbound.protection.outlook.com (mail-westeuropeazon11011033.outbound.protection.outlook.com [52.101.70.33]) (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 62E031D5174 for ; Mon, 19 Jan 2026 09:56:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.70.33 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768816584; cv=fail; b=aXpfl2VjT/SJyZ4A4mgIQH1vduO4hI3vp+o4vcAGXZrx/gmUiiGKpbGkvCtecIhYpZleHkVe7qGDPdM7LpxMb8Hvk3XX2kp9w2X5Sm02ydtvrMcedGZIUMdWOjAiwAFGg7+zUxPFQXkFHNcKMXQD0Jdwfa0i2UPtgwXCukYcEiw= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768816584; c=relaxed/simple; bh=4wCmkPI+79qU6MiUK0E47B/s7D3AUnXb1qv7EvXa3Y4=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=A+sJQ4dbOpiQIKMS9rmrrIxYPsmwF979zYXCKQxcvuRf1VYoM/iZOYk8hPb/ONwfNN1ayf0KEJm7SBLPxTzh6L/rZjROCWSR/8dAFu1CnYoSXBlJ2ilWNsl2iD2of9Wm6850L+Av0BV6nisg0Ysthp/LajSfSrdfinOoB+94O14= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com; spf=pass smtp.mailfrom=nxp.com; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b=URuua+Ok; arc=fail smtp.client-ip=52.101.70.33 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b="URuua+Ok" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=KDvzj6gqqy+jIaQWNJ9X6xOzm2jaZnbUvzcAqjprHg5tpsto4oH8NOZM9fr5FkqLE5So8xOiSV4Rv54yyORj9d5hHmvsENHGAicqLQSVg6C4inLwxFMnzMIHZi6WdSgRYkge2SHTGyTqqzYAa1yW0RvZWxiQpYsC6qlx42rfj35s/mYjt7LEVH7+7m/W4Pw2MHlkKgyKJgSQGaYm2Wp7RKt1JSM770ymyu0cBpXX150VpivDAMdiFV2GzCoPoDzRTeYtuX/iWfdCpK13wNpzY8mf09cE4S6vZKRdtByJ29RYf73gdgfBV3Kg0CbNImK5cMRF8sbSbWTZWviM+Z/WSQ== 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=j2O+P8u+y+hld455WuSwVBh4puHP4gZcReSfR3clV7A=; b=pKN8bppN+5oVydDPLEXV7xEpcuSKfX0h/p6PAs32PHZyrvgU6h9UuRu5q9IEYZuyg+cDnu3LrA0O3egF6uSlpSmxv2DDgUPxyBtosDIe9FuaEnk/tAbdScS9i4sZG787xPcYZ04YjEDfQUgRChvvhTD8gryfO0Hp9y0/EeUuEMiYk+1hQDOZmTBMAX0HzcXIOZXtrt6SXPsdctVYfWgSsRvI7g2C2d9IzwbzHY2YLLA3Hc6WBYxeJRH4s+ycyJHIRuSm4iA2fRfKZeQKAMjYeTKOF50WzrOxuIKrf4lS/6RurWypebGSJo3WPlHt9Z0DFgxfNGhQiwT1QSArduHzJw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=j2O+P8u+y+hld455WuSwVBh4puHP4gZcReSfR3clV7A=; b=URuua+OkZUPUNDqR4GUhIz7rJiV3TWq5C39gVGk4JvAReurEW5jv1cSDbaoZPmlSYWJ8m+1lawtef6wE01Nj9n38B1GyBuQQ9RQpwjakQspIGqIELJBUJei71eCvo/KxKqVp9yq65747C5nlPkDpmo59osYtfE+VFm6M2Xi/oMY1l2SfWgm+lSmdj36Bdk6YyVQM/htu9Ua3LOyTpSLxx2k7+tke/cEBXrYrdR7T5p3l+nE8iRMUg9WqZoGF1xXNx4rIintAjCw2m23ThFvb+QwWiUYBNV3Mb0zfG6dWiHMI+4xOzwGTF1UDHzch+XHV3OHis4Y8XTLcWCD4Y45tFw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from AS8PR04MB8420.eurprd04.prod.outlook.com (2603:10a6:20b:3fd::16) by GVXPR04MB10899.eurprd04.prod.outlook.com (2603:10a6:150:225::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9520.12; Mon, 19 Jan 2026 09:56:16 +0000 Received: from AS8PR04MB8420.eurprd04.prod.outlook.com ([fe80::3f0f:857:96a5:17f]) by AS8PR04MB8420.eurprd04.prod.outlook.com ([fe80::3f0f:857:96a5:17f%3]) with mapi id 15.20.9520.011; Mon, 19 Jan 2026 09:56:16 +0000 From: Zhipeng Wang To: daniel.lezcano@linaro.org, tglx@kernel.org Cc: shawnguo@kernel.org, s.hauer@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, matthias.bgg@gmail.com, angelogioacchino.delregno@collabora.com, linux-kernel@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, chun-hung.wu@mediatek.com, walter.chang@mediatek.com, jstultz@google.com, amergnat@baylibre.com, aisheng.dong@nxp.com, jindong.yue@nxp.com, xuegang.liu@nxp.com Subject: [PATCH v2 3/4] clocksource/drivers/timer-mediatek: Make timer-mediatek become loadable module Date: Mon, 19 Jan 2026 18:55:10 +0900 Message-Id: <20260119095511.3030739-4-zhipeng.wang_1@nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260119095511.3030739-1-zhipeng.wang_1@nxp.com> References: <20260119095511.3030739-1-zhipeng.wang_1@nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SG2PR06CA0241.apcprd06.prod.outlook.com (2603:1096:4:ac::25) To AS8PR04MB8420.eurprd04.prod.outlook.com (2603:10a6:20b:3fd::16) 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: AS8PR04MB8420:EE_|GVXPR04MB10899:EE_ X-MS-Office365-Filtering-Correlation-Id: 07ad5bc2-3c6b-4fd4-dfac-08de5740fc71 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|52116014|7416014|19092799006|366016|1800799024|38350700014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?rovE1YSwxJ/buEusXY8wfgqNPW0k/k8BulbNFKP1QxvMekce5e471lrn4AWS?= =?us-ascii?Q?/UKxw2Ocol6GfJV/XSd+XmQVuKM5PefdfDFXCqYyoOX9iJPaUKKaAwQkaDUl?= =?us-ascii?Q?TfO2VkKLSwV2ZfKkukJ73kHinE2DOrDp+nkR1xvmlRb4sXsSiZcmsmUlxjzg?= =?us-ascii?Q?Wwt8m8CKno4FvKhe137w6oXAyhtQDj2dl6BbIaW6ZWfaQe8WvxUUlmyRbOy6?= =?us-ascii?Q?3OSUMOMGyQjKHUWSJs5ogHPxCzIXoWOYxrb4hBdB4PzcrYurbZwZKlmaXG1z?= =?us-ascii?Q?6fgirqgJXnUJ5OXxkeT39aA2PJMcYCSiekksjzo7cMFywxz9PQft2VHKIrih?= =?us-ascii?Q?ujQppF0WnPaJYeLqYS68wrhm2Q47oQKtP2Nab1+OGo/FFfKReNyXsQzH2AFT?= =?us-ascii?Q?nExNrtU1LSho9ZBV29hr+KNNT4cpejaOAcIcTNfRcgOcTUMxqQKPFvryld7R?= =?us-ascii?Q?EV+zG1YTZnD3rUFv6jhKvh1obG5ifdDM1C1Ko/JzmfJ6cWNCWJYJqNEimRfs?= =?us-ascii?Q?Ysm7Ce7B56L74Q278/MgFG778zKieEvUAowtFK7KXprHoCzQXtrStK9T23Xn?= =?us-ascii?Q?YfNmNLrajxnZLIzZ0oJ3aNKDzaYpNVhj4fAnjbP4fQs3PNrVXDfS7hu+e40Y?= =?us-ascii?Q?98EboTOxtfc3FiLWQJ/MSQqXTmkmOwj9ZWvHjb1hXPef5dC+JJdw5rAHVB2h?= =?us-ascii?Q?Cn2cHf17wacc1B02gZ7lkdeMvlZpNKzkDuXdyoIjmGbEQjoyVr9IqdT1Nvgv?= =?us-ascii?Q?G0AFfv9NcWJZNFMJgIjT9OxUuQEjYx2390umNH5aylBrOe5vczXFaeocYwm0?= =?us-ascii?Q?OwmKaALAd4ikHRTE9DXcMllariDF9AaNQgeWQnInvYHH3UEMcJQOhpzx2sD+?= =?us-ascii?Q?W7Y5Ctgv3fT/kY3ip5nnt3muO1GfP9lr+zMZpJboDMAss0Q5gsumq5snnd19?= =?us-ascii?Q?i9zvgLt0zvqXFLu2E/RVd+GpkYnDwFFktl/TOLoHatk+Y2eEIdO21/G5eR4w?= =?us-ascii?Q?Yr5vjVR6CKNhyxjvInkbSKBe767tGWwWLELP1+Hl4y3iixCI1KR6xmHSS4if?= =?us-ascii?Q?bCKASg2/akOvFZ3gp7IwiuEr8174c3x7nayGWw9Ayk4NAQbR6Tby0m3Vsh/n?= =?us-ascii?Q?6om261n1oqdUXruoCu700VGPjALnB1IrJFyhaWYa97nXzucyCXxn12MLx9YZ?= =?us-ascii?Q?ASpf5f8qVg/gywhu2/+Eku1DHoMJ2F+zVlOgP6nny6/ORknb4rCd7k+kJ+oq?= =?us-ascii?Q?Ot/4rz1sG+RfUjmp3HQGyk13B4SDyo9lbb/13EaTLDDbMZHG9I82udDb9yqG?= =?us-ascii?Q?EfkQzQ4cJckHXLuY+s4KvZpixDS78+e/OGXoiUv8hiK/pO3nGnNsvNx6qDBy?= =?us-ascii?Q?4qNpJED4mc9Aoy1fYKSDEs7D8oOUZy7xZ5nIxluFc3K8nN7n7QNZTX3w7LNN?= =?us-ascii?Q?aNFCg2p3yqFKas6f9YZ/ZshC5VYN/Olx6gVR9RsAW66XEUl4C/HSbusEB4ed?= =?us-ascii?Q?ohyQAyU3ATnmfU+dm4h7zQO7rQs1LK465JCNfQdm6/uo1ZtDXGHSGxKTlAPB?= =?us-ascii?Q?F1Fj5wKAVeqGEutZjytiOb0PGLVOg7c+ho9vGAyTIArJMyg2JBBGxzv30AFC?= =?us-ascii?Q?sCev7/H93d0cX57S2oBG0AU=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8420.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(52116014)(7416014)(19092799006)(366016)(1800799024)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?IBLyrqZmcVn/EM0jMTV6nkNLn9XFZRtuUyIbjjEgM2VWchAK8cSx5FB+rnO4?= =?us-ascii?Q?IxHv+hR2ULra7cDMG/dDrYc7MzQwBsN0cwTL55xJSxjE3XYuZfmSGHtz8lNG?= =?us-ascii?Q?LkHNCZi7dBf/ekOC6/9Yub33R3T2kdv8INHOWsu1kOoqZQJxJyJIpkpuoZ0K?= =?us-ascii?Q?5H+gUm5jnuLMAf8IRGOQ/kNOeKUi19dt0V3yz9kyqokvc8k2o8sCNus4c1jO?= =?us-ascii?Q?RjkxYovN14mRiQ0WW9oKGw1jfM4V3WKxiYdg0ht3oLHhnRQFBWyIXqQWxIKM?= =?us-ascii?Q?+Z0Q/bKeCySJghm6d3WH9+7onJG1cX6svvz6h63KM+yY53BXIVrxD3YtXqSk?= =?us-ascii?Q?vgNxHWqWY3feS2WZzkb/PuWnBhIJ96t08YGbR4XoRh6PardU3S4veLZBejp0?= =?us-ascii?Q?1liuhoyx+NuvCCTqH77MYof1ZyymOjyXBEHUrNAdc555fDh0On0OXXsDWK7e?= =?us-ascii?Q?fUSqmjDzzvAuqbghOHZo9Ui6pF7EaQIUh4xiwZM2HwCJKvBebiFn8U97ypl2?= =?us-ascii?Q?CB9W/xGohk4qX6QusHrnYdNU6+7vOfVZm0n79CIM12WZQl8Ht6Jr9Byvd+ta?= =?us-ascii?Q?NIqK+qXmws7lnMLCMWkOr6OMuvEShVLb/dVWfU4xCaGSfqmYVkgwvvgC0HpE?= =?us-ascii?Q?r/vLab8lZ59d/b0VaTFIkrD+iMn/MJGX5k3xsJaGizRCsQIt0ddHi45CEgIt?= =?us-ascii?Q?LtRksTRlQG8p5segPxaC6iEVwIm5tsWYXkG4RmRQWaMIFH7WwvKmrR7ani6a?= =?us-ascii?Q?Vr22M7OqPAS6VfpuuaGSi/pmMPUyQ+mKihuB5qwpAKu/BKevg1yVV+qpUCEG?= =?us-ascii?Q?a3s2o6vP13FR/6mN7Z1AYI+I7IhkCQZvnggt/Hu2/VXMPkBldQOHB7je8Gvg?= =?us-ascii?Q?xuVTBaEOd1QWtLFOZq0KVyG32yksQQpsvmRF9yaexIrHNW3cDTnPEkFVqTm3?= =?us-ascii?Q?KUA66fU95uUVFVfPik0tWJURWbhn9NsIbACCokkrz2T+dzJC4VMKswcuyyxG?= =?us-ascii?Q?4ULrA4nEenfgLZ7aqpao9Llp2T0kxXi0p8TJX/XFLwyqTff6yYDxnDquLRQA?= =?us-ascii?Q?qtP2/a5pecCv+u2gBOMhDa6dD9H+lh8SuIMw9O9XxFjG1EFC6IxQvZ+BJS+o?= =?us-ascii?Q?gR8Y8GQ9HQj9nC3O2l8xT1fIR0f7Fpsgh5khOPBxQKjZglgTwouLrFwqpcUj?= =?us-ascii?Q?3kyyjIVw6IUu5X56uqaZxUzRtqofISLaOqfXUG27XudAOgz7gv1gygoZrlVQ?= =?us-ascii?Q?1rwM31omjKbEP21Of3IIL+rv4zEoIt/3sCOq2yYCrS9wUwPd7UkcL0SS8kZU?= =?us-ascii?Q?vgyiHF8okc8a/DwUHYCjX4CrjIqGhZn1CXxyIgsIxjCkvjlxsYsxH/OgoH2s?= =?us-ascii?Q?l32bn/RrI5K+NJ19KmE5hOyW8kJ/3SvJZMPvNik4/6ySw1e+mmVSl1AMfSoF?= =?us-ascii?Q?A/+EOhFRPiRKId3JQU3YnX26RJ5Kj0qNHs2frqo6aFqovGWiw0ADMMXDgYRM?= =?us-ascii?Q?1M2fzFdmCYUwPHeH5Y0tbtTvSmf3zP5cQjTugsF/8ckYw+iEnOc4p4xVDF6X?= =?us-ascii?Q?i//ysDci0M/5VU3+nww1Db4L2vdsq/pVc6NwK/j4XCnkUxMan29F2svLIFXH?= =?us-ascii?Q?RotRxbQ3b1bMFQvQ17uXs1+/1PRuRXOl7tPUgXoSuFOPDcYWnUgEVLG5TCxV?= =?us-ascii?Q?z4QFCZ/ATCoJLLYOJrk+70wKWjGi+VplKh8PBmDIv8IWP/Zw27W7/jfrHhCb?= =?us-ascii?Q?HHLtp8VJww=3D=3D?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 07ad5bc2-3c6b-4fd4-dfac-08de5740fc71 X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8420.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jan 2026 09:56:15.9730 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: RadzX6NYkL7bw2dzi5qpRBjdRi0D2ILs5teryshPG/jmbANHQA1r7Dd/PsTza5I/vXDNREjBsY6xKxPR/IX1zg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB10899 Content-Type: text/plain; charset="utf-8" From: Chun-Hung Wu Make the timer-mediatek driver which can register an always-on timer as tick_broadcast_device on MediaTek SoCs become loadable module in GKI. Signed-off-by: Chun-Hung Wu Signed-off-by: Walter Chang Tested-by: Walter Chang Reviewed-by: AngeloGioacchino Del Regno Reviewed-by: Alexandre Mergnat Signed-off-by: Zhipeng Wang --- drivers/clocksource/Kconfig | 2 +- drivers/clocksource/timer-mediatek.c | 33 ++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+), 1 deletion(-) diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig index aa59e5b13351..7d0d55c91c3f 100644 --- a/drivers/clocksource/Kconfig +++ b/drivers/clocksource/Kconfig @@ -487,7 +487,7 @@ config SYS_SUPPORTS_SH_CMT bool =20 config MTK_TIMER - bool "Mediatek timer driver" if COMPILE_TEST + tristate "MediaTek timer driver" depends on HAS_IOMEM select TIMER_OF select CLKSRC_MMIO diff --git a/drivers/clocksource/timer-mediatek.c b/drivers/clocksource/tim= er-mediatek.c index 7bcb4a3f26fb..4ad4bac6f34b 100644 --- a/drivers/clocksource/timer-mediatek.c +++ b/drivers/clocksource/timer-mediatek.c @@ -13,6 +13,9 @@ #include #include #include +#include +#include +#include #include #include #include "timer-of.h" @@ -337,5 +340,35 @@ static int __init mtk_gpt_init(struct device_node *nod= e) =20 return 0; } + +#ifndef MODULE TIMER_OF_DECLARE(mtk_mt6577, "mediatek,mt6577-timer", mtk_gpt_init); TIMER_OF_DECLARE(mtk_mt6765, "mediatek,mt6765-timer", mtk_syst_init); +#else +static int mtk_timer_probe(struct platform_device *pdev) +{ + int (*timer_init)(struct device_node *node); + struct device_node *np =3D pdev->dev.of_node; + + timer_init =3D of_device_get_match_data(&pdev->dev); + return timer_init(np); +} + +static const struct of_device_id mtk_timer_match_table[] =3D { + { .compatible =3D "mediatek,mt6577-timer", .data =3D mtk_gpt_init }, + { .compatible =3D "mediatek,mt6765-timer", .data =3D mtk_syst_init }, + { /* sentinel */ } +}; + +static struct platform_driver mtk_timer_driver =3D { + .probe =3D mtk_timer_probe, + .driver =3D { + .name =3D "mediatek-timer", + .of_match_table =3D mtk_timer_match_table, + }, +}; +module_platform_driver(mtk_timer_driver); + +MODULE_DESCRIPTION("MediaTek Timer driver"); +MODULE_LICENSE("GPL"); +#endif --=20 2.34.1 From nobody Sun Feb 8 15:01:37 2026 Received: from OSPPR02CU001.outbound.protection.outlook.com (mail-norwayeastazon11013020.outbound.protection.outlook.com [40.107.159.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 EA43434FF59 for ; Mon, 19 Jan 2026 09:56:26 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.159.20 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768816589; cv=fail; b=qx9kmE8SBaaetiMJ/B0H3v0MteY16Oqklkk0IxywZv8+V3pUR7Cmonr3boipggZmfyMtHvL6BYeaJ7rTiC53ISLbueELUyBdR523IKAoB6PQnWtvVcYZJtt+4sazG4nmrKm0Q4TVpD4nWBxqpJYiXjZ4ICbaQ5yyD88UTPq+TTs= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768816589; c=relaxed/simple; bh=EN0LHS/709h9D25s17pKGkDDXhqgAi8gOd2nzEbOdVM=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=Q09Rq6dQ+0KjnrwWAQnsR8tQ22yddDStyz8PqulNXX9eIxmYHJq9Z2UhGpOzDy5+ngOGso/Qhxno4EYZxw+sARPs7L3OEFN+hpYrt1ReYm0HI4lkQYjoaWyhOGkooPzAxuDfdjSCtHWDAHha080kIlwAJCylawawMyiGDCF0S9Y= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com; spf=pass smtp.mailfrom=nxp.com; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b=mJchOwjs; arc=fail smtp.client-ip=40.107.159.20 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=nxp.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=nxp.com header.i=@nxp.com header.b="mJchOwjs" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=Gr+QJzuqCVHQoPGe/5ExbVS8q3zx6ZmlGRa116rzQuN4h9NzKvLFlS4iza9UyIVQrLBel7ruYV1lUG1F2aOwC01027lQnQaUtElRkQFm26mRWbd5wlniCYQ77ce4xzSxp5e7yQhxx1RkbK28FnvQxvyO5sedgG/aNj1J8sKYswPxJIYltDcbKAFY64mHU2VlMV1R3LF93Mmfl8do0qSQL7tTRpDzfWvcnY+Ih0zrAFXD3mKEPDNgiBDIR1CK0QVBit0v+h1Dd/ow9wV6Si1tf84fOdbILnbrnG8a4D4YESAkxX84Tq2k6P/m80S5TQjS6xgLK/u4qz05M8H0xELsdQ== 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=9tluLN3eK09GX2PcEzpjyDZoZ/309FhdSC0RKk3I2/o=; b=EWMQ5cYMGj+GFgnk+SVyJU5NVjO0tFDeMq/YaK/1ge/F/utC+JsuXb91ccgQrgcW2Q8kgCKdzCWcNxHsemSI73zRf29Wm6RRqKUvJRaxtliYLFRElCYJWS4/u/LKgKKsqhgFBrHnJq5NgPSojnBkktNoOP1IvJbgEskoUYd/OMLfiBhQklHLWNSPe2mdecwjS/q9KRWDNs9fYg08nuveGGSvjzahQyEaLMCwPfTzea2lf6EN6jkLgtPwOpMxU+0Mw4tQi8MqqCXbmdGJ23EqkXj2r94rUyXaTBip5Rhv58cSLtW5lNmTQjwu9o04ulupzpbevW0ncVedWA+ZgsZFWA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass header.d=nxp.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9tluLN3eK09GX2PcEzpjyDZoZ/309FhdSC0RKk3I2/o=; b=mJchOwjsHNAbKemArN66WLa41k3q41Lvkf5ylXVLa8onF95MiGhMDpCCLoCLX4jOSY3TyB34d+jzpVMSm3zoEPWDHgepOSpAf77hp7CIGdsbN2+AVGmXJXwTpXAipl3BglzWWupNMXdaG5BFExqEHn1mgCmys+SGVcJcNRUQM7OWcFC/NbTKqfAkY34LYLTxDft7p2VD0BBfIZnnXRxsHJQoiiZCsFZRgfmRcGKIQTpyL6AFhs7Q+WWkGRReYvQGQ78oYB9Bi/fx04/EYVcV6AS6L2rk4g14VpOcfxbnc1y0ZALpl9e992NQ6lZWtAapYY7UoNnpIvxNEaishoaEdw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nxp.com; Received: from AS8PR04MB8420.eurprd04.prod.outlook.com (2603:10a6:20b:3fd::16) by GVXPR04MB10899.eurprd04.prod.outlook.com (2603:10a6:150:225::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9520.12; Mon, 19 Jan 2026 09:56:23 +0000 Received: from AS8PR04MB8420.eurprd04.prod.outlook.com ([fe80::3f0f:857:96a5:17f]) by AS8PR04MB8420.eurprd04.prod.outlook.com ([fe80::3f0f:857:96a5:17f%3]) with mapi id 15.20.9520.011; Mon, 19 Jan 2026 09:56:23 +0000 From: Zhipeng Wang To: daniel.lezcano@linaro.org, tglx@kernel.org Cc: shawnguo@kernel.org, s.hauer@pengutronix.de, kernel@pengutronix.de, festevam@gmail.com, matthias.bgg@gmail.com, angelogioacchino.delregno@collabora.com, linux-kernel@vger.kernel.org, imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, chun-hung.wu@mediatek.com, walter.chang@mediatek.com, jstultz@google.com, amergnat@baylibre.com, aisheng.dong@nxp.com, jindong.yue@nxp.com, xuegang.liu@nxp.com Subject: [PATCH v2 4/4] clocksource/drivers/imx-tpm: Support building imx-tpm driver as module Date: Mon, 19 Jan 2026 18:55:11 +0900 Message-Id: <20260119095511.3030739-5-zhipeng.wang_1@nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260119095511.3030739-1-zhipeng.wang_1@nxp.com> References: <20260119095511.3030739-1-zhipeng.wang_1@nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SG2PR06CA0241.apcprd06.prod.outlook.com (2603:1096:4:ac::25) To AS8PR04MB8420.eurprd04.prod.outlook.com (2603:10a6:20b:3fd::16) 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: AS8PR04MB8420:EE_|GVXPR04MB10899:EE_ X-MS-Office365-Filtering-Correlation-Id: 6eb8f476-335c-4a80-3908-08de57410112 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|52116014|7416014|19092799006|366016|1800799024|38350700014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?/Z3s0vTlWPayqECOrnAr93Yv3+kGxuZWANDzc0nrHc//jH+Mmza+aGSKpzeA?= =?us-ascii?Q?HUR/d2QU1zGKttEhK0x3MCwOCG+G/aT+8g0SjrhDRzMolmwOMYrQYRaR261J?= =?us-ascii?Q?/JvVw+QT41tYO51TxbdHTCQq/eKh3BwQeoIZRAW/Qx5rDFDcDneTeEAoIDe7?= =?us-ascii?Q?EP+DrDK4lI/O93XACQCDGxtjhKG0s9/APHBUPOe3HF4g/mdWUuvLOWoBUIQY?= =?us-ascii?Q?r4t7DnJj/lybr7vjk+oQMg86Vo725plfBeeWfpuuN4I1wZTR7ghLqwhTWYVY?= =?us-ascii?Q?VgYzE7/V28v94WyCU9mHvq71c5TPyuryGFojc+c4UJIYZctZEZgSg13OJDdB?= =?us-ascii?Q?d1gNu+kTyPGhlUTWung/yRN9hRdvReTbt0KBv4fBKx8PhAQU3scyl3HkIicF?= =?us-ascii?Q?TTkCAnqk/X1jnGVwseNhH3Ft04xa8zMM1fC5J4W80TH92W0XjQRyppss/8zg?= =?us-ascii?Q?gz+RCTneRmzpypj9ikRRjj3cP9XQzXqKbbji+nlV5Al6cagbie2XbWS2ZzJC?= =?us-ascii?Q?og2X0U2HelkK4yX8uMAPEms4axWhYaquREfQFxcWjRd+saV4k8s+0aJRARlZ?= =?us-ascii?Q?9WUn+bE6A52VAzFvX4G/UCgNY4j17nZ7zeroieY6gPVCRLsnAZrC2M3Pa64x?= =?us-ascii?Q?ceLguB9S0FRayfAhHNSRaup0WQt85fR4wYIS+H5IbLCmG3VSbZ/vU1+nXqeX?= =?us-ascii?Q?zomU+zx6Nh+IuRvmpVLBBCI+qsjj04o0kfxDbOtstOb0ctuDc8yEr1j1C33b?= =?us-ascii?Q?f+rthV3QQ+hVqXD5t4pv4MSxlPhoOb+WdWE0yX3CNuzQ9R02s54TooKFe8dN?= =?us-ascii?Q?dwR00U5ZqHn+LVQiXJ+zSeVrf3Wm9ouQ1xnOJ54FTd+i0eLwfdL9toqz7v/L?= =?us-ascii?Q?xT75UDUiNlno3eFK7njyQ+abelWb97fKgp6ja7h0PVx6jGTpTgTQSUKmc1su?= =?us-ascii?Q?JPpF+JeOEYbogko65KBN9t1wBbL5MkoPpn/aCfeWCRfMijL17/o8l05zQ+Fv?= =?us-ascii?Q?EI5ye+2gwKlHAWRNR2JgFQSTcf/B4dQAyUoc0lhoWYt9i1TfgW6iOVvG5jWY?= =?us-ascii?Q?tQE+VmD+/XtTDmZovdZM+c2xzMLWlhFB/DF711pA1GcT/Eh5D3ZHkbqLwmwd?= =?us-ascii?Q?OD7ikuovBOYBcyFGhYWDqg1WDqMKxoPPEoStiIUlL3Navokx4xCuC2lGnRXC?= =?us-ascii?Q?pXLIawmeuF0Cv6GPkSEM8NZzlYrpse/MzBRqAU8yuAwdUrp6DsMFvD4ryQTy?= =?us-ascii?Q?RtZaN70Q3kiW3AeiaB/QSJ33PknVRJpo0gFuPgp1zaK56A7O2tcHFBsbtLA7?= =?us-ascii?Q?b5mTAxMJx0GkkkEuerkCmW5lUQY3Ls2M9/5fOn0PPSWnWMOhuSLIFEDeJFb5?= =?us-ascii?Q?F7GDT9qY7wcL6xG2WSEUN/VA4nkqihWbBoOiy/Bu8zQduNlnflzol0nUow+E?= =?us-ascii?Q?Lw03wPy5cTLJKhHZap+Iws8N9JiK6n03dYnkOWBpUYFKUYVnhXaudrDvr/iA?= =?us-ascii?Q?GSIk7u5oxPPX2BlGW885aRdesfeDdn1RAqVV3yjtwXbAMJBtHNtexKPX3vYj?= =?us-ascii?Q?Z56E9A6tqbD/eMSxxdJF08ZMhBr+uQk9FxGZrTd96xAm+w05DnSk4Jau3MHy?= =?us-ascii?Q?0K3MlMN8afekMgIq58R7mbM=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR04MB8420.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(52116014)(7416014)(19092799006)(366016)(1800799024)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?N2EaNdaZ2RwOnCArvm7BLFZ4mizThGo91WDyJN1GgplRQI99AeDnDDUQr/Yg?= =?us-ascii?Q?b+CumKPQzvCBPWrFlds0fYgcAatsRHZ1XeAngPYmYuZIWm/MzHbZ3274Sk+Q?= =?us-ascii?Q?sKNCh82UUrfPwyBSdcyuZttH4IWPlSXtlgY+ZmyIUdeUua+ipoOdGjCCdKp5?= =?us-ascii?Q?YbtjNAlzmZesj/YIarBGKnM2FjYeua+AXYJy5lH1wrWJOqyJ28/8N7LTtB1s?= =?us-ascii?Q?lrijgnw9Ogg35Rlqx0kU0Iyd7+9uU5F50csa/Lx3hUwl+I5KapRrFpOfi/MR?= =?us-ascii?Q?iyiXl9TBxjjOw9WCAzsNSFc8qkIKr3V6eYM6dS8aG26TRGJly9mLB0Miffqp?= =?us-ascii?Q?F4J5BZRiWGYsjc/zuL1q/jYecdbP404Vx1SZUTLhnTHUS5mlpBFgpMaLoNok?= =?us-ascii?Q?MsNxL2kzOtz4Azzk06lPkEFmCj0Fc6SWstXRWzUb+5ATOOIjZuNgG9F9Crt6?= =?us-ascii?Q?5mTU0uRjV3pP0yPhx3XCIAJLQFslqQV/KuDmQRyfD2HKG3HVXqZyr5n52U1T?= =?us-ascii?Q?xGL5SZKJGw0FohrbF2+MINiSVVO9+pixdnBI0hbWU9/OsPBM8YsWzHK+bwk3?= =?us-ascii?Q?8FDj6CB9fswurSbh61i4YcrfNExSskIkTI5F8d26Mie++hiQcQooP7jg+EuF?= =?us-ascii?Q?kl09SX3VjHWsSBYjY/9S2UZNWU6WhoxcMpUk3Oc6Jk1UUw5FgcgO0uxqXBHe?= =?us-ascii?Q?z47nfHixYfPf2VNmDrbQs9XmKSGDQrjknP8ncQvUypI5MUGVDCeezkWmMavs?= =?us-ascii?Q?8TfPlLZo5aaHG1hgqA7Kxl8B9w1r5lTYKUzYdx02RXQ23L25utmQN2xhBRMg?= =?us-ascii?Q?5tHbzaqA1AhBc6pEKzouh/zjVViCx6Kbg3HemehAupcnLGAKtBwWQgv4g1en?= =?us-ascii?Q?7HP8aStlG9J9wM/FdSNDqgYUOk42N5s1ZPZ13I4+LK/Jw9PO64vQxu4riAGS?= =?us-ascii?Q?uhbwPKMeh+Vn8CDOlEMy+WabKDJ4fZaE+5sCzPKrgq0TI9ZpJHEvroxJnRir?= =?us-ascii?Q?pOa/lPiQoZvX0+lHxscxYrwhZKuVGT+UJq2o6MlZIaS8bj+jOoPi5Ik+OXbh?= =?us-ascii?Q?kwkeDuDyT2fw09gHD4V/qalrqWmWSm76SdKDP2lSIyneRLfYKVTVTbUFEMOa?= =?us-ascii?Q?mLVkbyZSlgziaTrOqmuEtfsnE+iUN+kxuv4PKfqR/Cu/e7HThjKv4mtAPXUx?= =?us-ascii?Q?UqGLYvqoLAmuRDC63DNNqMO/oi2LVDnUapyJHtFaeTNdc4yjOZTixBj6Uxh6?= =?us-ascii?Q?xNx+YbKLXUp+ovS9NSRmWHAxDRSUMoAKZqtwozch6AFwg8rm9+m9E1Ynyf1y?= =?us-ascii?Q?FXMlJhJEieUFHVT8LuWGwfCQppoT77HEPwhhRniI8X3gwEPKEHKtN94duQmw?= =?us-ascii?Q?wQoMXsA495jwhB96Pthem09xIzjpcdgc00Rt2E6sWlBupzlD4m3zgdnNOvW9?= =?us-ascii?Q?kU95NgViH06M0lpThRa8R2KqENXPnNbq7fmxkvGXcc/KTl5tHu7Git/cqVlg?= =?us-ascii?Q?VodVfTdA0ymWnoDNnpcz3v5rqvcOe7Gl/cDYWC4+763QQwqdCu2I5u9SSK+q?= =?us-ascii?Q?Idedu8uACaNJs4eITbGuMwo2MT3cK1S8+Aui4k5kR45OAqsBf2yKgGw+idbG?= =?us-ascii?Q?8x3no3fDUtqRknwtEgBHS4wJ8iQbx4Zt8nZ4qlLbfkP0BAbm4qpH2D1m8NE+?= =?us-ascii?Q?O0PCYvfQ/8B8Dc9P9PAH/1Aqz+VR4822EveHOSnAj4CRDdftQjtxBqqkiT/P?= =?us-ascii?Q?cfzNO0rGMA=3D=3D?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6eb8f476-335c-4a80-3908-08de57410112 X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8420.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jan 2026 09:56:23.7803 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: lUbupXGmcm0ntMRjUV3ih/tsXWTZBtqtMsOM3EyZwaQwIjIt8a+uVL/z9x0emnb5wOe47nV5viGsdvh3JsubVw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR04MB10899 Content-Type: text/plain; charset="utf-8" From: Jindong Yue Change defconfig as tristate type and add platform driver to support building it as a module. Signed-off-by: Jindong Yue Signed-off-by: Zhipeng Wang Reviewed-by: Daniel Baluta --- drivers/clocksource/Kconfig | 2 +- drivers/clocksource/timer-imx-tpm.c | 36 ++++++++++++++++++++++++++--- 2 files changed, 34 insertions(+), 4 deletions(-) diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig index 7d0d55c91c3f..511aedf52a32 100644 --- a/drivers/clocksource/Kconfig +++ b/drivers/clocksource/Kconfig @@ -612,7 +612,7 @@ config CLKSRC_IMX_GPT select CLKSRC_MMIO =20 config CLKSRC_IMX_TPM - bool "Clocksource using i.MX TPM" if COMPILE_TEST + tristate "Clocksource using i.MX TPM" depends on (ARM || ARM64) && HAVE_CLK select CLKSRC_MMIO select TIMER_OF diff --git a/drivers/clocksource/timer-imx-tpm.c b/drivers/clocksource/time= r-imx-tpm.c index 92c025b70eb6..419d094459b2 100644 --- a/drivers/clocksource/timer-imx-tpm.c +++ b/drivers/clocksource/timer-imx-tpm.c @@ -8,6 +8,8 @@ #include #include #include +#include +#include #include =20 #include "timer-of.h" @@ -152,7 +154,7 @@ static struct timer_of to_tpm =3D { }, }; =20 -static int __init tpm_clocksource_init(void) +static int tpm_clocksource_init(void) { #if defined(CONFIG_ARM) tpm_delay_timer.read_current_timer =3D &tpm_read_current_timer; @@ -171,7 +173,7 @@ static int __init tpm_clocksource_init(void) clocksource_mmio_readl_up); } =20 -static void __init tpm_clockevent_init(void) +static void tpm_clockevent_init(void) { clockevents_config_and_register(&to_tpm.clkevt, timer_of_rate(&to_tpm) >> 3, @@ -180,7 +182,7 @@ static void __init tpm_clockevent_init(void) 1)); } =20 -static int __init tpm_timer_init(struct device_node *np) +static int tpm_timer_init(struct device_node *np) { struct clk *ipg; int ret; @@ -241,4 +243,32 @@ static int __init tpm_timer_init(struct device_node *n= p) =20 return tpm_clocksource_init(); } +#ifdef MODULE +static int tpm_timer_probe(struct platform_device *pdev) +{ + struct device_node *np =3D pdev->dev.of_node; + + return tpm_timer_init(np); +} + +static const struct of_device_id tpm_timer_match_table[] =3D { + { .compatible =3D "fsl,imx7ulp-tpm" }, + { } +}; +MODULE_DEVICE_TABLE(of, tpm_timer_match_table); + +static struct platform_driver tpm_timer_driver =3D { + .probe =3D tpm_timer_probe, + .driver =3D { + .name =3D "tpm-timer", + .of_match_table =3D tpm_timer_match_table, + }, +}; +module_platform_driver(tpm_timer_driver); + +#else TIMER_OF_DECLARE(imx7ulp, "fsl,imx7ulp-tpm", tpm_timer_init); +#endif + +MODULE_DESCRIPTION("i.MX TPM Timer Driver"); +MODULE_LICENSE("GPL"); --=20 2.34.1