Re: [PATCH v3 0/8] pinctrl/arm: dt-bindings: deprecate header with register constants

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

 



On Sun, Jun 05, 2022 at 06:05:00PM +0200, Krzysztof Kozlowski wrote:
> Hi,
> 
> Merging
> =======
> 1. I plan to take the DTS changes (patches 1-6) via Samsung SoC tree.
> 2. The driver change (patch 7) can go independently via pinctrl tree or via my
>    Samsung pinctrl tree.
> 3. The final bindings patch 8 will wait for next release, to avoid any cross
>    tree merges or warnings.
> 
> Changes since v2
> ================
> 1. Split last bindings patch per driver changes and bindings.
> 2. Add tags.
> 
> Changes since v1
> ================
> 1. Correct title (in the comment) of each header (Chanho).
> 2. Patch #7: Adjust warning message.
> 3. Add tags.
> 
> Description
> ===========
> The Samsung pin controller drivers were always expecting DTS to use raw
> register values for pin configuration (e.g. pull up/down, drive strength).  DTS
> had these values hard-coded all over, so at some point we decided for
> convenience to move them to dt-bindings header.  Less code duplication, some
> meaning added to raw number, etc.
> 
> However these constants do not fit the purpose of bindings.  They do not
> provide any abstraction, any hardware and driver independent ID.  With minor
> exceptions, the Linux drivers actually do not use the bindings header at
> all.  Because of this "dt-bindings ID" approach, these constants were re-used
> between chips, e.g. Exynos ones in S5PV210.  These does not make much sense
> because the values between Exynos and S5PV210 (or S3C24xx) are not related.  If
> it was an abstraction ID, this would be fine. But it's not.
> 
> Clean this up by:
> 1. Moving the constants to DTS-local headers.
> 2. Deprecating the bindings header.
> 
> Tested by comparing DTBs (dtx_diff, fdtdump).
> 
> Best regards,
> Krzysztof
> 
> Krzysztof Kozlowski (8):
>   ARM: dts: s3c2410: use local header for pinctrl register values
>   ARM: dts: s3c64xx: use local header for pinctrl register values
>   ARM: dts: s5pv210: use local header for pinctrl register values
>   ARM: dts: exynos: use local header for pinctrl register values
>   arm64: dts: exynos: use local header for pinctrl register values
>   arm64: dts: fsd: use local header for pinctrl register values
>   pinctrl: samsung: do not use bindings header with constants
>   dt-bindings: pinctrl: samsung: deprecate header with register
>     constants

For the series:

Acked-by: Rob Herring <robh@xxxxxxxxxx>




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux