[PATCH 00/60] pinctrl: renesas: Share more pin group data

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



	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@xxxxxxxxxxxxxx

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



[Index of Archives]     [Linux Samsung SOC]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux