diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2014-02-28 16:32:44 -0500 |
---|---|---|
committer | Chris Ball <chris@printf.net> | 2014-03-04 16:28:44 -0500 |
commit | 42c1add97073b5a701b8aee0fdb69ef0345d4c50 (patch) | |
tree | b257aeb01427f9398c46e7b0af938e62b0a69506 /drivers/mmc | |
parent | 475d9e3ebf869cc637342b74af20632551769902 (diff) |
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>
Diffstat (limited to 'drivers/mmc')
-rw-r--r-- | drivers/mmc/host/sdhci-spear.c | 32 |
1 files changed, 0 insertions, 32 deletions
diff --git a/drivers/mmc/host/sdhci-spear.c b/drivers/mmc/host/sdhci-spear.c index fc6eac5b1064..676df4623057 100644 --- a/drivers/mmc/host/sdhci-spear.c +++ b/drivers/mmc/host/sdhci-spear.c | |||
@@ -56,14 +56,6 @@ static irqreturn_t sdhci_gpio_irq(int irq, void *dev_id) | |||
56 | gpio_irq_type = val ? IRQF_TRIGGER_LOW : IRQF_TRIGGER_HIGH; | 56 | gpio_irq_type = val ? IRQF_TRIGGER_LOW : IRQF_TRIGGER_HIGH; |
57 | irq_set_irq_type(irq, gpio_irq_type); | 57 | irq_set_irq_type(irq, gpio_irq_type); |
58 | 58 | ||
59 | if (sdhci->data->card_power_gpio >= 0) { | ||
60 | if (!sdhci->data->power_always_enb) { | ||
61 | /* if card inserted, give power, otherwise remove it */ | ||
62 | val = sdhci->data->power_active_high ? !val : val ; | ||
63 | gpio_set_value(sdhci->data->card_power_gpio, val); | ||
64 | } | ||
65 | } | ||
66 | |||
67 | /* inform sdhci driver about card insertion/removal */ | 59 | /* inform sdhci driver about card insertion/removal */ |
68 | tasklet_schedule(&host->card_tasklet); | 60 | tasklet_schedule(&host->card_tasklet); |
69 | 61 | ||
@@ -179,30 +171,6 @@ static int sdhci_probe(struct platform_device *pdev) | |||
179 | if (!sdhci->data) | 171 | if (!sdhci->data) |
180 | return 0; | 172 | return 0; |
181 | 173 | ||
182 | if (sdhci->data->card_power_gpio >= 0) { | ||
183 | int val = 0; | ||
184 | |||
185 | ret = devm_gpio_request(&pdev->dev, | ||
186 | sdhci->data->card_power_gpio, "sdhci"); | ||
187 | if (ret < 0) { | ||
188 | dev_dbg(&pdev->dev, "gpio request fail: %d\n", | ||
189 | sdhci->data->card_power_gpio); | ||
190 | goto set_drvdata; | ||
191 | } | ||
192 | |||
193 | if (sdhci->data->power_always_enb) | ||
194 | val = sdhci->data->power_active_high; | ||
195 | else | ||
196 | val = !sdhci->data->power_active_high; | ||
197 | |||
198 | ret = gpio_direction_output(sdhci->data->card_power_gpio, val); | ||
199 | if (ret) { | ||
200 | dev_dbg(&pdev->dev, "gpio set direction fail: %d\n", | ||
201 | sdhci->data->card_power_gpio); | ||
202 | goto set_drvdata; | ||
203 | } | ||
204 | } | ||
205 | |||
206 | if (sdhci->data->card_int_gpio >= 0) { | 174 | if (sdhci->data->card_int_gpio >= 0) { |
207 | ret = devm_gpio_request(&pdev->dev, sdhci->data->card_int_gpio, | 175 | ret = devm_gpio_request(&pdev->dev, sdhci->data->card_int_gpio, |
208 | "sdhci"); | 176 | "sdhci"); |