From nobody Sun Feb 8 13:45:08 2026 Received: from MRWPR03CU001.outbound.protection.outlook.com (mail-francesouthazon11011053.outbound.protection.outlook.com [40.107.130.53]) (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 5E39426B764 for ; Mon, 19 Jan 2026 06:42:50 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.130.53 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768804971; cv=fail; b=hLaXtz7Ul30eYuq1HOwQEIK5AWzCqsebyVoPUK5S4Oo3ekzukYGcSAemRX2HmxKKO4lHBqGq+wlr+4tTilvmte9O8ZI1Ax/BgyYyKLTndEzfbxQZtA+bwp3N/S7GNXePthZKPMxLeuZnNYjSTgsug5UbDbkgE9GRWjVeq5NwRak= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768804971; c=relaxed/simple; bh=kDCQ4tB/cv6CwZYzDmy/fDvCq9bjjIkxDfAjYABuP4M=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=XPJYZ+pwOEJhk/qGCXN1o1EaCWxt6tPx+/bIIx9AWHwndaQL5RoDsv7Nalr24Q1+hfQi6m9IZQypOzbbLZLd/6AryGu9B5eoorSCn34XZJOvC6a+Zh6qbNpRaIhRwHOr9gi9WR2fXbnrnv8FhDvF444loj8KU2gfHMkMkshOXA4= 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=BdTjPgsv; arc=fail smtp.client-ip=40.107.130.53 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="BdTjPgsv" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=V90SVL500NTYvfVSd1J4a9k6JBStPdCrNEZlozdCQ0jdHsVMtJ8XQtq3pdSsdIt7nLSaEgPJoLmEVf/XUILmD8ZZX0cqgARe5PwY0hG6m3yggRIHoa3fxPyNu/UweOILAmRfBrOupyTica66ahfcQ7hIiTAe8Oc1bjrJsBoujfuXEG1Yuj1B8EJ9IGxlAd2lwZMlBbTzTqH2cDDiUJ1X9cd4XMW4MJosr5Y5ZlqzTJdZkKfhdBzDf2dGjFzjEaOkdqGj0b6mDrnXcXHbhKl/Ttu7JFjTSptvYONZAOTthBUEu84ojn0M0p46Iajpbvm2CddWCofQtwBEvjIGhhbqcw== 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=AZMeDNNHMqiqlSi4KKdzEPGcU7PFbahbieYZKJ1eG9o=; b=Lho3suae142bB4U5yrvuClFM20VPkKLeHgBQkf6iGGIfpAhmzWEGci5zJ0XLxw1NubfixTQrfk31PjW5TkknmGQOLima3MI9yxtgyCVZrjV/x9GP7Xup4yvWiTXEX4h2il2l8e2TSD9BzsgdpYm0aClw21YgKMBluImnLgZa6cRRUhnatKygZ3RKuzEYnTRZIUOcKQYdDkPwh2dZ4vQ+S8CRBcnG6CZqe0Hqpr5UlEfPp4F5uusRW6c+XRb+1b9F+Ps1GYLAcwASOlY1MbWUPp9+zldAvy8QhOSeG/GFpNDnRurnlE4nnpkuDAOgca8tpNLssHCX7EZ5YK5baaupCQ== 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=AZMeDNNHMqiqlSi4KKdzEPGcU7PFbahbieYZKJ1eG9o=; b=BdTjPgsvgooUUSszlAcimQZPB0pm+vY/q3rpykVgOIjzzZm9J9KelE0YZ/rBYnW1IRaBTPpucnkJrIpk9bno50oGRGtx0R2TW0zmHoa9emGNdQpzEREoWfylVSnZ0Rw6l501h94ReLrcB04PKMF3zoQ5MhHdHImKzxJklpbgup17cbTxN7gEoBj1Fv5/aezu2sUpQn6VUJ5qVqA1IGDjoGx35jJHbWyhqdCVuuffFBD65qPDvTLNbJ3O2Gpt5gIcd3XfacN14tWONYEvYKG44a+n8JRXOM4yl8jnIGNTEL8RZrgiCmKn3j2hDbFEzcl7adJWB9SvEVAJ4LJW8T91uQ== 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 AS5PR04MB9922.eurprd04.prod.outlook.com (2603:10a6:20b:67c::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9520.10; Mon, 19 Jan 2026 06:42:47 +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 06:42:47 +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 v1 1/4] clocksource/drivers/mmio: Export clocksource_mmio_init() Date: Mon, 19 Jan 2026 15:41:15 +0900 Message-Id: <20260119064118.2493736-2-zhipeng.wang_1@nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260119064118.2493736-1-zhipeng.wang_1@nxp.com> References: <20260119064118.2493736-1-zhipeng.wang_1@nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SI2PR06CA0011.apcprd06.prod.outlook.com (2603:1096:4:186::16) 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_|AS5PR04MB9922:EE_ X-MS-Office365-Filtering-Correlation-Id: 10db1857-ed4c-4c3a-e9aa-08de5725f525 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|19092799006|376014|7416014|52116014|1800799024|38350700014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?E5Sj+8sEqUb4yX/1d9sBm7XegF8PewSBKeBOiipuj00B4W42Xr0KQLPZ/fot?= =?us-ascii?Q?2TnxXDfRrxa+SLGKT1bLqzJl1XmNIv2+X2LyTaMPovQ+uxndOM4AZtWbYUe8?= =?us-ascii?Q?bGdYcm7aoHkhHscMWT6WElvCk4J789qbQSbzxGCxvpHk2yvB6jftJYg/ugR+?= =?us-ascii?Q?NsDl+avMzRSKppXrK2hmVQoaAbV6Fmvu3VSfA2kD3ZBbDZEfHgGFw0BHqrKr?= =?us-ascii?Q?YexT8FvTC9hw0tRJETO2U++HbIJw1AEFizwSF7e6GeKW2ZchtWqC8uZbI1Pc?= =?us-ascii?Q?UKOy1c0KJwPTXvIRM0zbdfkqildNJmkG9p0IoSFXQgo8qR1h6LAqtL179FEs?= =?us-ascii?Q?DVf5ptGeCbqKGQ9KC6bassRjAmSJ08jUwWmCo2itosEHNSdiEP1s5Qp06a/K?= =?us-ascii?Q?Demfk0cvv5cfsrHD6KZqsLpsKMhnUlpkPaz7Q8RNQ3ne5ephCVuQN5B5Wf4j?= =?us-ascii?Q?Xh8gsIgBOEu4/9Hazgv3QSuaPlh1C48RUIJA7HBICMhGYiaAiehNMpPQ9VMW?= =?us-ascii?Q?HxUY/iYx7b8SVZvymW+I/cYuHTfMeG54c8IUkplzzb/mMFDRm8FYII087gis?= =?us-ascii?Q?g1sLAQafJaBoWRna48zEJ5p0o9fqG3JfCb7OHB6SPRk2OtLzU+rjmoog6/lX?= =?us-ascii?Q?R4TUa4d9Qf0AWi0NYNsXKV3+RbH+TRw0E6vHHsHy92WWORfD1YJ0Zkln/G7Q?= =?us-ascii?Q?DKmQUoh+qDRHVSWfw1bbGVdk2UDAl7QMu2ORLwz7iEgdWWzi4XUwEsK18n1J?= =?us-ascii?Q?gX5F3Siq4vQKenVuSGsc7/+w1WZvaNJgRX7+VVXnRVF8h/oqcsCWz7auUWR7?= =?us-ascii?Q?hwge7HPkhJWjg3bbQCrN5iL99NnwGqxyFqPiEcGJlSeIVQpq5yTVjemYad6N?= =?us-ascii?Q?/YhDZ8OJiqkjTaMhKRbu4A4RlnOzkQGkAuN97IU6CrfTfKx8dbwxejWxYOzJ?= =?us-ascii?Q?iqBaPPSvQFy5LCmOeZVHLJACLluy64vTT5o/yEzDRMXrzexG5dMt6uCVcWm5?= =?us-ascii?Q?2CrTUvUC5JsUZv09aDh7IENJysJLGBbB5h+DZ8udThQbfqxGOIt02qWDfoyy?= =?us-ascii?Q?lv5Sd8cVH7HBND8Ub8bjSSAuq/uKFYiytrhAwPtnkswmg9AbfGD0Nm4IcKm8?= =?us-ascii?Q?i2hHoTJIC18zVe3id822bvc9miLVCSb6bOZTCAS0f2mlX93l9OIlP9EGDUtL?= =?us-ascii?Q?vTXB69Y2yfV7JnG9EHbjl7avmQB7ILnfMMc0BWHz2bTPT4w4dM34dYMkV9T/?= =?us-ascii?Q?f05PKZIH1U655lxt0fP/2u8qO2XcRKB1FXpg3sMA5MQ+PC8RN6+IaqTjUAfu?= =?us-ascii?Q?TyEYxZ8sjFvsgHP9o/ACbeZcWwTz6Fnu1mHEetGrtQl16lZjr2QIw+uq97m+?= =?us-ascii?Q?jFm+YY2ombwKJv/opEpXv+w7bQyKChu3VZtbd642ZVRbvlfZw3fnTrr9Tb91?= =?us-ascii?Q?XVWPdJNqYaM1CnYAk4HJLo+QTAxbi0HRolzAplalGRu63qxZLY9W7aVLRR2u?= =?us-ascii?Q?9BcC0LK1+qeBo9lzJYrUBIvMk+7L7ZmFW/w0QZSDIROhc767EAkJYO8fi/jr?= =?us-ascii?Q?Rf0TjfSIMsCinXzbd943QQqkDTwmxm8EDYOTMVro86h2eg7/Pm/FOTdO1m7L?= =?us-ascii?Q?xw6nVzdJ6T12D5bfaE595a0=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)(366016)(19092799006)(376014)(7416014)(52116014)(1800799024)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?PSsNqjjmLhJHUuwyuU5rPLP4lcqNzRFoYDFvdXnSjLGG+dfkGwSXNC4OohWy?= =?us-ascii?Q?Bf/Sdp/VSW9BWRGQBV6OP0rXdJF2elxG3hr3QfsZESJI/cxnJYWa05UB22Li?= =?us-ascii?Q?3fR/+3ajTYFev6hCfbQNnSH3MDI/kWaoUgOEKmWfFPxJirGXxqSIQF41t2qL?= =?us-ascii?Q?u6Z4WO/c1JtCFoTfqnJTQgFhYXybgqlE4XFXRGn9Tk/7j50udzcG8lHH9xDF?= =?us-ascii?Q?ZNj3olm4tOwKzSjInAKEkpFv4B6OPpyYaPfWbSCGliRDz9hQghYWNU86rebM?= =?us-ascii?Q?tfAyrwczsBlqODNTVfMmYitjm6bS7aB9pp1PeNXYoeHZS3E58kF8R4dCtXYN?= =?us-ascii?Q?QbR6eGbwgJEK2vD8LL1qiKPiJzUkevfrbCz+B6WbjoV+4EH7IIa6qN+4jZ9H?= =?us-ascii?Q?zh+pAOIbOpyUsztdIsFIN6Cw+mVDMRA0NxSGtpPVQJuxxLiVGNqhIm/e1RV7?= =?us-ascii?Q?+5gxuyQvCCsmN7hOyxpFttKHYhviQvKGu/2hBEoH4PbQmbHTZzgtaWefY3y3?= =?us-ascii?Q?vyKqoIrTsFiZSWte9F5INJvF8+frEF2ghKfLjfjHj8UDr9y6IqHqHhdRD/52?= =?us-ascii?Q?ocfQIs6pewrTum8fCWmHSAwLCDs3AdfU9u1DjMxp9iWt0lJxGBCxihNtIQYM?= =?us-ascii?Q?nCbEtoM0zd9hIQPBLlu0Tj8Cu4cgmfwu8cqtVOFndQw6lSNjNTV32VLZjyGv?= =?us-ascii?Q?GODLZ2KRFYgdMOictmhVZlc18Fpu7mjmGhQ6YtPolNPltKBgLeRLAxRC52/w?= =?us-ascii?Q?pe3FRmHuYjEZwnMN6KEo5bwHSORGXWgRmxePSfUsJRY3qmsbWFrrk33VTFLD?= =?us-ascii?Q?UMjL8jEAGuC4ChEP47N4VnEXd+R/qwqKP0rD02eBDFVrk80aziW1auIg5Umb?= =?us-ascii?Q?vnFfGCaR9Zfp9RfwBENHbodY2WoFoK5C3dIZXl31fjmIX1d7w3Z4WswzITOx?= =?us-ascii?Q?KLOpEyJWGyvIOFv5R4HL82y3SsdyG5I2LdQBOVpMWT1xiGA4CtIHn9WuD0ZK?= =?us-ascii?Q?Iqkei1qGMWbdESRlBJIeFd/77nG7V+FAEH1K7njQniRoyT+fP7l+kpIQYdYM?= =?us-ascii?Q?DYOrz6gBFlOHMNvTfaRgkxrdjRhFDktCJNAtyaOK3B1N8KyH00RgHJgO7LhF?= =?us-ascii?Q?55R1En9wpaYBIkOo4Av4f0/7J6YVexzlaQxCzKaiN8fa6GoVOBMtddjKBTeI?= =?us-ascii?Q?SVc8Nh9Ybl2fZee+LboEIRDxfcG4mkfzx4EhQj/3ISf6RIzGApNRjbOnwZOt?= =?us-ascii?Q?h6YpLe9HseyXLKw95Fmhmnu+qzLDSwtQzc/YS+9bZru0aCpy6hV4QAY4ijzZ?= =?us-ascii?Q?gm0sBUyxCnckTSOAp8//s6QWt6yFbebK48a0eBEXoZwTfYApfchr4WYa+oog?= =?us-ascii?Q?Co3ZOFPg5OpXl9q2BTRK07f4f7htNpNIEyfIJ8y1JxiOyUzQzBe/GLVaUiV5?= =?us-ascii?Q?+L/GhvbZ746NfBXNMEFQCKZSocVh1GHN/oC5J5h4o2LwxAk1tBggF6B32oyq?= =?us-ascii?Q?RA4PPBsuiF2Mm4AY0ZsPO7Aubzn+cJEFJw70539UTOQeByoOOirbPu1ZcESc?= =?us-ascii?Q?bpA8q4EUNCdq0abyo8Gf45eDgczT4nMq49jOKUG8B3j7AWetMHTjnqVg+K73?= =?us-ascii?Q?UUsSo1/Z8qs9JInuEA6gC/3xeScxODLrRTPJ8cbvY+OQdaqaMbmcVxMwndCi?= =?us-ascii?Q?tJe4igynaNWlXQG6UkXEReHVWesXVHuRu9kwMbXwwsIZCAboaAFTe41z4rFT?= =?us-ascii?Q?SQgi9CzhZw=3D=3D?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 10db1857-ed4c-4c3a-e9aa-08de5725f525 X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8420.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jan 2026 06:42:47.6720 (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: eR0fJAU6zpeB5HVJlr8tplVia9dCLGU5w5OcsF0XJktYMVLf0MffIPgK16hKdK7ZRy0x4qLc/EDPoiJVILfQGw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS5PR04MB9922 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 --- 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 13:45:08 2026 Received: from PA4PR04CU001.outbound.protection.outlook.com (mail-francecentralazon11013024.outbound.protection.outlook.com [40.107.162.24]) (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 D7B7A27AC28 for ; Mon, 19 Jan 2026 06:43:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.162.24 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768804983; cv=fail; b=cn2EBqJo+3aQ61SzP2bthFoCN2hH3ruqkMdeffA2MhKU01eoc6WIUvOii83Qb38zf/YCy98vJ42BybGhyuM7wMkb9QiuB/w/9E9VlR9lYo97oTWnazGUa6uvt+2rOZmcfjRWd58URAaEM7h5QOHpr8/gK+peitXSGDqQSBarv+g= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768804983; c=relaxed/simple; bh=e8MhCichZA/Clb2HZc2oxH7Br11mreqHZm4LApq46jc=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=TPl5qxO2bfavUg9y9L9QCaBIU3mkDr0a6v8H2eq1kGmz0toG/lb4FJKmCipfBYpWIyABXzdHKn46p7zwwIxvLdtFHvzkcy5pgCn9itH3nq0AvcmKM7uHGHFXrUkonKTPIC1TmQZZtwuNcuC13hDvgjrOTp8A7ZBT8StSDq0i0J8= 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=hUPpj0XH; arc=fail smtp.client-ip=40.107.162.24 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="hUPpj0XH" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=m8SavSIGXqEyIg2aTtZXLk6Dk5WXc7YL1msgmx4gavGazXpht2joCh3+4iD391Q8hT7Wa8X1VV+RtWQFftPWUpKkn+aFxcZVUXYhouVyh+CmQPKfoRD37ZCc3P8y2u75Uc2ged40e3IP8cF7rHQvhw/V0u4/emBvD9yuZxUtCE/vFWpoV/tJxuvPkQnutHp+ARXy8c6UKtGtewKIGdb/jQr2NiBW8kcwDNXA39dZhxakzcnrPuTCulSFIH1wsD12t6TV0X9L0IIbmLgYHaYhxAnDvq9qAY6ubB/q6hSFXirHSE0ccf6M8c4wvgbwOcWHxW97QyK/0vUGP1D8E1Lmrg== 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=9q0d3BWrr5MxZR/PfavdKfnMRyKw8H/6NmOYcZnB70I=; b=o1AVOKxhd/Y4RInHDGbUJ2uTBPcZPswoGx5HLG0niZlgXsK0y+F/duTezBq52QpoOF4G4qs3I0Au31DDuc4rQ95ZZlZ2ZRF8Q4FrNxFzvlBesZj+YVspUy4PUHfFhEqSOj0HKaAZX2qR4bw8yzGnCKOWQwLwM0GjLOwRzOFzkxE3KDKsJLuASkXOzAl68jGTAUANcGVObEO0OhFROGqQJ4xfAhW27A+21BGHGL64+DHvGPUwXk2Gs3CNpECg52ZB+NZ6J9TSqPE9bPkGEbEQBx4HtcCUKP01gKvpgAb0L6hWgDSrDfRK/P+M9FhHP9UPd9DvxK383Gz+JPhl1ZUC/A== 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=9q0d3BWrr5MxZR/PfavdKfnMRyKw8H/6NmOYcZnB70I=; b=hUPpj0XHQRjM0ZGPyD4Bb/fFxC2nxzXR7pYwfxLFhOF5JJSYzDOvPXvRcvZiJAwyiZD1OCK+95fYIuRVrkHL+/PSbykZCdKQFkFkjBe5lYMOCh4xwl6EZC/oa9dKXJ0uKw+M/vtMR68HBuQc3zcvCtAj1kyk6w/kMyDZiZWkZiotvXGJrbyKoKv/jZ0CXKHUhtjmpbfqb4WtI/IEMU1n+8J/syh9kf/no4guGqzwJcnrCSDTP4Pg1/SnKhsvIITVhzO2i74W8kE94Jd7dogj09lI0QVdRgZ6TN3wTbhXLceCjInc6NuWW3E2trRgM/B4qEAp6xmxeIQbzdHoz7fczw== 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 PAXPR04MB8492.eurprd04.prod.outlook.com (2603:10a6:102:201::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9499.2; Mon, 19 Jan 2026 06:42:56 +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 06:42:56 +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 v1 2/4] clocksource/drivers/timer-of: Remove __init markings Date: Mon, 19 Jan 2026 15:41:16 +0900 Message-Id: <20260119064118.2493736-3-zhipeng.wang_1@nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260119064118.2493736-1-zhipeng.wang_1@nxp.com> References: <20260119064118.2493736-1-zhipeng.wang_1@nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SI2PR06CA0011.apcprd06.prod.outlook.com (2603:1096:4:186::16) 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_|PAXPR04MB8492:EE_ X-MS-Office365-Filtering-Correlation-Id: 91dd735d-6765-4075-e102-08de5725fa6d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|19092799006|376014|52116014|7416014|38350700014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?eu8spu0ld/TnEObx4RBLIpaI5SJ9jjrdTPcZw10lICCHBfngl5JVB0N23OQL?= =?us-ascii?Q?OCRY6AT2qc4BT0x1kqbgYyMR8PpvVojQSXOkuq4/O6QxJWPl/JO4F3LCtgDo?= =?us-ascii?Q?pNccmLSeqnMXRtwoyffqJJ7c6lMbqUsGRdrw7Y+qQcIDXpTs0vFQgSiFPwnH?= =?us-ascii?Q?qLbSZShf0/IxzQRnNeYWroCLxN46J8htMBpy/8d6x266swMYOeA3+pJHxI37?= =?us-ascii?Q?g4/21K1+zaIY649dxCd1ToJiYIOPgXorDZXNyRBvfg8Hl72CvGFb7VlgK19W?= =?us-ascii?Q?Oq6JR14HZ8dG+rq11g65V0YidpN6yHrI3Bd6BEygTjuPGYAeD8BjQ/Fuhc+h?= =?us-ascii?Q?kEE89MXUBmz33BUlZjIpzF5xCKu3lzTVbgf7Qa2kHPxvGNO1zoNYWxBviEGJ?= =?us-ascii?Q?TZGAhOFQ8C4o9Jws2b68iu/OJPl83swfCFN5QBweoEuPAB3y4Am7xBCEFhgT?= =?us-ascii?Q?uVcqEcVKTdZDwhi6aT9m1GupxSLUn2ppK5HjCjXwdbf2f0jGDCRc42eYINji?= =?us-ascii?Q?4wvK8LbvPRFngtXx9dzRUmdp/AF6UiQ7JcSOo7J6iePjpb30bsdAm2GY9E2f?= =?us-ascii?Q?lHt6+q/hI9TcpmHxrZ2dpAFyxK68CoGh0DDdGWvzZNZ3kXzkMtjfWeaEMPwe?= =?us-ascii?Q?lvfATc5n3UcJpgtP9K6KVyy3R535Tt6DBzlIj9bXOc9UclHYxasajRn5aYyB?= =?us-ascii?Q?G3T+gaI6AjSev7rpA+g68WG14wb0q1lJIrMpu5svR8nKLd80fY9blfUu+Hm6?= =?us-ascii?Q?OeoTNMzzUQ07533M3dN6irzpfJBxS/9o0aTlK/S3uUvxQgxHdX3HgXBO52B/?= =?us-ascii?Q?mo1qMcMzaBi1AINeKVCin1YNBasmbAMallk40bXLyZQyxHmeQHT+Klxn5kO2?= =?us-ascii?Q?0l77BOPw17xp7IA+yz+fbaTaIHHxtmgUVByYvqYXZG/WVGRZu0woMp+xWUg9?= =?us-ascii?Q?T8E7oWyo4y97kwTXE51NX3X0oOFsjIC1tmOKan+vnwLZuxPgSLDU92Oe+Ic6?= =?us-ascii?Q?R5mud0ah8IEYviOyaT/ZvnqB2KIleBkV+CB/nkHQsiDIbJiuKnIZl3gznq8L?= =?us-ascii?Q?X7J25gdE5oYVOTAkeeWx6BVZPgbtDMljrU/3W7YQJh+VelLz7Y3nvXhRqDht?= =?us-ascii?Q?2EF3e56EpsNPjS6FoY59MxCfx+XVCnzNToGgvMHMyJwtWOusiJNZ+1oKZ6CP?= =?us-ascii?Q?esbbohh0Bdb/YLiBqQLSx9KAfIieNPRRI4RYIwyoKLqEs6vnr7CpbZE67Yze?= =?us-ascii?Q?M41OinWz7DdAjiwTk/4krEpLaPxfykvv2dO112eq48PmVlk02vhHoiEV8GdE?= =?us-ascii?Q?AEvhUeORrCYfDrXc/dhVZ78IIW/jyZhzS/drTQOCq/woZyjbz+MW7OaEpGuK?= =?us-ascii?Q?5dkxpSyseQBuPLrDl4N08KV/XXgiXM5G0nmQIAvt53lrqvTKqzlWgrO9sp+l?= =?us-ascii?Q?PBvM6Oro8NDSHIcLwqboYOPvAfsxRXZiaEZ3U8OfHR83xTXbuoNmdPhS8Jm8?= =?us-ascii?Q?BHynJL3sRJaTwqxsxeYozW6oyFqWqGOPJIchcFfJhoEO02p2+jAdlHSEZ0hg?= =?us-ascii?Q?zmiWmW5bhwlmU05eC8uYpmX8939zrcKijiCb9AG9HVxydeTV3TO9Y1F8YpBw?= =?us-ascii?Q?T9uwLGLA36ymSEP4bBh/dvM=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)(1800799024)(366016)(19092799006)(376014)(52116014)(7416014)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?DREBnDbCHsiOWZ3qcPQ+m6yW+xev26PcWzcwuHitC0Hb71GjR+v3gf2AsKm6?= =?us-ascii?Q?gutsfAmcaZk9E7H9dFzRLFM66Vo62oDiAywCh0qjxWFAgR0oohXnMC9FKs0p?= =?us-ascii?Q?y5NQuKsEddixpuLJsZYFOFhSAng6C8J8rg8yob1se9y+GFNI8x+kAF31Ulnh?= =?us-ascii?Q?qIO5ONBJELZB098tKfJyGqSuZ7+Tk0xz+PlxCaQUIYPH45p/89vbUxjSlk5u?= =?us-ascii?Q?3FITgt5b7sD1Y3UcfNU5nF5+cPKqGY4aSLcGNUHu66o3NE5Ety99Wqv2igqm?= =?us-ascii?Q?ngaH9Zm432ZrbYH5ssAxmPFHyvrn+kdgWJb1hnT5GODRqG8VKO/PZyCtFezy?= =?us-ascii?Q?36ob+JdnsKRtBFS8kfAjlZeZFg+uHRT3x8QtI0dxIIa8duA195HQC7GP+poq?= =?us-ascii?Q?tlY9YAbh9ehJbOWawEQ+5RFMDf+X81oMAgqGyXF8TP8Qc+y1rh3HJjoDOMji?= =?us-ascii?Q?z+tesCjwB8YnbWd17qtF/GCdZ+HyjIdWS/43Y9iIpWbeJkRI0teKfst2HuqE?= =?us-ascii?Q?TV28Owo8PowlyYGXaC+SIPTIUCEDSUa3cIAdSVMhi0qNFfM9KcxAItjiDlcX?= =?us-ascii?Q?fzlkmbeROpmKrAhghNa6Cz6bYmvNxCaQ/ce/ASOo17ib9QLbPT8Iv76xooux?= =?us-ascii?Q?wIYrST/O5RleQrj/JvfgeKomM1H+8wz8vSZ29iGkdKr2N50jz1qXbuTJ+AGr?= =?us-ascii?Q?N9Xgd1G6vsPD1OY2dcvgUvmllVJhkoZSo2RABXqHOgEyvK08iGQveIx8zgKO?= =?us-ascii?Q?SKczqcFg4nZkhypqW9g/ZXRahJVJOw9AJRoZyAVW26YjbXZxim6aB0vtkXoe?= =?us-ascii?Q?OTpK3fYURU74chMC5uhenEhOAsltwJYNKabSxj/HXYkHxlMok3i6+LgCVfOS?= =?us-ascii?Q?losvVk44ptyYzrc5OQBu6nIRCl/aPoFsw/bzQPPalDecfP6en7J8Y2aUmYs8?= =?us-ascii?Q?9HDtIjynrxep2dlwkLWdHotRIC7QUy1zkgQn4xQJ2QxcVoSdxsA/VJ42F3CE?= =?us-ascii?Q?zYSNmV95x1z0WaZ4ItmJCauo8blxx/0zfdfsRP0P/L8kvP7I1Vjxx6s9S7wj?= =?us-ascii?Q?O9Xh8PooSWUz0DyJt+N/Zlj5ZjD21KCzrQOC2l7q0GQwFDJVAdg81y8/kMim?= =?us-ascii?Q?UP1ZbMLpXMRMf8fuiXyrrSFH0aqexqfzgqpMg4/UfxVJUzwY/gy+nh/BrUC3?= =?us-ascii?Q?FAsB8A71gKecdSyPHpY612dlP4ImNHK4e5VqXa4FCfIg9ylT5932GrLFpXQY?= =?us-ascii?Q?HpbvU4cRSoI1HeUGBmDmBMD5ddf7P4Vy4+j6A7Ah7hO3CLpn2BTH4xTXG131?= =?us-ascii?Q?eYw8Z3ubdV9XnVS7vQ2gLwLSOI32iTeX7W5w/saENVBgkf6YOwKR/hDXwP1K?= =?us-ascii?Q?WES4l1by6jqqetoUPYnO9jWyUA+kDRhmoqD7qpjn2NFW59zaVv4EM2bMnZU/?= =?us-ascii?Q?BckrICwl1DdB9tOi0h4cyp5apHnVsTf2gHBvC143WRcK0J9ApL3gyGvSg2qZ?= =?us-ascii?Q?mn45/ABJ+tB02ZZsA8WhndTvpWZVpLxM7r82G18+1hcepFXcmiAvKiSW6Qig?= =?us-ascii?Q?jYCNXnPYYQJY5FEbyhpZhNg7zL3ykNRyBvT0P1bl459XgfVYkt9/g7R4TLQ7?= =?us-ascii?Q?3ud5DjFPfzpiDNfVuDf1A0WS4/sqWoCiBSw9/kzvGo7Aq2/Ufuf9Gw4awBGE?= =?us-ascii?Q?Py6BrBujqYtTTIPZQexSesRNLyuDwicpgmVSZBVtGt8XuiAXWAW9VoXZK7a+?= =?us-ascii?Q?iKtOai5aXw=3D=3D?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 91dd735d-6765-4075-e102-08de5725fa6d X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8420.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jan 2026 06:42:56.3730 (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: yiw0aSg/emvL6RMvqbravijzckRzIIj3tfNZXXN7Ysb1Rni3EVPllT1yH0ePVQgN9sR3cT16dmplUtiY5f5yLQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8492 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 --- 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 13:45:08 2026 Received: from DU2PR03CU002.outbound.protection.outlook.com (mail-northeuropeazon11011066.outbound.protection.outlook.com [52.101.65.66]) (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 E8DC42777FC for ; Mon, 19 Jan 2026 06:43:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.65.66 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768804988; cv=fail; b=QQ6tPpCVQD06p60U5MkQQZ5gkY+aGMnnI46uzO2pFVpzTfDpRq+bgdI99lrD9w5Vj6PEpzWmJn4fnrpi4tEfPaSZ5w08WmEmUmFturutF6y61NWC2lvS47/fgroe9WrpwvW+5nFQ705QhHWRBSYCtqG0ma/n1+yXnHerep1ABVg= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768804988; c=relaxed/simple; bh=To4J0l62qq3QwX/5RakpM9+w6u7ELJ1q+ohMkCDN+yc=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=n9yNJKicTC2CI8mJC1yZjSfWlt4TrH/W01kph02rimtzSV9/jrFjvXVvM1/XA118VKTD6KfO3YnMs/Gjkp9/W1rWO2pLnz63v6gtmngSL+dkczbstn9/pKKxUixCmpAnpFl9+nOmp2nyf64nt6A0a2KYpZGcFyUnNnRtLjb8/Z0= 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=alsGbIWf; arc=fail smtp.client-ip=52.101.65.66 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="alsGbIWf" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=ni9OXpPquJShAQM53os9F1NxUOshcufCsceY2ENWk816bdQ+xiHT4ed1S6/FRLzMYHZ4ghXzlhSzeFKNK4hVWnVEME+Vp6dT0BQU/z4GQI/TxnJWOXtV1L/zReRagcFY7n+BpYUgj3vDc50R1GueXSf3mVjOLEr6R9lnilgxl3r17yGdpWvz5GUqoVloaHCZTyklvOkN28hlMS+TGodxcjmOSF/wAAlu54l1+LjQTVVFdM2NW/gVFTcixKyIKcsEJiloyurp/Ui3bG0V0K85KlWggI8YO0OEeEEZE+V54AFdBL9rYxKfeM1yBYsiDTyCstMvG2DrT/9hEjkMmJMr3A== 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=qjc2tjB65VtqJ88t8MARV3SuYR8bC7fL1jSceNYyj9Y=; b=ruBVf4OR21Ha5lD43J4GWyAe06Tb1yQ/EqPfdjWa/eqgwoVkm1rsvDYjlzuxP/LFV+Vci+DWywBDKkFVEGguAVwfltqENd1ruUOrISrpb6+6j+aWJY+fpk12V3F5M9lI6m21/vDrWxtdedJ2Zf5/GFTHqVd1BQZLDetsxPBdMp0gqYHLtS5UR1ifKNBmq6mmBmiDJ4iFPoQVo7yr0MEdcKtZBH49xGPV33Pv84ErEPs4dtmiRMQXDHSlZOmdW6kqEB8549nDL0OALrGNtlOfiYcBN9ozjcTuU6hKTm24q0Coeu+hON20vvw3+Z0lgJWjRAEqNGQqVXiepFe8uHs1xQ== 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=qjc2tjB65VtqJ88t8MARV3SuYR8bC7fL1jSceNYyj9Y=; b=alsGbIWfk443JU1RQeRPWC7yon4Kqbj7KpB3jQ31O3j+R1GrqynXjYjYBnB9Z2nx4AvzVnQxBOFElChX9wuADW/4dZyZ6EI+k3U6OhUe1zcGoHsIVo5bZIR/1EvgXpoYCKIG/fvIkiRXsT+dS18NVQ8KK9jvoavYYABvov2jY7JXIUwW3LAqpqMkrXyq+9QxWJJ5eHHmgY9Ah1H23589rjgt93AmIS7fvimrhjbSwppfacpGwMKIgKk2zTaF9tuU2qSm7TSgIewBrCWwe0rrJBYQ0WadvinL8UYX1EaJb6RXJifqPaoiyUxaDrpaykva8NnrOAdo0a17Hk51dFBJsA== 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 PAXPR04MB8492.eurprd04.prod.outlook.com (2603:10a6:102:201::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9499.2; Mon, 19 Jan 2026 06:43:04 +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 06:43:04 +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 v1 3/4] clocksource/drivers/timer-mediatek: Make timer-mediatek become loadable module Date: Mon, 19 Jan 2026 15:41:17 +0900 Message-Id: <20260119064118.2493736-4-zhipeng.wang_1@nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260119064118.2493736-1-zhipeng.wang_1@nxp.com> References: <20260119064118.2493736-1-zhipeng.wang_1@nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SI2PR06CA0011.apcprd06.prod.outlook.com (2603:1096:4:186::16) 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_|PAXPR04MB8492:EE_ X-MS-Office365-Filtering-Correlation-Id: 45b8b0d0-2b31-4438-b9e5-08de5725ff1c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|19092799006|376014|52116014|7416014|38350700014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?J1hLIOVYNuXeUYSA63b5FNnOy8FAgrcqRnp6Uq+7oYCv8AsAJOEmAlJ2XhUg?= =?us-ascii?Q?Y2fPGftuTDyjzD2TGbBU3eBQ5d8C1SKTzK7iCQPsbpPu03WDVTCSmsx1pBHW?= =?us-ascii?Q?uCcjOL+Lm/UQWLxmdIEaRv8tf8eX2eNUDg+kAB9JEhGinR+ZACYAeYLf5mSS?= =?us-ascii?Q?oGh0w+zobznft0opOspEzvQs4b2p9bOsyf3/vG9og6svlhlq+g1tgwY4OTWN?= =?us-ascii?Q?ajh7QcL3k3Ttd8reRlgBdAonj9RU8mP/SWdUzLJucOvOmxb8n0km+9Yp84mE?= =?us-ascii?Q?ljfmVD4XY7utXmJfd4pIGihY3mpbPDdK0JHfREEywH0DkXPgQPMwcFJVvgBW?= =?us-ascii?Q?gjxFEf02+LL+8p4a56peSa5W1K/jt/VVYc46YU3ykGuLlrb3/Y8UJCDeEm3n?= =?us-ascii?Q?6cBymvsvVnKpdKF34/eZb3EK1dMGZftv6Cze+ygfGLL6tqgh73CPVmDq1m5+?= =?us-ascii?Q?edMJcHA8IPIutcSussCUx0Y2nEYlqXKjSfJYP/7CmhTMzVn7WX4eVZayvqXh?= =?us-ascii?Q?ZocMhG+DaKCrkliwY9q4D+Sc49/sWbsJ0lB4gwil3xY7lY9utMcHHyFhJM3g?= =?us-ascii?Q?a0a/tHzrzOR/pecAbDARPV9h68UVnxYbyWPwWfZ+nlVbnZh3gPoBoQmmPFIV?= =?us-ascii?Q?zhTfQCxs5fYdHf9kJxl8MJR4V8pBv0frIKXyzRDZ92qRPbMDVyHNLLJtnNj4?= =?us-ascii?Q?8MTvwL4eBmHUGTDWC/5M+wrt7ePVc7FLZSSur+NSMU0GBYJplfwx2fK6KOrr?= =?us-ascii?Q?OSQoj6S0Ln/JP/9ehbRd8Qnw+/Wp5l68i2hOj99vCVL2hc9eIu6wuG3c1ZqT?= =?us-ascii?Q?f+/sEzs3eHE+FVjeEyaUz6OiggKlZwf4WO2v6tbKrtS8jPjEody/DvCmxymU?= =?us-ascii?Q?ExPoEVqa7+q9dVSZEpdHVBT95xgguIWs/zXuW0Ma72ymxVS1fUl3MsbKOfx6?= =?us-ascii?Q?Fp0dk7G5HCATRJP7cvGblVpLqgt9T38CJdQw5s63RANj1zBzguteupLG4vU6?= =?us-ascii?Q?ipScOIUlPHBrMJ8bXuHM1VgtGv4FwSwNtEQCmucSlHNAOlTgKRMGqXhEGxct?= =?us-ascii?Q?GfPc8C/F/MXNj1NxOQ7IX+uaqG+pW1I7nlvyXdlZTW6MSMHHmOpwkQYuw8U0?= =?us-ascii?Q?ThtTkzRIwbP0oebL6Ry/EdziuBoxEk6SWODLVgSuWuiuHJ76dCiqBjLrfLEp?= =?us-ascii?Q?i8wYEFF/mghMd3V3daiEvDcQvYuE2KAicUtFXRimJv+sATdbXN9Sk+EwsL6B?= =?us-ascii?Q?m3VqSNEYbdTsMw1SQvYCVHaHsaNtan/lvB9hwqvmGudbqcaNuby0CFN70aJo?= =?us-ascii?Q?v1nxXyubuFuKiJ9KaER7MApq30ZJ424AZDmGAOXWie0F3ZLdSVXJjJYb/lWR?= =?us-ascii?Q?/WTYR8NfCiEpviiTN4GU+24oMskqNmDjEz50yS6UvmYp6evacbLEidKr2Wla?= =?us-ascii?Q?xPa3wTeGSfH9wPZgGSfdH1zMOlpsHICHZlTeOe3+Nk2/dYpjvGADVc/xsMeY?= =?us-ascii?Q?NrcZhynWSNQ9emUUVqZ96BPj2AW06F1BExmKz+/ixBiY83lnagb7Imi9n+bN?= =?us-ascii?Q?RAGNi1p5X0Ss1TTgSA+RZ+Eh6yKDYZGkgBouix7cLVTd5PZpd39kxA+fN0JS?= =?us-ascii?Q?E3ivOtvqDrstjL8fr8mCwH8=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)(1800799024)(366016)(19092799006)(376014)(52116014)(7416014)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?Gd5v8+lDYPkKvtFjtFBtHsyNyWiTOSlballYRlIAqrU/rsCgGh4s4mTD0j0W?= =?us-ascii?Q?2C0fzsNH+3ZczUYbqoTf+MDuKMkMzpJchUTAoblJ8ud/br1hpux8A2QKafyS?= =?us-ascii?Q?fg59S6j2ZIov/I7TpfQ8zeWKhN31vIJAb3tkKoFF7YUcxuU+PVCGmzAr2Wu3?= =?us-ascii?Q?YKTLjtWZftg7xkTR60g6uFNKFpx/gtkYPMn2HwCzqvLvNzJ5EWMLFfBXqD2q?= =?us-ascii?Q?Xfl6UoZDK4BH1QpgvX0tSJDEiZGe3VNnR1faU2r3IBzVA52rKRMbomAZ3JFU?= =?us-ascii?Q?Kc0qWJQaDKfYCavUF7Rta/TlB/yer9tZkmbmIgLAQ/sfedOuUedoZk0Pxkqz?= =?us-ascii?Q?aWGFYnkKGw0KbeOj4ztVD1hD9Wx8pa0aKn7NVbP8yRG68UUVxgHaCC2DCdxs?= =?us-ascii?Q?THjFH/puWu4Hc4/wiNQ5osaazJgPyN9p4o+J5qwo20qxMmEjUcxt6JGnKCNL?= =?us-ascii?Q?DsH1yKNL/QpB4REhelomIqaGrR7CWU1t1HYi1Co7O0WhA5vjgbSK7lfPBED6?= =?us-ascii?Q?mIPV9AYlxw/3hMl0NnGwu5BLXQsgjiQ+Hsc6tiy1ThGQDsskE9pdASv+6Zxk?= =?us-ascii?Q?DNy6lJOPoe8mH+h6qIJklJ9wL+dSL2vONEsrY82vuI1Djz6mHOIxNI9JQS9d?= =?us-ascii?Q?vOgI1SfeTGXP45p8zDVNNtKJlbTZV7B95YBff8QtoQCD7G4usj5eE4XdvmmQ?= =?us-ascii?Q?61sLxf9xQ/2uWf7vLS2yEt+dLCnpLxx6BrWia+udtLUUwYx43hpq00XmCa6c?= =?us-ascii?Q?px3YVtrPfIQPBWEgAsM6QIoYGeHKD69Zqxec49zXiZGVzS1eutx03b3tMphR?= =?us-ascii?Q?3CtEmgEquDATOZ/t95L8yadMNwOUA3ZEhcHnrxbbyoxPjZsLh6MPR9LBCZor?= =?us-ascii?Q?mFjgIT59sHQBuw3xvHkqnXUMDTz+jhJ1exlXCHoLYZGUAEez/WzYAXN2pkXr?= =?us-ascii?Q?Vb86g0tlmLaNrJhJ7S5AGedanLVzNRMPN4iI7uNWyFEG/7J4IN7oU0u+pc4J?= =?us-ascii?Q?U9F+wtKr6Mm0+pclXgjLxqcfcl+Kdqo9+lmZehNF9+9f0PDcUGTCbBNiokdA?= =?us-ascii?Q?ToS5hgTrsBAn9R1hxfHpgcLVB3IKw/p3ZIMB7i5oRDFwOmNUxIoFi1T9cqam?= =?us-ascii?Q?hoPC2Z++MSfF92Dsg0wxydVuIa7TCGOFKXFIORySDqyr1WAFeWzyaxvghYFv?= =?us-ascii?Q?F5HFz+x1fAkMjjlvaNvlw2RlKbSVQ0W7ws0BrAeCFDpElbeAgbPeVaWrDZu/?= =?us-ascii?Q?I/n8Jf3e/y+T3PbcKys66PfRyePGEjRaWiTuWLyng8zX89B59g9yEbnAMH+r?= =?us-ascii?Q?04flD0+s+AlTlSEqdMsRS39in2ue9XjqYJcF7d7nFSInHZZuOvbHizGqB5Jt?= =?us-ascii?Q?m2x4VqGxxe19RSXSK/tTUGP1hqEMI8joyAfGZYW+sXneRG/BoABXbeNz4Ai2?= =?us-ascii?Q?MhTOfvH+JjRPfS1gOf4GwdyhdfXgDpBhFu7gTPSqK19llaSMNnRIEiow/BMG?= =?us-ascii?Q?JUzKItxPM0OYwj9r4Q1INYDT6PIoacISzOznq+/fIxAmKGyOucS9LW5OMSXa?= =?us-ascii?Q?MdreYFHSqNGPbbYxKpMPiMeo+Nuxhed9RqXRFUIiEeeRE5ytOwsYN4482fm+?= =?us-ascii?Q?JbzLMLD/z5rj/5tbxfso+u/7aGgFZwudVYMNhIOgPcjsVOmpTOe3L9BzVLmP?= =?us-ascii?Q?DImRXeU9FkJMZ7uybVTXE2mLNMCiAGjwWC9O5OWw3rB7izC1FMZBQcFRYiCD?= =?us-ascii?Q?f4Jora/gsw=3D=3D?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 45b8b0d0-2b31-4438-b9e5-08de5725ff1c X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8420.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jan 2026 06:43:04.2234 (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: /SVz+KLq5DsuGybgf+V+1hpEDGN8sYLEThToZU7+0veDQH0yemzt6ea7TG0N3fln9GBuleEUxmtzVi9YMil0Ew== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8492 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 --- 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 13:45:08 2026 Received: from AM0PR83CU005.outbound.protection.outlook.com (mail-westeuropeazon11010057.outbound.protection.outlook.com [52.101.69.57]) (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 A81F52AD0C for ; Mon, 19 Jan 2026 06:43:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.69.57 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768804996; cv=fail; b=O6V2jpw2FUsBYwA4SZRV1DLIJYeaMOzOKc9KL0rogN+O5DC2jalX651X5rfSlkAaaxVsA97MpH/8I2EOgc6odQNCulh5V8shEeuBEfT3s3Vjmpi9P70VUnAuQbSBeSYkSFlHIP+hCA8ip1hCc8SnIizVPpxfvu6cnFGiP6xitx8= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768804996; c=relaxed/simple; bh=ak5oF8lptxnvoiFBVsTd2rvng9RdoaZOMI4RKWEJEn0=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: Content-Type:MIME-Version; b=TjyKQYoZHZ5cZTVVJalC64RdXhuMwQvVQnYuFqpQ9qzxgi3HiVU5hzTIw/396ZoqD8h4t8F6AFbklD5kdtPHfZGRVSd6X61WhUJ+ABMIeWyOpvBmNAH5bZn/qbBIWPmMaaTjU1UaUmN/NG+5YdMjKl4zBRwZcaiRovOWhQcDRkA= 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=lri1bDGA; arc=fail smtp.client-ip=52.101.69.57 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="lri1bDGA" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=agTEHzPBW1aoHEmuG8wekZyOwEXyAjR9yOa2abxP1XgbUZSfy15ZFO8fAidh75U7ZJkKtZYKtge1GqEKtNKlkW1CRTmeCIseMONxEPv7WI75bbSmgACFK7m+xGXk2F10LSjf1/3cHmXrefQjhS6CS3DQd4zPMfyjQgFdYxgMMb6HVmeERLWxb32cgwKpCja3N7LJO0RBKSKDX12rNwb/n51QXP7fmVgEMOyx4rNV9GkK9bvN4doUQAygaIQ8n1Q+DwveefV55pS+xN8LE96EtyjU3OYVoPd0hDp1EnzrrNhFt44fpUahyh1eLa4qJwp5tPiyg5AVzbFSR9gFlyCTtg== 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=mChEdScPK4P6p2Aemi/0p4MThc03DxUwyC63GFtzg34=; b=AASNxws329AfYEMuBaMrU/blD+nBpLp7S4P/qMhk0nDPhx2wcUkbt2UhyWsOYdltiRdj/XWjD5FgM9u3AwcUp2ON1D4BhMLEcNE2SX2bO8hLZ0ijUJi84KcRsN12GEIjuprd2EXecymrKnkMJfUGznn8aIbEtDiE5ddSntcmSOPJS5UiLTpuow3CFht2oZbPco7LYcIsshDRKbeCOhIftqbNohuvWtE/qO/NyCIueQOM9NwSMjlB0RBbWyWq9HgLlqLr3UTyNxP85ltwMaN6HS7zmEEhFMxh7GEo0NLE+HzxTvsn2jhRhgLHLBnGQuqFOLhqzfqfqkXIq81EsYbVEQ== 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=mChEdScPK4P6p2Aemi/0p4MThc03DxUwyC63GFtzg34=; b=lri1bDGAI+WbPnw0xhLvSx1yHIkVJzAex3cHczySV8e9drsd8An8vQyxbjppw8wgmTGlZL8gHLgMgZ6IuzfJYDmlXyZxOkycTZj6x9D+T31s9iG4NpC7x72jR4lLH0R+sz+U6SMSSFCdgV6BoHYK9cF8FhuuXNz+bQNiFZEIUhBnbQPP5Nshz9hEpkQntxr7YMTqoD1J0642PfY/n0osB8llcSdjHA5uVQHGYhCU1SiZK/Mp9jSNkO3OdhOhLs9LJIWnWnl/8DtuGO8hwi+tFnzoOVw0lXC00vaoWLPDvcJBaz8O5k3cJsQ7hTj3MTCAYXPlWVyuNqDzk9FgqKhyAg== 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 PAXPR04MB8492.eurprd04.prod.outlook.com (2603:10a6:102:201::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9499.2; Mon, 19 Jan 2026 06:43:12 +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 06:43:12 +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 v1 4/4] clocksource/drivers/imx-tpm: Support building imx-tpm driver as module Date: Mon, 19 Jan 2026 15:41:18 +0900 Message-Id: <20260119064118.2493736-5-zhipeng.wang_1@nxp.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260119064118.2493736-1-zhipeng.wang_1@nxp.com> References: <20260119064118.2493736-1-zhipeng.wang_1@nxp.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: SI2PR06CA0011.apcprd06.prod.outlook.com (2603:1096:4:186::16) 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_|PAXPR04MB8492:EE_ X-MS-Office365-Filtering-Correlation-Id: be909b66-3078-4cd8-b5c1-08de572603e5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|19092799006|376014|52116014|7416014|38350700014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?LEo2Ed5q2ElK59BStWK8e/1uZImtVBHvaxaS6fPVQ2lnxughzFP/ftvFR1B2?= =?us-ascii?Q?2UgkP4ZptWtdD5+Y2jKS0fOcrcgI/1l/ADidSWvojZ+hllYcLvRfsBEEl7uX?= =?us-ascii?Q?ptKO3oFXFL+HKtMjQHlYu1a2RqxZEYD44s8r7WYZrobPZO7de4Fj5HeEiEM1?= =?us-ascii?Q?0iBC9DTswPbbf2U1e9/IMZgIJ1u9efeY4AkPGzN/GlOCxJtwB1M4tWoGDR2W?= =?us-ascii?Q?vXC44D3bEzCjGKLcSIn4FoPQZA96bSfzbFieiUBaeGySPNrv1+/zwywDBSx8?= =?us-ascii?Q?f5YQqXLQTVdQ5r/pD+HjykO8/4zqdTh0wlzGInugNAZHSufx5l6HY3kXp+is?= =?us-ascii?Q?JB1uS3ffCTnP1FDOwA8XaCVgw84EcTilwLGxkvn5cNg96x9kURfw2fbvUI1K?= =?us-ascii?Q?ckyFEYZty90JGbSXmTBZW1X3m+yeZllw8EYx9S9uzOMnrjbndkAVH8fvG7+B?= =?us-ascii?Q?93IJoPuWkJEWvedGE59bED37C+CKtUxKSf+6D9nQsU4IsAWxrb2eCEosZExZ?= =?us-ascii?Q?hZx9H078IKrjHmucTcTQ4idrDfQjTibdf4ZsloSmnwuvsnyPIK1W2HmWnzvv?= =?us-ascii?Q?+ZYrHg0AkzEwDTiyhqgL9hR0t5HSiceY8w53uV9TtW9Hr1hu/xLb+6c6cH5f?= =?us-ascii?Q?6QTOWUBpqC4tKVxUZCVfrmiw0vh3XI/YApfh04bGO8/6mX8ROFzpZdF4Xy7y?= =?us-ascii?Q?jUw4QnZbKxEDxbT/lvKni+AFH+zgF7gL8PUJmanMVEsZZYeU8fuU6VvloW6G?= =?us-ascii?Q?WAxqtZFdK0GfzVTSStLP493if0vYG3gawGn8iqPfUQb8K3qJEuTO7GLZJ4O+?= =?us-ascii?Q?kR+81oc4iM456ALDrYYzzpIGLAZdwCCHCB7aI9xiVYAv6oOvIZKqdnDZTiF5?= =?us-ascii?Q?4SqO0DKAeOB3iQzRLlszXfyWIoea9jBd6IJkx6KNyySwyQU5VZzjEUPyPSds?= =?us-ascii?Q?2jej7grNPY3agVvyJbhW0LM58zghuFnAVh6589aRTJXZfriKPd9QK9pNhgSW?= =?us-ascii?Q?sK9zqZNVwTzqvYtgNY/eabId3jgnMW0u3u2RnChLH4ioojF+VSjguBi3m2a+?= =?us-ascii?Q?GqvClb+MJ8TXcGtF47bl8OEuXqkuELMxw0lU4t11EbVHsMsT4dCGvw7A9Zzt?= =?us-ascii?Q?AgvBC7w8UGJZC6BK6EZ8zB1Fvb0wS0+MeXwYzBETcN9UuukX4SOhFTetix6f?= =?us-ascii?Q?+QbtTgs+hHq11apSty3H0hNoF8w50s3ZYdSXK6h2o+a9r7uFQgi2wWIKnxMe?= =?us-ascii?Q?O4toQoK5KdaqIwxd8K3WnIK6DFm2Fb/3j1YPuB0bf2uZDC++1KRfbjRN3v8S?= =?us-ascii?Q?kUp74fdsjcUb9RT2Vdt0wyHl/Vc2NolD6TB0aEelUXXITuC1Usu+hyIzBEf6?= =?us-ascii?Q?6FVgW4mrCI9LUl2YfePpfqJaQgETSpn9509FDBFmtEVEoRSv4KGaNWoSSd90?= =?us-ascii?Q?nHRiZFCGMdrkpFwGWpqFUrRV2+8nbxqAyXRcu9ZVcdJMvr8Y0z585dKXuGl0?= =?us-ascii?Q?BX5FkLtekpOq4v2BbnkeoRuVj953McafKxgiT8+s0nQcV2/nzp6/ekWFE7bC?= =?us-ascii?Q?x+nKDRF9qn+R7bqWmv8HRG3to1Fcpeb6KeyaGi4Cm1mlDoh8cOIj7ViFfERB?= =?us-ascii?Q?YReOQYcV/TSkqzMkRKLBXPk=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)(1800799024)(366016)(19092799006)(376014)(52116014)(7416014)(38350700014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?OCM+XcGdVyWh7sLT2ZnPH3ZNab3w0cSwIZD5wKdqJKUFcomGtDiidEsAOrm6?= =?us-ascii?Q?kPB1Rv3maTSeLhQdMWHyKeb4L+3VabqqDXcDLd2HZa4I2c1Nl1SXktigX/Wx?= =?us-ascii?Q?YfoJT/VZnGE1z4AnlogekaiOuHWtJ+TIKtQuT5aGfF6uJSq7WiD8Dl7KPU3n?= =?us-ascii?Q?eEQJvLYogTlfkY3onuG1+LqMui1QMLBXdzUkIJM+StzgBnd7n60Aln+7ptco?= =?us-ascii?Q?pkDC1FuocglwuBLpvLZ+2nomK4GtMFBA+hjmk3NoXSSDStfLWKmZmPHL9P7T?= =?us-ascii?Q?3XkC4zMQr12XwqUlMpawovTf/nIdTuecXH0q2WDRc1XyoXgRwWj6Lq46t+eN?= =?us-ascii?Q?01o/+alkrdTP0O/48OC7ZsYenFgDy5PKVemR2N03VYU2h0OmYiE4nURp2v4W?= =?us-ascii?Q?mad4pcSGAe4do6j9id7/NH6xqpZ8MbrWSlAUVOsFeoKAmLJEdDx4WdFvkSyB?= =?us-ascii?Q?x/ntobSLpGxwA/fedpuQwebs7dFSBrim2b/50LX8cmKzDmL8ORp3m8155lRU?= =?us-ascii?Q?HPo5EM80N4o7ZtHXRWcvgnYmbOTy4bhOX6+STeNUaVaRVexQMBnKEN9DB69X?= =?us-ascii?Q?hXKkISjr14DRCDUTcL/DIYOdhAWwCtCLNyKBrXXJJdT/vGUqdsFIdkX2I9BU?= =?us-ascii?Q?kXWNhTHx0tMbEjMjRp2lMEUBG84/EeXnmnPek81BuPmhUgFZNaAxM8Ihns8T?= =?us-ascii?Q?bp7Qs4Ra+yWNMBKUs2Iu8qL9y8imFkKze/gNxjk9K/Vy2z2pWp6nnxkJACbi?= =?us-ascii?Q?bOEHX5Il6BRSicXRLuQqyNuNyDP14UFMh2g29FJ+danQIPUCheGJ9KA4wSjq?= =?us-ascii?Q?NhT9V+ou23IoSsAacKTGej53jmQ3gJUGTcfKBtr2y8bUmgHLxNMmvG3LrCVf?= =?us-ascii?Q?WU2BG8Xyeeyd91UukucKD2JlTi6RwT67/X5BMJXh2CXbJ7+KCMP2q9APi6XG?= =?us-ascii?Q?M3adqs3ySpUnyjvVrgkDx2qrv+cUKNdiRj2Y7yNQvlBGOEp6tH/hydD5H3Uv?= =?us-ascii?Q?IsU6keWuxRQ8JoVyokeXEDBK8g1bd6YlPbknLvzIPFVclU11ZSX8iwp6pdpP?= =?us-ascii?Q?BSXSxapXp/Wfev8c5U8Q7OjOp2+7CTP6Yew+QsyBgixKWRDXAA5plsSwj0yu?= =?us-ascii?Q?Fq4KkFiKbhhuU4dIeQzrxeyhdvXKbgHDXiP1/EwkDjaxj63fXB1CUKDTTVLd?= =?us-ascii?Q?hGi6NiCYb782jZng/eNzzI7+Bh89yZC1Id5+SMlsz+65JwP3C2fe2wrNZy/2?= =?us-ascii?Q?0zUOGyAknrg9zh2nKFqZOO2+N2AeSjuu++GIKrwVFRjLnkqz/WEC3ruHAfYn?= =?us-ascii?Q?EVQAquHT2kjX5hH/TX0qAP0YI4duw/ZUKVZFR+1IYlTgRYRCRv2R7lMZkQfF?= =?us-ascii?Q?jOridxFkbTa+PXpj4t/HVIMcFW7mvxCtvwdQgM8auGSkpuGoogZx9CB4uXvu?= =?us-ascii?Q?9WsZC3EZJOO2xroOO1Nt1pNUrieNx0TNegV72rgHjdL6n4tDbkJXCSRGvitE?= =?us-ascii?Q?b7W5RC/lHmuxz2OC+z5bMB8YmrBygcLQvyGgmW8O+ahmQY3vYxM5yVc+fYmR?= =?us-ascii?Q?P2Fp/FgTZjoqnLWXPG8uLE5wm3S5ww+0NwmemEv/uSHvwhZF8SJAC0oA1/qO?= =?us-ascii?Q?h6qYUtSVFY+NCNZmkZkQJ16stz6kCgdRznB9axca2UWGbvdoKaI5blwKi3/2?= =?us-ascii?Q?seix7P5xJUPx/SjK/F+KHPzxdiEfoJOQEB5ZGF/SyQ+9lPrNXQrkebkWH4OZ?= =?us-ascii?Q?o7snwd+bQg=3D=3D?= X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: be909b66-3078-4cd8-b5c1-08de572603e5 X-MS-Exchange-CrossTenant-AuthSource: AS8PR04MB8420.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jan 2026 06:43:12.1423 (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: WScb4FbaXeSjoZJO0ciaDBcNjWCxMLOMCH9XLHoQtbK8WKYngs2jC2B7omBhlq+OQ7ATPFNch/dsc7OwbWSzFw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR04MB8492 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 --- 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