mirror of
https://github.com/followmsi/android_kernel_google_msm.git
synced 2024-11-06 23:17:41 +00:00
mmc: at91/avr32/atmel-mci: fix DMA-channel leak on module unload
commit91cf54feec
upstream. Fix regression introduced by commit796211b795
("mmc: atmel-mci: add pdc support and runtime capabilities detection") which removed the need for CONFIG_MMC_ATMELMCI_DMA but kept the Kconfig-entry as well as the compile guards around dma_release_channel() in remove(). Consequently, DMA is always enabled (if supported), but the DMA-channel is not released on module unload unless the DMA-config option is selected. Remove the no longer used CONFIG_MMC_ATMELMCI_DMA option completely. Signed-off-by: Johan Hovold <jhovold@gmail.com> Acked-by: Ludovic Desroches <ludovic.desroches@atmel.com> Signed-off-by: Chris Ball <cjb@laptop.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
165628d135
commit
bb878b3019
5 changed files with 0 additions and 15 deletions
|
@ -173,7 +173,6 @@ CONFIG_MMC=y
|
||||||
# CONFIG_MMC_BLOCK_BOUNCE is not set
|
# CONFIG_MMC_BLOCK_BOUNCE is not set
|
||||||
CONFIG_SDIO_UART=m
|
CONFIG_SDIO_UART=m
|
||||||
CONFIG_MMC_ATMELMCI=y
|
CONFIG_MMC_ATMELMCI=y
|
||||||
CONFIG_MMC_ATMELMCI_DMA=y
|
|
||||||
CONFIG_LEDS_ATMEL_PWM=y
|
CONFIG_LEDS_ATMEL_PWM=y
|
||||||
CONFIG_LEDS_GPIO=y
|
CONFIG_LEDS_GPIO=y
|
||||||
CONFIG_LEDS_TRIGGER_TIMER=y
|
CONFIG_LEDS_TRIGGER_TIMER=y
|
||||||
|
|
|
@ -122,7 +122,6 @@ CONFIG_USB_G_SERIAL=m
|
||||||
CONFIG_USB_CDC_COMPOSITE=m
|
CONFIG_USB_CDC_COMPOSITE=m
|
||||||
CONFIG_MMC=y
|
CONFIG_MMC=y
|
||||||
CONFIG_MMC_ATMELMCI=y
|
CONFIG_MMC_ATMELMCI=y
|
||||||
CONFIG_MMC_ATMELMCI_DMA=y
|
|
||||||
CONFIG_NEW_LEDS=y
|
CONFIG_NEW_LEDS=y
|
||||||
CONFIG_LEDS_CLASS=y
|
CONFIG_LEDS_CLASS=y
|
||||||
CONFIG_LEDS_ATMEL_PWM=m
|
CONFIG_LEDS_ATMEL_PWM=m
|
||||||
|
|
|
@ -102,7 +102,6 @@ CONFIG_FRAMEBUFFER_CONSOLE=y
|
||||||
CONFIG_LOGO=y
|
CONFIG_LOGO=y
|
||||||
CONFIG_MMC=y
|
CONFIG_MMC=y
|
||||||
CONFIG_MMC_ATMELMCI=y
|
CONFIG_MMC_ATMELMCI=y
|
||||||
CONFIG_MMC_ATMELMCI_DMA=y
|
|
||||||
CONFIG_NEW_LEDS=y
|
CONFIG_NEW_LEDS=y
|
||||||
CONFIG_LEDS_CLASS=y
|
CONFIG_LEDS_CLASS=y
|
||||||
CONFIG_LEDS_ATMEL_PWM=y
|
CONFIG_LEDS_ATMEL_PWM=y
|
||||||
|
|
|
@ -297,16 +297,6 @@ config MMC_ATMELMCI
|
||||||
|
|
||||||
endchoice
|
endchoice
|
||||||
|
|
||||||
config MMC_ATMELMCI_DMA
|
|
||||||
bool "Atmel MCI DMA support"
|
|
||||||
depends on MMC_ATMELMCI && (AVR32 || ARCH_AT91SAM9G45) && DMA_ENGINE
|
|
||||||
help
|
|
||||||
Say Y here to have the Atmel MCI driver use a DMA engine to
|
|
||||||
do data transfers and thus increase the throughput and
|
|
||||||
reduce the CPU utilization.
|
|
||||||
|
|
||||||
If unsure, say N.
|
|
||||||
|
|
||||||
config MMC_IMX
|
config MMC_IMX
|
||||||
tristate "Motorola i.MX Multimedia Card Interface support"
|
tristate "Motorola i.MX Multimedia Card Interface support"
|
||||||
depends on ARCH_MX1
|
depends on ARCH_MX1
|
||||||
|
|
|
@ -2190,10 +2190,8 @@ static int __exit atmci_remove(struct platform_device *pdev)
|
||||||
atmci_readl(host, ATMCI_SR);
|
atmci_readl(host, ATMCI_SR);
|
||||||
clk_disable(host->mck);
|
clk_disable(host->mck);
|
||||||
|
|
||||||
#ifdef CONFIG_MMC_ATMELMCI_DMA
|
|
||||||
if (host->dma.chan)
|
if (host->dma.chan)
|
||||||
dma_release_channel(host->dma.chan);
|
dma_release_channel(host->dma.chan);
|
||||||
#endif
|
|
||||||
|
|
||||||
free_irq(platform_get_irq(pdev, 0), host);
|
free_irq(platform_get_irq(pdev, 0), host);
|
||||||
iounmap(host->regs);
|
iounmap(host->regs);
|
||||||
|
|
Loading…
Reference in a new issue