linux-sh.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/19] sh-sci: Platform data simplification
@ 2017-01-03 23:06 Laurent Pinchart
  2017-01-03 23:06 ` [PATCH 01/19] serial: sh-sci: Set the SCSCR TE and RE bits in the driver Laurent Pinchart
                   ` (20 more replies)
  0 siblings, 21 replies; 52+ messages in thread
From: Laurent Pinchart @ 2017-01-03 23:06 UTC (permalink / raw)
  To: linux-renesas-soc; +Cc: linux-sh, linux-serial, Geert Uytterhoeven

Hello,

Most of the patches in this series have been sitting in my development tree
for three years now. While rebasing all my development branches I decided it
was time to send them out in case they're considered useful. I've then thrown
a few additional patches in to move the driver further in the right direction
(or at least the direction I consider right).

The idea behind this series is to move towards removal of the sh-sci platform
data. This won't be possible until SH platforms move to DT (and I won't hold
my breath), but we can get rid of most of the platform data fields already and
cleanup the sh-sci driver at the same time.

The series already removes the capabilities, port_reg, regshift, dma_slave_tx
and dma_slave_rx fields. We should be able to go further:

- The flags field is only used by sh5 to set UPF_IOREMAP. It should be
  possible to find another way to determine in the driver whether to ioremap
  the registers.

- The sampling_rate field is only used by sh7723 and sh7724 to override the
  value hardcoded in the driver, even though the datasheets of those SoCs
  don't mention any restriction. This might not be needed and should be
  investigated.

- The scscr REIE bit should be possible to compute in the driver, as it's set
  for all SCIF ports except SCIx_SH3_SCIF_REGTYPE, SCIx_SH7705_SCIF_REGTYPE,
  and the sh7343 SCIx_SH4_SCIF_REGTYPE. The latter will be trickier to handle.

- Now that we have support for baud rate generators and externel clocks, the
  scscr CKE1 bit should be computed in the driver in all cases.

- The scscr TOIE bit doesn't seem to follow a clear rule, but given that it's
  the last scscr bit to handle I'm sure we'll find something :-)

- It might make sense to merge the type and regtype fields in a single type.

Finally, it might be time to drop support for the SH platforms that would get
in the way of sh-sci cleanup.

Laurent Pinchart (19):
  serial: sh-sci: Set the SCSCR TE and RE bits in the driver
  serial: sh-sci: Don't rely on platform data flags when not needed
  sh: Don't set sh-sci pdata scscr TE and RE bits
  sh: Don't set sh-sci pdata scscr TIE and RIE bits
  sh: sh726[49]: Don't set sh-sci pdata scscr TOIE bit
  sh: Don't set the sh-sci pdata UPF_BOOT_AUTOCONF flags
  sh: Don't set sh-sci port_reg
  sh: sh3: sh770x: Fix platform data for the IRDA serial port
  sh: Don't set the sh-sci platform data regshift field
  sh: Don't set the sh-sci platform data scscr CKE0 bit
  sh: Don't set the sh-sci platform data REIE bit when not implemented
  serial: sh-sci: Remove initialization of zero fields in
    sci_port_params
  serial: sh-sci: Replace regmap array with port parameters
  serial: sh-sci: Constify platform data
  serial: sh-sci: Extend sci_port_params with more port parameters
  serial: sh-sci: Remove the platform data dma slave rx/tx channel IDs
  serial: sh-sci: Remove manual break debouncing
  serial: sh-sci: Remove unused platform data capabilities field
  serial: sh-sci: Compute the regshift value for SCI ports

 arch/sh/kernel/cpu/sh2/setup-sh7619.c  |   9 +-
 arch/sh/kernel/cpu/sh2a/setup-mxg.c    |   3 +-
 arch/sh/kernel/cpu/sh2a/setup-sh7201.c |  24 +-
 arch/sh/kernel/cpu/sh2a/setup-sh7203.c |  16 +-
 arch/sh/kernel/cpu/sh2a/setup-sh7206.c |  12 +-
 arch/sh/kernel/cpu/sh2a/setup-sh7264.c |  32 +-
 arch/sh/kernel/cpu/sh2a/setup-sh7269.c |  32 +-
 arch/sh/kernel/cpu/sh3/setup-sh7705.c  |   6 +-
 arch/sh/kernel/cpu/sh3/setup-sh770x.c  |  12 +-
 arch/sh/kernel/cpu/sh3/setup-sh7710.c  |   8 +-
 arch/sh/kernel/cpu/sh3/setup-sh7720.c  |   4 -
 arch/sh/kernel/cpu/sh4/setup-sh4-202.c |   3 +-
 arch/sh/kernel/cpu/sh4/setup-sh7750.c  |   9 +-
 arch/sh/kernel/cpu/sh4/setup-sh7760.c  |  21 +-
 arch/sh/kernel/cpu/sh4a/setup-sh7343.c |  12 +-
 arch/sh/kernel/cpu/sh4a/setup-sh7366.c |   4 +-
 arch/sh/kernel/cpu/sh4a/setup-sh7722.c |   9 +-
 arch/sh/kernel/cpu/sh4a/setup-sh7723.c |  21 +-
 arch/sh/kernel/cpu/sh4a/setup-sh7724.c |  21 +-
 arch/sh/kernel/cpu/sh4a/setup-sh7734.c |  18 +-
 arch/sh/kernel/cpu/sh4a/setup-sh7757.c |   9 +-
 arch/sh/kernel/cpu/sh4a/setup-sh7763.c |   9 +-
 arch/sh/kernel/cpu/sh4a/setup-sh7770.c |  30 +-
 arch/sh/kernel/cpu/sh4a/setup-sh7780.c |   6 +-
 arch/sh/kernel/cpu/sh4a/setup-sh7785.c |  18 +-
 arch/sh/kernel/cpu/sh4a/setup-sh7786.c |  18 +-
 arch/sh/kernel/cpu/sh4a/setup-shx3.c   |   9 +-
 arch/sh/kernel/cpu/sh5/setup-sh5.c     |   4 +-
 drivers/tty/serial/sh-sci.c            | 831 ++++++++++++++-------------------
 drivers/tty/serial/sh-sci.h            |   4 +-
 include/linux/serial_sci.h             |  15 -
 31 files changed, 449 insertions(+), 780 deletions(-)

