linux-gpio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/60] pinctrl: renesas: Share more pin group data
@ 2021-12-23 14:41 Geert Uytterhoeven
  2021-12-23 14:41 ` [PATCH 01/60] pinctrl: renesas: r8a77470: Reduce size for narrow VIN1 channel Geert Uytterhoeven
                   ` (59 more replies)
  0 siblings, 60 replies; 61+ messages in thread
From: Geert Uytterhoeven @ 2021-12-23 14:41 UTC (permalink / raw)
  To: Linus Walleij; +Cc: linux-renesas-soc, linux-gpio, Geert Uytterhoeven

	Hi Linus,

It is fairly common for the pins in a pin group to be a subset of the
pins in another pin group, e.g. in case of resizable buses.  Currently
we have support for sharing pin data for VIN (video-in), where the
number of data lanes used can be varied.

This patch series, after a few customary cleanups, adds the
infastructure for defining pin groups that share pin data with another
group, either as an arbitrary subset, or as a resizable bus, and
converts lots of existing pin groups to make use of this.  This not only
saves memory, but also makes it easier to review future support for new
SoCs and for new pin groups on existing SoCs.

This reduces kernel size for a kernel including all Renesas pin control
drivers by ca. 5 KiB.

If accepted, I intend to queue this in renesas-pinctrl for v5.18.
Thanks for your comments!

