diff options
Diffstat (limited to 'target/linux/coldfire/patches/102-kernel-2.6.38-Fix-SD-MMC-SDIO-over-SPI-driver-bug-when-reinserting.patch')
-rw-r--r-- | target/linux/coldfire/patches/102-kernel-2.6.38-Fix-SD-MMC-SDIO-over-SPI-driver-bug-when-reinserting.patch | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/target/linux/coldfire/patches/102-kernel-2.6.38-Fix-SD-MMC-SDIO-over-SPI-driver-bug-when-reinserting.patch b/target/linux/coldfire/patches/102-kernel-2.6.38-Fix-SD-MMC-SDIO-over-SPI-driver-bug-when-reinserting.patch new file mode 100644 index 0000000000..4ec2d21bc5 --- /dev/null +++ b/target/linux/coldfire/patches/102-kernel-2.6.38-Fix-SD-MMC-SDIO-over-SPI-driver-bug-when-reinserting.patch @@ -0,0 +1,34 @@ +From 78f4df7dfe913c68b8329dd84a24325b8f34217b Mon Sep 17 00:00:00 2001 +From: Wang Huan <wanghuan@zch06.freescale.net> +Date: Mon, 8 Aug 2011 09:14:45 +0800 +Subject: [PATCH] Fix SD/MMC/SDIO over SPI driver bug when reinserting as module + +Signed-off-by: Alison Wang <b18965@freescale.com> +--- + arch/m68k/coldfire/m5445x/devices.c | 8 ++++++++ + 1 files changed, 8 insertions(+), 0 deletions(-) + +--- a/arch/m68k/coldfire/m5445x/devices.c ++++ b/arch/m68k/coldfire/m5445x/devices.c +@@ -136,6 +136,13 @@ int mmc_spi_init(struct device *mmc_spi_ + return 0; + } + ++void mmc_spi_exit(struct device *mmc_spi_device, void *irq_privatedata) ++{ ++#if defined(CONFIG_M54451_SD_HW_DETECT) ++ free_irq(64 + 7, irq_privatedata); ++#endif ++} ++ + static struct coldfire_dspi_chip dspi_sd_chip_info = { + .mode = SPI_MODE_0, + .bits_per_word = 8, +@@ -154,6 +161,7 @@ static struct coldfire_dspi_chip dspi_sd + static struct mmc_spi_platform_data mcf54451_mmc_pdata = { + .ocr_mask = MMC_VDD_33_34, + .init = mmc_spi_init, ++ .exit = mmc_spi_exit, + }; + #endif + |