From patchwork Mon Jul 8 01:40:41 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peng Fan X-Patchwork-Id: 1128830 X-Patchwork-Delegate: sbabic@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=nxp.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="rMO/9caj"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 45hpVc1XcDz9s3l for ; Mon, 8 Jul 2019 11:57:28 +1000 (AEST) Received: by lists.denx.de (Postfix, from userid 105) id 1A416C21DB3; Mon, 8 Jul 2019 01:53:49 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=SPF_HELO_PASS, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 9AA46C21E60; Mon, 8 Jul 2019 01:42:21 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 7CC4AC21E45; Mon, 8 Jul 2019 01:40:46 +0000 (UTC) Received: from EUR01-DB5-obe.outbound.protection.outlook.com (mail-eopbgr150048.outbound.protection.outlook.com [40.107.15.48]) by lists.denx.de (Postfix) with ESMTPS id 7BC42C21E2C for ; Mon, 8 Jul 2019 01:40:42 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=X4xv3Sg60BymU0lJdgklSEGVoK8yobmHaRjC2kIMur4=; b=rMO/9cajdFlgHZ/MM4zgqR2dMH7DVoBuImUzjkKzPQSkGInV0yQtyy52waJ7+VtdhSXAxtTVmSKnmNRrkkKXzeeFxMS+mr+6DVPKkJeyvlPpAJDjQXVYRQ2Wk+bett/4flTWN0PvTFcL1+VLA8wAhJKM/bVO/cu1F96d5uBnxOU= Received: from AM0PR04MB4481.eurprd04.prod.outlook.com (52.135.147.15) by AM0PR04MB5906.eurprd04.prod.outlook.com (20.178.202.95) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2052.16; Mon, 8 Jul 2019 01:40:41 +0000 Received: from AM0PR04MB4481.eurprd04.prod.outlook.com ([fe80::2023:c0e5:8a63:2e47]) by AM0PR04MB4481.eurprd04.prod.outlook.com ([fe80::2023:c0e5:8a63:2e47%5]) with mapi id 15.20.2052.020; Mon, 8 Jul 2019 01:40:41 +0000 From: Peng Fan To: "sbabic@denx.de" , "festevam@gmail.com" Thread-Topic: [PATCH V2 48/51] clk: imx: add i.MX8MN clk support Thread-Index: AQHVNS4mmqClMtXbj0OtFGljhdc0Qw== Date: Mon, 8 Jul 2019 01:40:41 +0000 Message-ID: <20190708015333.20411-49-peng.fan@nxp.com> References: <20190708015333.20411-1-peng.fan@nxp.com> In-Reply-To: <20190708015333.20411-1-peng.fan@nxp.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: git-send-email 2.16.4 x-clientproxiedby: HK0PR01CA0059.apcprd01.prod.exchangelabs.com (2603:1096:203:a6::23) To AM0PR04MB4481.eurprd04.prod.outlook.com (2603:10a6:208:70::15) authentication-results: spf=none (sender IP is ) smtp.mailfrom=peng.fan@nxp.com; x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [119.31.174.71] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 9fcb5034-f58c-4411-5fa7-08d703454943 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600148)(711020)(4605104)(1401327)(4618075)(2017052603328)(7193020); SRVR:AM0PR04MB5906; x-ms-traffictypediagnostic: AM0PR04MB5906: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:949; x-forefront-prvs: 00922518D8 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(136003)(396003)(346002)(39860400002)(376002)(366004)(199004)(189003)(1076003)(2616005)(2501003)(6436002)(86362001)(14444005)(256004)(4326008)(446003)(6486002)(11346002)(5660300002)(73956011)(386003)(6506007)(99286004)(81166006)(66946007)(66446008)(64756008)(66556008)(52116002)(76176011)(8936002)(476003)(66476007)(44832011)(486006)(81156014)(8676002)(305945005)(7736002)(478600001)(102836004)(14454004)(36756003)(316002)(186003)(110136005)(54906003)(25786009)(6512007)(2906002)(66066001)(26005)(50226002)(71200400001)(71190400001)(53936002)(68736007)(3846002)(6116002); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR04MB5906; H:AM0PR04MB4481.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: wfjgwuvWKpTXIH3s3QAA6suW6dQ54a7iI9da8TQzllq4aK8M8CbjgEq6PY9Tz4loONfTnEDw8H9mqOq4uX9BiGw2FnZgfnSJjgrxMY67B4vq4blv2lHdSQ/DENCT7Eq2gp/nWGoDlIVkyZvHVieOxE/A65XIc21Ze10nl95AJpg7MS443pyaTqslRG9ilrQzuROawy3iFpkG0XVmRGDZ7msMUtVnWi8wK4CtXlei10JfCGi+Uvuy2B46BBldaex1FskXrQjmJfcp1IiYTZIPti740lccPZ0iDJq9nCU9ltuOP23VwowdknIUHQQfa1V/cHPaqDprQ6xlfRggPYMt9UJqPlhCIdG2uo1WwBII/C2qvrumVJubEmSda1b9ViQLQIVIPHOff3NqZOf1MRMOOm450jwXdxP7r/4a4B9Ps2k= MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9fcb5034-f58c-4411-5fa7-08d703454943 X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Jul 2019 01:40:41.5901 (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: peng.fan@nxp.com X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR04MB5906 Cc: "u-boot@lists.denx.de" , dl-uboot-imx Subject: [U-Boot] [PATCH V2 48/51] clk: imx: add i.MX8MN clk support X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Reuse i.MX8MM clk driver for i.MX8MN. Signed-off-by: Peng Fan --- drivers/clk/imx/Kconfig | 7 +++++++ drivers/clk/imx/Makefile | 2 +- drivers/clk/imx/clk-imx8mm.c | 15 +++++++++++++++ 3 files changed, 23 insertions(+), 1 deletion(-) diff --git a/drivers/clk/imx/Kconfig b/drivers/clk/imx/Kconfig index 07ecad0a72..4beaaf507b 100644 --- a/drivers/clk/imx/Kconfig +++ b/drivers/clk/imx/Kconfig @@ -11,3 +11,10 @@ config CLK_IMX8MM select CLK help This enables support clock driver for i.MX8 platforms. + +config CLK_IMX8MN + bool "Clock support for i.MX8MM" + depends on IMX8MN + select CLK + help + This enables support clock driver for i.MX8MN platforms. diff --git a/drivers/clk/imx/Makefile b/drivers/clk/imx/Makefile index b55566f2e9..1d30c5be6b 100644 --- a/drivers/clk/imx/Makefile +++ b/drivers/clk/imx/Makefile @@ -8,4 +8,4 @@ ifdef CONFIG_CLK_IMX8 obj-$(CONFIG_IMX8QXP) += clk-imx8qxp.o obj-$(CONFIG_IMX8QM) += clk-imx8qm.o endif -obj-$(CONFIG_CLK_IMX8MM) += clk-imx8mm.o +obj-$(CONFIG_CLK_IMX8MM)$(CONFIG_CLK_IMX8MN) += clk-imx8mm.o diff --git a/drivers/clk/imx/clk-imx8mm.c b/drivers/clk/imx/clk-imx8mm.c index 1e0669494f..e0b7d0fdc9 100644 --- a/drivers/clk/imx/clk-imx8mm.c +++ b/drivers/clk/imx/clk-imx8mm.c @@ -9,6 +9,7 @@ #include #include #include +#include static ulong imx8mm_clk_get_rate(struct clk *clk) { @@ -16,17 +17,24 @@ static ulong imx8mm_clk_get_rate(struct clk *clk) switch (clk->id) { case IMX8MM_CLK_USDHC1_ROOT: + case IMX8MN_CLK_USDHC1_ROOT: return get_root_clk(USDHC1_CLK_ROOT); + case IMX8MN_CLK_USDHC2_ROOT: case IMX8MM_CLK_USDHC2_ROOT: return get_root_clk(USDHC2_CLK_ROOT); + case IMX8MN_CLK_USDHC3_ROOT: case IMX8MM_CLK_USDHC3_ROOT: return get_root_clk(USDHC3_CLK_ROOT); + case IMX8MN_CLK_I2C1: case IMX8MM_CLK_I2C1: return get_root_clk(I2C1_CLK_ROOT); + case IMX8MN_CLK_I2C2: case IMX8MM_CLK_I2C2: return get_root_clk(I2C2_CLK_ROOT); + case IMX8MN_CLK_I2C3: case IMX8MM_CLK_I2C3: return get_root_clk(I2C3_CLK_ROOT); + case IMX8MN_CLK_I2C4: case IMX8MM_CLK_I2C4: return get_root_clk(I2C4_CLK_ROOT); } @@ -37,18 +45,25 @@ static ulong imx8mm_clk_get_rate(struct clk *clk) static int __imx8mm_clk_enable(struct clk *clk, bool enable) { switch (clk->id) { + case IMX8MN_CLK_USDHC1_ROOT: case IMX8MM_CLK_USDHC1_ROOT: return clock_enable(CCGR_USDHC1, enable); + case IMX8MN_CLK_USDHC2_ROOT: case IMX8MM_CLK_USDHC2_ROOT: return clock_enable(CCGR_USDHC2, enable); + case IMX8MN_CLK_USDHC3_ROOT: case IMX8MM_CLK_USDHC3_ROOT: return clock_enable(CCGR_USDHC3, enable); + case IMX8MN_CLK_I2C1: case IMX8MM_CLK_I2C1: return clock_enable(CCGR_I2C1, enable); + case IMX8MN_CLK_I2C2: case IMX8MM_CLK_I2C2: return clock_enable(CCGR_I2C2, enable); + case IMX8MN_CLK_I2C3: case IMX8MM_CLK_I2C3: return clock_enable(CCGR_I2C3, enable); + case IMX8MN_CLK_I2C4: case IMX8MM_CLK_I2C4: return clock_enable(CCGR_I2C4, enable); }