mmc: jz4740: Get CD/WP GPIOs from descriptors
Modifty the JZ4740 driver to retrieve card detect and write protect GPIO pins from GPIO descriptors instead of hard-coded global numbers. Augment the only board file using this in the process and cut down on passed in platform data. Preserve the code setting the caps2 flags for CD and WP as active low or high since the slot GPIO code currently ignores the gpiolib polarity inversion semantice and uses the raw accessors to read the GPIO lines, but set the right polarity flags in the descriptor table for jz4740. Cc: Paul Cercueil <paul@crapouillou.net> Cc: linux-mips@linux-mips.org Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Acked-by: Paul Burton <paul.burton@mips.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
This commit is contained in:

کامیت شده توسط
Ulf Hansson

والد
ec5af091b2
کامیت
0c901c0566
@@ -983,17 +983,17 @@ static int jz4740_mmc_request_gpios(struct mmc_host *mmc,
|
||||
if (!pdata->read_only_active_low)
|
||||
mmc->caps2 |= MMC_CAP2_RO_ACTIVE_HIGH;
|
||||
|
||||
if (gpio_is_valid(pdata->gpio_card_detect)) {
|
||||
ret = mmc_gpio_request_cd(mmc, pdata->gpio_card_detect, 0);
|
||||
if (ret)
|
||||
return ret;
|
||||
}
|
||||
/*
|
||||
* Get optional card detect and write protect GPIOs,
|
||||
* only back out on probe deferral.
|
||||
*/
|
||||
ret = mmc_gpiod_request_cd(mmc, "cd", 0, false, 0, NULL);
|
||||
if (ret == -EPROBE_DEFER)
|
||||
return ret;
|
||||
|
||||
if (gpio_is_valid(pdata->gpio_read_only)) {
|
||||
ret = mmc_gpio_request_ro(mmc, pdata->gpio_read_only);
|
||||
if (ret)
|
||||
return ret;
|
||||
}
|
||||
ret = mmc_gpiod_request_ro(mmc, "wp", 0, false, 0, NULL);
|
||||
if (ret == -EPROBE_DEFER)
|
||||
return ret;
|
||||
|
||||
return jz4740_mmc_request_gpio(&pdev->dev, pdata->gpio_power,
|
||||
"MMC read only", true, pdata->power_active_low);
|
||||
|
مرجع در شماره جدید
Block a user