linux-sh.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 00/29] Add OF support to the sh-sci serial port driver
@ 2013-11-19 14:02 Laurent Pinchart
  2013-11-19 14:02 ` [PATCH v3 01/29] serial: sh-sci: Sort headers alphabetically Laurent Pinchart
                   ` (29 more replies)
  0 siblings, 30 replies; 43+ messages in thread
From: Laurent Pinchart @ 2013-11-19 14:02 UTC (permalink / raw)
  To: linux-sh; +Cc: linux-serial, Bastian Hecht, Paul Mundt

Hello,

This is the third version of the patch set adds device tree bindings for the
sh sci serial port devices and adds OF parsing to the sh-sci driver.

The bindings are based on Bastian Hecht's proposal (see
http://www.spinics.net/lists/arm-kernel/msg228129.html). The approach taken
here is more minimalistic: instead of describing all hardware characteristics
that vary between the SCI device revisions in DT (such as registers layout),
that information is stored in the driver and selected based on the compatible
property value. Only SCI revisions used on ARM devices are supported through
DT, as DT support for SuperH is nowhere down the line.

Patches 01/29 to 06/29 clean up the sh-sci driver. Patches 07/29 to 27/29
replace memory and interrupt resources passed through platform data with
platform resources. Beside replacing a custom mechanism with a standard one,
it will also make the DT parsing code simpler as resource allocation will be
shared between DT and non-DT code paths. Finally, patches 28/29 to 29/29 add
OF parsing to the sh-sci driver and create DT bindings documentation.

The patches have been test on a Lager board (r8a7790-based) and a Koelsch board
(r8a7791-based). Support for other SoCs will be added as needed. Note that all
current Renesas ARM SoCs seem to be compatible with the generic (H)SCI(F)(AB)
devices, but the plan is for their DT bindings to list the SoC-specific version
in case incompatibilities are found later.

The series will need to be split in three parts to go to mainline. Patches
01/29 to 07/29 should go through Greg's tree, patches 08/29 to 26/29 through
Simon's tree, and patches 27/29 to 29/29 through Greg's tree again. Greg, when
applying the first seven patches, could you please provide a stable branch for
Simon to base his branch on (I can send you a pull request rebased on top of
v3.13-rc1 if that can help) ? Simon will in turn provide a stable branch to
base the last three patches on.

Changes compared to v2:

- Fix indentation in 12/29
- Remove interrupt-parent property from the DT bindings documentation
- Remove -generic suffix from DT compatible values
- Reword the DT bindings documentation based on comments received on v2
- Added r8a7791 support to the DT bindings

Changes compared to v1:

- Patches 04/29 to 27/29 have been added
- Multi-interrupt support has been removed from the DT bindings as they don't
  support any SoC requiring multi-interrupt yet

Cc: devicetree@vger.kernel.org

Bastian Hecht (1):
  serial: sh-sci: Add OF support

