SEARCH  

NEWS

2010.10.06:11:36:28
Ustawowe wsparcie rozwoju sieci telekomunikacyjnych
Ustawa o wspieraniu rozwoju usług i sieci telekomunikacyjnych, która weszła w życie 15 lipca br., wprowadza szereg nowatorskich rozwiązań, mających na celu przyspieszenie rozwoju i upowszechnienie usług telekomunikacyjnych w Polsce. Doprowadzi do obniżenia kosztów przedsiębiorców telekomunikacyjnych i odbiorców tych usług (tzw. użytkowników końcowych).

 

messageID:560560007842
author:Sergei Shtylyov
title: PATCH 01 03 omap hsmmc prevent race betwee
It is observed that sometimes the MMC Transfer Complete (TC) is not received when DMA completion callback is processed (or takes too long to process) This patch moves the releasing of DMA channel from dma callback to the mmc transfer complete handler. This is observed consistently when descriptor loading is used (see the rest of the series) Signed-off-by: Venkatraman S <svenkatr@xxxxxx --- drivers/mmc/host/omap_hsmmc.c | 19 +++++++++++-------- 1 files changed, 11 insertions(+), 8 deletions(-) diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c index 83f0aff..06337f6 100644 --- a/drivers/mmc/host/omap_hsmmc.c +++ b/drivers/mmc/host/omap_hsmmc.c @@ -1046,8 +1046,18 @@ static irqreturn_t omap_hsmmc_irq(int irq, void *dev_id) if (end_cmd || ((status & CC) && host- cmd)) omap_hsmmc_cmd_done(host, host- cmd); - if ((end_trans || (status & TC)) && host- mrq) + if ((end_trans || (status & TC)) && host- mrq) { omap_hsmmc_xfer_done(host, data); + if (host- dma_ch != -1) { + omap_free_dma(host- dma_ch); + host- dma_ch = -1; + /* + * Callback: run in interrupt context. + * mutex_unlock will throw a kernel warning if used. + */ + up(&host- sem); + } + } spin_unlock(&host- irq_lock); @@ -1267,13 +1277,6 @@ static void omap_hsmmc_dma_cb(int lch, u16 ch_status, void *data) return; } - omap_free_dma(host- dma_ch); - host- dma_ch = -1; - /* - * DMA Callback: run in interrupt context. - * mutex_unlock will throw a kernel warning if used. - */ - up(&host- sem); } /* -- 1.6.3.3 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@xxxxxxxxxxxxxxxxxxx rel="nofollow" lists.infradead.org/mailman/listinfo/linux-arm-kernel lists.infradead.org/mailman/listinfo/linux-arm-kernel
Index