102-kernel-2.6.38-Fix-SD-MMC-SDIO-over-SPI-driver-bug-when-reinserting.patch 1.0 KB

12345678910111213141516171819202122232425262728293031323334
  1. From 78f4df7dfe913c68b8329dd84a24325b8f34217b Mon Sep 17 00:00:00 2001
  2. From: Wang Huan <[email protected]>
  3. Date: Mon, 8 Aug 2011 09:14:45 +0800
  4. Subject: [PATCH] Fix SD/MMC/SDIO over SPI driver bug when reinserting as module
  5. Signed-off-by: Alison Wang <[email protected]>
  6. ---
  7. arch/m68k/coldfire/m5445x/devices.c | 8 ++++++++
  8. 1 files changed, 8 insertions(+), 0 deletions(-)
  9. --- a/arch/m68k/coldfire/m5445x/devices.c
  10. +++ b/arch/m68k/coldfire/m5445x/devices.c
  11. @@ -136,6 +136,13 @@ int mmc_spi_init(struct device *mmc_spi_
  12. return 0;
  13. }
  14. +void mmc_spi_exit(struct device *mmc_spi_device, void *irq_privatedata)
  15. +{
  16. +#if defined(CONFIG_M54451_SD_HW_DETECT)
  17. + free_irq(64 + 7, irq_privatedata);
  18. +#endif
  19. +}
  20. +
  21. static struct coldfire_dspi_chip dspi_sd_chip_info = {
  22. .mode = SPI_MODE_0,
  23. .bits_per_word = 8,
  24. @@ -154,6 +161,7 @@ static struct coldfire_dspi_chip dspi_sd
  25. static struct mmc_spi_platform_data mcf54451_mmc_pdata = {
  26. .ocr_mask = MMC_VDD_33_34,
  27. .init = mmc_spi_init,
  28. + .exit = mmc_spi_exit,
  29. };
  30. #endif