Laurent Pinchart (28):
  serial: sh-sci: Sort headers alphabetically
  serial: sh-sci: Remove baud rate calculation algorithm 5
  serial: sh-sci: Simplify baud rate calculation algorithms
  serial: sh-sci: Remove duplicate interrupt check in verify port op
  serial: sh-sci: Set the UPF_FIXED_PORT flag
  serial: sh-sci: Don't check IRQ in verify port operation
  serial: sh-sci: Support resources passed through platform resources
  ARM: shmobile: sh7372: Use macros to declare SCIF devices
  ARM: shmobile: sh73a0: Use macros to declare SCIF devices
  ARM: shmobile: r8a7740: Use macros to declare SCIF devices
  ARM: shmobile: r8a7779: Use macros to declare SCIF devices
  ARM: shmobile: r7s72100: Don't define SCIF platform data in an array
  ARM: shmobile: r8a73a4: Don't define SCIF platform data in an array
  ARM: shmobile: r8a7778: Don't define SCIF platform data in an array
  ARM: shmobile: r8a7790: Don't define SCIF platform data in an array
  ARM: shmobile: r8a7791: Don't define SCIF platform data in an array
  ARM: shmobile: sh7372: Declare SCIF register base and IRQ as resources
  ARM: shmobile: sh73a0: Declare SCIF register base and IRQ as resources
  ARM: shmobile: r7s72100: Declare SCIF register base and IRQ as
    resources
  ARM: shmobile: r8a73a4: Declare SCIF register base and IRQ as
    resources
  ARM: shmobile: r8a7740: Declare SCIF register base and IRQ as
    resources
  ARM: shmobile: r8a7778: Declare SCIF register base and IRQ as
    resources
  ARM: shmobile: r8a7779: Declare SCIF register base and IRQ as
    resources
  ARM: shmobile: r8a7790: Declare SCIF register base and IRQ as
    resources
  ARM: shmobile: r8a7791: Declare SCIF register base and IRQ as
    resources
  sh: Declare SCIF register base and IRQ as resources
  serial: sh-sci: Remove platform data mapbase and irqs fields
  serial: sh-sci: Add device tree bindings documentation

 .../bindings/serial/renesas,sci-serial.txt         |  46 ++++
 arch/arm/mach-shmobile/setup-r7s72100.c            |  63 +++---
 arch/arm/mach-shmobile/setup-r8a73a4.c             |  65 +++---
 arch/arm/mach-shmobile/setup-r8a7740.c             | 196 +++--------------
 arch/arm/mach-shmobile/setup-r8a7778.c             |  45 ++--
 arch/arm/mach-shmobile/setup-r8a7779.c             | 129 +++--------
 arch/arm/mach-shmobile/setup-r8a7790.c             | 117 +++++-----
 arch/arm/mach-shmobile/setup-r8a7791.c             | 130 +++++------
 arch/arm/mach-shmobile/setup-sh7372.c              | 161 +++-----------
 arch/arm/mach-shmobile/setup-sh73a0.c              | 192 +++--------------
 arch/sh/kernel/cpu/sh2/setup-sh7619.c              |  27 ++-
 arch/sh/kernel/cpu/sh2a/setup-mxg.c                |   9 +-
 arch/sh/kernel/cpu/sh2a/setup-sh7201.c             |  72 +++++--
 arch/sh/kernel/cpu/sh2a/setup-sh7203.c             |  36 +++-
 arch/sh/kernel/cpu/sh2a/setup-sh7206.c             |  36 +++-
 arch/sh/kernel/cpu/sh2a/setup-sh7264.c             |  96 +++++++--
 arch/sh/kernel/cpu/sh2a/setup-sh7269.c             |  96 +++++++--
 arch/sh/kernel/cpu/sh3/setup-sh7705.c              |  18 +-
 arch/sh/kernel/cpu/sh3/setup-sh770x.c              |  27 ++-
 arch/sh/kernel/cpu/sh3/setup-sh7710.c              |  18 +-
 arch/sh/kernel/cpu/sh3/setup-sh7720.c              |  18 +-
 arch/sh/kernel/cpu/sh4/setup-sh4-202.c             |  15 +-
 arch/sh/kernel/cpu/sh4/setup-sh7750.c              |  18 +-
 arch/sh/kernel/cpu/sh4/setup-sh7760.c              |  58 +++--
 arch/sh/kernel/cpu/sh4a/setup-sh7343.c             |  36 +++-
 arch/sh/kernel/cpu/sh4a/setup-sh7366.c             |   9 +-
 arch/sh/kernel/cpu/sh4a/setup-sh7722.c             |  27 ++-
 arch/sh/kernel/cpu/sh4a/setup-sh7723.c             |  54 +++--
 arch/sh/kernel/cpu/sh4a/setup-sh7724.c             |  54 +++--
 arch/sh/kernel/cpu/sh4a/setup-sh7734.c             |  66 ++++--
 arch/sh/kernel/cpu/sh4a/setup-sh7757.c             |  27 ++-
 arch/sh/kernel/cpu/sh4a/setup-sh7763.c             |  27 ++-
 arch/sh/kernel/cpu/sh4a/setup-sh7770.c             |  90 ++++++--
 arch/sh/kernel/cpu/sh4a/setup-sh7780.c             |  18 +-
 arch/sh/kernel/cpu/sh4a/setup-sh7785.c             |  54 +++--
 arch/sh/kernel/cpu/sh4a/setup-sh7786.c             |  82 +++++--
 arch/sh/kernel/cpu/sh4a/setup-shx3.c               |  45 ++--
 arch/sh/kernel/cpu/sh5/setup-sh5.c                 |  11 +-
 drivers/tty/serial/sh-sci.c                        | 238 ++++++++++++++++-----
 include/linux/serial_sci.h                         |  35 +--
 40 files changed, 1447 insertions(+), 1114 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/serial/renesas,sci-serial.txt

