From: Geert Uytterhoeven <geert+renesas@glider.be>
To: Linus Walleij <linus.walleij@linaro.org>
Cc: linux-renesas-soc@vger.kernel.org, linux-gpio@vger.kernel.org,
Geert Uytterhoeven <geert+renesas@glider.be>
Subject: [PATCH v2 00/10] pinctrl: sh-pfc: Validation and compile-testing
Date: Fri, 25 Jan 2019 17:52:55 +0100 [thread overview]
Message-ID: <20190125165305.8567-1-geert+renesas@glider.be> (raw)
Hi all,
This patch series contains patches to add more validation of Renesas pin
control tables, and to enable compile-testing on non-Renesas platforms.
Preferably, validation is done at build time.
If not possible, it is done at run time, when the driver is initialized,
and debugging is enabled.
Changes compared to v1:
- Convert some checks from run-time to build-time checks,
- Check relations between pin groups and functions,
- Check PINMUX_DATA_REG() enum IDs,
- Split run-time checks in two patches (parts before/after enum ID
absorption), to reduce dependencies,
- Perform run-time checks even when running on non-Renesas platforms,
- Improve compile-test support, and move it to separate patches.
As patches 3-5 are very large, I only included the generic part of each
patch, and a sample for one particular SoC.
The full patch series is available in the topic/sh-pfc-validation-v2
branch of my git repository at
git://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-drivers.git
Thanks for your comments!
Geert Uytterhoeven (10):
pinctrl: sh-pfc: Validate fixed-size field widths at build time
pinctrl: sh-pfc: Validate pinmux tables at runtime when debugging
pinctrl: sh-pfc: Absorb enum IDs in PINMUX_CFG_REG() macro
pinctrl: sh-pfc: Absorb enum IDs in PINMUX_CFG_REG_VAR() macro
pinctrl: sh-pfc: Absorb enum IDs in PINMUX_DATA_REG() macro
pinctrl: sh-pfc: Validate enum IDs for regs with fixed-width fields
pinctrl: sh-pfc: Validate enum IDs for regs with variable-width fields
pinctrl: sh-pfc: Introduce PINCTRL_SH_FUNC_GPIO helper symbol
pinctrl: sh-pfc: Add missing #include <linux/errno.h>
pinctrl: sh-pfc: Allow compile-testing of all drivers
drivers/pinctrl/sh-pfc/Kconfig | 204 +++++++++---------
drivers/pinctrl/sh-pfc/Makefile | 15 ++
drivers/pinctrl/sh-pfc/core.c | 129 ++++++++++++
drivers/pinctrl/sh-pfc/gpio.c | 8 +-
drivers/pinctrl/sh-pfc/pfc-emev2.c | 67 +++---
drivers/pinctrl/sh-pfc/pfc-r8a73a4.c | 64 +++---
drivers/pinctrl/sh-pfc/pfc-r8a7740.c | 56 ++---
drivers/pinctrl/sh-pfc/pfc-r8a77470.c | 136 +++++++-----
drivers/pinctrl/sh-pfc/pfc-r8a7778.c | 101 +++++----
drivers/pinctrl/sh-pfc/pfc-r8a7779.c | 117 ++++++-----
drivers/pinctrl/sh-pfc/pfc-r8a7790.c | 132 +++++++-----
drivers/pinctrl/sh-pfc/pfc-r8a7791.c | 156 ++++++++------
drivers/pinctrl/sh-pfc/pfc-r8a7792.c | 134 ++++++------
drivers/pinctrl/sh-pfc/pfc-r8a7794.c | 127 +++++++-----
drivers/pinctrl/sh-pfc/pfc-r8a7795-es1.c | 125 +++++------
drivers/pinctrl/sh-pfc/pfc-r8a7795.c | 130 ++++++------
drivers/pinctrl/sh-pfc/pfc-r8a7796.c | 130 ++++++------
drivers/pinctrl/sh-pfc/pfc-r8a77965.c | 130 ++++++------
drivers/pinctrl/sh-pfc/pfc-r8a77970.c | 68 +++---
drivers/pinctrl/sh-pfc/pfc-r8a77980.c | 76 +++----
drivers/pinctrl/sh-pfc/pfc-r8a77990.c | 107 +++++-----
drivers/pinctrl/sh-pfc/pfc-r8a77995.c | 98 ++++-----
drivers/pinctrl/sh-pfc/pfc-sh7203.c | 152 +++++++-------
drivers/pinctrl/sh-pfc/pfc-sh7264.c | 232 ++++++++++-----------
drivers/pinctrl/sh-pfc/pfc-sh7269.c | 252 +++++++++++------------
drivers/pinctrl/sh-pfc/pfc-sh73a0.c | 52 ++---
drivers/pinctrl/sh-pfc/pfc-sh7720.c | 144 ++++++-------
drivers/pinctrl/sh-pfc/pfc-sh7722.c | 220 ++++++++++----------
drivers/pinctrl/sh-pfc/pfc-sh7723.c | 200 +++++++++---------
drivers/pinctrl/sh-pfc/pfc-sh7724.c | 204 +++++++++---------
drivers/pinctrl/sh-pfc/pfc-sh7734.c | 140 +++++++------
drivers/pinctrl/sh-pfc/pfc-sh7757.c | 244 +++++++++++-----------
drivers/pinctrl/sh-pfc/pfc-sh7785.c | 136 ++++++------
drivers/pinctrl/sh-pfc/pfc-sh7786.c | 80 +++----
drivers/pinctrl/sh-pfc/pfc-shx3.c | 32 +--
drivers/pinctrl/sh-pfc/sh_pfc.h | 73 ++++---
36 files changed, 2404 insertions(+), 2067 deletions(-)
--
2.17.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
next reply other threads:[~2019-01-25 16:53 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-01-25 16:52 Geert Uytterhoeven [this message]
2019-01-25 16:52 ` [PATCH v2 01/10] pinctrl: sh-pfc: Validate fixed-size field widths at build time Geert Uytterhoeven
2019-01-28 12:27 ` Simon Horman
2019-01-25 16:52 ` [PATCH v2 02/10] pinctrl: sh-pfc: Validate pinmux tables at runtime when debugging Geert Uytterhoeven
2019-02-15 8:17 ` Simon Horman
2019-02-15 8:43 ` Geert Uytterhoeven
2019-01-25 16:52 ` [PATCH v2 03/10 PARTIAL] pinctrl: sh-pfc: Absorb enum IDs in PINMUX_CFG_REG() macro Geert Uytterhoeven
2019-01-25 16:52 ` [PATCH v2 04/10 PARTIAL] pinctrl: sh-pfc: Absorb enum IDs in PINMUX_CFG_REG_VAR() macro Geert Uytterhoeven
2019-01-25 16:53 ` [PATCH v2 05/10 PARTIAL] pinctrl: sh-pfc: Absorb enum IDs in PINMUX_DATA_REG() macro Geert Uytterhoeven
2019-01-25 16:53 ` [PATCH v2 06/10] pinctrl: sh-pfc: Validate enum IDs for regs with fixed-width fields Geert Uytterhoeven
2019-01-25 16:53 ` [PATCH v2 07/10] pinctrl: sh-pfc: Validate enum IDs for regs with variable-width fields Geert Uytterhoeven
2019-01-25 16:53 ` [PATCH v2 08/10] pinctrl: sh-pfc: Introduce PINCTRL_SH_FUNC_GPIO helper symbol Geert Uytterhoeven
2019-01-25 16:53 ` [PATCH v2 09/10] pinctrl: sh-pfc: Add missing #include <linux/errno.h> Geert Uytterhoeven
2019-01-25 16:53 ` [PATCH v2 10/10] pinctrl: sh-pfc: Allow compile-testing of all drivers Geert Uytterhoeven
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190125165305.8567-1-geert+renesas@glider.be \
--to=geert+renesas@glider.be \
--cc=linus.walleij@linaro.org \
--cc=linux-gpio@vger.kernel.org \
--cc=linux-renesas-soc@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).