From patchwork Mon Apr 28 19:13:26 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mateusz Zalega X-Patchwork-Id: 343522 X-Patchwork-Delegate: marek.vasut@gmail.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 86E0414008B for ; Tue, 29 Apr 2014 05:14:02 +1000 (EST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 2AEF54B9F5; Mon, 28 Apr 2014 21:13:29 +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 wxU7OVMqZWEN; Mon, 28 Apr 2014 21:13:28 +0200 (CEST) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 992764BA35; Mon, 28 Apr 2014 21:12:30 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 9F1014BA16 for ; Mon, 28 Apr 2014 21:12:25 +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 UTiAK4QsWYRt for ; Mon, 28 Apr 2014 21:12:22 +0200 (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 mailout3.w1.samsung.com (mailout3.w1.samsung.com [210.118.77.13]) by theia.denx.de (Postfix) with ESMTPS id 2FCD84B9EE for ; Mon, 28 Apr 2014 21:12:17 +0200 (CEST) Received: from eucpsbgm2.samsung.com (unknown [203.254.199.245]) by mailout3.w1.samsung.com (Oracle Communications Messaging Server 7u4-24.01(7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0N4R00GET9CAG680@mailout3.w1.samsung.com> for u-boot@lists.denx.de; Mon, 28 Apr 2014 20:12:10 +0100 (BST) X-AuditID: cbfec7f5-b7fae6d000004d6d-49-535ea80a710c Received: from eusync3.samsung.com ( [203.254.199.213]) by eucpsbgm2.samsung.com (EUCPMTA) with SMTP id 83.E7.19821.A08AE535; Mon, 28 Apr 2014 20:12:10 +0100 (BST) Received: from AMDC2105.digital.local ([106.116.147.44]) by eusync3.samsung.com (Oracle Communications Messaging Server 7u4-23.01 (7.0.4.23.0) 64bit (built Aug 10 2011)) with ESMTPA id <0N4R00JBF9C85250@eusync3.samsung.com>; Mon, 28 Apr 2014 20:12:10 +0100 (BST) From: Mateusz Zalega To: u-boot@lists.denx.de Date: Mon, 28 Apr 2014 21:13:26 +0200 Message-id: <1398712412-15503-7-git-send-email-m.zalega@samsung.com> X-Mailer: git-send-email 1.9.0 In-reply-to: <1398712412-15503-1-git-send-email-m.zalega@samsung.com> References: <1389277919-15279-1-git-send-email-m.zalega@samsung.com> <1398712412-15503-1-git-send-email-m.zalega@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrEJMWRmVeSWpSXmKPExsVy+t/xq7pcK+KCDY4vkbeY+24Kk0XHkRZG i7d7O9kdmD3O3tnB6NG3ZRVjAFMUl01Kak5mWWqRvl0CV8aHqU/ZCp5xVaxbtIalgfEtRxcj J4eEgInEo/tTGCFsMYkL99azdTFycQgJLGWU2HztExOE08cksbVxPlgVm4C2xI2989lBbBEB CYlf/VfB4swCvhKHX1xhArGFBbwlOk+cB7I5OFgEVCWO7PEDCfMKuEhc2bmRDWKZnMSU3wvY QUo4BVwlZh9SBAkLCdRLfL78lGUCI+8CRoZVjKKppckFxUnpuUZ6xYm5xaV56XrJ+bmbGCHh 8HUH49JjVocYBTgYlXh4BQ1jgoVYE8uKK3MPMUpwMCuJ8Nq2xgUL8aYkVlalFuXHF5XmpBYf YmTi4JRqYFR/0JcUq/N6vYgpV6lp08vwFc8eH//Xu6R3j5jf1qoF51xbH7m+n2Tn7fuiMf38 hjkNd3nkMrt/f2dxOsgjtvWksXzEFYefHiVn//eYinFEt5+Ie+OqU7r1R55m1xwvDu34aAGb Exe1eSxMXdOOTwjuUgxfIVsvdUtt11mxz+vOJ3QcOO8jo8RSnJFoqMVcVJwIAHMpjGflAQAA Subject: [U-Boot] [PATCH v5 06/12] ums: always initialize mmc before ums_disk_init() 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 In cases when MMC hadn't been initialized before, ie. by the user or other subsystem, it was still uninitialized while UMS media capacity check, leading to broken ums command. UMS has to initialize resources it uses. Tested on Samsung Goni. Signed-off-by: Mateusz Zalega Tested-by: Mateusz Zalega Acked-by: Lukasz Majewski Cc: Minkyu Kang --- Changes since v3: - Added const attribute of ums_disk_init introduced type warnings. It would take a lot of changes to MMC core code to fix it, so it was dropped, even though ums_disk_init shouldn't and doesn't change struct mmc it is passed. Changes since v4: - added slightly more detailed commit message --- board/samsung/common/ums.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/board/samsung/common/ums.c b/board/samsung/common/ums.c index dc155ad..cebabe9 100644 --- a/board/samsung/common/ums.c +++ b/board/samsung/common/ums.c @@ -66,11 +66,9 @@ static struct ums *ums_disk_init(struct mmc *mmc) struct ums *ums_init(unsigned int dev_num) { - struct mmc *mmc = NULL; + struct mmc *mmc = find_mmc_device(dev_num); - mmc = find_mmc_device(dev_num); - if (!mmc) + if (!mmc || mmc_init(mmc)) return NULL; - return ums_disk_init(mmc); }