mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-17 09:14:19 +08:00
mmc: sdhci-spear: remove support for power gpio
None of this code is currently used: there are no definitions of struct sdhci_plat_data in arch/arm, neither are there any DT properties which use card_power_gpio/power_active_high/power_always_enb. In any case, slot power control should be rigged up via vmmc and the regulator subsystem in the DT case. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Chris Ball <chris@printf.net>
This commit is contained in:
parent
475d9e3ebf
commit
42c1add970
@ -56,14 +56,6 @@ static irqreturn_t sdhci_gpio_irq(int irq, void *dev_id)
|
||||
gpio_irq_type = val ? IRQF_TRIGGER_LOW : IRQF_TRIGGER_HIGH;
|
||||
irq_set_irq_type(irq, gpio_irq_type);
|
||||
|
||||
if (sdhci->data->card_power_gpio >= 0) {
|
||||
if (!sdhci->data->power_always_enb) {
|
||||
/* if card inserted, give power, otherwise remove it */
|
||||
val = sdhci->data->power_active_high ? !val : val ;
|
||||
gpio_set_value(sdhci->data->card_power_gpio, val);
|
||||
}
|
||||
}
|
||||
|
||||
/* inform sdhci driver about card insertion/removal */
|
||||
tasklet_schedule(&host->card_tasklet);
|
||||
|
||||
@ -179,30 +171,6 @@ static int sdhci_probe(struct platform_device *pdev)
|
||||
if (!sdhci->data)
|
||||
return 0;
|
||||
|
||||
if (sdhci->data->card_power_gpio >= 0) {
|
||||
int val = 0;
|
||||
|
||||
ret = devm_gpio_request(&pdev->dev,
|
||||
sdhci->data->card_power_gpio, "sdhci");
|
||||
if (ret < 0) {
|
||||
dev_dbg(&pdev->dev, "gpio request fail: %d\n",
|
||||
sdhci->data->card_power_gpio);
|
||||
goto set_drvdata;
|
||||
}
|
||||
|
||||
if (sdhci->data->power_always_enb)
|
||||
val = sdhci->data->power_active_high;
|
||||
else
|
||||
val = !sdhci->data->power_active_high;
|
||||
|
||||
ret = gpio_direction_output(sdhci->data->card_power_gpio, val);
|
||||
if (ret) {
|
||||
dev_dbg(&pdev->dev, "gpio set direction fail: %d\n",
|
||||
sdhci->data->card_power_gpio);
|
||||
goto set_drvdata;
|
||||
}
|
||||
}
|
||||
|
||||
if (sdhci->data->card_int_gpio >= 0) {
|
||||
ret = devm_gpio_request(&pdev->dev, sdhci->data->card_int_gpio,
|
||||
"sdhci");
|
||||
|
@ -18,17 +18,9 @@
|
||||
/*
|
||||
* struct sdhci_plat_data: spear sdhci platform data structure
|
||||
*
|
||||
* @card_power_gpio: gpio pin for enabling/disabling power to sdhci socket
|
||||
* @power_active_high: if set, enable power to sdhci socket by setting
|
||||
* card_power_gpio
|
||||
* @power_always_enb: If set, then enable power on probe, otherwise enable only
|
||||
* on card insertion and disable on card removal.
|
||||
* card_int_gpio: gpio pin used for card detection
|
||||
*/
|
||||
struct sdhci_plat_data {
|
||||
int card_power_gpio;
|
||||
int power_active_high;
|
||||
int power_always_enb;
|
||||
int card_int_gpio;
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user