linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/6] atmel_serial: Cleanups, irq handler splitup & DMA
@ 2008-01-22 14:50 Haavard Skinnemoen
  2008-01-22 14:50 ` [PATCH 1/6] atmel_serial: Clean up the code Haavard Skinnemoen
  0 siblings, 1 reply; 18+ messages in thread
From: Haavard Skinnemoen @ 2008-01-22 14:50 UTC (permalink / raw)
  To: Andrew Victor
  Cc: Remy Bohmer, linux-arm-kernel, linux-kernel, kernel, Haavard Skinnemoen

The following patchset cleans up the atmel_serial driver a bit,
moves a significant portion of the interrupt handler into a tasklet,
and adds DMA support. This is the result of a combined effort by Chip
Coldwell, Remy Bohmer and me. The patches should apply cleanly onto
Linus' latest git tree.

With DMA, I see transfer rates around 92 kbps when transferring a big
file using ZModem (both directions are roughly the same.)

Note that break and error handling doesn't work too well with DMA
enabled. This is a common problem with all the efforts I've seen
adding DMA support to this driver (including my own). The PDC error
handling also accesses icount without locking. I'm tempted to just
ignore the problem for now and hopefully come up with a solution
later.

The following changes have been made since v2 of this patchset:
  * Drop the lock before calling tty_flip_buffer_push()
  * Revert the UART_{PUT,GET} macro cleanups since Andrew didn't seem
    to like them.

Everyone, please give it a try and/or review the code.

Chip Coldwell (1):
      atmel_serial: Add DMA support

Haavard Skinnemoen (3):
      atmel_serial: Use cpu_relax() when busy-waiting
      atmel_serial: Use existing console options only if BRG is running
      atmel_serial: Fix bugs in probe() error path and remove()

Remy Bohmer (2):
      atmel_serial: Clean up the code
      atmel_serial: Split the interrupt handler

 drivers/serial/atmel_serial.c |  897 +++++++++++++++++++++++++++++++++--------
 1 files changed, 722 insertions(+), 175 deletions(-)

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

end of thread, other threads:[~2008-01-23 16:46 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-01-22 14:50 [PATCH v3 0/6] atmel_serial: Cleanups, irq handler splitup & DMA Haavard Skinnemoen
2008-01-22 14:50 ` [PATCH 1/6] atmel_serial: Clean up the code Haavard Skinnemoen
2008-01-22 14:50   ` [PATCH 2/6] atmel_serial: Use cpu_relax() when busy-waiting Haavard Skinnemoen
2008-01-22 14:50     ` [PATCH 3/6] atmel_serial: Use existing console options only if BRG is running Haavard Skinnemoen
2008-01-22 14:50       ` [PATCH 4/6] atmel_serial: Fix bugs in probe() error path and remove() Haavard Skinnemoen
2008-01-22 14:50         ` [PATCH 5/6] atmel_serial: Split the interrupt handler Haavard Skinnemoen
2008-01-22 14:50           ` [PATCH 6/6] atmel_serial: Add DMA support Haavard Skinnemoen
2008-01-22 16:52             ` Marc Pignat
2008-01-23 11:53               ` Haavard Skinnemoen
2008-01-23 12:30                 ` Marc Pignat
2008-01-23 12:45                   ` Haavard Skinnemoen
2008-01-23 13:18                     ` Marc Pignat
2008-01-23 13:35                       ` Haavard Skinnemoen
2008-01-23 13:52                         ` Marc Pignat
2008-01-23 14:05                           ` Haavard Skinnemoen
2008-01-23 15:04                             ` Alan Cox
2008-01-23 15:14                               ` Haavard Skinnemoen
2008-01-23 16:41                                 ` Alan Cox

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).