From mboxrd@z Thu Jan 1 00:00:00 1970 From: Minkyu Kang Date: Wed, 23 Sep 2015 19:13:31 +0900 Subject: [U-Boot] [PATCH 2/4] exynos: Fix passing of errors in exynos_mmc_init() In-Reply-To: <560276D4.5070202@samsung.com> References: <1442791123-2664-1-git-send-email-tjakobi@math.uni-bielefeld.de> <1442791123-2664-3-git-send-email-tjakobi@math.uni-bielefeld.de> <20150923113955.1aba87bd@amdc2363> <560276D4.5070202@samsung.com> Message-ID: <56027B4B.5070803@samsung.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 23/09/15 18:54, Jaehoon Chung wrote: > Hi. > > On 09/23/2015 06:39 PM, Lukasz Majewski wrote: >> Hi Tobias, >> >>> exynos_mmc_init() always returns zero, so for the caller >>> it looks like it never fails. >>> >>> Correct this by returning the error code of process_nodes(). >>> For process_nodes() do something similar and return early >>> when do_sdhci_init() fails. >>> >>> Signed-off-by: Tobias Jakobi >>> --- >>> drivers/mmc/s5p_sdhci.c | 10 ++++++---- >>> 1 file changed, 6 insertions(+), 4 deletions(-) >>> >>> diff --git a/drivers/mmc/s5p_sdhci.c b/drivers/mmc/s5p_sdhci.c >>> index e9c43a9..bc2102a 100644 >>> --- a/drivers/mmc/s5p_sdhci.c >>> +++ b/drivers/mmc/s5p_sdhci.c >>> @@ -187,7 +187,11 @@ static int process_nodes(const void *blob, int >>> node_list[], int count) printf("%s: failed to decode dev >>> %d\n", __func__, i); return -1; >>> } >>> - do_sdhci_init(host); >>> + >>> + if (do_sdhci_init(host)) { >>> + printf("%s: failed to initialize dev %d\n", >>> __func__, i); >>> + return -2; >> >> IMHO, it would be better to write this code as follows: >> >> ret = do_sdhci_init(host); >> if (ret) { >> >> printf(); >> return ret; >> } > > I think it should be replaced to "continue;", not "return ret;" > If returned the fail, then next host can't initialize.(if there is next host..) > So maybe, it didn't use "return ret". > Right. If succeeded to initialize at least one host, should not be returned an error. Thanks, Minkyu Kang.