From patchwork Wed Sep 12 21:17:35 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ira Snyder X-Patchwork-Id: 183452 X-Patchwork-Delegate: kim.phillips@freescale.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from theia.denx.de (theia.denx.de [85.214.87.163]) by ozlabs.org (Postfix) with ESMTP id 21CED2C0089 for ; Thu, 13 Sep 2012 07:27:56 +1000 (EST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 0A1F0280C1; Wed, 12 Sep 2012 23:27:44 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at theia.denx.de Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id NHmWNgG3SCBx; Wed, 12 Sep 2012 23:27:43 +0200 (CEST) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 3825B280A9; Wed, 12 Sep 2012 23:27:28 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 227CA2808B for ; Wed, 12 Sep 2012 23:27:21 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at theia.denx.de Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 4hdX9ciB0WXO for ; Wed, 12 Sep 2012 23:27:19 +0200 (CEST) X-Greylist: delayed 577 seconds by postgrey-1.27 at theia; Wed, 12 Sep 2012 23:27:17 CEST X-policyd-weight: NOT_IN_SBL_XBL_SPAMHAUS=-1.5 NOT_IN_SPAMCOP=-1.5 NOT_IN_BL_NJABL=-1.5 (only DNSBL check requested) Received: from ovro.ovro.caltech.edu (ovro.ovro.caltech.edu [192.100.16.2]) by theia.denx.de (Postfix) with ESMTP id 351A028088 for ; Wed, 12 Sep 2012 23:27:17 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by ovro.ovro.caltech.edu (Postfix) with ESMTP id 959C321EE3; Wed, 12 Sep 2012 14:17:41 -0700 (PDT) X-Virus-Scanned: amavisd-new at ovro.caltech.edu Received: from ovro.ovro.caltech.edu ([127.0.0.1]) by localhost (ovro.ovro.caltech.edu [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 69RiDYvMvTQ3; Wed, 12 Sep 2012 14:17:40 -0700 (PDT) Received: from rena.ovro.pvt (rena.ovro.pvt [192.168.0.80]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ovro.ovro.caltech.edu (Postfix) with ESMTPSA id A535821F48; Wed, 12 Sep 2012 14:17:36 -0700 (PDT) From: "Ira W. Snyder" To: u-boot@lists.denx.de Date: Wed, 12 Sep 2012 14:17:35 -0700 Message-Id: <1347484655-5222-6-git-send-email-iws@ovro.caltech.edu> X-Mailer: git-send-email 1.7.8.6 In-Reply-To: <1347484655-5222-1-git-send-email-iws@ovro.caltech.edu> References: <1347484655-5222-1-git-send-email-iws@ovro.caltech.edu> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.7 (ovro.ovro.caltech.edu); Wed, 12 Sep 2012 14:17:36 -0700 (PDT) Cc: yanok@emcraft.com, "Ira W. Snyder" Subject: [U-Boot] [PATCH 5/5] mpc8308rdb: add support for eSDHC MMC controller X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.11 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: u-boot-bounces@lists.denx.de Errors-To: u-boot-bounces@lists.denx.de From: "Ira W. Snyder" Add support for the onboard eSDHC MMC controller. The hardware on the MPC8308RDB has the following errata: - ESDHC111: manual asynchronous CMD12 is broken - DMA is broken (PIO works) Signed-off-by: Ira W. Snyder --- board/freescale/mpc8308rdb/mpc8308rdb.c | 8 ++++++++ include/configs/MPC8308RDB.h | 14 ++++++++++++++ 2 files changed, 22 insertions(+), 0 deletions(-) diff --git a/board/freescale/mpc8308rdb/mpc8308rdb.c b/board/freescale/mpc8308rdb/mpc8308rdb.c index b97cdc1..7fa3066 100644 --- a/board/freescale/mpc8308rdb/mpc8308rdb.c +++ b/board/freescale/mpc8308rdb/mpc8308rdb.c @@ -66,6 +66,13 @@ void spi_cs_deactivate(struct spi_slave *slave) } #endif /* CONFIG_MPC8XXX_SPI */ +#ifdef CONFIG_FSL_ESDHC +int board_mmc_init(bd_t *bd) +{ + return fsl_esdhc_mmc_init(bd); +} +#endif + static u8 read_board_info(void) { u8 val8; @@ -173,6 +180,7 @@ void ft_board_setup(void *blob, bd_t *bd) { ft_cpu_setup(blob, bd); fdt_fixup_dr_usb(blob, bd); + fdt_fixup_esdhc(blob, bd); } #endif diff --git a/include/configs/MPC8308RDB.h b/include/configs/MPC8308RDB.h index c65635f..2d48dde 100644 --- a/include/configs/MPC8308RDB.h +++ b/include/configs/MPC8308RDB.h @@ -41,6 +41,20 @@ #define CONFIG_FIT 1 #define CONFIG_FIT_VERBOSE 1 +#define CONFIG_MMC 1 + +#ifdef CONFIG_MMC +#define CONFIG_FSL_ESDHC +#define CONFIG_SYS_FSL_ESDHC_ADDR CONFIG_SYS_MPC83xx_ESDHC_ADDR +#define CONFIG_SYS_FSL_ERRATUM_ESDHC111 +#define CONFIG_SYS_FSL_ESDHC_USE_PIO + +#define CONFIG_CMD_MMC +#define CONFIG_GENERIC_MMC +#define CONFIG_CMD_FAT +#define CONFIG_DOS_PARTITION +#endif + /* * On-board devices *