1. 28 6月, 2011 3 次提交
  2. 14 6月, 2011 3 次提交
    • P
      serial: sh-sci: Support generic SCLSR overrun detection. · 4b8c59a3
      Paul Mundt 提交于
      For all ports with a valid SCLSR register we can use the generic FIFO
      overrun detection logic. Test the validity of the SCLSR register rather
      than depending explicitly on port type, which can be ambiguous for the
      SCIFA/B types.
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      4b8c59a3
    • P
      serial: sh-sci: FIFO sizing helper consolidation. · 72b294cf
      Paul Mundt 提交于
      This consolidates all of the TX/RX fill/room nonsense in to a single set
      of fairly heavyweight definitions. The implementation goes in descending
      order of complexity, testing the register map for capabilities until we
      run out of options and do it the legacy SCI way. Masks are derived
      directly from the per-port FIFO size, meaning that platforms with FIFO
      sizes not matching the standard port types will still need to manually
      fix them up.
      
      This also fixes up a number of issues such as tx_empty being completely
      bogus for SCI and IrDA ports, some ports using masks smaller or greater
      than their FIFO size, and so forth.
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      72b294cf
    • P
      serial: sh-sci: Abstract register maps. · 61a6976b
      Paul Mundt 提交于
      This takes a bit of a sledgehammer to the horribly CPU subtype
      ifdef-ridden header and abstracts all of the different register layouts
      in to distinct types which in turn can be overriden on a per-port basis,
      or permitted to default to the map matching the port type at probe time.
      
      In the process this ultimately fixes up inumerable bugs with mismatches
      on various CPU types (particularly the legacy ones that were obviously
      broken years ago and no one noticed) and provides a more tightly coupled
      and consolidated platform for extending and implementing generic
      features.
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      61a6976b
  3. 08 6月, 2011 2 次提交
    • P
      serial: sh-sci: Consolidate RXD pin handling. · 514820eb
      Paul Mundt 提交于
      Non-SCI parts do not have the special port reg necessary for cases where
      the RX and SCI pins are muxed and need to be manually polled, so these
      like always fall back on the normal FIFO processing paths. SH7760 is in a
      class in and of itself with regards to mapping its SIM card interface via
      the SCI port class despite not having any of the RXD lines wired up and
      so implicitly behaving more like a SCIF in this regard. Out of the other
      CPUs, some support the port check via the same block while others do it
      through an external SuperI/O, so it's not even possible to perform the
      check relative to the ioremapped cookie offset, so the separate read
      semantics are preserved here, too.
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      514820eb
    • P
      serial: sh-sci: Generalize overrun handling. · debf9507
      Paul Mundt 提交于
      This consolidates all of the broken out overrun handling and ensures that
      we have sensible defaults per-port type, in addition to making sure that
      overruns are flagged appropriately in the error mask for parts that
      haven't explicitly disabled support for it.
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      debf9507
  4. 06 6月, 2011 1 次提交
  5. 23 5月, 2011 2 次提交
  6. 20 4月, 2011 1 次提交
  7. 31 3月, 2011 3 次提交
  8. 04 3月, 2011 1 次提交
    • A
      serial: sh-sci: fix deadlock when resuming from S3 sleep · 36003386
      Alexandre Courbot 提交于
      S3 sleep invokes the shutdown callback of the sh-sci driver, which
      suspends the clocks until they are reactivated by a call to startup.
      However, before the latter is invoked, sci_set_termios may be called on
      the port by uart_resume_port. In such cases it will endlessly wait for
      the TEND bit to raise, which will never happen since the clocks are
      disabled.
      
      This patch ensures that clocks are enabled when ports registers are
      manipulated within sci_set_termios.
      Signed-off-by: NAlexandre Courbot <gnurou@gmail.com>
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      36003386
  9. 14 1月, 2011 1 次提交
    • G
      tty: move drivers/serial/ to drivers/tty/serial/ · ab4382d2
      Greg Kroah-Hartman 提交于
      The serial drivers are really just tty drivers, so move them to
      drivers/tty/ to make things a bit neater overall.
      
      This is part of the tty/serial driver movement proceedure as proposed by
      Arnd Bergmann and approved by everyone involved a number of months ago.
      
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
      Cc: Geert Uytterhoeven <geert@linux-m68k.org>
      Cc: Rogier Wolff <R.E.Wolff@bitwizard.nl>
      Cc: Michael H. Warfield <mhw@wittsend.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      ab4382d2
  10. 13 1月, 2011 1 次提交
  11. 24 5月, 2010 1 次提交
  12. 22 5月, 2010 1 次提交
  13. 21 5月, 2010 1 次提交
  14. 18 5月, 2010 1 次提交
  15. 30 3月, 2010 1 次提交
    • T
      include cleanup: Update gfp.h and slab.h includes to prepare for breaking... · 5a0e3ad6
      Tejun Heo 提交于
      include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h
      
      percpu.h is included by sched.h and module.h and thus ends up being
      included when building most .c files.  percpu.h includes slab.h which
      in turn includes gfp.h making everything defined by the two files
      universally available and complicating inclusion dependencies.
      
      percpu.h -> slab.h dependency is about to be removed.  Prepare for
      this change by updating users of gfp and slab facilities include those
      headers directly instead of assuming availability.  As this conversion
      needs to touch large number of source files, the following script is
      used as the basis of conversion.
      
        http://userweb.kernel.org/~tj/misc/slabh-sweep.py
      
      The script does the followings.
      
      * Scan files for gfp and slab usages and update includes such that
        only the necessary includes are there.  ie. if only gfp is used,
        gfp.h, if slab is used, slab.h.
      
      * When the script inserts a new include, it looks at the include
        blocks and try to put the new include such that its order conforms
        to its surrounding.  It's put in the include block which contains
        core kernel includes, in the same order that the rest are ordered -
        alphabetical, Christmas tree, rev-Xmas-tree or at the end if there
        doesn't seem to be any matching order.
      
      * If the script can't find a place to put a new include (mostly
        because the file doesn't have fitting include block), it prints out
        an error message indicating which .h file needs to be added to the
        file.
      
      The conversion was done in the following steps.
      
      1. The initial automatic conversion of all .c files updated slightly
         over 4000 files, deleting around 700 includes and adding ~480 gfp.h
         and ~3000 slab.h inclusions.  The script emitted errors for ~400
         files.
      
      2. Each error was manually checked.  Some didn't need the inclusion,
         some needed manual addition while adding it to implementation .h or
         embedding .c file was more appropriate for others.  This step added
         inclusions to around 150 files.
      
      3. The script was run again and the output was compared to the edits
         from #2 to make sure no file was left behind.
      
      4. Several build tests were done and a couple of problems were fixed.
         e.g. lib/decompress_*.c used malloc/free() wrappers around slab
         APIs requiring slab.h to be added manually.
      
      5. The script was run on all .h files but without automatically
         editing them as sprinkling gfp.h and slab.h inclusions around .h
         files could easily lead to inclusion dependency hell.  Most gfp.h
         inclusion directives were ignored as stuff from gfp.h was usually
         wildly available and often used in preprocessor macros.  Each
         slab.h inclusion directive was examined and added manually as
         necessary.
      
      6. percpu.h was updated not to include slab.h.
      
      7. Build test were done on the following configurations and failures
         were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my
         distributed build env didn't work with gcov compiles) and a few
         more options had to be turned off depending on archs to make things
         build (like ipr on powerpc/64 which failed due to missing writeq).
      
         * x86 and x86_64 UP and SMP allmodconfig and a custom test config.
         * powerpc and powerpc64 SMP allmodconfig
         * sparc and sparc64 SMP allmodconfig
         * ia64 SMP allmodconfig
         * s390 SMP allmodconfig
         * alpha SMP allmodconfig
         * um on x86_64 SMP allmodconfig
      
      8. percpu.h modifications were reverted so that it could be applied as
         a separate patch and serve as bisection point.
      
      Given the fact that I had only a couple of failures from tests on step
      6, I'm fairly confident about the coverage of this conversion patch.
      If there is a breakage, it's likely to be something in one of the arch
      headers which should be easily discoverable easily on most builds of
      the specific arch.
      Signed-off-by: NTejun Heo <tj@kernel.org>
      Guess-its-ok-by: NChristoph Lameter <cl@linux-foundation.org>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Lee Schermerhorn <Lee.Schermerhorn@hp.com>
      5a0e3ad6
  16. 27 3月, 2010 1 次提交
    • L
      DMAENGINE: generic slave control v2 · c3635c78
      Linus Walleij 提交于
      Convert the device_terminate_all() operation on the
      DMA engine to a generic device_control() operation
      which can now optionally support also pausing and
      resuming DMA on a certain channel. Implemented for the
      COH 901 318 DMAC as an example.
      
      [dan.j.williams@intel.com: update for timberdale]
      Signed-off-by: NLinus Walleij <linus.walleij@stericsson.com>
      Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      Cc: Maciej Sosnowski <maciej.sosnowski@intel.com>
      Cc: Nicolas Ferre <nicolas.ferre@atmel.com>
      Cc: Pavel Machek <pavel@ucw.cz>
      Cc: Li Yang <leoli@freescale.com>
      Cc: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
      Cc: Paul Mundt <lethal@linux-sh.org>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: Haavard Skinnemoen <haavard.skinnemoen@atmel.com>
      Cc: Magnus Damm <damm@opensource.se>
      Cc: Liam Girdwood <lrg@slimlogic.co.uk>
      Cc: Joe Perches <joe@perches.com>
      Cc: Roland Dreier <rdreier@cisco.com>
      Signed-off-by: NDan Williams <dan.j.williams@intel.com>
      c3635c78
  17. 23 3月, 2010 4 次提交
  18. 15 3月, 2010 1 次提交
  19. 10 3月, 2010 1 次提交
    • P
      serial: sh-sci: clkdev updates for MSTP gating. · c7ed1ab3
      Paul Mundt 提交于
      This fixes up some of the I/D/F clock ambiguity in the sh-sci driver.
      The interface clock in most cases just wraps back to the peripheral
      clock, while the function clock wraps in to the MSTP bits. As the logic
      was somewhat inverted, this cleans that up, and also enables all CPUs
      with SCI MSTP bits to match function clocks through clkdev lookup.
      
      As a result, this gets rid of the clk string abuse on the sh side, and
      the clock string will be killed off once the ARM code has had a chance to
      sync up. This also enables MSTP gating on CPUs like 7786 which had never
      wired it up before. Impacted CPUs are primarily all SH-Mobiles, SH7785,
      and SH7786.
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      c7ed1ab3
  20. 02 3月, 2010 2 次提交
  21. 15 1月, 2010 1 次提交
  22. 24 12月, 2009 2 次提交
  23. 16 12月, 2009 1 次提交
  24. 15 12月, 2009 1 次提交
  25. 04 12月, 2009 1 次提交
  26. 25 11月, 2009 2 次提交