-- 
Regards,

Laurent Pinchart


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

end of thread, other threads:[~2013-12-20  1:48 UTC | newest]

Thread overview: 43+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-11-19 14:02 [PATCH v3 00/29] Add OF support to the sh-sci serial port driver Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 01/29] serial: sh-sci: Sort headers alphabetically Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 02/29] serial: sh-sci: Remove baud rate calculation algorithm 5 Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 03/29] serial: sh-sci: Simplify baud rate calculation algorithms Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 04/29] serial: sh-sci: Remove duplicate interrupt check in verify port op Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 05/29] serial: sh-sci: Set the UPF_FIXED_PORT flag Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 06/29] serial: sh-sci: Don't check IRQ in verify port operation Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 07/29] serial: sh-sci: Support resources passed through platform resources Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 08/29] ARM: shmobile: sh7372: Use macros to declare SCIF devices Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 09/29] ARM: shmobile: sh73a0: " Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 10/29] ARM: shmobile: r8a7740: " Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 11/29] ARM: shmobile: r8a7779: " Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 12/29] ARM: shmobile: r7s72100: Don't define SCIF platform data in an array Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 13/29] ARM: shmobile: r8a73a4: " Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 14/29] ARM: shmobile: r8a7778: " Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 15/29] ARM: shmobile: r8a7790: " Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 16/29] ARM: shmobile: r8a7791: " Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 17/29] ARM: shmobile: sh7372: Declare SCIF register base and IRQ as resources Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 18/29] ARM: shmobile: sh73a0: " Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 19/29] ARM: shmobile: r7s72100: " Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 20/29] ARM: shmobile: r8a73a4: " Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 21/29] ARM: shmobile: r8a7740: " Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 22/29] ARM: shmobile: r8a7778: " Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 23/29] ARM: shmobile: r8a7779: " Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 24/29] ARM: shmobile: r8a7790: " Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 25/29] ARM: shmobile: r8a7791: " Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 26/29] sh: " Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 27/29] serial: sh-sci: Remove platform data mapbase and irqs fields Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 28/29] serial: sh-sci: Add device tree bindings documentation Laurent Pinchart
2013-11-19 14:02 ` [PATCH v3 29/29] serial: sh-sci: Add OF support Laurent Pinchart
2013-11-21  4:40 ` [PATCH v3 00/29] Add OF support to the sh-sci serial port driver Simon Horman
2013-11-21  7:17   ` Laurent Pinchart
2013-12-03 18:09     ` Greg KH
2013-12-03 18:28       ` Laurent Pinchart
2013-12-05  3:33         ` Simon Horman
2013-12-05  5:53           ` Laurent Pinchart
2013-12-05  7:03             ` Simon Horman
2013-12-05 10:13               ` Laurent Pinchart
2013-12-05 14:38                 ` Simon Horman
2013-12-09 18:59               ` Olof Johansson
2013-12-09 23:42                 ` Simon Horman
2013-12-10  1:03                   ` Laurent Pinchart
2013-12-20  1:48                   ` Laurent Pinchart

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