Re: [V5 04/10] dt-bindings: timestamp: Add nvidia,gpio-controller

From: Rob Herring
Date: Wed Apr 12 2023 - 10:29:18 EST


On Thu, Apr 06, 2023 at 10:18:31AM -0700, Dipen Patel wrote:
> The tegra always-on (AON) GPIO HTE/GTE provider depends on the AON
> GPIO controller where it needs to do namespace conversion between GPIO
> line number (belonging to AON GPIO controller instance) and the GTE
> slice bits. The patch introduces nvidia,gpio-controller property to
> represent that dependency.
>
> Signed-off-by: Dipen Patel <dipenp@xxxxxxxxxx>
> Reviewed-by: Linus Walleij <linus.walleij@xxxxxxxxxx>
> ---
> .../timestamp/nvidia,tegra194-hte.yaml | 36 ++++++++++++++++---
> 1 file changed, 31 insertions(+), 5 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/timestamp/nvidia,tegra194-hte.yaml b/Documentation/devicetree/bindings/timestamp/nvidia,tegra194-hte.yaml
> index 855dad3f2023..66eaa3fab8cc 100644
> --- a/Documentation/devicetree/bindings/timestamp/nvidia,tegra194-hte.yaml
> +++ b/Documentation/devicetree/bindings/timestamp/nvidia,tegra194-hte.yaml
> @@ -51,6 +51,12 @@ properties:
> LIC instance has 11 slices and Tegra234 LIC has 17 slices.
> enum: [3, 11, 17]
>
> + nvidia,gpio-controller:
> + $ref: /schemas/types.yaml#/definitions/phandle
> + description:
> + The phandle to AON gpio controller instance. This is required to handle
> + namespace conversion between GPIO and GTE.
> +
> '#timestamp-cells':
> description:
> This represents number of line id arguments as specified by the
> @@ -59,6 +65,12 @@ properties:
> mentioned in the nvidia GPIO device tree binding document.
> const: 1
>
> +required:
> + - compatible
> + - reg
> + - interrupts
> + - "#timestamp-cells"
> +
> allOf:
> - if:
> properties:
> @@ -94,11 +106,15 @@ allOf:
> nvidia,slices:
> const: 17
>
> -required:
> - - compatible
> - - reg
> - - interrupts
> - - "#timestamp-cells"
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - nvidia,tegra234-gte-aon
> + then:
> + required:
> + - nvidia,gpio-controller

Adding a new required property is an ABI break. But you just added this
in patch 2. If this is required as part of nvidia,tegra234-gte-aon
support, then it should all be 1 patch.

>
> additionalProperties: false
>
> @@ -112,6 +128,16 @@ examples:
> #timestamp-cells = <1>;
> };
>
> + - |
> + tegra234_hte_aon: timestamp@c1e0000 {
> + compatible = "nvidia,tegra234-gte-aon";
> + reg = <0xc1e0000 0x10000>;
> + interrupts = <0 13 0x4>;
> + nvidia,int-threshold = <1>;
> + nvidia,gpio-controller = <&gpio_aon>;
> + #timestamp-cells = <1>;
> + };
> +

Really need a whole other example for 1 property?

> - |
> tegra_hte_lic: timestamp@3aa0000 {
> compatible = "nvidia,tegra194-gte-lic";
> --
> 2.17.1
>