From patchwork Thu Dec 8 03:42:18 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yangbo Lu X-Patchwork-Id: 703949 X-Patchwork-Delegate: yorksun@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 3tZ24G71vBz9svs for ; Thu, 8 Dec 2016 15:11:42 +1100 (AEDT) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 82053B385C; Thu, 8 Dec 2016 05:11:41 +0100 (CET) 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 J0dbGpGdVHMZ; Thu, 8 Dec 2016 05:11:41 +0100 (CET) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 13F45B3850; Thu, 8 Dec 2016 05:11:41 +0100 (CET) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id D0D8BB3850 for ; Thu, 8 Dec 2016 05:11:36 +0100 (CET) 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 UP8sWJMHX_Am for ; Thu, 8 Dec 2016 05:11:36 +0100 (CET) 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 NAM03-DM3-obe.outbound.protection.outlook.com (mail-dm3nam03on0044.outbound.protection.outlook.com [104.47.41.44]) by theia.denx.de (Postfix) with ESMTPS id 2A049B3847 for ; Thu, 8 Dec 2016 05:11:33 +0100 (CET) Received: from BN6PR03CA0048.namprd03.prod.outlook.com (10.175.124.34) by BY2PR0301MB0742.namprd03.prod.outlook.com (10.160.63.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.747.13; Thu, 8 Dec 2016 03:55:45 +0000 Received: from BN1BFFO11FD004.protection.gbl (2a01:111:f400:7c10::1:187) by BN6PR03CA0048.outlook.office365.com (2603:10b6:404:10c::34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.761.9 via Frontend Transport; Thu, 8 Dec 2016 03:55:45 +0000 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=nxp.com; nxp.com; dkim=none (message not signed) header.d=none; nxp.com; dmarc=fail action=none header.from=nxp.com; nxp.com; dkim=none (message not signed) header.d=none; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.168.50 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.168.50; helo=tx30smr01.am.freescale.net; Received: from tx30smr01.am.freescale.net (192.88.168.50) by BN1BFFO11FD004.mail.protection.outlook.com (10.58.144.67) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.761.6 via Frontend Transport; Thu, 8 Dec 2016 03:55:44 +0000 X-IncomingTopHeaderMarker: OriginalChecksum:; UpperCasedChecksum:; SizeAsReceived:659; Count:10 Received: from titan.ap.freescale.net ([10.192.208.233]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id uB83tcBn015628; Wed, 7 Dec 2016 20:55:42 -0700 From: Yangbo Lu To: Date: Thu, 8 Dec 2016 11:42:18 +0800 Message-ID: <1481168538-29963-3-git-send-email-yangbo.lu@nxp.com> X-Mailer: git-send-email 2.1.0.27.g96db324 In-Reply-To: <1481168538-29963-1-git-send-email-yangbo.lu@nxp.com> References: <1481168538-29963-1-git-send-email-yangbo.lu@nxp.com> X-IncomingHeaderCount: 10 X-EOPAttributedMessage: 0 X-Matching-Connectors: 131256429449465788; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.168.50; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(7916002)(39840400002)(39450400003)(39380400002)(39410400002)(39400400002)(39860400002)(39850400002)(2980300002)(1110001)(1109001)(339900001)(336004)(189002)(199003)(2351001)(33646002)(105606002)(106466001)(47776003)(86362001)(575784001)(36756003)(48376002)(76176999)(50466002)(50986999)(4326007)(50226002)(8936002)(2906002)(81166006)(8676002)(81156014)(68736007)(77096006)(110136003)(104016004)(356003)(7846002)(5003940100001)(97736004)(8666005)(2950100002)(305945005)(189998001)(6916009)(6666003)(92566002)(38730400001)(5660300001)(626004)(85426001)(7059030); DIR:OUT; SFP:1101; SCL:1; SRVR:BY2PR0301MB0742; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BN1BFFO11FD004; 1:U0f1kWrtrX2pPWtgH8Ra9fVcfzaxjBHPMmG98cpgc1PqMShCVzz/0Epn4hUmDdW7riTJpweO+2+bIaOyoD7QETy0VLbEM6tCNv1jEA/C0WC+x4dzexN/1yQuIV/2hq28osR3FLdcm5qgZbmyykNtJrgKdZ4emL/oXNX3c/ENxpGYrmLLGfs0eDjbTArBSd4/j+/WwjtmhuRJhHWki9/hNmEv+tpkLZyXG3pKLLhWGT5F2UE3biidbiuBXJ54iJXv3UQkdF/YsuX08US/EfCC8o7nFO3lTLTAO8+TAg91hjFLNMzzMeVkQYfs0HRao8gxeWxodKKQNcK11pZGKJHSjWVxhQ2qxxhurXnwUg5thC0dyC89lGXzjDlHTH7pB7ntyM7G2imq8QujBVnXRiXdhYg7eNjpPeqIdVSSYUS0TeY3aDELissAXGuydEKvpFxaT1q32SD+oDR7wyAqsY4bGzyyEWjjJ+arUqUjGzyVywubPlfCqwwoJL+82sqSqyh77YPI17kG4AoG38PrBzywMS21mNDyTaeAyycGybU/tBjxJGhSm0pByavvJhXkMVm+jq660mmXThX2k2mKaxCoIY8CvShCyjMwN43ZiHuSMqzlwGd8yc78f9JYKKtAF8AVLM98W0fhvugBEnnKTt4IJsRBtrCbf6XVExHky+MQ2GxkOwWeeOz2BdLxyjYVZMpYoJeg+zXhgZ4M1/VpXPBlq/ajX4Ls+oclEU55jqTzPu4= MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: a56d0e3b-5a78-4537-ee5b-08d41f1e1646 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:BY2PR0301MB0742; X-Microsoft-Exchange-Diagnostics: 1; BY2PR0301MB0742; 3:9IvAFFqpy269+Ok9gbKETPmjCmkasFrlGhrqy9rjJLSkfMo869brYCMrzJVav8EU4EfiDTxSHS7rVYQpMkT2LFLjI4HM53DA30ER8WSaqK7NGI0zg+oAZXG0uAMrUfRvM25uUJlU9KfaA0eKnznhOxUUdK+iIP8WpG8C9Ys5xVjdIWxAYP51Sw6Ze3/njR+TWMqndz0Qr/LhLJztqzhN5XQhm3UAzg52UnzudAW8NsGJQvbfGMptDNEMltIJr244eFG1LNAJUhpqpstsXCTzOYAGz8HRXbFOgYaDzVmAKhFbm2hoRrk5dZ/AwuFv8LiqUQ+n1UamFqwKTvmSwl6Y20UeKECWl4QblaM/oTnSMADNPHddP1ywmJYDXicBFbnG; 25:aCfr56Cqe0kIUI7avPOcT7u3jNB+luFSk53erYVWtIUyMxJUQA+yVA9vcmjuy0LvaIWaQl8dh+ZNm/Eh1/n5jExlPi2r5mu08jZBGqPcXPl8oqGN2/2pI7H+XnOnKARO0v7xHzSikNk9X11u7DoRoglnXylXBmwusUO3tm69iqANE+PCCXqKcM2M0YFGd3d77ddKQ08Zq8xTnapmLexUDgYNwrAf2dg4GrAQlY4F6c3qXqeqwq9OGgQwyJitoAQ3aBixx1pFB8UnqrYRB/l4p9/VQClTdS7HQS0fUnMdCzrn5zFfv5SUyMrnjDbBNlnoqtHli6TCjB6EBmhV7/3YdA8PX/dS7ECbwrDm8E2rRX6es/e0bHiGCA9RkcFyeG4VMNNZRAdJ85Swl6e6b+WraOKFT+EZT/j7kTc7qc5aZhg6Ub/yRS/18E8BjaCm7C0YaIdj+G2jxtK5PY2UESduHQ== X-Microsoft-Exchange-Diagnostics: 1; BY2PR0301MB0742; 31:hcpWhrlG4wJBQ2H0YeBdOAL7u2CSZMMPvKg4sk2LCQtx6h32lLeCXeA4KyZB6dt9ACJ9DsjM3G4KPnvlnYVzV39/Bqjyj7rvZGeIIQI0y1zGN8qMjcmo3eNd+nGopQuc+oTaWwnUWSmEZgij+5P2iDRBlHNUCB/s70oPpZPEu2YLOlKboifu6JmYJq5cH8aD0FDi1QlwbbBOpJEXAzbVM4RfM0Fz5kjIwMxu+xwbKUtRODyxe1DEhxNPJIvXj31fzphp9NawvQR3vGy+WGCFfe/Cfo8ruDY7KmTptWn/YK4= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6095060)(601004)(2401047)(8121501046)(5005006)(13017025)(13023025)(13015025)(13024025)(13018025)(3002001)(10201501046)(6055026)(6096035)(20161123563025)(20161123556025)(20161123559025)(20161123561025)(20161123565025); SRVR:BY2PR0301MB0742; BCL:0; PCL:0; RULEID:(400006); SRVR:BY2PR0301MB0742; X-Microsoft-Exchange-Diagnostics: 1; BY2PR0301MB0742; 4:IwAnibmm7uElUc327rsjjb7C1XP6y36/dl/NqTZCdEWKJCU97x5QDN8J7ryb+CeP3fvD11va206mBj5RmJt+9EjwnVGakHc+8XlXWjB6ZdoIYUFS8TWv+aivtKfofihwPWPn77U998Br0Jfyn3U7UfjykH8yfKT7UwvXBu3SDOjczK1bllZPBpeRY9pIi0wn7O8oMf4qjsRLf2fZS6mqc1ujip9eYU3qm1pJ18VP+DZeFy4zfI0N07Urw4MUPGjE9bew9VGYsfttwnI6tsFUMFQflUuxD6tSmBXN+G9f39wg3OdmsS7C9Es87i1RA0GrBwzIWkAsTbJ4Vd1qdKbpKyIcJ+bfd2++aZue/FceS9f4yM7G6j9idxsO4kruf4q+J8zdMjh0a26vdwCPLTb+TM+dsJ0KEngNZ07E6k6Bukp4bmAkSQGCHh+AB1+McoVaJYijp6udkdK41zCT8eulDCQZowEFG4290Xu2HKkwkuFVO8GjHUVHPszuZPimHmGKLqcfUGPoFCyGLTRX/24yK+kd42KsBW0lxHYh7xjON445JN0intxRydiVg9k3+gXRB+VxfeFObfIlvL1oclxGsjfLYzrpVx69Gas3c4jCx1WZImHX0OdB55MuLFBThUiUuvEY0iULtQElkN80RIyvJAfhVYyjnVqnoTGid+WqZ57XxXq2qvtfMIieoum2+WErTM4HAtS2pRQJ1fp2YnzU84ldNNdfNPuWYXViAOGYvH8SjGHa8lHljSn5+NC7vwOe X-Forefront-PRVS: 0150F3F97D X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BY2PR0301MB0742; 23:NI+ucsvuwFF2ntN3q7+gOsbl8Ko/IhQLcTmzSCK?= =?us-ascii?Q?DHmxORZRHp82+Gb23TH38K2LRC1vpHySwcjgyvsWd66+u7nUD9zd5zawjwQx?= =?us-ascii?Q?y3o4g9queKkUC9ZUroUV1pFyOD1sKUOlJ9cuyGQ1ziVAKWuPkC9vn31UPchX?= =?us-ascii?Q?D9SSIMWkFY3R8TWyPrXXy4VyZrqrAZhc3hd/JlNlevcFZYmhovoR63dTQJLW?= =?us-ascii?Q?7CrPkNhSalzkJDP4X3YWyDCedWyBhR9EsymWqcNRa7Ec/PSqk2jj6VzuJGSQ?= =?us-ascii?Q?9qUAAy7NOp/MFs9VZfksNy7jzNR/y6qyaY+Ry9rYAJsfNCyfdea8HtpO+j7n?= =?us-ascii?Q?FBB1KRG8R9wsuxPw0GzYFWD8jgqHcz+z7ZHXJA6OuJdMeasRg1Mt2fQiiRew?= =?us-ascii?Q?bf8M5057TJZEq0AS47Av5ZUaE+Uj5vMOnMwrbmJz69KObZ53coI87NY1Kq95?= =?us-ascii?Q?tJc3Bq146N/4kv7N68jo3APhkC+idHdBc+BR58+Hf5Ifg/M5Xrz7JvMRRi5O?= =?us-ascii?Q?3QLowKwIy9X9gSqSg9Gp+33BJtrFI7zO99krwMGnkz+HD7Q5Uk4ByPkbxKnD?= =?us-ascii?Q?vR7C1EuIW4ACzLlePXN6gpYqp1ROAr/dZkKnt069he4b0unmKss4Jf6Ritdh?= =?us-ascii?Q?U53mkJbmO9UKZ9sqG89CnB5JjWd0pcqecrvAc5ZFURmWT3Mbv2HEiJc9+zbM?= =?us-ascii?Q?OiwfQEJo5bynW02yck2eZ65nxa2qWMiJb+m6ESE4n6LKhfRhg8VjSavHOx+n?= =?us-ascii?Q?pTLgMm3iGUTBbX9n2JGmy+Cc7zmObkPYqq3GBpNL6qzDhJ5XsGLYT2MwTBmv?= =?us-ascii?Q?Ev9iZIkjx9KItIBpzfmOuSloG7Rjace4S7ZDCqCpUXuARBmow/e9J7lDfSDq?= =?us-ascii?Q?HmqiPmd12Woi0pD2aKEVPesS8IRUp79jETubP/38MwcU2R/Q6nd2HFGxs1ro?= =?us-ascii?Q?RROEiZoxKXOvjC4iHnOz5l+2nYq3P5vydg4/pIkHVPNjArW6QrLf2m/dMfL3?= =?us-ascii?Q?EhW2394QWxlSouN+Noj8aB0ryv8oiR64GTJuGvs3v8pIPhOKYEMwNfECdaY3?= =?us-ascii?Q?Qc/08y+PEsKAQMnwxpS2f8wdKM2ceTrPYJkbWaJR4A23luEHc874DuTPj9cK?= =?us-ascii?Q?4YEDz5d2kQ/4hrR0ksW17/CBlX7XLAdi5K2IUYpfpr1SV0Q4kjXP9b3gx/La?= =?us-ascii?Q?yLf6m1V35NbH+MDfPHlcF0xfHtmtIP+i6+TmHYiZaUjwvLGvgjuByCQq+LCo?= =?us-ascii?Q?26lwGuKcVxDDetCXiO3RvVs82TK6nfw85NT7t0VWdzDAZsCSsageX+F65f0x?= =?us-ascii?Q?jRIQO2Vy1veIbL2BAlxmxjkM9DMS2LDoFkUsQCufpukuV?= X-Microsoft-Exchange-Diagnostics: 1; BY2PR0301MB0742; 6:zOxHa5JA6oY7F66Bzr6KLd2H3heqynpdCy9CR29jEmupsNVOQEj8s5LK0LPqUcaa5JbAwLqsV89NkZWeewCQko2/ezyovXS8sDKu9MtfcjsVpZdbsEuG06YURdbc0h1r+ZNn7fbyxqQmLo45cPayuJdK39ppWslXT7uXOpfEOp5/C+I3gcxF7Xnv6OcJpSa3v1XmZlDToMOmU2BO/KWSplvxPWbHsjY8KJDK4eZUlGx4kH+VXXjsJsSjzr9UJeahcHF5qaEIx2KujYQmHWe1Q9YcVJ2G0wyx0eVl0gZtZyPX/FO4Lbg7Zk2sk5GrV7lcsT4gDpCJCWLm/bJ/2E1onvfCDG9v/Hz9Y9BqbqQEs8dS8gaD++0xft+mW6FUBr8+gkflxWJwg3U3hn51BtKw8aJvLWzbstw8rw4p8Get3q3F7FISrxScIKlBT5Dpz/Q5; 5:tgPYa/3IeABF9bNHAL9j5DjT2X7bCKFJ7W1uHtIbo5kr89W91K41TLXUjk3F/x/Ame7l9Ac4uoA6UkdRZepX6wkcmg6NkVj1WluB3Zg1P443lGiwxQAJW0YjMMpBOUAXT9ib14GNLfGnXzlAI2H8x34OEJrNHOE4oU03GDK9vkEZJIwX0wSDF0Rt2b8QfaDD; 24:ZYWLQ3kiCZB7T5bYmo5FL+dnKpLYOH1IB4eyhkliazuNqAzKIeqx2mlmNon4GCXKsHuAUjXCBDsTt0UV6uMyBhDpaHyfvmbtIvgty7QqY8Q= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BY2PR0301MB0742; 7:oPPFcPn5i+h7To17/0y2Ardrfa2kA/cRSBYMVWx2ZXvqY3ELNpQyHopLsv/m1B4/B3Cbg/pZMRGtamwHbvVDzoLRQwGqfimLmbEBhHl6F7OR0ucARVa/jBaGpX2hvqE/mCUZUPq/n2aSWrKmGV0BSZTyNKJunFuIEtuvw9TDxVNSnF0PxS0GsU8lOi5NR2eEvXZkM7YWl5lptPHJWohZl0xPwMRfBtWgwMpMjcQMuLh931NEgLktNtf0pjH6YAdMWnCMTN8hS63oGgd8Y3ixWadND55Ud500H8SYeFly3GmDeNr3wNsAmLJOXXqwfBdP1u5lNAvpImKhw4U/6h1WUvPEP8B8AxboX+nTSOKGx8sfjA1gR0oFVrqbRzi7Tyk4KWgIPoLtS22dfNOdHqiOfULtaM8KIhfX6ZGZAcsHedTN9q1RHiyCv7RraCTII/X8eljZDdaVLu20ccXsQIYdOg== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Dec 2016 03:55:44.7593 (UTC) X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.168.50]; Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY2PR0301MB0742 Subject: [U-Boot] [v3, 3/3] armv8: ls1012a: define esdhc_status_fixup for RDB board X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.15 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" On LS1012ARDB board, three dual 1:4 mux/demux devices drive the SDHC2 signals to eMMC, SDIO wifi, SPI and Ardiuno shield. Only when we select eMMC and SDIO wifi, the SDHC2 could be used. Otherwise, the command inhibit bits of eSDHC2_PRSSTAT register will never release. This would cause below continious error messages in linux since it uses polling mode to detect card. "mmc1: Controller never released inhibit bit(s)." "mmc1: Controller never released inhibit bit(s)." "mmc1: Controller never released inhibit bit(s)." This patch is to define esdhc_status_fixup function for RDB to disable SDHC2 status if no SDIO wifi or eMMC is selected. Signed-off-by: Yangbo Lu --- Changes for v2: - Added this patch Changes for v3: - Fixed checkpatch issue --- board/freescale/ls1012ardb/ls1012ardb.c | 39 +++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/board/freescale/ls1012ardb/ls1012ardb.c b/board/freescale/ls1012ardb/ls1012ardb.c index 778434d..708e0a1 100644 --- a/board/freescale/ls1012ardb/ls1012ardb.c +++ b/board/freescale/ls1012ardb/ls1012ardb.c @@ -113,6 +113,45 @@ int board_init(void) return 0; } +int esdhc_status_fixup(void *blob, const char *compat) +{ + char esdhc0_path[] = "/soc/esdhc@1560000"; + char esdhc1_path[] = "/soc/esdhc@1580000"; + u8 io = 0; + u8 mux_sdhc2; + + do_fixup_by_path(blob, esdhc0_path, "status", "okay", + sizeof("okay"), 1); + + /* Initialize i2c early for serial flash bank information */ + i2c_set_bus_num(0); + + /* + * The I2C IO-expander for mux select is used to control the muxing + * of various onboard interfaces. + * + * IO1[3:2] indicates SDHC2 interface demultiplexer select lines. + * 00 - SDIO wifi + * 01 - GPIO (to Arduino) + * 10 - eMMC Memory + * 11 - SPI + */ + if (i2c_read(I2C_MUX_IO1_ADDR, 0, 1, &io, 1) < 0) { + printf("Error reading i2c boot information!\n"); + return 0; /* Don't want to hang() on this error */ + } + + mux_sdhc2 = (io & 0x0c) >> 2; + /* Enable SDHC2 only when use SDIO wifi and eMMC */ + if (mux_sdhc2 == 2 || mux_sdhc2 == 0) + do_fixup_by_path(blob, esdhc1_path, "status", "okay", + sizeof("okay"), 1); + else + do_fixup_by_path(blob, esdhc1_path, "status", "disabled", + sizeof("disabled"), 1); + return 0; +} + int ft_board_setup(void *blob, bd_t *bd) { arch_fixup_fdt(blob);