linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH RFC 00/31] SDHCI and SDIO IRQ improvements
@ 2014-02-18 15:08 Russell King - ARM Linux
  2014-02-18 15:09 ` [PATCH RFC 01/31] genirq: Provide synchronize_hardirq() Russell King
                   ` (30 more replies)
  0 siblings, 31 replies; 58+ messages in thread
From: Russell King - ARM Linux @ 2014-02-18 15:08 UTC (permalink / raw)
  To: linux-arm-kernel

The following patch series is targetted at two things - fixing the SDIO
interrupt handling, and fixing problems with the sdhci driver.

- the first two patches from Thomas Gleixner provide genirq support to
  allow us to fix the SDIO interrupt handling in a graceful manner.
- patch 3 adds support for avoiding the buggy sdio_irq thread - the
  problem is described in that commit.  Other solutions were explored,
  but this is the one which was settled on after discussions between
  Thomas, scheduler people and myself.
- patches 4 to 7 update sdhci to use a genirq to deal with the threaded
  part of the interrupts.
- patch 8 allows card interrupts to be received from a SDIO card while
  runtime suspended.  Without this patch, Wifi cards attached to a
  kernel with runtime PM support built in totally fail to work.  This
  allows them to work.  Tested in 4-bit mode.
- patches 9 onwards are cleanups and fixes to the sdhci code.

 drivers/mmc/core/sdio_irq.c        |  41 ++-
 drivers/mmc/host/sdhci-acpi.c      |   8 +
 drivers/mmc/host/sdhci-bcm-kona.c  |   4 +
 drivers/mmc/host/sdhci-bcm2835.c   |   4 +
 drivers/mmc/host/sdhci-cns3xxx.c   |  13 +-
 drivers/mmc/host/sdhci-dove.c      |   4 +
 drivers/mmc/host/sdhci-esdhc-imx.c |  82 ++---
 drivers/mmc/host/sdhci-esdhc.h     |   4 +-
 drivers/mmc/host/sdhci-of-arasan.c |   4 +
 drivers/mmc/host/sdhci-of-esdhc.c  |  70 +++--
 drivers/mmc/host/sdhci-of-hlwd.c   |   4 +
 drivers/mmc/host/sdhci-pci.c       |   9 +-
 drivers/mmc/host/sdhci-pltfm.c     |   4 +
 drivers/mmc/host/sdhci-pxav2.c     |  14 +-
 drivers/mmc/host/sdhci-pxav3.c     |  13 +-
 drivers/mmc/host/sdhci-s3c.c       |  36 ++-
 drivers/mmc/host/sdhci-sirf.c      |   4 +
 drivers/mmc/host/sdhci-spear.c     |   5 +-
 drivers/mmc/host/sdhci-tegra.c     |  27 +-
 drivers/mmc/host/sdhci.c           | 606 ++++++++++++++++++-------------------
 drivers/mmc/host/sdhci.h           |  20 +-
 include/linux/hardirq.h            |   1 +
 include/linux/interrupt.h          |   1 +
 include/linux/mmc/host.h           |   3 +
 include/linux/mmc/sdhci.h          |  14 +-
 kernel/irq/handle.c                |   4 +-
 kernel/irq/internals.h             |   1 +
 kernel/irq/manage.c                |  94 ++++--
 28 files changed, 608 insertions(+), 486 deletions(-)

-- 
FTTC broadband for 0.8mile line: 5.8Mbps down 500kbps up.  Estimation
in database were 13.1 to 19Mbit for a good line, about 7.5+ for a bad.
Estimate before purchase was "up to 13.2Mbit".

^ permalink raw reply	[flat|nested] 58+ messages in thread

end of thread, other threads:[~2014-02-24  6:11 UTC | newest]

