Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1213690
| From | Sekhar Nori <nsekhar@ti.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [RFC 3/3] serial: 8250_omap: try to avoid IER_RDI with DMA |
| Date | 2015-08-26 11:20 +0200 |
| Message-ID | <q1F2b-1qN-31@gated-at.bofh.it> (permalink) |
| References | <pXpIm-6Yn-5@gated-at.bofh.it> <pXpIm-6Yn-17@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On Friday 14 August 2015 09:31 PM, Sebastian Andrzej Siewior wrote: > It has been observed on DRA7-evm that the UART triggers the interrupt and > reading IIR says IIR_NO_INT. It seems that we receive data via RX-DMA > but the interrupt is triggered anyway. I have hardly observed it on > AM335x and not in *that* quantity. On DRA7-evm with continuous transfers > at 3MBaud and CPU running at 1.5Ghz it is possible that the IRQ-core will > close the UART interrupt after "some time" with "nobody cared". > > I've seen that by not enabling IER_RDI those spurious interrupts are not > triggered. Also it seems that DMA and RDI cause the "timeout interrupt" > which does not allow RX-DMA to be scheduled even if the FIFO reached the > programmed RX threshold. However without RDI we don't get a notification > if we have less than RX threshold bytes in the FIFO. > This is where we have the rx_dma_wd timer. After programming the RX-DMA > transfer wait HZ / 4 or 250ms for it to complete. If it does not > complete in that time span we cancel the DMA transfer and enable RDI. > RDI will trigger an UART interrupt in case we have bytes in the FIFO. > Once we read bytes manually from the FIFO we enable RX-DMA again > (without RDI) with the same 250ms timeout. > > One downside with this approach is that latency sensitive protocols that > transfer less than 48 bytes will have to wait 250ms to complete. I guess because of this reason, wlink8 bluetooth connected to TI's DRA7 EVM failed to probe with this patch included. At the least, looks like this patch needs some tuning. > > Is there maybe a user interface where one could set small or bulk transfers? > > Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Thanks, Sekhar -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Back to linux.kernel | Previous | Next | Find similar | Unroll thread
Re: [RFC 3/3] serial: 8250_omap: try to avoid IER_RDI with DMA Sekhar Nori <nsekhar@ti.com> - 2015-08-26 11:20 +0200
csiph-web