Geert Uytterhoeven (60):
  pinctrl: renesas: r8a77470: Reduce size for narrow VIN1 channel
  pinctrl: renesas: Rename sh_pfc_soc_operations instances
  pinctrl: renesas: Reformat macros defining struct initializers
  pinctrl: renesas: Rename SH_PFC_PIN_GROUP{,_ALIAS} args
  pinctrl: renesas: Add generic support for pin group subsets
  pinctrl: renesas: Add generic support for resizable buses
  pinctrl: renesas: r8a7740: Share BSC pin group data
  pinctrl: renesas: emev2: Share CF pin group data
  pinctrl: renesas: r8a7791: Share HSCIF1 pin group data
  pinctrl: renesas: sh73a0: Share KEYIN pin group data
  pinctrl: renesas: r8a7740: Share LCD pin group data
  pinctrl: renesas: sh73a0: Share LCD pin group data
  pinctrl: renesas: r8a73a4: Share MMC pin group data
  pinctrl: renesas: r8a7740: Share MMC pin group data
  pinctrl: renesas: r8a77470: Share MMC pin group data
  pinctrl: renesas: r8a7778: Share MMC pin group data
  pinctrl: renesas: r8a7779: Share MMC pin group data
  pinctrl: renesas: r8a7790: Share MMC pin group data
  pinctrl: renesas: r8a7791: Share MMC pin group data
  pinctrl: renesas: r8a7794: Share MMC pin group data
  pinctrl: renesas: r8a77970: Share MMC pin group data
  pinctrl: renesas: r8a77980: Share MMC pin group data
  pinctrl: renesas: r8a77995: Share MMC pin group data
  pinctrl: renesas: r8a779a0: Share MMC pin group data
  pinctrl: renesas: sh73a0: Share MMC pin group data
  pinctrl: renesas: r8a77470: Share QSPI pin group data
  pinctrl: renesas: r8a7790: Share QSPI pin group data
  pinctrl: renesas: r8a7791: Share QSPI pin group data
  pinctrl: renesas: r8a7792: Share QSPI pin group data
  pinctrl: renesas: r8a7794: Share QSPI pin group data
  pinctrl: renesas: r8a77950: Share QSPI pin group data
  pinctrl: renesas: r8a77951: Share QSPI pin group data
  pinctrl: renesas: r8a77965: Share QSPI pin group data
  pinctrl: renesas: r8a7796: Share QSPI pin group data
  pinctrl: renesas: r8a77990: Share QSPI pin group data
  pinctrl: renesas: r8a779a0: Share QSPI pin group data
  pinctrl: renesas: r8a77970: Share RPC pin group data
  pinctrl: renesas: r8a77980: Share RPC pin group data
  pinctrl: renesas: r8a73a4: Share SDHI pin group data
  pinctrl: renesas: r8a7740: Share SDHI pin group data
  pinctrl: renesas: r8a77470: Share SDHI pin group data
  pinctrl: renesas: r8a7778: Share SDHI pin group data
  pinctrl: renesas: r8a7779: Share SDHI pin group data
  pinctrl: renesas: r8a7790: Share SDHI pin group data
  pinctrl: renesas: r8a7791: Share SDHI pin group data
  pinctrl: renesas: r8a7792: Share SDHI pin group data
  pinctrl: renesas: r8a7794: Share SDHI pin group data
  pinctrl: renesas: r8a77950: Share SDHI pin group data
  pinctrl: renesas: r8a77951: Share SDHI pin group data
  pinctrl: renesas: r8a77965: Share SDHI pin group data
  pinctrl: renesas: r8a7796: Share SDHI pin group data
  pinctrl: renesas: r8a77990: Share SDHI pin group data
  pinctrl: renesas: sh73a0: Share SDHI pin group data
  pinctrl: renesas: emev2: Share SDI pin group data
  pinctrl: renesas: r8a7790: Share USB1 pin group data
  pinctrl: renesas: r8a7790: Share more VIN pin group data
  pinctrl: renesas: r8a77951: Share more VIN pin group data
  pinctrl: renesas: r8a7796: Share more VIN pin group data
  pinctrl: renesas: r8a77965: Share more VIN pin group data
  pinctrl: renesas: r8a77990: Share more VIN pin group data

 drivers/pinctrl/renesas/pfc-emev2.c    |  71 +---
 drivers/pinctrl/renesas/pfc-r8a73a4.c  |  93 ++---
 drivers/pinctrl/renesas/pfc-r8a7740.c  | 276 +++-----------
 drivers/pinctrl/renesas/pfc-r8a77470.c | 237 +++++-------
 drivers/pinctrl/renesas/pfc-r8a7778.c  |  69 ++--
 drivers/pinctrl/renesas/pfc-r8a7779.c  | 110 ++----
 drivers/pinctrl/renesas/pfc-r8a7790.c  | 483 ++++++++++---------------
 drivers/pinctrl/renesas/pfc-r8a7791.c  | 285 ++++++---------
 drivers/pinctrl/renesas/pfc-r8a7792.c  | 446 +++++++++++------------
 drivers/pinctrl/renesas/pfc-r8a7794.c  | 209 ++++-------
 drivers/pinctrl/renesas/pfc-r8a77950.c | 116 ++----
 drivers/pinctrl/renesas/pfc-r8a77951.c | 310 ++++++----------
 drivers/pinctrl/renesas/pfc-r8a7796.c  | 312 ++++++----------
 drivers/pinctrl/renesas/pfc-r8a77965.c | 330 ++++++-----------
 drivers/pinctrl/renesas/pfc-r8a77970.c | 162 +++------
 drivers/pinctrl/renesas/pfc-r8a77980.c | 190 ++++------
 drivers/pinctrl/renesas/pfc-r8a77990.c | 308 ++++++----------
 drivers/pinctrl/renesas/pfc-r8a77995.c |  98 ++---
 drivers/pinctrl/renesas/pfc-r8a779a0.c |  60 +--
 drivers/pinctrl/renesas/pfc-sh73a0.c   | 265 +++-----------
 drivers/pinctrl/renesas/sh_pfc.h       | 161 ++++-----
 21 files changed, 1536 insertions(+), 3055 deletions(-)

-- 
2.25.1

Gr{oetje,eeting}s,

						Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
							    -- Linus Torvalds

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

end of thread, other threads:[~2021-12-23 14:42 UTC | newest]