Thread overview: 58+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-02-18 15:08 [PATCH RFC 00/31] SDHCI and SDIO IRQ improvements Russell King - ARM Linux
2014-02-18 15:09 ` [PATCH RFC 01/31] genirq: Provide synchronize_hardirq() Russell King
2014-02-18 15:09 ` [PATCH RFC 02/31] genirq: Provide irq_wake_thread() Russell King
2014-02-18 15:09 ` [PATCH RFC 03/31] mmc: sdio_irq: rework sdio irq handling Russell King
2014-02-19  3:40   ` Nicolas Pitre
2014-02-19  9:44     ` Russell King - ARM Linux
2014-02-18 15:09 ` [PATCH RFC 04/31] mmc: sdhci: clean up interrupt handling Russell King
2014-02-18 15:09 ` [PATCH RFC 05/31] mmc: sdhci: clean up sdio interrupt enable handling Russell King
2014-02-18 15:09 ` [PATCH RFC 06/31] mmc: sdhci: convert to new SDIO IRQ handling Russell King
2014-02-18 15:09 ` [PATCH RFC 07/31] mmc: sdhci: push card_tasklet into threaded irq handler Russell King
2014-02-18 17:57   ` Russell King - ARM Linux
2014-02-19  6:13     ` Viresh Kumar
2014-02-19  9:43       ` Russell King - ARM Linux
2014-02-19  9:48         ` Viresh Kumar
2014-02-19  9:52           ` Russell King - ARM Linux
2014-02-19 10:09             ` Viresh Kumar
2014-02-19 10:50               ` Russell King - ARM Linux
2014-02-19 10:55                 ` Viresh Kumar
2014-02-20 10:59                   ` Russell King - ARM Linux
2014-02-20 11:18                     ` Viresh Kumar
2014-02-21 10:37                       ` Russell King - ARM Linux
2014-02-21 10:41                         ` [PATCH 1/5] mmc: sdhci-spear: fix error handling paths for DT Russell King
2014-02-24  5:59                           ` Viresh Kumar
2014-02-21 10:41                         ` [PATCH 2/5] mmc: sdhci-spear: fix platform_data usage Russell King
2014-02-21 10:41                         ` [PATCH 3/5] mmc: sdhci-spear: simplify resource handling Russell King
2014-02-21 10:41                         ` [PATCH 4/5] mmc: sdhci-spear: remove support for power gpio Russell King
2014-02-21 10:41                         ` [PATCH 5/5] mmc: sdhci-spear: use generic card detection gpio support Russell King
2014-02-24  6:11                           ` Pratyush Anand
2014-02-22 18:27                         ` [PATCH RFC 07/31] mmc: sdhci: push card_tasklet into threaded irq handler Chris Ball
2014-02-22 19:05                           ` Russell King - ARM Linux
2014-02-22 19:11                             ` Chris Ball
2014-02-18 15:09 ` [PATCH RFC 08/31] mmc: sdhci: allow sdio interrupts while sdhci runtime suspended Russell King
2014-02-18 15:09 ` [PATCH RFC 09/31] mmc: sdhci: more efficient interrupt enable register handling Russell King
2014-02-18 15:09 ` [PATCH RFC 10/31] mmc: sdhci: plug hole in disabling card detection interrupts Russell King
2014-02-18 15:09 ` [PATCH RFC 11/31] mmc: sdhci: convert generic bus width setup to library function Russell King
2014-02-18 15:10 ` [PATCH RFC 12/31] mmc: sdhci: convert reset into a " Russell King
2014-02-18 15:10 ` [PATCH RFC 13/31] mmc: sdhci: move FSL ESDHC reset handling quirk into esdhc code Russell King
2014-02-18 15:10 ` [PATCH RFC 14/31] mmc: sdhci: avoid sync'ing the SG if there's no misalignment Russell King
2014-02-18 15:10 ` [PATCH RFC 15/31] mmc: sdhci: convert ADMA descriptors to a coherent allocation Russell King
2014-02-18 15:10 ` [PATCH RFC 16/31] mmc: sdhci: clean up sdhci_update_clock()/sdhci_set_clock() Russell King
2014-02-18 15:10 ` [PATCH RFC 17/31] mmc: sdhci: move setting host->clock into sdhci_do_set_ios() Russell King
2014-02-18 15:10 ` [PATCH RFC 18/31] mmc: sdhci: move setting mmc->actual_clock into set_clock handlers Russell King
2014-02-18 15:10 ` [PATCH RFC 19/31] mmc: sdhci: convert sdhci_set_clock() into a library function Russell King
2014-02-18 15:10 ` [PATCH RFC 20/31] mmc: sdhci-esdhc-imx: avoid DMA to kernel stack Russell King
2014-02-18 15:10 ` [PATCH RFC 21/31] mmc: sdhci-esdhc-imx: avoid runtime_pm_get_sync() in esdhc_prepare_tuning() Russell King
2014-02-18 15:10 ` [PATCH RFC 22/31] mmc: sdhci-esdhc-imx: fix lockdep splat upon tuning Russell King
2014-02-18 15:11 ` [PATCH RFC 23/31] mmc: sdhci: hack up driver to make it more compliant with UHS-1 Russell King
2014-02-18 15:11 ` [PATCH RFC 24/31] mmc: sdhci: set_uhs_signaling() need not return a value Russell King
2014-02-18 15:11 ` [PATCH RFC 25/31] mmc: sdhci: convert sdhci_set_uhs_signaling() into a library function Russell King
2014-02-18 15:11 ` [PATCH RFC 26/31] mmc: sdhci: cache timing information locally Russell King
2014-02-18 15:11 ` [PATCH RFC 27/31] mmc: sdhci: clean up sdhci_execute_tuning() decision Russell King
2014-02-18 15:11 ` [PATCH RFC 28/31] mmc: sdhci-esdhc-imx: remove emulation of uhs_mode Russell King
2014-02-18 15:11 ` [PATCH RFC 29/31] mmc: sdhci-of-esdhc: remove platform_suspend/platform_resume callbacks Russell King
2014-02-18 15:11 ` [PATCH RFC 30/31] mmc: sdhci: " Russell King
2014-02-18 15:11 ` [PATCH RFC 31/31] mmc: sdhci-tegra: get rid of special PRESENT_STATE register handling Russell King
2014-02-19 20:04   ` Stephen Warren
2014-02-19 23:22     ` Russell King - ARM Linux
2014-02-19 23:28       ` Russell King - ARM Linux

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).