Skip to content

RFC pinctrl: samsung: Remove static platform-specific data

Stephen Warren linux-arm-kernel linux-devicetree linux-samsung-soc 1 version New

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 RFC Latest1 of 6 patches 0 repliesNew

1 of 6 patches is in this archive. The cover letter announces 6.

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
6/6ARM: dts: exynos4210: Add platform-specific descriptions for pin controllers+0 -010 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [RFC 0/6] pinctrl: samsung: Remove static platform-specific data
Quoted 2 lines · Tomasz Figa

This RFC series is a work on replacing static platform-specific data in pinctrl-samsung driver with data dynamically parsed from device tree.

Hmm. I tend to think this is exactly the opposite of the correct direction; you end up wasting a whole ton of time during the boot process parsing data out of the device tree only to end up with exactly the same tables that you would have just put into the kernel anyway. Is it really likely that future SoCs will change information such as the width of the pullup/pulldown bitfield, but not change anything else that's not already in this binding. If that isn't the case, the binding won't be complete enough to describe any new features on future SoCs anyway.

Quoted 11 lines

It aims at reducing the SoC-specific part of the driver and thus the amount of modifications to driver sources when adding support for next SoCs (like Exynos4x12).

Furthermore, moving definitions of pin banks to device tree will allow to simplify GPIO and GEINT specification to a format similar to used previously by gpiolib-based implementation, using a phandle to the bank and pin index inside the bank, e.g.

	gpios = <&gpa1 4 0>;
	interrupt-parent = <&gpa1>;
	interrupts = <4 0>;

I don't think those two are correlated; the GPIO specifier format could just as easily be <bank pin> irrespective of whether the pinctrl driver contains SoC-specific tables or not.

Quoted 4 lines

Any comments are welcome.

TODO:
- bindings documentation

That's unfortunate; it would be the most interesting part to review. I guess I'll try to work out the binding from the examples in patch 6.