Thread overview: 61+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-12-23 14:41 [PATCH 00/60] pinctrl: renesas: Share more pin group data Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 01/60] pinctrl: renesas: r8a77470: Reduce size for narrow VIN1 channel Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 02/60] pinctrl: renesas: Rename sh_pfc_soc_operations instances Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 03/60] pinctrl: renesas: Reformat macros defining struct initializers Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 04/60] pinctrl: renesas: Rename SH_PFC_PIN_GROUP{,_ALIAS} args Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 05/60] pinctrl: renesas: Add generic support for pin group subsets Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 06/60] pinctrl: renesas: Add generic support for resizable buses Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 07/60] pinctrl: renesas: r8a7740: Share BSC pin group data Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 08/60] pinctrl: renesas: emev2: Share CF " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 09/60] pinctrl: renesas: r8a7791: Share HSCIF1 " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 10/60] pinctrl: renesas: sh73a0: Share KEYIN " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 11/60] pinctrl: renesas: r8a7740: Share LCD " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 12/60] pinctrl: renesas: sh73a0: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 13/60] pinctrl: renesas: r8a73a4: Share MMC " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 14/60] pinctrl: renesas: r8a7740: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 15/60] pinctrl: renesas: r8a77470: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 16/60] pinctrl: renesas: r8a7778: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 17/60] pinctrl: renesas: r8a7779: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 18/60] pinctrl: renesas: r8a7790: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 19/60] pinctrl: renesas: r8a7791: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 20/60] pinctrl: renesas: r8a7794: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 21/60] pinctrl: renesas: r8a77970: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 22/60] pinctrl: renesas: r8a77980: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 23/60] pinctrl: renesas: r8a77995: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 24/60] pinctrl: renesas: r8a779a0: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 25/60] pinctrl: renesas: sh73a0: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 26/60] pinctrl: renesas: r8a77470: Share QSPI " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 27/60] pinctrl: renesas: r8a7790: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 28/60] pinctrl: renesas: r8a7791: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 29/60] pinctrl: renesas: r8a7792: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 30/60] pinctrl: renesas: r8a7794: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 31/60] pinctrl: renesas: r8a77950: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 32/60] pinctrl: renesas: r8a77951: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 33/60] pinctrl: renesas: r8a77965: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 34/60] pinctrl: renesas: r8a7796: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 35/60] pinctrl: renesas: r8a77990: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 36/60] pinctrl: renesas: r8a779a0: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 37/60] pinctrl: renesas: r8a77970: Share RPC " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 38/60] pinctrl: renesas: r8a77980: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 39/60] pinctrl: renesas: r8a73a4: Share SDHI " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 40/60] pinctrl: renesas: r8a7740: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 41/60] pinctrl: renesas: r8a77470: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 42/60] pinctrl: renesas: r8a7778: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 43/60] pinctrl: renesas: r8a7779: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 44/60] pinctrl: renesas: r8a7790: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 45/60] pinctrl: renesas: r8a7791: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 46/60] pinctrl: renesas: r8a7792: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 47/60] pinctrl: renesas: r8a7794: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 48/60] pinctrl: renesas: r8a77950: " Geert Uytterhoeven
2021-12-23 14:41 ` [PATCH 49/60] pinctrl: renesas: r8a77951: " Geert Uytterhoeven
2021-12-23 14:42 ` [PATCH 50/60] pinctrl: renesas: r8a77965: " Geert Uytterhoeven
2021-12-23 14:42 ` [PATCH 51/60] pinctrl: renesas: r8a7796: " Geert Uytterhoeven
2021-12-23 14:42 ` [PATCH 52/60] pinctrl: renesas: r8a77990: " Geert Uytterhoeven
2021-12-23 14:42 ` [PATCH 53/60] pinctrl: renesas: sh73a0: " Geert Uytterhoeven
2021-12-23 14:42 ` [PATCH 54/60] pinctrl: renesas: emev2: Share SDI " Geert Uytterhoeven
2021-12-23 14:42 ` [PATCH 55/60] pinctrl: renesas: r8a7790: Share USB1 " Geert Uytterhoeven
2021-12-23 14:42 ` [PATCH 56/60] pinctrl: renesas: r8a7790: Share more VIN " Geert Uytterhoeven
2021-12-23 14:42 ` [PATCH 57/60] pinctrl: renesas: r8a77951: " Geert Uytterhoeven
2021-12-23 14:42 ` [PATCH 58/60] pinctrl: renesas: r8a7796: " Geert Uytterhoeven
2021-12-23 14:42 ` [PATCH 59/60] pinctrl: renesas: r8a77965: " Geert Uytterhoeven
2021-12-23 14:42 ` [PATCH 60/60] pinctrl: renesas: r8a77990: " Geert Uytterhoeven

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