From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jaehoon Chung Date: Wed, 28 Oct 2015 15:33:54 +0900 Subject: [U-Boot] [PATCH v3 4/4] exynos: more debug and cleanup in do_sdhci_init() In-Reply-To: <1444045673-31770-4-git-send-email-tjakobi@math.uni-bielefeld.de> References: <1444045673-31770-1-git-send-email-tjakobi@math.uni-bielefeld.de> <1444045673-31770-4-git-send-email-tjakobi@math.uni-bielefeld.de> Message-ID: <56306C52.8030503@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 Hi, All. On 10/05/2015 08:47 PM, Tobias Jakobi wrote: > Add more debug printfs in do_sdhci_init() for calls > that can potentially fail. > > Acked-by: Przemyslaw Marczak > Signed-off-by: Tobias Jakobi > --- > drivers/mmc/s5p_sdhci.c | 20 +++++++++++--------- > 1 file changed, 11 insertions(+), 9 deletions(-) > > diff --git a/drivers/mmc/s5p_sdhci.c b/drivers/mmc/s5p_sdhci.c > index b203bee..15ecfee 100644 > --- a/drivers/mmc/s5p_sdhci.c > +++ b/drivers/mmc/s5p_sdhci.c > @@ -101,29 +101,31 @@ struct sdhci_host sdhci_host[SDHCI_MAX_HOSTS]; > > static int do_sdhci_init(struct sdhci_host *host) > { > - int dev_id, flag; > - int err = 0; > + int dev_id, flag, ret; > > flag = host->bus_width == 8 ? PINMUX_FLAG_8BIT_MODE : PINMUX_FLAG_NONE; > dev_id = host->index + PERIPH_ID_SDMMC0; > > if (dm_gpio_is_valid(&host->pwr_gpio)) { > dm_gpio_set_value(&host->pwr_gpio, 1); > - err = exynos_pinmux_config(dev_id, flag); > - if (err) { > + ret = exynos_pinmux_config(dev_id, flag); > + if (ret) { > debug("MMC not configured\n"); > - return err; > + return ret; > } > } > > if (dm_gpio_is_valid(&host->cd_gpio)) { > - if (dm_gpio_get_value(&host->cd_gpio)) > + ret = dm_gpio_get_value(&host->cd_gpio); > + if (ret) { > + debug("no SD card detected (%d)\n", ret); > return -ENODEV; > + } This patch was already applied. But i didn't know why used "ret" at here. If cd-gpio is active-high, this should be always returned "no SD card detected". Even if commonly cd-gpio is active-low, we don't know whether cd-gpio is active-low or not. And dm_gpio_get_value() should be returned error for only one case. Best Regards, Jaehoon Chung > > - err = exynos_pinmux_config(dev_id, flag); > - if (err) { > + ret = exynos_pinmux_config(dev_id, flag); > + if (ret) { > printf("external SD not configured\n"); > - return err; > + return ret; > } > } > >