From nobody Sat Apr 11 10:36:10 2026 Received: from DB3PR0202CU003.outbound.protection.outlook.com (mail-northeuropeazon11010047.outbound.protection.outlook.com [52.101.84.47]) (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 8AEA7266B72 for ; Fri, 6 Mar 2026 08:50:55 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.84.47 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772787056; cv=fail; b=Slk+0M5iEnXSxC/0YdH/HPjSF2qXzytvYKBxatWnuhDke/Jdicm63JtENuyjlcLdsY/cgKdPdH4P+FVs4aKx/tEz5PFNXSLOeiB+mrnt9QUjOVbqFJbee11x/muO+RSmbpYgfmpkHXmeOOSf6atLQWeeFBcq1vYIoq3olO9ncFo= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772787056; c=relaxed/simple; bh=j0Hx5dgfGvJ/qpoigWoQVOwOhkGf6TXc8K97Ub+48Cc=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=qFD2O4+XtuA76F2U94npxe4nfoLEm34PNXrz2h6ks7IyyJ8DMYQwOVFkb1Y3EJvlTjKwZu7V4jRXr1hX6R1S4Cd5tpi4Ovqv5+PbG8jbuk2TXrowV50ForjflTC3DYvm2YLaY89GfFxa4TSk+aJdMXAbY5SfxmUHCXteGD4haGo= 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=mexaKjEr; arc=fail smtp.client-ip=52.101.84.47 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="mexaKjEr" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=BU2dXa8xlK/HODuqqJvoFu2aJUdb62wHozxvGkKkl2M71u44+9k49h+nj13WEXTW4R76sP1Cu0EAfcGVtKCJtFGJVTPyLQ0V4BxRsnBC4naTqfuhzbr4X2r34/bOMtUFl2vABwQGZaK4CHBVXZR4gcnRzp7eI+K+7XpKfj2D6NEixbroXWf9OuuqwBe5jWvKEmMkOkXEtQMOoNPxTfom6y8PaVZabdbP+PN+Ch4XHhVoq1SXfjhhq3+/NaaYsulw+AK5IzoRF5YjfD5kt4LyZXOMqiB6uiGUI6S26imIFln0R1RAv7LWeXS9/oSiB9WMrcPGl5aCT1X0QypuY3uurQ== 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=23anFRbA3wX7nx7vMDPlpUxuZvY2BLJ7nqAYOoNc8fg=; b=Au9cxUQavut9d/rKq1HsNgS5fQk3rmaE9/s2XeB6m6KaD6pjft0o/AyH6j5ZFvyzPEmb281c7X/FdFtUza4qkX3KeNDCELsNh++rPh+lqc82W54XRdg5eE2mQ9rJLNm1VN1RjCX7oi4x6ABkVSJ88p6qNqd/7m4ZQQ7dVpNDEzZcLSuPNkabkDZgTzUMQmHGvCgaNAGgtLxjNGUgLNXLNxhCryXLncnici6Y7BrWmIcQfHhQGJFV/vwPSwHLX6Sd+LjhgHbcWl8fvrBtaVBf7JC937neo8VnIM12FME8qPz7c3cjWwpNYy56RMNXfocXeUiwAuauyAPzA2TIIYMsFw== 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=23anFRbA3wX7nx7vMDPlpUxuZvY2BLJ7nqAYOoNc8fg=; b=mexaKjErb7IT+nf2J2gkebkPu7GLTfgc1LL/PbvPjKV9XVIZZ7knmcXP0LMUG1aEw+Av3ZllNViTV3MFE/x6MV2kiSncOrAQgXguybZKfJq3VbblSaHNei7T9RNZLO3CFSkQ/XAr8M9b6hkdIJPTaKUyqX55mcyjGBU3z6n0+xk9wO2YIkIwJmEcc8r84L3/8KnFLLtuXjpDjwnCZ4BnU1iiN9klFJOChcbzl+bIxX3vWxmMu6SAAkg1Id+ueCSNo+Lpd6lwngCLGUo0lAe6+RJ/7Hsk3za8UMreJK3a2kOHKYPlYZzJ3GTKBf1R1Iol9ObXNS8NdEoLi8BHxIZJ5g== 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 DB9PR04MB8122.eurprd04.prod.outlook.com (2603:10a6:10:25d::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9678.17; Fri, 6 Mar 2026 08:50:52 +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.9678.017; Fri, 6 Mar 2026 08:50:52 +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 v5 1/4] clocksource/drivers/mmio: Export clocksource_mmio_init() Date: Fri, 6 Mar 2026 17:50:18 +0900 Message-Id: <20260306085021.1231032-2-zhipeng.wang_1@nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260306085021.1231032-1-zhipeng.wang_1@nxp.com> References: <20260306085021.1231032-1-zhipeng.wang_1@nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SI2PR06CA0002.apcprd06.prod.outlook.com (2603:1096:4:186::10) 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_|DB9PR04MB8122:EE_ X-MS-Office365-Filtering-Correlation-Id: 4b69580f-9cad-491b-5fb3-08de7b5d78a4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|19092799006|376014|52116014|366016|7416014|38350700014; X-Microsoft-Antispam-Message-Info: 2Dgq9TECH/De2F2JBs2RZNTXZk3nyt7lfVVdzs049gFVQ+1wwDbVVJDnlSGzX8xg0fxMPf+QDg4UOVMbgUSfihHZSYI1hW7MXynrukDkTjKleLSow0Ak97IzLg5mSKyF5wru0bRlNW+jSegC+XgzIeuVNx/T8hGauzeqdJ6Y4LuAs0+0V+Rqq6hQP8DGi+2m23bNRxc8vRg7ik3utcDqN8xRv8rM7YnvB5nhWU6WtUkl7MG/wqO/FIBJcAp434CV3HDd/vp5WcLpWn/PXSxGKf29kqKoYHanicb67+j5grEc+rs0xaki3gwZTHYQ3AFPQhe/TcsE0ozXihRmpONlxqWysdwIOyM7DqS2LHtOnjpYiTiRPY2nChs2ca10qNy76zA3Rg39saTptm2pQG/hrLiKo+qEL6wCViEvF3oJZcYCXP/krAhL8yYw3etR1Gw01T7T22Pn1JcZh/keHv+RGJw149bXhUhcxE4VstglBRxUTPriGWBvRKxnIXlzmgcPh2h5AwQlxMNQAvVIXzRntV4mP00EjyKDrSxNWTLeIwKubBbbf/Rq/I5IpkJM44nvMeR7z+2MSIyh4kWd9rpqI0r+n2wPjH6hsbP6a/tvAu3ieH2Lfo6czmMzUPtmzmhpdP/1MQ2x6/1z4pYO/fu+gtO1NTBVTqhL9ihfL/8DARiYBsHhkf3DT/Do3F4WUiZNvUJu3EeHhENJDHM3ycEQ76Z/YymmCmRtyfXKCRJaoTSrIcIH/OFkJgPTeQh7iSZZZlpm4/k0Kx2EiUDxBAjkY3YC/DcwmjJWXkAVgdlqbKw= 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)(1800799024)(19092799006)(376014)(52116014)(366016)(7416014)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?K4RZR2ol2+E2hc0j4C2SYNpXy0w2RAXBBB/lyPWXXXMRQNEvrwZ4J3QlE2T/?= =?us-ascii?Q?OvBQzwjd/1YVmXnAvtbHHScrCrPUnxEhuGPJyghjI8wkiAbxgZcpOn1tcVXW?= =?us-ascii?Q?KZrE7QNqU6NPplvB+jXE6a+CbdpiG3K5GsAQfqMGiKdtVgmFLoDi4nOsjA4L?= =?us-ascii?Q?F/n/yoBYOdbM0Ag6zn7I1sGZjd8LFyXztac0iO8y9/12URLoz4Q1NMvLaIwZ?= =?us-ascii?Q?BABy/t+i9V61SqhGDBb60kTVMWEVM5Nr2sBB+GyMyE6Q/sgyT8uDNnA9p9VK?= =?us-ascii?Q?725zmxjUepg56hvhgB+oYpXDBgwEKi60tOJGEn4GqgFcL95MMxiB0XRiFMks?= =?us-ascii?Q?tn6xWJ/HCV+omKxxVr1CEJZWKBGeU7DcmDpgTRYYaS3pZOcOcGbQbRZN3Tqp?= =?us-ascii?Q?1t4JskAaSLF3VH0JwO2tL0iAS0IFy3JD/byj0VsndzsXuI335x58Zuj4fBcw?= =?us-ascii?Q?PCO2Mq0toIUL4rtsjU6TERTqsHXzGjJWx5ViiovxGV7J4guj18HVX490i2ZC?= =?us-ascii?Q?SoY/uIoaO7NccwyQfTUe7WXdMU30cOH6hKJpGLsc48bjMzbEHStcf7p2J2KI?= =?us-ascii?Q?eX9f6SMBunE+dCcqcis73ROCy8HVVo2BaJW3CBQvhwmR/WeH5CX9Rkl5tVvO?= =?us-ascii?Q?El5ZCr1nLaiUgZlzKuRSBsSchzPsX25btu4o4l6tba74mAjSNjDQIrSA4wzD?= =?us-ascii?Q?jGS35nVj1c0FEObS0STIV0IFvyyogXTfb6XzqjpLh4gAGQjC2VGlA4qMvZuo?= =?us-ascii?Q?H2tM+5NhEsgU6Eaw3/8DHxIYmUGm91Ik47TX/rTj2foxipCMc7QXEOeATQYD?= =?us-ascii?Q?Jsfef8P+kq69AvFHmjc5AZs6OxhOOq8BZXy38lPwIgRhL/86TDAL56M5Z9UR?= =?us-ascii?Q?/VGAunF7iFqXhSOP2H4QCOHghc+GkbKmicVuHT3ovkA8d7AIa5WXwvoMY9k9?= =?us-ascii?Q?1XCcG+Jh5ht0Mk+XPO/8+qyeZwhDrCISFdzEs3+OliBqv3KIBHDlckJaPCZe?= =?us-ascii?Q?lisyvy4x5aD8+bBrJHzNdiw6JK3r8KEN2QgqXpyg1WZtef2dxwOJNGbYBub8?= =?us-ascii?Q?n0A1kO3mzd0WpYbCq5oRCFITZX2czeb7NOkCePf+zn7FTxlE9xVRrOqB60nd?= =?us-ascii?Q?RAdVHg96eEGLGtedmIDk3ITuY6SirclQxC66H6K3Z3V+6eK3nkGLYcjcvDxH?= =?us-ascii?Q?QS+oKILBhMAlwZaJ+NCslx3Hugx0ybAakFQSd3BIPaSj6KfbYzjiJpa11x34?= =?us-ascii?Q?YvPAhy78Xkqkw4DGUASrJjgO3YVP8fZ0/qcdjC4HZrDJcisdWTYzaL85xLhP?= =?us-ascii?Q?C8tmr4WFFLe0JIsVtvfpupuYFKHhZ+C+UFvNhmY6i8RMAAMvoIe6Qn8LAhvh?= =?us-ascii?Q?GMB6WJYk4qdtL32JJoI6lUVEekeCFDRY9MPMTf7Z1Awqsc7Jp70nqdJps6RT?= =?us-ascii?Q?zHMAYjDaM+Q5Y95xAglNn7q/bRiB3O4U1T8mY4oeUTaNbSre2n00VBWCwzhf?= =?us-ascii?Q?YSxPal7XJR2JeT7AW8GtorgLSx/tGvrIvECV8bOD5Zp6HABpEyvT5miHZon2?= =?us-ascii?Q?Zh4fIkpS8OQ8tpKESczRRX94YVmb7lEXCdlCzrfw4XnyqoQoQB3sA8ceLceS?= =?us-ascii?Q?0nNU5a7LHwFrs96o38dkTdzR0QZhx5o2pIUHuIyWUmNfWCu7ybrV8Q17qK1e?= =?us-ascii?Q?raYk6fvtC3tWQboQXM1mnS6VwgeJuJPiWHH6tbInWvCnFdmRxViv04rN6tje?= =?us-ascii?Q?Kb7T4UXt+A=3D=3D?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4b69580f-9cad-491b-5fb3-08de7b5d78a4 X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8420.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Mar 2026 08:50:52.1428 (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: WGGWEENj86jRxDDIbXZhM0DJcZKLLrPcIv8KbSJAGc53xpwuQwEDFd27grwaP+ipglKyXKpip7h/LIOypPGZdg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8122 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 --- 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 cd5fbf49ac29..238bf29db6f7 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 Sat Apr 11 10:36:10 2026 Received: from PA4PR04CU001.outbound.protection.outlook.com (mail-francecentralazon11013058.outbound.protection.outlook.com [40.107.162.58]) (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 9992121576E for ; Fri, 6 Mar 2026 08:51:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.162.58 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772787064; cv=fail; b=tEiUf1xv2mAy1ImVLKS0ztu785VMSQjwMJbiaH0TC0Mh/tkMc2vXqPCKLgvIS8cXJ+R/5NkrkmOhjyVr5C7JqKQ5z735vmjXQqqB4YPK+xgYKqBbjtVhSmI7lIwMRrvovo2RHnh91diMdvqLyWIrHG4pZgcWvZ6IWuvgvZjlbYo= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772787064; c=relaxed/simple; bh=pp5EMhI+dquLsKN0R1Fpup2hpzWfSsFmd8FzUyIAhs8=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=SixZ2Rl4+UkI2emXGY27k3o6bwjpp4NaR4aPoQTyFihjSgL+AFy9Q35yX31PnbG+M3SF0PdL5W99+2Z44j841b1BsWLgcpswWlESR9DlaKsBEULhpn2R//tTQTvsjcEM46T1kP682JZZt+Blp600ynsKzxsrj+PCt8I7ahRpMPo= 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=mvHet6hk; arc=fail smtp.client-ip=40.107.162.58 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="mvHet6hk" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=gQrMCwGwfgg/daFMTwxBTNvrsH+qL7Rfu2qJotiTUj1X/YTtNdvyviAK9q56fjeah4df7IzVrGBTMS0j7i3yFsKpUbGxKw3gMK31pOm9Bkq9K9Gn00ix1fsyJjNYw0iguXUn6m6/yMRySNUUkjCpUpSNLnTXTDfIIHU9/ZnTOYhrkQL290dtXUOzskblbTYhe9Xk76icuSSQ8FgavzajLhVn4ppJ4fpiL/NEr5GrfmV4xQ6w9rTyu8E71Hnx7xOO9AfMYAkMMM5yRNJvrsi7/iljfSK0FsRVDN6x0ROuolLNM2wg7MWPn8YVV9I7VWEsA6zYDzPXDFzgUe0rorA18w== 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=MWmxUeTgxJTxVOKMlyeOovbjj82O01RoBrjIiRuCE89FdzFfd82SZTaFOg20YzCCza0GglmbABkNdJz0Qe/kBfwLPsqY39va1SDQFqirl9VHm4O0OYndJAahZCpuhp2+SL3BIc/cRLFm4PG9x8wzMaLWeQmJEVYQPj0eEuWA6e+QCbLGibSz9LIYaByo+unloFTZ54VzgP4xPpcvoJlLgPThdCqNBchr3nWs3Yu3mcx1Xh8/IP5QakdC5JgQtebhOtQrBpz/mgZNPkaof4mb9nikLEm9sT3VoBjIqbQgvk4URonqGoX3RtsvgWjmRwgYutUOLSVRCfmb77eBlXntsA== 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=mvHet6hk/YQwiS+kj4WpnnuTgzgl7RMlSLSHF77g3HJVIvjDGyrsfznFdzuze5Y4d29K44ZiopbrwuhNQHVXaSk8wvv5WdAvdztCPYIGKYApqBEKPHa2COW71PyLxEPe8ISriSGhhRc8Q0sQw6nDdaIy/smcw4WrcMJ/tzldFfCdPP/dirPwXCwFNgvlb4UNl5PUqigTON07wSXZIt2oqV80XXAPesNKmfJVYTuy1JcqTJT2KJ44opleZYNzcaNThPGjIWxDZnjRkZ5AI6YhEfBcwSIE43FC9VHMV2JYzNydASPjf9SaOfNTQqf8QkXo+RVw+WCC/r2aJovDpIKheg== 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 DB9PR04MB8122.eurprd04.prod.outlook.com (2603:10a6:10:25d::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9678.17; Fri, 6 Mar 2026 08:50: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.9678.017; Fri, 6 Mar 2026 08:50: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 v5 2/4] clocksource/drivers/timer-of: Remove __init markings Date: Fri, 6 Mar 2026 17:50:19 +0900 Message-Id: <20260306085021.1231032-3-zhipeng.wang_1@nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260306085021.1231032-1-zhipeng.wang_1@nxp.com> References: <20260306085021.1231032-1-zhipeng.wang_1@nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SI2PR06CA0002.apcprd06.prod.outlook.com (2603:1096:4:186::10) 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_|DB9PR04MB8122:EE_ X-MS-Office365-Filtering-Correlation-Id: 02a36f44-85a7-4fbb-b567-08de7b5d7d48 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|19092799006|376014|52116014|366016|7416014|38350700014; X-Microsoft-Antispam-Message-Info: tjAGtNcn/WT9V45qJcFAIXK2w/Csg1rTESkCJeGyeJeL6SAxXOPbRuFUoWlEJOxr763qzzQzRyT5rh/6GUHw1jLqmmX2HhK0w6zbfdooZsEoN82s+7L67zOGKnsnyfIZJlpRaTbUKGpNWVE/i/PWxkaJhpOHCIPy6uMRN0R8DCN2JdWv1we2IfEpbxtpKmTYBTLqGkER9UGz9yBIxBVNxEkBMV5uX+Bg9QpS7qdWk5wfOFA4+C03XOAcJsqKFAJOY2rqEaPZWWI7yUlx2RC92JX8CYIkNoOCaiUVazcCpiPfzNe6VbelAZ0HeFQU3TTeGdPe29ZFc3b18lLy+55enYJruo95UakVYfz6QJDd4pp9tylyUUZs+y7eRrvtAWGuaX8zHzC3z0wGlRBVnNYuPWoqfZrP1lWbpaiXLTziL/4ZhPN6zwayK+W6b8aG2KrCF7DeRSLMYrpvjDhpALUzL64tOXq9/8mn8h6SEmKehlwD2CEunVGROV9nn+1qk50pS/nOvzvzs2QD33F+Ei+d1ZwMVi5uCAUDCE/XJ3vQIrjiAGEkaAqvr27LpZTR+u+gXar/Ep3B/wB+P+ZwUzQClS+9PdUU+Q4W+YyjqdO4mcQXB4MKHZPFk4NOqzbF4MkcgpZn1eJnniEQXDbXGIwPn4x4ftmZi7sM7B/pkWZJa8+Z42ROn4XcB3KikiU4n0hn8TMU372QrY8r6KFSilHEi5YnUL08WoWw1jZRjH/AEewM3/ov7a50A7lC2JS6o/IhDPxV+ffPahLZyWIXOb/w/ZZiWCi67IVi/buoFYO1zig= 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)(1800799024)(19092799006)(376014)(52116014)(366016)(7416014)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?dTrBQo9bBCwd09Yns8KDHzYtxZuRfmgiA+6HwnQLI0Gc3SAk2HdNP94v4rAi?= =?us-ascii?Q?Ooh10S+Z/wULEAiDroek9qgcweTywQTdSLSMryCyOKmw/4Vv+e3Vdea7JIAD?= =?us-ascii?Q?tYduBIbaVF6e+Cmthtl5qcwoX3xgGEPui1TSsM/lQSywfaNYkjEugiv/B7rA?= =?us-ascii?Q?dY6RRjvAlDyeHKVwoT23VSuB7MU4UbnHkHUO3128au7lIiK1/ord/I64tOxX?= =?us-ascii?Q?Ib7LsdGRro9yOFE2hlZgwCiYdxj87p1yWx1yXdcHIDjWQOX5CHLZetzNOeC3?= =?us-ascii?Q?c4g19I+oxYhKoIju17NgFHIew5vjSRe42ik106GRaiM9ND8b1045VhqkqqLc?= =?us-ascii?Q?WdaXhXjL8Sg1rdBNDB70x4Kwl8vgLP4D4HqktDEVwORqrhy/ykxjNg+m43eu?= =?us-ascii?Q?gbv/Qd4Vxt7UI0b5zujJrB8vgjbmvOtn/vMUOoX5AUcxE03sJivzEarNu16w?= =?us-ascii?Q?en7IZa/FCKwL0O1IiTL+0uBagjGxxqbjEjrLeS74BDKZ1ippXwniCE8x3vfC?= =?us-ascii?Q?KV3rDN9nIDX0eMXMiEOjwbSY2LlcOoBHGuQL7TevjIo8s6NQ97VK6bUX1ib9?= =?us-ascii?Q?U26aOBv0xkZ8ghjB7dHv9qRCKHRCIUmrK56uDynARW1rp2aJE13eBTUIxPco?= =?us-ascii?Q?XAp00vQTdGv3HVXk+HC/KYJrvCIEqL/5ya+BaQHZO0bty6ryeEw/5QnIIL0F?= =?us-ascii?Q?ThnsTl64WX8+fYepHflqeHPepaAdU4m3QYzvdgVgOmFnvaa0YHPg1PX1rJjK?= =?us-ascii?Q?rNDtGTfqaQ2oEgXgXA84KJoiIvBaL2N2maP6ZVWkWouEGw3YIvJnXgU8juXl?= =?us-ascii?Q?Z/Q17IZA7ty5E8aSi256GtwJwF1+QwNLLfH6/z3BVls5SDJMD77Da2JMzsNm?= =?us-ascii?Q?X5fCyATdsCLhJzR42AOqc/Bg+BOUXRAULovg2lOPJn9vaqDGMUgf55mX9z5Y?= =?us-ascii?Q?w/2P0fxIf+dqbPbaUBWPA0yatoTZEbXawKmEccytOMBm+uHf0VZJVPbIRE15?= =?us-ascii?Q?jhkCO8emKFBGdurQDR7KaHQZWsrsL/OP6C/5+zuJ+FJZJ14oUAhMqH3/IfLP?= =?us-ascii?Q?6b9KaY+2S9lKF+WTYWpYvX1Q+AZpChOi3MJSlNigj28V+DOwCkJ89X7gdID2?= =?us-ascii?Q?JvHkWFRmaVPE8phWa9Y0fsyrqseBvZeVxhPNdtitIECb0/lvxKuEyRfz1nW8?= =?us-ascii?Q?8OZIfypSfuc/ceyzVxAk0DFXD6vRPGF/Ql0hzaRwHnsmOpZ3OEVY6TwPlsk9?= =?us-ascii?Q?b60B8KlkOBlZiDtw5ceou//uGV7xFJv8QKYrOIWGPWugByUDeQv01NEGsn6F?= =?us-ascii?Q?EHHmSh6WiziP6a+rOipjUzty+jdQdNa1sfIly3JdXl1jxtXmO1G7ul73wBBl?= =?us-ascii?Q?TTPLxQJN+b4HMedbT2pKfS22km/bs+391Gnbi6bUEQmCvFhbwQNrHi2XiYY9?= =?us-ascii?Q?P/WwZgq4JeEINA5WxWQDRrak+I6yQhAB9x9/5INvtxl+bVrqa1sq9Mh31anH?= =?us-ascii?Q?+4bjbH9BV9CnWu6CUiQ/TBuAg1c26QBfJiqX9Zo6dlDBYOnzXGn8Ge+TbU5o?= =?us-ascii?Q?86DdZPiqHTJqO3KMxopZn4huVzdaNPZty4yrasEKTN6aJz0R87xWMmBXe4b8?= =?us-ascii?Q?qvLDzpKQtBslkcH1XiI4BgFHwns99LC4+jNgCBVRbuOoT3oZmew8NSIaXO0y?= =?us-ascii?Q?RsYBbvjGoymAdbjZtEVfNlnvra+fv9XyB6fNzLJYYC9Gqq0r8B7SSdgfS7NE?= =?us-ascii?Q?TQZIejJzpw=3D=3D?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 02a36f44-85a7-4fbb-b567-08de7b5d7d48 X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8420.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Mar 2026 08:50:59.8989 (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: qbcF+8Fm1qzKt8xpwUHbTPCkr4UnIgpQLnQk3IWuhXlmnJp429MvRCpTBhAmvTIIrey7MeNW68/A/EXhkAc1Cg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8122 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 --- 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 Sat Apr 11 10:36:10 2026 Received: from GVXPR05CU001.outbound.protection.outlook.com (mail-swedencentralazon11013055.outbound.protection.outlook.com [52.101.83.55]) (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 A19A7221540 for ; Fri, 6 Mar 2026 08:51:12 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.83.55 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772787074; cv=fail; b=fRR4F/6JCBaBkRrondCsdSK+BGDa9Vh9uK0bwY4wGSG3MdkbejGcw/QxGTdfp+9ZCQIr9lJZzmeaGiekE3UCsgcYrrYrmqhFaFIyzyeXZexBLYGBRP080VqGubs3wDyYWDBbBoQPj89QDRlswJlv7QwLv2Wl+puF5DJKtDoGbsM= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772787074; c=relaxed/simple; bh=Bkts/d42eAfpYWoDoGZQ6t5Flbw66M1uMk23HDuHKZs=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=eZDs/OgPA0YS6OqTiPcGW9V6yu674QInXFXf9TX4o7F5SB58juOVKPvDdVCAl0iP9FqPHw/nUZmsrKwDxT1v3vDA97d3khg8BJNWESXSAebWABXrs3C1IilHPv53EdM7814qlVFy88MoZLRXDJrY44su+fGjs9/aDfJi0Y+5YvU= 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=HoB1h8uX; arc=fail smtp.client-ip=52.101.83.55 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="HoB1h8uX" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=E+jCEs6ciKKQ27yyw3kPx4a3jMlJxhFLH+Ua8//qL+Wz659oHDKSdTFAIJ5c2N4HzHIVd7Uzaz7zHWleWpuQT5MTvKZq1ZQRcQ3/T9ynXmMW2zzzgV0+CgP/96qJUVWRfpK0Gjb3idpErcyDKfN1GJEePiEdsFD+IXrghkQnlErRpw3x5T08go3aVKnB62JmF458b9myFugnfCoA8/+o9M2vQNA3ycSXtfgDyp2/rttSafQTy6RSJrdL3OVFv5M/ylVGFBHdP2+sbO/wBSfZppyaBE5+3k8hPuRc9PVvpRULO03IMrKP3q+hziiJTwHgpiA0j8vFiG/cTCid9wLT1g== 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=fBlOfnmWBK4QHq82YF5U1aVXSuD5P0SQ9nMAVaPgVnE=; b=UD6amkPZ6YIfWk4Ab3X2aORycf11/xhckkiTc8qydZ5m880ma2XYPPqnrBOpJXx+uJlbDYQxcwX798eXoB8QcLmJ/pguiQm4i4+oPMrojxjmbnPDD0OuVVLSfO+rkJCp8cHAWdZpqNxgbD01ixXiTay0XUuouGUz8SSBGORrZeWi1k69MhWCI1rD8XNwskSAthi/d+fW3hu1V1qiYn/I7TzPAn5wq+uoOWtcvrncXFlaIGHKEl4KcnJ1eHxRMp2ul1xPNidf+UVgFW3HFNqLsnctqED47WHKWFWGNO6+bUCbgNgly856Aleib3vsiwlymaySKggWHfOU/VLxOT4/mw== 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=fBlOfnmWBK4QHq82YF5U1aVXSuD5P0SQ9nMAVaPgVnE=; b=HoB1h8uXPBXCmjtwsmv80sxIPPg9xH0eyGrZki8dmNiElyAhrU/bXU2pHkYw2clKHlo5Fs22kjUfnsA1GsoXdiosUMusrjYEfcgQcubHWdnJ4eb1iR83k/JRcXyeYvYX2hbh6WPK1qhqZzb617kznRuEmGVueb8Q2KOgyvgZGkvfGgu1pq/lxFInmIbWlZ4zFffso0Uf2iTkHh2pfcd/RKI2Rmz0oEQPEKVmtD0511wof3xSi/a9syUu55Sz5Z3e9g9HlVV3EzFhrVchwlOc/LuwF3mhMbs1rUdMzTudUtDF8dvimMMM+BhFekdLwN5JCzDw3QchLuqMn5L7wzKVmQ== 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 DB9PR04MB8122.eurprd04.prod.outlook.com (2603:10a6:10:25d::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9678.17; Fri, 6 Mar 2026 08:51:09 +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.9678.017; Fri, 6 Mar 2026 08:51:06 +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 v5 3/4] clocksource/drivers/timer-mediatek: Convert timer-mediatek to a loadable module Date: Fri, 6 Mar 2026 17:50:20 +0900 Message-Id: <20260306085021.1231032-4-zhipeng.wang_1@nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260306085021.1231032-1-zhipeng.wang_1@nxp.com> References: <20260306085021.1231032-1-zhipeng.wang_1@nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SI2PR06CA0002.apcprd06.prod.outlook.com (2603:1096:4:186::10) 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_|DB9PR04MB8122:EE_ X-MS-Office365-Filtering-Correlation-Id: eff31a14-a6cb-4de0-a9a8-08de7b5d8176 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|19092799006|376014|52116014|366016|7416014|38350700014; X-Microsoft-Antispam-Message-Info: X4kPxyRAUW8ZaXmNzbG51CN0l4LzG9PqO8+l8SeQpwTtuQjwSrx17IHan5zv5iUqxLp8aL+UhNe4ShnnoYVERJ9njTCcldvfWwysgVhvOuFXvft3H3GcNFiaR2dYqbWIrJ0uHd3pQwJukbcVx/ZTxm3KKQdw6wDT7gOFIj/BEMBfErX+cR4VQRWhVur7MZuGOt34b0k4cD7WAJLXbSDxlG5+CTSDWl5oeVKxVinVE2Omp99+DT1lJMZzn05HXbEJn+74+mher0ncKXEZnUimvAimbyN3shprHQhX55Ed+c57/TcqY3T8UL0bN9ea2yM1iSAiL241tsMFGBthiudYHQ1kyoUPfpku2IwxIa0oVGe0eh8dGQgT6CjslbxEnzYs9/m3JdMbtBk4KToGyej8B3/swpuXchZZwsDWqX1d3HkEUGPSZVGyQ8gT3J0vmhznvoFV+hbyFsZ/T/QI/SMMEo3+O27Yikmv8mM4QxBCRb+T5FJt5lY6q/5rn2GR1XE/7F4yyve6a8eF6/FACV0FsudRnqneCyOkFu8Pk6W6GGn3rjQJh5pjjXXZAOBDpA5Yi0eE7DN9zjDSmVaZYNiM1XmDEvWNSjCjibXnJOnDJEZCBzoYwoWfrPSIEYEkv0bwo66ADT086mXiKnF/QLL1vUkxHGnFeQbp+vQJKDNLkNsgb13u1c1LvstHd/SyKayewQ+01R49i4d1Tg4ti4XhBF18kgRGn4XF6DtC+Ckjq+3bk1Navmm4x9ZDebnnpeFL2sOd+Ej7digZTlFp7PfdwpP96gQ8uJ22FTmaZ85c3ow= 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)(1800799024)(19092799006)(376014)(52116014)(366016)(7416014)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?5bGAkAjJAVCwo7ChOsptuZ8uFF8ji6u5MT/2z7pAQ1s6aCU3MimG0EKCHHGX?= =?us-ascii?Q?9YUBVjis8LYYQnAFZTJPOCo1XW9hQm38oB2282LHYPq3PvP6modzxlnOUREw?= =?us-ascii?Q?GJzOuz33xmH8KO/Vd2N6kXsxJMGvcJwSr7eIaGIsx+WNUdcysiofN2PpXw8Y?= =?us-ascii?Q?zIoS1Cq5kI2YO3FTWwOAx74vsoc/2Rr8pzFOAk4sbLgfDCx+E6C82k4grWMw?= =?us-ascii?Q?SEQwme/MYtf9jgjRdBzJBuvHeOWGP7s/pFkZr1lpnSFQ24mgaGuWAWpr6rKc?= =?us-ascii?Q?A++TfHIZZ4v5k6o/Pqi1b0SWc1o4HmtGzNTMLnfp7ZjZI0XYnUZQqhf9QZpY?= =?us-ascii?Q?zsd2Gk4zUUQQQrC0t5XwvKG+XZUI5N43GLeMvIgoDqSDLWTN6Hc5awU1iXtJ?= =?us-ascii?Q?O5mUBxBRlu6ch1SEMBjbfe5C9N+v4tlpZKIXIXwSRvQYCSFRXMs0xw3Vz0Le?= =?us-ascii?Q?5gBzxQJkiEn+453lUyEjV8wb6Ih3aUaI3BDR6XVREh+TUhBkxKciVpas0hCh?= =?us-ascii?Q?vUwhQp4Et9aHpV1pd4s5U3IogtjuxnjB59BDN8zQ2Lf/tlS8i8+iVAW7SUPZ?= =?us-ascii?Q?tApkFDHvbveb0uVQ9H5scfSVDyeIKCylUX+VfbKwXoRFaOXt7nid5dAuLMVu?= =?us-ascii?Q?J+7lMQTi+6NbCrPklCw+RD9oAtIO9gstTNqcIIm94DBC143R8eOkT8xSSU19?= =?us-ascii?Q?zYDv1kSH7+p/9Mckbnh9eQV5SE5cu5tuXIzOrNSzXoBeWq4hpn5vn2zTpkl8?= =?us-ascii?Q?4H8fPMQFGhtqayrup7AVdThLJt93JbGypTORzD3vbxCI9jw6IT2eBZ8XdlgI?= =?us-ascii?Q?xDTCjq5/RcrXfSBNXhOxzGy0sUPFVzOSHg6Mx5go/9Svv6v5byhu2DLLOePj?= =?us-ascii?Q?1ZQiFjp3EApD/kcmJAONwO++IKk13QBgLPrJyL535f2D9jMiARpD1tuVfEGb?= =?us-ascii?Q?vMdkpgW5LVDV6byYn4084k2zCZbK5moi+m3DeXx5TA6lr7IAQj5YMUd076os?= =?us-ascii?Q?OH3jsvoSPAoD8m0XHRjNNTOVQC8a5V0HfcEks7mwWcBl7ZHCj22/puRSZbxz?= =?us-ascii?Q?mOaT/dI7AAu9Rl9hH05jkG3Ekh/rALfWg0he0Lixs+jCv4WQ+M73lT3D8PW3?= =?us-ascii?Q?QwSKr4oxI7gDJFbnQPH5FvxXEzuuyGlEXzrp3+w0tu9MydLSiiMlXbRASeGO?= =?us-ascii?Q?7IpEE4ie/zAvZEn2CM3dQ5bJQySs+lYsKFuA0Ly+5q+rrVRU112roM9soB9f?= =?us-ascii?Q?5jMBXL8uPTl0laz1epIPb3OYxdp+htE/4nyPAKqxGu/oXoskp2XTwZfrpzHd?= =?us-ascii?Q?+Rt/6bsVrRwen/BSl7M7YALqvdrY855e4rW0EXLPgdWyLZAkcvh3dvitf9Gn?= =?us-ascii?Q?a3nYckndPENV/mL8rf9zE1AzNiQvCsMLYncFk2CMkR6ZQpIfowmRPYMu7Ipg?= =?us-ascii?Q?AlBmRt1rAUZGn6aHw2jw9amOQo5gi1AY8z3G+0kvP5t4HO1swxWe7grQXenc?= =?us-ascii?Q?CirHjYX21UNta2pbrmaKjQJE/I2gLq/Cv6RhQrUEa/h8HDp5RY/uFeAs8rQO?= =?us-ascii?Q?gdhBmMh1/Rd+7Jrf4MHSqs0wq3lmBBVvpoF6R8M8z8e2gYYSratYZKZb5/zF?= =?us-ascii?Q?WrkFDxeGReCOOcTa+7dzC1T6OsPlasquNV/mVz6xxl6zjWFgDYJmtyNX6qjR?= =?us-ascii?Q?s9u1fuybA5tCHhfrzPgbcjCPrK91JYPXSqfikErO+rk0E1KtWBjq6j9oDuIy?= =?us-ascii?Q?4VcZfYwIAg=3D=3D?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: eff31a14-a6cb-4de0-a9a8-08de7b5d8176 X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8420.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Mar 2026 08:51:06.9245 (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: 3njjXWjnbPNU5VSXkSz4GmPQXHBUv3i6SnjgWye4geqz/CBjWtDqvNdpaVrUYosaIUeFE4BDtWSlKZb3N+sk6Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8122 Content-Type: text/plain; charset="utf-8" From: Chun-Hung Wu Convert the timer-mediatek driver into a loadable module so that it can register an always-on timer as the tick_broadcast_device on MediaTek SoCs. This helps support GKI(Generic Kernel Image) modular configurations. 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 fd9112706545..2112efb85029 100644 --- a/drivers/clocksource/Kconfig +++ b/drivers/clocksource/Kconfig @@ -488,7 +488,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 Sat Apr 11 10:36:10 2026 Received: from AM0PR83CU005.outbound.protection.outlook.com (mail-westeuropeazon11010001.outbound.protection.outlook.com [52.101.69.1]) (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 C59D2266B72 for ; Fri, 6 Mar 2026 08:51:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.69.1 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772787078; cv=fail; b=Bh56r4WwUkxeR0qm5FC7oBAP+SAqbe7V/BtkuP5nNKOZNcYTp4V+1dzRw1Q8IlPZFtLIZBOb8um+dmILuHlI6mO/PvSn9wJEZMwtCQsPvARCiBE8lWlJ0P1jT4Wn0lGp60OURTaQ2j2gMY352ddFILpByPUDKU2VC3dHG0syZiw= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772787078; c=relaxed/simple; bh=cZpnAuGOeDvTawsCTxDTidpTbXoeuX8piOQtEIbeRxU=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=FE6oqhLw1PDr2rB6k0gDmuGtupR5tIFSqL+hfWkPU7qnuJ4jqY/rHgE/NIJgZQrvqtAOGRZfdF3i1zJp6Hpg/ktW3yXaJW76JF5PWvTnHvfpPmqHFumVfGpMy+5WvY26rVjNMb9FoT35DJtyBHBd7XvmgZ17HCboixWt4Trwsf8= 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=cFlgQSUH; arc=fail smtp.client-ip=52.101.69.1 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="cFlgQSUH" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=jZDvN9Ii8fwvVXdycWQnbDpQiwxhXKJeFNe78bcceIGvMhpD94sB5wZWjeVQK6vlrMJjAOxSKiiLIIjsFya3HdhQgXkvXJzmh5wnpSmbwNEjnXndWOKlXXsOWHgcm7sqmRPl69bouvi3iPqPtMVtqPA7AjXFf3H7Mhb+e5DL+ncb1SeSCl0BTTbf5NSbHUni327w6SsJJ7UWbyhV9vIk98D8HGseN2CLrBTBGy6Lq3uVrVJWd2Ap5LO4KfWczy0GbXyhLlNxTD6K7ClN828CLlcwFyccwvx/YxW+EVlLa0m2LDk7NZcnSC00dQ7u5nlCmKz36JXZcE/2uN2KqXJmGg== 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=oYcOFjQuZduWtNNbR5S9+8Q/AcT3kTPe/1jB6KlX3e0=; b=RXMuE6so6vMXgsOs0MrFnZSH55ViMREGt2ue/OyVCkAb90eZPR7tGO8KPC7BAONejsJHlkwbLozUzIwj+7BmjksrBrDoVFm/GcYIUmpHYaqT0nR0pqJK4OwwSKBoIDh7juaVHizW7t2QEKdAyBkkZh7YLi5wWAPLbsGMIdbr55xTCOIexlPNbpNt1gOjFZPViC/VdH6AbrIh120Yd1RPXvWvV1ypcfqAIPqr+lz6pfrAM9MHALiXDAElyqYugOhGt6o3SgUyo2XYbAMOMgY4RCB4/LZ9UIce9TTcTq3cmIUZfPfKsWPjag6aIN0Ccngqqy/CN8p58P5pqsSDhIHR0Q== 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=oYcOFjQuZduWtNNbR5S9+8Q/AcT3kTPe/1jB6KlX3e0=; b=cFlgQSUHXJ19BsgaVsFofRCuQhWsIy6jOo8PX/5YzWTBHdK5uqnVOwRqRpeD63trAMU6/LVtNu0CRWHqd83KYxNN2ZF47HS9CqZGwBPzJrjRmP/wwU+z68eruRD0izuRnqVnCXI5vc+DXCfbmDq4h0JRRY6ynbzz1AShmmEXw2NsItlGkFioC8W3tpIG+L/WOEG9DncxtVDbf2mmgnMFUUVLstxFqu1O4eLL6y7neOMqQ1BpZ4Dt+HcopUg5zTzLUjXJ99iajDtvygGImHZNPzcEIRqLF5AeSqIo7GLbWyPW0WEYdvzjllatmlexRjxGE8Goyf2+z3HGwyK7NK+mvg== 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 DB9PR04MB8122.eurprd04.prod.outlook.com (2603:10a6:10:25d::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9678.17; Fri, 6 Mar 2026 08:51:14 +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.9678.017; Fri, 6 Mar 2026 08:51:14 +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 v5 4/4] clocksource/drivers/imx-tpm: Support building imx-tpm driver as module Date: Fri, 6 Mar 2026 17:50:21 +0900 Message-Id: <20260306085021.1231032-5-zhipeng.wang_1@nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260306085021.1231032-1-zhipeng.wang_1@nxp.com> References: <20260306085021.1231032-1-zhipeng.wang_1@nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SI2PR06CA0002.apcprd06.prod.outlook.com (2603:1096:4:186::10) 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_|DB9PR04MB8122:EE_ X-MS-Office365-Filtering-Correlation-Id: 24f1dc47-0307-4a87-8434-08de7b5d85b4 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|19092799006|376014|52116014|366016|7416014|38350700014; X-Microsoft-Antispam-Message-Info: krziZQ1xWgZKf3cqfjK5YzoWQS8ZDse51RWGLG15Meht/Ov3Ufpt9XXaA5TCvdfRFZ4UCyfcGNBNf/aWHuAHeVLbWegGd5s+/ug9mjkiorjlvq3xsvS/2/923Doo4sYjNvqHR+b4miLI5ooojgkZCm928FyGI31UurLKQbRnCA3ErFCVWslWdcXDQm1NaLYU5gsLaN7XjlENFpKerSPIvhIZ5ycB7Uv97S/zmbznyMJgmHfm3htXrxE0bMzcOlPtmt5TCyLJ5MTABEM4tPjQ/jrLhp0Xk3oGbbRHpg5qFsh2aXVTBIHQ7ETOW+KQ4gWahpIOwYYAEeh28ZC1eEP/RHTSCZKwqy1DriTacGaz89v7/xh+VQUcC0LTkVFLiFPHqeInecocGkACl6tp1SwBJouLYfNuBZIP0LRQYvwTnn3ZtBwKz+NtVikaWLeDLwEQHr/UBeBQ8CGxRUi8E+HCuw2kkMKzpuevP7RkmNzLDdsI2TKmFDw0ejAnIaz+N4/gb0Z/FXRpcX7GglSbKd3uA/vdFUGWswAULtjOsLF7ynfFawBN0oepwX5DBKjMi7fJqbcShnB7mmsfBiWTvdN4/3QJ9pT2x0fHwy2qLFgtyVd4qaGrdoBw8MxkJD4u1H24SBCd1sBlFakiprWp+InZz0xo4XwpUGEGMsCvoJNXor8EZPRJAolli1xGOoZAq6qKtoYaZstqfX9Ulm4v+Jtp12MvURm+zGEhkH9heyO/K6Ms9ikjfvAjdzrvDD5RoA8fqlZuruWKHVaW8gWUiyYBnguQJGsmyLqqbO5BM9PL2TE= 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)(1800799024)(19092799006)(376014)(52116014)(366016)(7416014)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?lA1aXshtVI76QvT+JNelQkFa7Q3gw/mwpUknf+6DVVox1V0zPm9g8tjtOXZt?= =?us-ascii?Q?VXJx7KpNw+kdoeEQ9Td6XyL6v+mCOBN5L73DplIaY99az+LTvwC8lgcJV3lg?= =?us-ascii?Q?EfHCNpIuSPxr1nXFu2UMfJBCoQq+SL6uKjoNB18bn1/yf1Q1ZnMy7Ma6ics/?= =?us-ascii?Q?9yRrZa8SE8H+aOhn1eETKs3Z/A7EQICNYB3G4qxT/aur0o39PQAGcjkoRIN6?= =?us-ascii?Q?WETsLsal/mS17K4KyDmFoShXyKrbxzoq3x5x4VAIrAXSBb0HO7NLn6bieqJT?= =?us-ascii?Q?CxeghXVe7VZfwYaqATPg7pb96C60/+ALuA722N1wruSu+vUvh8P3G6Fuf2I8?= =?us-ascii?Q?78DjMXO7a8JLV8CPLgE49BVdLZ3B7FdAkF7x04e2CejH1PxnjC0HblxX+SJx?= =?us-ascii?Q?0J6Jj9g2okNDdsdyRvsr1H2cUfSg9A0qOT7OHMnFqAVOTb+1kJbPCLzcaZtV?= =?us-ascii?Q?WfLey6aWLX4YuLz1FVnDJiG5ZcmULa2cOMtTSa9epRSg8g7B/uQ6+JxGg3QI?= =?us-ascii?Q?MbmclkV7nyjgVfc1LxAQwZLLf6W62hGwMeIrSgY4mTR5ObsYLQRVuqT0vvTr?= =?us-ascii?Q?r6r3JdsgOD7JCp6tdGR3wOvPO5nFwu5K/6To3u4V3IHorFssNXB/abwZfamc?= =?us-ascii?Q?mClCY7V3AMDzx/nl+VNvatzXymv5Scp2kn9ehvyHM9fFxcbWv4uQqz5KCxWY?= =?us-ascii?Q?rQn4fbJRevjrnuu3ANmr5PdCROLipzfNZlIIlp7JLuR9XzGKD/ceeZ26hJqi?= =?us-ascii?Q?AolWu0Alg4OohTQ+ip12crm9QVTHHV6f4KRn5MM95VgRwp7V5w8lT+HZ1kr6?= =?us-ascii?Q?8wVp8SiwYXR0lV7ln6l4eMvD1duBCcuv6B+HhalKwjB5bEn/t7UvUMaKCjRZ?= =?us-ascii?Q?LBMyG6zWH1Tf38yZR21kd8ZcYRYDNVnkiY2LVe7+Ac5PYe5N6vU+j72e19MQ?= =?us-ascii?Q?0yBT+SYagXQemI56gYIEbXOrg/NtG542EWDtDqJb90PDHfl3ztedrhuvLYHv?= =?us-ascii?Q?wFyr8nTKLYZcJECwiZM8G+Q1A2xyyzhaUluwes+bWkHGMjdoajshhxC3ejk0?= =?us-ascii?Q?yTZiymDtTo6An8H7ELYEHSLogsVYR1YyP33czWA1M2XAgizgw1E5rLETgwYG?= =?us-ascii?Q?8HrF7ZiLs5F/TNWr5gJTCvY/n76kh6haQnEJXP8g1sItuzOiDkNgrJdJ41wx?= =?us-ascii?Q?GwP3iIafkbyRkZKvL4YFX9SiVFbJKgrxYbzKFkxRtzhONDORcOpAq66/+0Ys?= =?us-ascii?Q?Vi+l4G977/Lx5U4/wZ6B1WxfG2hirHaNb8PN5DlSUm/2D5epCWF87/6OvGqN?= =?us-ascii?Q?B/DJZLFrj2PKwdfok07JDR2nauP6bHiuzHlB7bRqd/C/ZCzCam82H4H92ada?= =?us-ascii?Q?usCqwdIWSlNp0Jot4R3x5If1R0wgA0JMdVY8P9E/vzjTSaPhT0L1bac5Apn0?= =?us-ascii?Q?E3WtOe1I9tO9EZ6W9CkQvD19Hoh4hl/G7XEQu2SDocqAh8ucU2g3AfGBfzPi?= =?us-ascii?Q?+6xzgOdIOJsB3KyWwY9l8N4zfnKDBJoaLHE8gHU7gt4BML4MVQtpzoZNBDS2?= =?us-ascii?Q?11DPGTClPgdkKDtxw6nvQ9QmlAW63f1eWVbdBg0UXXIHaYkmsV/cUIyCkZHQ?= =?us-ascii?Q?FADMry6V7h2YYXJ7yWH87v1kAwDfjFV6DyRP7WH0o9ULBsPexwQA8iE8b5tt?= =?us-ascii?Q?Eml8lMa/m0xcReHZrP/wCqoO5LUBg2Dasfjjy66jANaIOl61jPuC/+MiudjR?= =?us-ascii?Q?5THUeFtqIQ=3D=3D?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 24f1dc47-0307-4a87-8434-08de7b5d85b4 X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8420.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Mar 2026 08:51:14.1034 (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: Uhy4bMNGYdAglwk2cJVJ/HaYDwCs6Tq/smgMdsiJtymQhCA7xgGW2Ybq2i34IxwPg+sSloKmLdJVocTiHCFAzA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR04MB8122 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 --- drivers/clocksource/Kconfig | 2 +- drivers/clocksource/timer-imx-tpm.c | 40 +++++++++++++++++++++++++---- 2 files changed, 36 insertions(+), 6 deletions(-) diff --git a/drivers/clocksource/Kconfig b/drivers/clocksource/Kconfig index 2112efb85029..1ba3e9bca3db 100644 --- a/drivers/clocksource/Kconfig +++ b/drivers/clocksource/Kconfig @@ -613,7 +613,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..1d593b6f0c37 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" @@ -66,7 +68,7 @@ static inline unsigned long tpm_read_counter(void) return readl(timer_base + TPM_CNT); } =20 -#if defined(CONFIG_ARM) +#if defined(CONFIG_ARM) && !defined(MODULE) static struct delay_timer tpm_delay_timer; =20 static unsigned long tpm_read_current_timer(void) @@ -152,9 +154,9 @@ 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) +#if defined(CONFIG_ARM) && !defined(MODULE) tpm_delay_timer.read_current_timer =3D &tpm_read_current_timer; tpm_delay_timer.freq =3D timer_of_rate(&to_tpm) >> 3; register_current_timer_delay(&tpm_delay_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