From patchwork Thu Feb 21 07:55:31 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yangbo Lu X-Patchwork-Id: 1045854 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="Fr0/Njq2"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 444mxp6CGtz9sBr for ; Thu, 21 Feb 2019 18:56:14 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 2D343C21FF5; Thu, 21 Feb 2019 07:55: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=BAD_ENC_HEADER, RCVD_IN_DNSWL_BLOCKED, 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 90268C22081; Thu, 21 Feb 2019 07:55:41 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 6FEEBC21FAD; Thu, 21 Feb 2019 07:55:36 +0000 (UTC) Received: from EUR04-HE1-obe.outbound.protection.outlook.com (mail-eopbgr70052.outbound.protection.outlook.com [40.107.7.52]) by lists.denx.de (Postfix) with ESMTPS id BAC12C21EB9 for ; Thu, 21 Feb 2019 07:55:32 +0000 (UTC) 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=FBungQgoysCl+M5Qk0w4nij9e8Xn9zT3B/xmNjIgHeY=; b=Fr0/Njq28m3QG7JutZ+5+fa9HrD4kZetLfwWrwjwjp/wBZbImtsZQHv/ShGqNPiTx+osuEUuQ9r9XJRN1Nb+OR4IaQKqzATyLYlo2BzWiDAPZzt2PI32lsY/1heHLFxOfATPBND2qRMJKDC/22ZG15CWU9azrrGay+XgnaiN3+E= Received: from VI1PR0401MB2237.eurprd04.prod.outlook.com (10.169.133.18) by VI1PR0401MB2319.eurprd04.prod.outlook.com (10.169.133.146) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1643.15; Thu, 21 Feb 2019 07:55:31 +0000 Received: from VI1PR0401MB2237.eurprd04.prod.outlook.com ([fe80::78f9:21ec:83e4:bc72]) by VI1PR0401MB2237.eurprd04.prod.outlook.com ([fe80::78f9:21ec:83e4:bc72%3]) with mapi id 15.20.1601.023; Thu, 21 Feb 2019 07:55:31 +0000 From: "Y.b. Lu" To: "u-boot@lists.denx.de" Thread-Topic: [PATCH 2/3] mmc: split fsl_esdhc driver for i.MX Thread-Index: AQHUybrRTD+jkfVPCUyMs/PThTXnYg== Date: Thu, 21 Feb 2019 07:55:31 +0000 Message-ID: <20190221075633.18193-2-yangbo.lu@nxp.com> References: <20190221075633.18193-1-yangbo.lu@nxp.com> In-Reply-To: <20190221075633.18193-1-yangbo.lu@nxp.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: HK2PR06CA0004.apcprd06.prod.outlook.com (2603:1096:202:2e::16) To VI1PR0401MB2237.eurprd04.prod.outlook.com (2603:10a6:800:28::18) authentication-results: spf=none (sender IP is ) smtp.mailfrom=yangbo.lu@nxp.com; x-ms-exchange-messagesentrepresentingtype: 1 x-mailer: git-send-email 2.17.1 x-originating-ip: [119.31.174.73] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 62464fda-8e2e-4e07-70b8-08d697d1f383 x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600110)(711020)(4605104)(4618075)(2017052603328)(7153060)(7193020); SRVR:VI1PR0401MB2319; x-ms-traffictypediagnostic: VI1PR0401MB2319: x-microsoft-exchange-diagnostics: =?iso-8859-1?Q?1; VI1PR0401MB2319; 23:9q8fiTeqdFnOzDDO+iBS+dxTAcwNrM7nICzwh?= =?iso-8859-1?q?MS9WaZwVUQU6Jz/YYttym8yyB?= =?iso-8859-1?q?Hfgq+WG5hkfj5PCE7+mwpazPAN0H3q1V13feqxhadTjuc8/JESp?= =?iso-8859-1?q?qR49vgkAQf4XCquJXYLgRgGEc+H3qCIe8xrAYTV+pX+lDOti//q?= =?iso-8859-1?q?tlhU2oaoTyoKMxO2gYHNfMQcQzKPGTpWEKvDJ3lOy5VioYVUXTL?= =?iso-8859-1?q?eP7c7eE4yvHuONBS7bVtozYEh3VEADdc7VJxKp7cQboiMabAwo8?= =?iso-8859-1?q?m3IzkM/5ftTIm5TakJfWf1+AV//aAetbX4Za8zKIGt0vdj08C8q?= =?iso-8859-1?q?JfnoGNM5ziROB5c4c3w5g0o+1okYRKbTCCtYJCNs512Sfh7qpSt?= =?iso-8859-1?q?bk1NwAJgwsZNi4XuSeTNZATocoImufj/8qAPc1Pc7MNxI+5AT5Z?= =?iso-8859-1?q?OPBqfgJa+IK+GYu4i/wE3EmMfCLDcGbrjEQD7ywGFD7QHJhQjMd?= =?iso-8859-1?q?cC2z/yXDDyCZEAbwyWR7hDKg90aVlHd/0JxWuc4kJqSpPKscwMY?= =?iso-8859-1?q?QzIiTlQMZVoh404SokPG2y49eq6FRkoa6gYWYju+p7+Ade+icXD?= =?iso-8859-1?q?nEoF/q+2an6b+1PD/4qiy+496jD7YR1Rw41mH6uAqJISzCnaXYw?= =?iso-8859-1?q?kxj2YgI9Pzy2goFXWj+keP61ojcC0Ehxr9v5Gbng3pwQzlaOYGq?= =?iso-8859-1?q?RWpt81kB3l6NlzFjQfZggS5M9bqxeymRMyD7dFDJDgsEliZ30AU?= =?iso-8859-1?q?nMYDYnimCYfnvPH5ruDp7yC42V9kffZmAP1qfVVfohZ3wSkmtTp?= =?iso-8859-1?q?Ak7nIAPE1cYl2qO1yoHXx+i6u5ZQtxx00vLqsM0cTUJJpIcREkq?= =?iso-8859-1?q?cGr4Zxj4yUS2KVkU7Ck6YxhLJID3gZP0XS5y1NAX1GIA/TbYBc5?= =?iso-8859-1?q?iaom6WrNRm7NeQZRtDe1YcLl/UJ7a1JERk3rOslSUsm3AV66DrW?= =?iso-8859-1?q?O00FAOI9misrNIkqeqF3CgtjJ/njSQa2rlFTlWk4C1dwIBhTioH?= =?iso-8859-1?q?DhfnGK8PI60V3scuaGea2w9CRcH8qnB2bxvY4eoHxmhPwfhImn0?= =?iso-8859-1?q?Voio+VLG+hQtIvWJHJypdbsFhUFMeP0jiv8jTl7YoKGT/ZEkqOU?= =?iso-8859-1?q?l/2PmicpqkBwj4WVi3ZvKoKoqv2EZz1cvj49zBnRKUmYspoTANY?= =?iso-8859-1?q?r9DxivMUht3kbsEKoX3QSzFD3EZ3zxbAa6sPMbBwpZodSHztJt0?= =?iso-8859-1?q?FvDSBnoY0dYcvLYwqNprEabu+HszoybuJzfktwCE6rHUU5uKwln?= =?iso-8859-1?q?y7Rhj+iNXnIiohpohQr1uJ9akX6JssRG1/qHJA0rGqb/gNjwuxj?= =?iso-8859-1?q?PFvUyFdhSyxEJXr4RSx9B3Dq2dcbgmIfa917nHppkl2ao+vv+K0?= =?iso-8859-1?q?WmTkVIpzynMc9VzS1fScCEZXk6clA=3D=3D?= x-microsoft-antispam-prvs: x-forefront-prvs: 09555FB1AD x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(979002)(376002)(396003)(346002)(39860400002)(136003)(366004)(189003)(199004)(5660300002)(3846002)(6116002)(54906003)(8936002)(26005)(316002)(386003)(6506007)(86362001)(2351001)(305945005)(6512007)(97736004)(50226002)(68736007)(2501003)(71190400001)(186003)(7736002)(5640700003)(71200400001)(1076003)(66066001)(25786009)(76176011)(6916009)(53936002)(6486002)(486006)(6436002)(99286004)(4326008)(14454004)(256004)(52116002)(2616005)(446003)(102836004)(106356001)(81166006)(81156014)(8676002)(105586002)(11346002)(476003)(2906002)(36756003)(478600001)(969003)(989001)(999001)(1009001)(1019001); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0401MB2319; H:VI1PR0401MB2237.eurprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A: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: iIoSTQY8UElNV8X2IuroLh54luBj8DtfoLxiQunv6z9JuHf9/hzFdh+x3OE/pjnXbaj5H4Pg4PlIaCpKGD9EB1uEwRrXYdKltA612dRpziHBbojvYD7QkKJez1E9D1noIpodcXoac9VcmkeRs2t5tyy6T5LhptLOyegsKiWV8ESJH11T2W3Bvx3ORCCqOuAn9G+Vchgx6mfTJmM/viHsYEM1iduGKq5vUoP/Fx43guyxTvzNfdWnBCvD4JO9D4rgfMzXM1PDeWEROvwD6+WeTgVPZt0l3C09ZKS3WlwXHXBzMl6ipWfHzVZIhEuQfWj4yuxrUfO2C3lQuGEQu3GKyYDsz/3Swf0/SoJdMRLZNYGNvewMJuJO4XESYXQ6Bc7q9ON7kLRRDxw/M7S3BzVWOn/+D4fC3UvEtjR08AKEEnU= MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 62464fda-8e2e-4e07-70b8-08d697d1f383 X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Feb 2019 07:55:28.3369 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0401MB2319 Subject: [U-Boot] [PATCH 2/3] mmc: split fsl_esdhc driver for i.MX 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" The fsl_esdhc driver was for Freescale eSDHC on MPC83XX/MPC85XX initially. The later QoriQ series PowerPC processors (which were evolutions of MPC83XX/MPC85XX), QorIQ series ARM processors, and i.MX series processors were using this driver for their eSDHCs too. For the two series processors, the eSDHCs are becoming more and more different. We should have split it into two drivers, like them (sdhci-of-esdhc.c/sdhci-esdhc-imx.c) in linux kernel. This patch is just to create a fsl_esdhc_imx driver which is a copy of fsl_esdhc driver for i.MX processors. We will convert i.MX processors to use fsl_esdhc_imx, and clean up the two drivers separately in the future patches. Signed-off-by: Yangbo Lu --- drivers/mmc/Kconfig | 6 ++++++ drivers/mmc/Makefile | 1 + drivers/mmc/{fsl_esdhc.c => fsl_esdhc_imx.c} | 5 +++-- include/{fsl_esdhc.h => fsl_esdhc_imx.h} | 11 ++++++----- 4 files changed, 16 insertions(+), 7 deletions(-) copy drivers/mmc/{fsl_esdhc.c => fsl_esdhc_imx.c} (99%) copy include/{fsl_esdhc.h => fsl_esdhc_imx.h} (97%) diff --git a/drivers/mmc/Kconfig b/drivers/mmc/Kconfig index 04a4e7716f..09bc02fe9c 100644 --- a/drivers/mmc/Kconfig +++ b/drivers/mmc/Kconfig @@ -641,6 +641,12 @@ config FSL_ESDHC This selects support for the eSDHC (enhanced secure digital host controller) found on numerous Freescale/NXP SoCs. +config FSL_ESDHC_IMX + bool "Freescale/NXP i.MX eSDHC controller support" + help + This selects support for the i.MX eSDHC (enhanced secure digital host + controller) found on numerous Freescale/NXP SoCs. + endmenu config SYS_FSL_ERRATUM_ESDHC111 diff --git a/drivers/mmc/Makefile b/drivers/mmc/Makefile index 7892c468f0..1287ad4cc1 100644 --- a/drivers/mmc/Makefile +++ b/drivers/mmc/Makefile @@ -25,6 +25,7 @@ obj-$(CONFIG_MMC_DW_K3) += hi6220_dw_mmc.o obj-$(CONFIG_MMC_DW_ROCKCHIP) += rockchip_dw_mmc.o obj-$(CONFIG_MMC_DW_SOCFPGA) += socfpga_dw_mmc.o obj-$(CONFIG_FSL_ESDHC) += fsl_esdhc.o +obj-$(CONFIG_FSL_ESDHC_IMX) += fsl_esdhc_imx.o obj-$(CONFIG_FTSDC010) += ftsdc010_mci.o obj-$(CONFIG_GENERIC_ATMEL_MCI) += gen_atmel_mci.o obj-$(CONFIG_MMC_MESON_GX) += meson_gx_mmc.o diff --git a/drivers/mmc/fsl_esdhc.c b/drivers/mmc/fsl_esdhc_imx.c similarity index 99% copy from drivers/mmc/fsl_esdhc.c copy to drivers/mmc/fsl_esdhc_imx.c index 21fa2ab1d4..9c823e86e2 100644 --- a/drivers/mmc/fsl_esdhc.c +++ b/drivers/mmc/fsl_esdhc_imx.c @@ -2,6 +2,7 @@ /* * Copyright 2007, 2010-2011 Freescale Semiconductor, Inc * Andy Fleming + * Copyright 2019 NXP * * Based vaguely on the pxa mmc code: * (C) Copyright 2003 @@ -18,7 +19,7 @@ #include #include #include -#include +#include #include #include #include @@ -110,7 +111,7 @@ struct esdhc_soc_data { * @non_removable: 0: removable; 1: non-removable * @wp_enable: 1: enable checking wp; 0: no check * @vs18_enable: 1: use 1.8V voltage; 0: use 3.3V - * @flags: ESDHC_FLAG_xx in include/fsl_esdhc.h + * @flags: ESDHC_FLAG_xx in include/fsl_esdhc_imx.h * @caps: controller capabilities * @tuning_step: tuning step setting in tuning_ctrl register * @start_tuning_tap: the start point for tuning in tuning_ctrl register diff --git a/include/fsl_esdhc.h b/include/fsl_esdhc_imx.h similarity index 97% copy from include/fsl_esdhc.h copy to include/fsl_esdhc_imx.h index 8dbd5249a7..e05b24e7e8 100644 --- a/include/fsl_esdhc.h +++ b/include/fsl_esdhc_imx.h @@ -4,10 +4,11 @@ *------------------------------------------------------------------- * * Copyright 2007-2008,2010-2011 Freescale Semiconductor, Inc + * Copyright 2019 NXP */ -#ifndef __FSL_ESDHC_H__ -#define __FSL_ESDHC_H__ +#ifndef __FSL_ESDHC_IMX_H__ +#define __FSL_ESDHC_IMX_H__ #include #include @@ -258,15 +259,15 @@ struct fsl_esdhc_cfg { #error "Endianess is not defined: please fix to continue" #endif -#ifdef CONFIG_FSL_ESDHC +#ifdef CONFIG_FSL_ESDHC_IMX int fsl_esdhc_mmc_init(bd_t *bis); int fsl_esdhc_initialize(bd_t *bis, struct fsl_esdhc_cfg *cfg); void fdt_fixup_esdhc(void *blob, bd_t *bd); #else static inline int fsl_esdhc_mmc_init(bd_t *bis) { return -ENOSYS; } static inline void fdt_fixup_esdhc(void *blob, bd_t *bd) {} -#endif /* CONFIG_FSL_ESDHC */ +#endif /* CONFIG_FSL_ESDHC_IMX */ void __noreturn mmc_boot(void); void mmc_spl_load_image(uint32_t offs, unsigned int size, void *vdst); -#endif /* __FSL_ESDHC_H__ */ +#endif /* __FSL_ESDHC_IMX_H__ */