
When we cannot check write protect or card change via GPIO (and have been passed -1 in omap_mmc_init), only try if gpio_is_valid is true. This prevents invalid GPIO messages from being seen on the console when doing MMC operations
Signed-off-by: Tom Rini trini@ti.com
--- Changes in v3: - Style comments from Nikita Kiryanov
Changes in v2: - Use gpio_is_valid not just a check for >= 0 (Fabio Estevam) --- drivers/mmc/omap_hsmmc.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/drivers/mmc/omap_hsmmc.c b/drivers/mmc/omap_hsmmc.c index 67cfcc2..d599482 100644 --- a/drivers/mmc/omap_hsmmc.c +++ b/drivers/mmc/omap_hsmmc.c @@ -73,13 +73,21 @@ static int omap_mmc_setup_gpio_in(int gpio, const char *label) static int omap_mmc_getcd(struct mmc *mmc) { int cd_gpio = ((struct omap_hsmmc_data *)mmc->priv)->cd_gpio; - return gpio_get_value(cd_gpio); + + if (gpio_is_valid(cd_gpio)) + return gpio_get_value(cd_gpio); + + return -1; }
static int omap_mmc_getwp(struct mmc *mmc) { int wp_gpio = ((struct omap_hsmmc_data *)mmc->priv)->wp_gpio; - return gpio_get_value(wp_gpio); + + if (gpio_is_valid(wp_gpio)) + return gpio_get_value(wp_gpio); + + return -1; } #else static inline int omap_mmc_setup_gpio_in(int gpio, const char *label)