mbox series

[v4,0/3] pinctrl: tegra: Add Tegra234 pinmux driver

Message ID 20230602141445.3012550-1-thierry.reding@gmail.com
Headers show
Series pinctrl: tegra: Add Tegra234 pinmux driver | expand

Message

Thierry Reding June 2, 2023, 2:14 p.m. UTC
From: Thierry Reding <treding@nvidia.com>

Hi,

this is an updated version of v3 of the series, which can be found here:

	http://patchwork.ozlabs.org/project/linux-tegra/list/?series=357257

This addresses some comments from Krzysztof on the DT bindings. However,
one change that I didn't make is to remove the list of explicitly
allowed pin group properties. This is so that the common bindings can
define the format of all pin group properties, but the per-SoC bindings
can then decide which ones are allowed for each IP version. I added a
comment to the bindings to explain why this is done.

Changes in v4:
- use unevaluatedProperties for specific bindings and drop unnecessary
  or duplicated properties
- move "$ref" and "required" properties into more standard locations
- use "additionalProperties: true" for common bindings
- only allow valid per-SoC pin group properties

Note that the driver patch applies on top of the function table fix that
I sent out earlier:

	http://patchwork.ozlabs.org/project/linux-tegra/list/?series=357206

Once accepted, patches 1 and 2 can go through the pinctrl tree and I can
pick up patch 3 into the Tegra tree. Alternatively I can also pick up
patch 1 into the Tegra tree to help with validation. We're not quite at
a point yet where the Tegra DTs fully validate, so it doesn't matter
much which way these get applied.

Thanks,
Thierry

Prathamesh Shete (3):
  dt-bindings: pinctrl: Document Tegra234 pin controllers
  pinctrl: tegra: Add Tegra234 pinmux driver
  arm64: tegra: Add Tegra234 pin controllers

 .../pinctrl/nvidia,tegra234-pinmux-aon.yaml   |   59 +
 .../nvidia,tegra234-pinmux-common.yaml        |   66 +
 .../pinctrl/nvidia,tegra234-pinmux.yaml       |  139 ++
 arch/arm64/boot/dts/nvidia/tegra234.dtsi      |   12 +
 drivers/pinctrl/tegra/Kconfig                 |    4 +
 drivers/pinctrl/tegra/Makefile                |    1 +
 drivers/pinctrl/tegra/pinctrl-tegra234.c      | 1969 +++++++++++++++++
 drivers/soc/tegra/Kconfig                     |    1 +
 8 files changed, 2251 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/pinctrl/nvidia,tegra234-pinmux-aon.yaml
 create mode 100644 Documentation/devicetree/bindings/pinctrl/nvidia,tegra234-pinmux-common.yaml
 create mode 100644 Documentation/devicetree/bindings/pinctrl/nvidia,tegra234-pinmux.yaml
 create mode 100644 drivers/pinctrl/tegra/pinctrl-tegra234.c

Comments

Andy Shevchenko June 3, 2023, 10:46 a.m. UTC | #1
Fri, Jun 02, 2023 at 04:14:44PM +0200, Thierry Reding kirjoitti:
> From: Prathamesh Shete <pshete@nvidia.com>
> 
> This change adds support for the two pin controllers found on Tegra234.

I'm not sure why my review got ignored. Did you receive it?

https://lore.kernel.org/linux-gpio/ZHlGTgdsqcGOmVN2@surfacebook/

It seems most of the comments are actual even for this version.
(Yes, you can ignore the struct pingroup usage as it's out of
 the scope of this change, obviously.)