* [PATCH] mmc: atmel-mci: save and restore sdioirq when soft reset is performed
@ 2012-02-08 17:22 ludovic.desroches at atmel.com
2012-02-08 15:26 ` Jean-Christophe PLAGNIOL-VILLARD
2012-02-09 10:55 ` ludovic.desroches at atmel.com
0 siblings, 2 replies; 7+ messages in thread
From: ludovic.desroches at atmel.com @ 2012-02-08 17:22 UTC (permalink / raw)
To: linux-arm-kernel
From: Ludovic Desroches <ludovic.desroches@atmel.com>
Signed-off-by: Ludovic Desroches <ludovic.desroches@atmel.com>
Cc: stable at vger.kernel.org
---
drivers/mmc/host/atmel-mci.c | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/drivers/mmc/host/atmel-mci.c b/drivers/mmc/host/atmel-mci.c
index 09ac13b..dfa5dd9 100644
--- a/drivers/mmc/host/atmel-mci.c
+++ b/drivers/mmc/host/atmel-mci.c
@@ -965,11 +965,14 @@ static void atmci_start_request(struct atmel_mci *host,
host->data_status = 0;
if (host->need_reset) {
+ iflags = atmci_readl(host, ATMCI_IMR);
+ iflags &= (ATMCI_SDIOIRQA | ATMCI_SDIOIRQB);
atmci_writel(host, ATMCI_CR, ATMCI_CR_SWRST);
atmci_writel(host, ATMCI_CR, ATMCI_CR_MCIEN);
atmci_writel(host, ATMCI_MR, host->mode_reg);
if (host->caps.has_cfg_reg)
atmci_writel(host, ATMCI_CFG, host->cfg_reg);
+ atmci_writel(host, ATMCI_IER, iflags);
host->need_reset = false;
}
atmci_writel(host, ATMCI_SDCR, slot->sdc_reg);
--
1.7.5.4
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH] mmc: atmel-mci: save and restore sdioirq when soft reset is performed
2012-02-08 17:22 [PATCH] mmc: atmel-mci: save and restore sdioirq when soft reset is performed ludovic.desroches at atmel.com
@ 2012-02-08 15:26 ` Jean-Christophe PLAGNIOL-VILLARD
2012-02-08 15:45 ` Ludovic Desroches
2012-02-09 10:55 ` ludovic.desroches at atmel.com
1 sibling, 1 reply; 7+ messages in thread
From: Jean-Christophe PLAGNIOL-VILLARD @ 2012-02-08 15:26 UTC (permalink / raw)
To: linux-arm-kernel
On 18:22 Wed 08 Feb , ludovic.desroches at atmel.com wrote:
> From: Ludovic Desroches <ludovic.desroches@atmel.com>
why do you need this?
Best Regards,
J.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH] mmc: atmel-mci: save and restore sdioirq when soft reset is performed
2012-02-08 15:26 ` Jean-Christophe PLAGNIOL-VILLARD
@ 2012-02-08 15:45 ` Ludovic Desroches
2012-02-08 16:17 ` Jean-Christophe PLAGNIOL-VILLARD
0 siblings, 1 reply; 7+ messages in thread
From: Ludovic Desroches @ 2012-02-08 15:45 UTC (permalink / raw)
To: linux-arm-kernel
Hello Jean-Christophe,
A customer using an Atheros AR6103 SDIO WLAN adapter faces this issue.
Sometimes we perform a software reset and he noticed that after he didn't get
sdio irq. The interrupt mask register is also resetted when performing
software reset.
Regards
Ludovic
On Wed, Feb 08, 2012 at 04:26:21PM +0100, Jean-Christophe PLAGNIOL-VILLARD wrote:
> On 18:22 Wed 08 Feb , ludovic.desroches at atmel.com wrote:
> > From: Ludovic Desroches <ludovic.desroches@atmel.com>
>
> why do you need this?
>
> Best Regards,
> J.
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH] mmc: atmel-mci: save and restore sdioirq when soft reset is performed
2012-02-08 15:45 ` Ludovic Desroches
@ 2012-02-08 16:17 ` Jean-Christophe PLAGNIOL-VILLARD
0 siblings, 0 replies; 7+ messages in thread
From: Jean-Christophe PLAGNIOL-VILLARD @ 2012-02-08 16:17 UTC (permalink / raw)
To: linux-arm-kernel
On 16:45 Wed 08 Feb , Ludovic Desroches wrote:
> Hello Jean-Christophe,
>
> A customer using an Atheros AR6103 SDIO WLAN adapter faces this issue.
>
> Sometimes we perform a software reset and he noticed that after he didn't get
> sdio irq. The interrupt mask register is also resetted when performing
> software reset.
so put this in the commit
Best Regards,
J.
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH] mmc: atmel-mci: save and restore sdioirq when soft reset is performed
2012-02-08 17:22 [PATCH] mmc: atmel-mci: save and restore sdioirq when soft reset is performed ludovic.desroches at atmel.com
2012-02-08 15:26 ` Jean-Christophe PLAGNIOL-VILLARD
@ 2012-02-09 10:55 ` ludovic.desroches at atmel.com
2012-02-09 9:05 ` Nicolas Ferre
1 sibling, 1 reply; 7+ messages in thread
From: ludovic.desroches at atmel.com @ 2012-02-09 10:55 UTC (permalink / raw)
To: linux-arm-kernel
From: Ludovic Desroches <ludovic.desroches@atmel.com>
Sometimes a software reset is needed. Then some registers are saved and
restored but the interrupt mask register is missing. It causes issues
with sdio devices whose interrupts are masked after reset.
Signed-off-by: Ludovic Desroches <ludovic.desroches@atmel.com>
Cc: stable at vger.kernel.org
---
drivers/mmc/host/atmel-mci.c | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/drivers/mmc/host/atmel-mci.c b/drivers/mmc/host/atmel-mci.c
index 09ac13b..dfa5dd9 100644
--- a/drivers/mmc/host/atmel-mci.c
+++ b/drivers/mmc/host/atmel-mci.c
@@ -965,11 +965,14 @@ static void atmci_start_request(struct atmel_mci *host,
host->data_status = 0;
if (host->need_reset) {
+ iflags = atmci_readl(host, ATMCI_IMR);
+ iflags &= (ATMCI_SDIOIRQA | ATMCI_SDIOIRQB);
atmci_writel(host, ATMCI_CR, ATMCI_CR_SWRST);
atmci_writel(host, ATMCI_CR, ATMCI_CR_MCIEN);
atmci_writel(host, ATMCI_MR, host->mode_reg);
if (host->caps.has_cfg_reg)
atmci_writel(host, ATMCI_CFG, host->cfg_reg);
+ atmci_writel(host, ATMCI_IER, iflags);
host->need_reset = false;
}
atmci_writel(host, ATMCI_SDCR, slot->sdc_reg);
--
1.7.5.4
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH] mmc: atmel-mci: save and restore sdioirq when soft reset is performed
2012-02-09 10:55 ` ludovic.desroches at atmel.com
@ 2012-02-09 9:05 ` Nicolas Ferre
2012-02-11 21:26 ` Chris Ball
0 siblings, 1 reply; 7+ messages in thread
From: Nicolas Ferre @ 2012-02-09 9:05 UTC (permalink / raw)
To: linux-arm-kernel
On 02/09/2012 11:55 AM, ludovic.desroches at atmel.com :
> From: Ludovic Desroches <ludovic.desroches@atmel.com>
>
> Sometimes a software reset is needed. Then some registers are saved and
> restored but the interrupt mask register is missing. It causes issues
> with sdio devices whose interrupts are masked after reset.
>
> Signed-off-by: Ludovic Desroches <ludovic.desroches@atmel.com>
Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Chris, can you please queue this patch in a "fixes" branch?
Thanks, best regards,
> Cc: stable at vger.kernel.org
> ---
> drivers/mmc/host/atmel-mci.c | 3 +++
> 1 files changed, 3 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/mmc/host/atmel-mci.c b/drivers/mmc/host/atmel-mci.c
> index 09ac13b..dfa5dd9 100644
> --- a/drivers/mmc/host/atmel-mci.c
> +++ b/drivers/mmc/host/atmel-mci.c
> @@ -965,11 +965,14 @@ static void atmci_start_request(struct atmel_mci *host,
> host->data_status = 0;
>
> if (host->need_reset) {
> + iflags = atmci_readl(host, ATMCI_IMR);
> + iflags &= (ATMCI_SDIOIRQA | ATMCI_SDIOIRQB);
> atmci_writel(host, ATMCI_CR, ATMCI_CR_SWRST);
> atmci_writel(host, ATMCI_CR, ATMCI_CR_MCIEN);
> atmci_writel(host, ATMCI_MR, host->mode_reg);
> if (host->caps.has_cfg_reg)
> atmci_writel(host, ATMCI_CFG, host->cfg_reg);
> + atmci_writel(host, ATMCI_IER, iflags);
> host->need_reset = false;
> }
> atmci_writel(host, ATMCI_SDCR, slot->sdc_reg);
--
Nicolas Ferre
^ permalink raw reply [flat|nested] 7+ messages in thread* [PATCH] mmc: atmel-mci: save and restore sdioirq when soft reset is performed
2012-02-09 9:05 ` Nicolas Ferre
@ 2012-02-11 21:26 ` Chris Ball
0 siblings, 0 replies; 7+ messages in thread
From: Chris Ball @ 2012-02-11 21:26 UTC (permalink / raw)
To: linux-arm-kernel
Hi,
On Thu, Feb 09 2012, Nicolas Ferre wrote:
> On 02/09/2012 11:55 AM, ludovic.desroches at atmel.com :
>> From: Ludovic Desroches <ludovic.desroches@atmel.com>
>>
>> Sometimes a software reset is needed. Then some registers are saved and
>> restored but the interrupt mask register is missing. It causes issues
>> with sdio devices whose interrupts are masked after reset.
>>
>> Signed-off-by: Ludovic Desroches <ludovic.desroches@atmel.com>
>
> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
>
> Chris, can you please queue this patch in a "fixes" branch?
Thanks, pushed to mmc-next for 3.3.
- Chris.
--
Chris Ball <cjb@laptop.org> <http://printf.net/>
One Laptop Per Child
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2012-02-11 21:26 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-02-08 17:22 [PATCH] mmc: atmel-mci: save and restore sdioirq when soft reset is performed ludovic.desroches at atmel.com
2012-02-08 15:26 ` Jean-Christophe PLAGNIOL-VILLARD
2012-02-08 15:45 ` Ludovic Desroches
2012-02-08 16:17 ` Jean-Christophe PLAGNIOL-VILLARD
2012-02-09 10:55 ` ludovic.desroches at atmel.com
2012-02-09 9:05 ` Nicolas Ferre
2012-02-11 21:26 ` Chris Ball
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).