From patchwork Wed Feb 7 02:00:17 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jacky Bai X-Patchwork-Id: 10204521 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id E7EE2605BA for ; Wed, 7 Feb 2018 01:58:22 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id D8E5E28D9A for ; Wed, 7 Feb 2018 01:58:22 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id CDCF128D9F; Wed, 7 Feb 2018 01:58:22 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.8 required=2.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 6F41928DA7 for ; Wed, 7 Feb 2018 01:58:22 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752884AbeBGB6T (ORCPT ); Tue, 6 Feb 2018 20:58:19 -0500 Received: from mail-he1eur01on0074.outbound.protection.outlook.com ([104.47.0.74]:1536 "EHLO EUR01-HE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751558AbeBGB6R (ORCPT ); Tue, 6 Feb 2018 20:58:17 -0500 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; bh=Q4gxNsAfyEg2Esg/z3XfVJCPC0EmH1033WT3c/Sz/mE=; b=aQiyrYW2aTbOLorUhrVZTVTOq3qnZ5nHALJSaaanFqm0IEBV9H2JSnLW0pIS+p4ZrhZNrXcLK+P5fTeU8xovknyd4v6FqHnG+iXDI0wUjIBwjAhftBCJpvLknek3my+qFfkBqIvHuDZOsTYuBY/EbphxUKtv6mwgqChYhRodZ/4= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=ping.bai@nxp.com; Received: from localhost.localdomain (92.121.68.129) by DB6PR04MB3109.eurprd04.prod.outlook.com (2603:10a6:6:c::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.464.11; Wed, 7 Feb 2018 01:58:10 +0000 From: Bai Ping To: sboyd@kernel.org, robh+dt@kernel.org, shawnguo@kernel.org, kernel@pengutronix.de Cc: fabio.estevam@nxp.com, linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-imx@nxp.com, aisheng.dong@nxp.com, jacky.baip@gmail.com Subject: [PATCH v3 2/4] driver: clk: imx: add new gate/gate2 wrapper funtion Date: Wed, 7 Feb 2018 10:00:17 +0800 Message-Id: <1517968819-12869-2-git-send-email-ping.bai@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1517968819-12869-1-git-send-email-ping.bai@nxp.com> References: <1517968819-12869-1-git-send-email-ping.bai@nxp.com> MIME-Version: 1.0 X-Originating-IP: [92.121.68.129] X-ClientProxiedBy: HK2PR02CA0217.apcprd02.prod.outlook.com (2603:1096:201:20::29) To DB6PR04MB3109.eurprd04.prod.outlook.com (2603:10a6:6:c::13) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: f379ab5b-6ec7-4589-964e-08d56dce3fcd X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(48565401081)(5600026)(4604075)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603307)(7153060)(7193020); SRVR:DB6PR04MB3109; X-Microsoft-Exchange-Diagnostics: 1; DB6PR04MB3109; 3:e2K/U09wTTuF3jz9vQ8HoyrAKZnPLgbyqi3ahpv/GFkfh2cJkCDCY/3xLRttk9TPgYjJ9oslJt3KYl91s2uJK7zoKZ8syPw0dOwuoZ0U9sJ0dqc7H4wZXXB8HboFG2qQks/2pGGlgQ3Rs52obr4a/rpbZj2RgBhjGFgaH3jyDFRpq0/BZLVfTkQ+KgGC/STfP4G4AJ2hIzN1fZoQaRJCShx50N0HoWGBxWw69F+GMHsEroaEQQ2QwufBBwz7ZgfW; 25:o2k3g6qQFo0GTi/ZDITqG7TU24AtcA4/PMXqFFlaJMLy3vn+yJsq0sIuxtgL7JiJkM/Wo8OtMEaWQu4IZGrw+CUHTUpcn2GotzViIg1+EeWrLPLqSytQs/Rvnp/gz10nBC4WHoWJQIRBV52neFJlNeeFc7RZxlZJCr73NfM9XYlnru+P102ni3FM/9wTSVZOvwr2VLpoEUymjaDkmAhk/b88/kmuKlKU8uvNXhQ8pBKzibribc0iR24lVTHZgo7QfgPmiNMq7iT7Hb0LdfupxhWgnJY2ew+ukuEFhW68uDKFV1eMnNtfXBhtWZO9eHJM1gFGSUvQDce3BUo//YsB7Q==; 31:wq4SXntFCN9Rt3XWZAe8cfBs2+YhQfpNFrXRUG2culwZMjkK+3zeCjNRjKzPstISvBtFjDVfjWRAB4ifcCAhw3x7T3PRZLQKqFiBsnpavv7jlwan3LVqqC4NVlwQqN2BHqnrtrKYgGWSFBx/8eX+KF2WrwO/rd/o9Vadl/bnRooFoj8B3qpBykufL4dkK3bt+/b+N0bqsmLhVsR8jZbckv4NeFQyZq/BDxBnH9MrJ3U= X-MS-TrafficTypeDiagnostic: DB6PR04MB3109: X-Microsoft-Exchange-Diagnostics: 1; DB6PR04MB3109; 20:Oe2DUCLtzd6QC0UtOOW6Z8D1yflfS2s9ccRu2zqfCMZrjoe1zf+gCirpg4+Dk0qPVwPAJlxGtsSKJW6jyVX920lpT2dlVaKVcxm+zUUcMQSMQalvPDF9WyuA/oaqIScuPBmh3InrJV8QxppsHoVeOnzjHm5NV2KA2SWHwh7h7AGDw1+BjCQIGs8/fPkOL/IJL/QnGjiVm0Gbhw6Itky277WomQLObm7iqy7xF2MmEdFZr1a4jV8xTfFgDQYMDVr01eFVNGcn8ZxFY9iGwHmoQZbHJuJFKBbp8VTZxfmyLs2zaifaSkkqBHQslXL9TM+4gPGJv/FfcWVZh4HXI5K2vWxO1lV4qGrwZu4lvBv2V1wIiY3AukB5I73215XpgtfFR2HnO0FhPdG0A3Pr4DsVS2DpNoVEF0w/0UofH3cAu3jh+u/a/6deM4ssnTL+PxwwpnitjER4NXsaV3PCyVnhsxHiXcmYM+OcR+VCrNwU8dNA9gqsge/KL4KvWeN59oJH; 4:H/WmrK3Gldh9EFLFPOmzW0AQsg6yGKzl8TVTdkE25j7JsHcp772rvGbaop8ANcZW3jvP9FPu8KnpNWy56J/zaJdhigXdk7Y4QA2Ajst2sUP3bYdk44ku3n1c+DmeGTyOasWBDei0KIcJMOD2MQMw58ZrLVhseb0eyfbvji8tNrilQJHURvSKxGFbmDYe/X+KqeyDklyBsGpFVvhIHXznp2Cqm50lh/INkfr2ynIhgDlTlS4kEqDfZBCjyR2+xCBH9x2cPxyhx3LJGlaaQoAgdepHHK8SvMhzlsaxvYSsNNBXzI614SgMu5CkporQZjdr X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040501)(2401047)(8121501046)(5005006)(10201501046)(3002001)(93006095)(93001095)(3231101)(2400082)(944501161)(6055026)(6041288)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123564045)(20161123562045)(6072148)(201708071742011); SRVR:DB6PR04MB3109; BCL:0; PCL:0; RULEID:; SRVR:DB6PR04MB3109; X-Forefront-PRVS: 0576145E86 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(6069001)(366004)(346002)(396003)(39380400002)(376002)(39860400002)(189003)(199004)(59450400001)(66066001)(25786009)(5660300001)(53936002)(2950100002)(39060400002)(106356001)(4326008)(97736004)(386003)(50466002)(52116002)(6512007)(6506007)(51416003)(86362001)(76176011)(478600001)(305945005)(48376002)(68736007)(50226002)(81156014)(8676002)(81166006)(7736002)(36756003)(105586002)(3846002)(6116002)(8936002)(6486002)(2906002)(16526019)(26005)(186003)(47776003)(316002)(16586007); DIR:OUT; SFP:1101; SCL:1; SRVR:DB6PR04MB3109; H:localhost.localdomain; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DB6PR04MB3109; 23:4syOjY385fg9++fphmiA6eL89MP24wgEsU5IAxxGD?= =?us-ascii?Q?LinHxOMb+McYXlNzMYTl+jO2NeUeLmDioxwJWDzno8Q7pSufIYVfiom0VcK4?= =?us-ascii?Q?NVBRlqmH7HaIIu1vHK2f4LWvYr1Most1uj6lxtjhNlHDugTjhEBFvCSJpClR?= =?us-ascii?Q?QwZcSYFOmskwVHsiAnZE7I3+julYdHvocz71H6OXPG3J5DUUGAhEKm/SfWIk?= =?us-ascii?Q?5WAl0nB30/1W2EbNwg2ZJfDYlCmy8gZG65HeZJwMEKeDN/7pOORcBeCLQLVm?= =?us-ascii?Q?BzhwtghlmwEGlxHGcNaZdYmVtDt4lC4uXWReLzBMiXbTfM+jqafmLi0mxB8H?= =?us-ascii?Q?UVgBQ93xJ02bfs8UWE66c698T8QFOPfGlb+XVvtqTHhu1hgN2j370uW5MyWV?= =?us-ascii?Q?VRcieSuD1HvF1Oof0R28HkeJUUHdABl3f5c0FHH8YuAOhI19oqFmp3ywjYL5?= =?us-ascii?Q?P8fuSZIxbeV5gwOF6r+WgCqEqyJnp7ftQTrJHTANvGl4RDNEZkUK4CBlUGPz?= =?us-ascii?Q?E496DhbUafGdkBPJaOgLUfWMnw/aayYLVmMW0VNswej7qb8jvsY5EQbN33XW?= =?us-ascii?Q?3RfGNF7Iw4OEGJuNBubZWuAChgNeA7Dex+JAGMrh4LIDfmtnyN1hjoVoKagM?= =?us-ascii?Q?FhdJV66lMVrgoAG06MBOQD2N/GsjzkGZCwCz5zEg7ZQZ3+q03D9980mSXW8S?= =?us-ascii?Q?mRU2vahhhobXWJ9qW+RLaACK76eOxZAiEO+rly7tlLHB8xGm4jkybkznjsaY?= =?us-ascii?Q?sFsfLtqh0VxDKBrvwruK1RnTy+iPwBSKzKiKInwXNrB4rs6gzvTYePHFH2ER?= =?us-ascii?Q?GyIA+Dz8XpDhqDNfO7af8mwzXBSGX4HERoMqAEbYGSEUZYRZ2/X5Zjoh5ZHN?= =?us-ascii?Q?Lpt3jk5YR7r00Z8su0NPA4rbVZPa3C+GqubV068QWpYqPLuUGSdzEMWQFxGH?= =?us-ascii?Q?NKr3TJFfloIldhM8WJ7tDBe4gkGebYHQuJIEiN3WhocvX4yd/WhbwKLvQ0Xd?= =?us-ascii?Q?zYo7xndIvGaoKKa581YXwOEH9Z+lKB8hhiT4gzM1JqsKZ74vrkC4y000vY6/?= =?us-ascii?Q?0s1kBo0h11AsncTBSa/DWBfaKWyfcCgcaLryiK3w+dnr+3ry8EXtjsTBOpUN?= =?us-ascii?Q?sVtOEmdrfqgIDlVBL647l1QKP60OLJ0?= X-Microsoft-Exchange-Diagnostics: 1; DB6PR04MB3109; 6:aKVAmAg0V6UCQeYrRikdB+iSpk78489dBCWGHIs1b9ZRlCIisDM5cpB2LjVrl86rt0T35zMxVNtKqjut/skRDEUjNXl3jjHj21uSoqAytJrjSb81ixcNdf5rzqphOyJAUzM15blQCwMQEZN2YNmPAlW2RuJhownLVu3JrSm8EBjVeUGY+K4zLMPl6CZ7nmlcqIEIUECDpiWqybeTtX+L9qYak20JQp/to0WSQEGcPR4u1UqV8EVB2Up89o4rvGH8suiN+CkvSRX9si7z8NRk+qI/PvbJ7djwQR74cxmxBB5wUX37BhGNGlSuqvcL0BXjZuRGSqOabTwlmabGYA+/b+kAaPRlyNtLiX5zLBSetIo=; 5:LP09NQ057wvL9FpuO2T8yfqPvmNhXp3OslYqR/mRRSuqA4gvixd3KCLam59pRFk+dOg5qPGY8wDyBQqqf7gbW9jaudHIKr53feI0UogNrkUGG1jmJbeeeqrz62JB093v7ZDfgtiKO+xGTpZ2p/Y9a+eLtulSa7LhThuDvdOnerE=; 24:Lm5+huaIUb+tFBTJ3PXgbE2Kf49an1sHRDZt+s/x/6dfu4J9Mn7SQLVYEeJgZzoB7LOqIqDpzKQH03TZmiBYe/oxmOQHc2FuyQAv50Qvpws=; 7:0KWcIkjB/PnayEO68mPGFoJ9gc8tYqPVxLT7uv/tgFcTaamJ0yyGvvtdNkFE6YCZH4HYyDrk7SIa38Pq6awFdUlvoUVLmy/nISpDJfzvZG5DOJiyYFDaMnmFWXKl9ZjNEkjN2DPgZd/mABZ0V4rtw4qxJea6HQZ58yu/Jx49yYvIv5uri81ev9Pj+On2kkGI68iharBX9DHKK9dgrpO88O+MSFDiwdOO00r0k4NNqZhm4384VdOsZ7bRqT9fYgKP SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Feb 2018 01:58:10.5327 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: f379ab5b-6ec7-4589-964e-08d56dce3fcd X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB6PR04MB3109 Sender: linux-clk-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-clk@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Add new gate/gate2 wrapper function to register clocks with optional flags. Signed-off-by: Bai Ping --- drivers/clk/imx/clk.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/drivers/clk/imx/clk.h b/drivers/clk/imx/clk.h index d69c4bb..8076ec0 100644 --- a/drivers/clk/imx/clk.h +++ b/drivers/clk/imx/clk.h @@ -123,6 +123,13 @@ static inline struct clk *imx_clk_gate(const char *name, const char *parent, shift, 0, &imx_ccm_lock); } +static inline struct clk *imx_clk_gate_flags(const char *name, const char *parent, + void __iomem *reg, u8 shift, unsigned long flags) +{ + return clk_register_gate(NULL, name, parent, flags | CLK_SET_RATE_PARENT, reg, + shift, 0, &imx_ccm_lock); +} + static inline struct clk *imx_clk_gate_dis(const char *name, const char *parent, void __iomem *reg, u8 shift) { @@ -137,6 +144,13 @@ static inline struct clk *imx_clk_gate2(const char *name, const char *parent, shift, 0x3, 0, &imx_ccm_lock, NULL); } +static inline struct clk *imx_clk_gate2_flags(const char *name, const char *parent, + void __iomem *reg, u8 shift, unsigned long flags) +{ + return clk_register_gate2(NULL, name, parent, flags | CLK_SET_RATE_PARENT, reg, + shift, 0x3, 0, &imx_ccm_lock, NULL); +} + static inline struct clk *imx_clk_gate2_shared(const char *name, const char *parent, void __iomem *reg, u8 shift, unsigned int *share_count)