All of lore.kernel.org
 help / color / mirror / Atom feed
From: Geert Uytterhoeven <geert@linux-m68k.org>
To: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Cc: Linus Walleij <linus.walleij@linaro.org>,
	Linux-Renesas <linux-renesas-soc@vger.kernel.org>,
	"open list:GPIO SUBSYSTEM" <linux-gpio@vger.kernel.org>
Subject: Re: [PATCH 0/3] pinctrl: renesas: r8a779g0: Add pins, groups and functions
Date: Fri, 3 Jun 2022 11:12:45 +0200	[thread overview]
Message-ID: <CAMuHMdUWCjFRnjVDzrjDh4ODDyh5hV5zdM9o4i20c4mLXhNpHg@mail.gmail.com> (raw)
In-Reply-To: <87mteu49tm.wl-kuninori.morimoto.gx@renesas.com>

Hi Morimoto-san,

On Fri, Jun 3, 2022 at 7:04 AM Kuninori Morimoto
<kuninori.morimoto.gx@renesas.com> wrote:
> These are for V4H (r8a779g0) pinctrl patches.
>
> I have separate new macro definition from original patch [1/3].
> I have cleanuped original initial patch, and merged its fixup patch [2/3].
> I have merged original many device settings patches into one [3/3].
>
>   [1/3] pinctrl: renesas: Add PORT_GP_CFG_13 macros
>   [2/3] pinctrl: renesas: Initial R8A779G0 (V4H) PFC support
>   [3/3] pinctrl: renesas: r8a779g0: Add pins, groups and functions

Thanks for your series!

Here's a first set of quick comments. More will follow later.

Note that this does not apply cleanly against renesas-pinctrl, as
drivers/pinctrl/renesas/Kconfig has received some changes in the
meantime.

Please fix the following issues reported by scripts/checkpatch.pl:
  - code indent should use tabs where possible,
  - please, no spaces at the start of a line,
  - please, no space before tabs.

Please enable CONFIG_DEBUG_PINCTRL=y to run the sh-pfc checker (this
works even when running on another Renesas platform than R-Car V4H;
all included drivers will be checked), and fix the issues reported:

    r8a779g0_pfc: pin GP_1_23: SH_PFC_PIN_CFG_IO_VOLTAGE set but
invalid pin_to_pocctrl()
    r8a779g0_pfc: pin GP_1_24: SH_PFC_PIN_CFG_IO_VOLTAGE set but
invalid pin_to_pocctrl()
    r8a779g0_pfc: pin GP_1_25: SH_PFC_PIN_CFG_IO_VOLTAGE set but
invalid pin_to_pocctrl()
    r8a779g0_pfc: pin GP_1_26: SH_PFC_PIN_CFG_IO_VOLTAGE set but
invalid pin_to_pocctrl()
    r8a779g0_pfc: pin GP_1_27: SH_PFC_PIN_CFG_IO_VOLTAGE set but
invalid pin_to_pocctrl()
    r8a779g0_pfc: pin GP_1_28: SH_PFC_PIN_CFG_IO_VOLTAGE set but
invalid pin_to_pocctrl()
    r8a779g0_pfc: pin GP_3_19: SH_PFC_PIN_CFG_DRIVE_STRENGTH flag set
but not in drive_regs
    r8a779g0_pfc: pin GP_4_0: SH_PFC_PIN_CFG_IO_VOLTAGE not set but
valid pin_to_pocctrl()
    r8a779g0_pfc: pin GP_5_0: SH_PFC_PIN_CFG_IO_VOLTAGE not set but
valid pin_to_pocctrl()
    r8a779g0_pfc: pin GP_5_20: SH_PFC_PIN_CFG_PULL_UP flag set but pin
not in bias_regs
    r8a779g0_pfc: pin GP_5_20: SH_PFC_PIN_CFG_PULL_DOWN flag set but
pin not in bias_regs
    r8a779g0_pfc: pin GP_6_0: SH_PFC_PIN_CFG_IO_VOLTAGE not set but
valid pin_to_pocctrl()
    r8a779g0_pfc: pin GP_7_0: SH_PFC_PIN_CFG_IO_VOLTAGE not set but
valid pin_to_pocctrl()
    r8a779g0_pfc: drive_reg 0xe6058888:5/0xe6058888:4: pin conflict
    r8a779g0_pfc: bias_reg 0xe60608c0:20/0xe60608c0:19: pin conflict
    r8a779g0_pfc: bias_reg 0xe60608e0:20/0xe60608e0:19: pin conflict

It is also a good idea to follow the suggestions about pin group subsets
and reserved fields, as that will reduce table sizes:

    r8a779g0_pfc: group mmc_data1 is a subset of mmc_data4
    r8a779g0_pfc: group mmc_data1 is a subset of mmc_data8
    r8a779g0_pfc: group mmc_data4 is a subset of mmc_data8
    r8a779g0_pfc: group qspi0_data2 is a subset of qspi0_data4
    r8a779g0_pfc: group qspi1_data2 is a subset of qspi1_data4
    r8a779g0_pfc: reg 0xe6050040 can be described with variable-width
reserved fields
    r8a779g0_pfc: reg 0xe6058040 can be described with variable-width
reserved fields
    r8a779g0_pfc: reg 0xe6060840 can be described with variable-width
reserved fields
    r8a779g0_pfc: reg 0xe6061040 can be described with variable-width
reserved fields
    r8a779g0_pfc: reg 0xe6061840 can be described with variable-width
reserved fields
    r8a779g0_pfc: reg 0xe6068040 can be described with variable-width
reserved fields
    r8a779g0_pfc: reg 0xe6050068 can be described with variable-width