-- 
Regards,

Laurent Pinchart


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

end of thread, other threads:[~2017-01-11 20:31 UTC | newest]

Thread overview: 52+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-01-03 23:06 [PATCH 00/19] sh-sci: Platform data simplification Laurent Pinchart
2017-01-03 23:06 ` [PATCH 01/19] serial: sh-sci: Set the SCSCR TE and RE bits in the driver Laurent Pinchart
2017-01-06 10:11   ` Geert Uytterhoeven
2017-01-03 23:06 ` [PATCH 02/19] serial: sh-sci: Don't rely on platform data flags when not needed Laurent Pinchart
2017-01-06 10:11   ` Geert Uytterhoeven
2017-01-03 23:06 ` [PATCH 03/19] sh: Don't set sh-sci pdata scscr TE and RE bits Laurent Pinchart
2017-01-06 10:11   ` Geert Uytterhoeven
2017-01-03 23:06 ` [PATCH 04/19] sh: Don't set sh-sci pdata scscr TIE and RIE bits Laurent Pinchart
2017-01-06 10:11   ` Geert Uytterhoeven
2017-01-03 23:06 ` [PATCH 05/19] sh: sh726[49]: Don't set sh-sci pdata scscr TOIE bit Laurent Pinchart
2017-01-06 10:13   ` Geert Uytterhoeven
2017-01-03 23:06 ` [PATCH 06/19] sh: Don't set the sh-sci pdata UPF_BOOT_AUTOCONF flags Laurent Pinchart
2017-01-06 10:13   ` Geert Uytterhoeven
2017-01-03 23:06 ` [PATCH 07/19] sh: Don't set sh-sci port_reg Laurent Pinchart
2017-01-06 10:17   ` Geert Uytterhoeven
2017-01-03 23:06 ` [PATCH 08/19] sh: sh3: sh770x: Fix platform data for the IRDA serial port Laurent Pinchart
2017-01-06 10:18   ` Geert Uytterhoeven
2017-01-06 10:25     ` Laurent Pinchart
2017-01-06 11:52     ` [PATCH v1.1 08/19] serial: sh-sci: Fix register offsets " Laurent Pinchart
2017-01-11 12:31       ` Geert Uytterhoeven
2017-01-03 23:06 ` [PATCH 09/19] sh: Don't set the sh-sci platform data regshift field Laurent Pinchart
2017-01-06 10:18   ` Geert Uytterhoeven
2017-01-03 23:06 ` [PATCH 10/19] sh: Don't set the sh-sci platform data scscr CKE0 bit Laurent Pinchart
2017-01-06 10:23   ` Geert Uytterhoeven
2017-01-03 23:06 ` [PATCH 11/19] sh: Don't set the sh-sci platform data REIE bit when not implemented Laurent Pinchart
2017-01-06 10:27   ` Geert Uytterhoeven
2017-01-03 23:06 ` [PATCH 12/19] serial: sh-sci: Remove initialization of zero fields in sci_port_params Laurent Pinchart
2017-01-06 10:29   ` Geert Uytterhoeven
2017-01-03 23:06 ` [PATCH 13/19] serial: sh-sci: Replace regmap array with port parameters Laurent Pinchart
2017-01-06 10:36   ` Geert Uytterhoeven
2017-01-03 23:06 ` [PATCH 14/19] serial: sh-sci: Constify platform data Laurent Pinchart
2017-01-06 10:36   ` Geert Uytterhoeven
2017-01-03 23:06 ` [PATCH 15/19] serial: sh-sci: Extend sci_port_params with more port parameters Laurent Pinchart
2017-01-06 10:51   ` Geert Uytterhoeven
2017-01-03 23:06 ` [PATCH 16/19] serial: sh-sci: Remove the platform data dma slave rx/tx channel IDs Laurent Pinchart
2017-01-06 10:53   ` Geert Uytterhoeven
2017-01-03 23:06 ` [PATCH 17/19] serial: sh-sci: Remove manual break debouncing Laurent Pinchart
2017-01-06 10:57   ` Geert Uytterhoeven
2017-01-03 23:06 ` [PATCH 18/19] serial: sh-sci: Remove unused platform data capabilities field Laurent Pinchart
2017-01-06 10:59   ` Geert Uytterhoeven
2017-01-06 11:05     ` Laurent Pinchart
2017-01-03 23:06 ` [PATCH 19/19] serial: sh-sci: Compute the regshift value for SCI ports Laurent Pinchart
2017-01-06 11:00   ` Geert Uytterhoeven
2017-01-06 12:21     ` [PATCH v1.1 " Laurent Pinchart
2017-01-11 12:37       ` Geert Uytterhoeven
2017-01-06 11:01 ` [PATCH 00/19] sh-sci: Platform data simplification Geert Uytterhoeven
2017-01-11  8:04 ` Greg KH
2017-01-11 10:38   ` Geert Uytterhoeven
2017-01-11 10:43     ` Greg KH
2017-01-11 11:06       ` Laurent Pinchart
2017-01-11 20:31         ` Greg KH
2017-01-11 11:03   ` 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).