reserved fields
    r8a779g0_pfc: reg 0xe605086c can be described with variable-width
reserved fields
    r8a779g0_pfc: reg 0xe6058068 can be described with variable-width
reserved fields
    r8a779g0_pfc: reg 0xe605886c can be described with variable-width
reserved fields
    r8a779g0_pfc: reg 0xe6061068 can be described with variable-width
reserved fields
    r8a779g0_pfc: reg 0xe6061868 can be described with variable-width
reserved fields
    r8a779g0_pfc: reg 0xe6068064 can be described with variable-width
reserved fields
    r8a779g0_pfc: reg 0xe6060100: field [0:3] can be described as reserved
    r8a779g0_pfc: reg 0xe6060100: field [4:7] can be described as reserved
    r8a779g0_pfc: reg 0xe6060100: field [8:11] can be described as reserved
    r8a779g0_pfc: reg 0xe6060100: field [14:15] can be described as reserved
    r8a779g0_pfc: reg 0xe6060100: field [18:18] can be described as reserved
    r8a779g0_pfc: reg 0xe6060100: field [20:21] can be described as reserved
    r8a779g0_pfc: reg 0xe6060100: field [24:25] can be described as reserved
    r8a779g0_pfc: reg 0xe6060100: field [27:28] can be described as reserved
    r8a779g0_pfc: reg 0xe6060100: field [31:31] can be described as reserved
    r8a779g0_pfc: reg 0xe6060900: field [0:3] can be described as reserved
    r8a779g0_pfc: reg 0xe6060900: field [4:7] can be described as reserved
    r8a779g0_pfc: reg 0xe6060900: field [8:11] can be described as reserved
    r8a779g0_pfc: reg 0xe6060900: field [13:14] can be described as reserved
    r8a779g0_pfc: reg 0xe6060900: field [17:18] can be described as reserved
    r8a779g0_pfc: reg 0xe6060900: field [21:22] can be described as reserved
    r8a779g0_pfc: reg 0xe6060900: field [24:24] can be described as reserved
    r8a779g0_pfc: reg 0xe6060900: field [27:28] can be described as reserved
    r8a779g0_pfc: reg 0xe6060900: field [30:30] can be described as reserved
    r8a779g0_pfc: reg 0xe6061100: field [0:3] can be described as reserved
    r8a779g0_pfc: reg 0xe6061100: field [4:7] can be described as reserved
    r8a779g0_pfc: reg 0xe6061100: field [8:11] can be described as reserved
    r8a779g0_pfc: reg 0xe6061100: field [12:12] can be described as reserved
    r8a779g0_pfc: reg 0xe6061100: field [14:14] can be described as reserved
    r8a779g0_pfc: reg 0xe6061100: field [16:17] can be described as reserved
    r8a779g0_pfc: reg 0xe6061100: field [20:20] can be described as reserved
    r8a779g0_pfc: reg 0xe6061100: field [22:23] can be described as reserved
    r8a779g0_pfc: reg 0xe6061100: field [27:28] can be described as reserved
    r8a779g0_pfc: reg 0xe6061100: field [31:31] can be described as reserved
    r8a779g0_pfc: reg 0xe6061900: field [0:3] can be described as reserved
    r8a779g0_pfc: reg 0xe6061900: field [4:7] can be described as reserved
    r8a779g0_pfc: reg 0xe6061900: field [8:11] can be described as reserved
    r8a779g0_pfc: reg 0xe6061900: field [12:13] can be described as reserved
    r8a779g0_pfc: reg 0xe6061900: field [14:14] can be described as reserved
    r8a779g0_pfc: reg 0xe6061900: field [17:17] can be described as reserved
    r8a779g0_pfc: reg 0xe6061900: field [19:19] can be described as reserved
    r8a779g0_pfc: reg 0xe6061900: field [22:23] can be described as reserved
    r8a779g0_pfc: reg 0xe6061900: field [26:27] can be described as reserved
    r8a779g0_pfc: reg 0xe6061900: field [30:30] can be described as reserved
    r8a779g0_pfc: reg 0xe6068100: field [0:3] can be described as reserved
    r8a779g0_pfc: reg 0xe6068100: field [4:7] can be described as reserved
    r8a779g0_pfc: reg 0xe6068100: field [8:11] can be described as reserved
    r8a779g0_pfc: reg 0xe6068100: field [12:15] can be described as reserved
    r8a779g0_pfc: reg 0xe6068100: field [16:19] can be described as reserved

Thanks!

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

  parent reply	other threads:[~2022-06-03  9:13 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-03  5:04 [PATCH 0/3] pinctrl: renesas: r8a779g0: Add pins, groups and functions Kuninori Morimoto
2022-06-03  5:04 ` [PATCH 1/3] pinctrl: renesas: Add PORT_GP_CFG_13 macros Kuninori Morimoto
2022-06-03  9:00   ` Geert Uytterhoeven
2022-06-03  5:04 ` [PATCH 2/3] pinctrl: renesas: Initial R8A779G0 (V4H) PFC support Kuninori Morimoto
2022-06-03  5:04 ` [PATCH] pinctrl: renesas: r8a779g0: Add pins, groups and functions Kuninori Morimoto
2022-06-03  9:12 ` Geert Uytterhoeven [this message]
2022-06-05 23:37   ` [PATCH 0/3] " Kuninori Morimoto
2022-06-06  1:03     ` Kuninori Morimoto
2022-06-06  9:17       ` 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=CAMuHMdUWCjFRnjVDzrjDh4ODDyh5hV5zdM9o4i20c4mLXhNpHg@mail.gmail.com \
    --to=geert@linux-m68k.org \
    --cc=kuninori.morimoto.gx@renesas.com \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.