[PATCH v4 1/3] dt-bindings: firmware: arm,scmi: Add properties for i.MX95 Pinctrl OEM extensions

Rob Herring robh at kernel.org
Tue May 7 12:11:33 PDT 2024


On Sun, May 05, 2024 at 11:47:17AM +0800, Peng Fan (OSS) wrote:
> From: Peng Fan <peng.fan at nxp.com>
> 
> i.MX95 Pinctrl is managed by System Control Management Interface(SCMI)
> firmware using OEM extensions. No functions, no groups are provided by
> the firmware. To reuse generic properties, add the binding to enable
> pinmux, slew-rate, bias-pull-up and etc, under a subnode of '-pins'.
> 
> Signed-off-by: Peng Fan <peng.fan at nxp.com>
> ---
>  .../devicetree/bindings/firmware/arm,scmi.yaml     |  9 ++++--
>  .../bindings/firmware/nxp,imx95-scmi-pinctrl.yaml  | 37 ++++++++++++++++++++++
>  2 files changed, 43 insertions(+), 3 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
> index 7de2c29606e5..bd4dfd7a85cd 100644
> --- a/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
> +++ b/Documentation/devicetree/bindings/firmware/arm,scmi.yaml
> @@ -262,9 +262,12 @@ properties:
>      patternProperties:
>        '-pins$':
>          type: object
> -        allOf:
> -          - $ref: /schemas/pinctrl/pincfg-node.yaml#
> -          - $ref: /schemas/pinctrl/pinmux-node.yaml#
> +        anyOf:
> +          - $ref: /schemas/firmware/nxp,imx95-scmi-pinctrl.yaml
> +          - allOf:
> +              - $ref: /schemas/pinctrl/pincfg-node.yaml#
> +              - $ref: /schemas/pinctrl/pinmux-node.yaml#
> +
>          unevaluatedProperties: false
>  
>          description:
> diff --git a/Documentation/devicetree/bindings/firmware/nxp,imx95-scmi-pinctrl.yaml b/Documentation/devicetree/bindings/firmware/nxp,imx95-scmi-pinctrl.yaml
> new file mode 100644
> index 000000000000..1a694881f193
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/firmware/nxp,imx95-scmi-pinctrl.yaml
> @@ -0,0 +1,37 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +# Copyright 2024 NXP
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/firmware/nxp,imx95-scmi-pinctrl.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: i.MX System Control and Management Interface (SCMI) Pinctrl Protocol
> +
> +maintainers:
> +  - Peng Fan <peng.fan at nxp.com>
> +
> +patternProperties:
> +  'grp[0-9a-f]$':
> +    type: object
> +    unevaluatedProperties: false
> +
> +    properties:
> +      pinmux:
> +        description: |
> +          An integer array for representing pinmux configurations of
> +          a device. Each integer has the format, pinid[31:21], mux[20:16],
> +          daisy_value[15:12], daisy_valid[11:11], daisy_id[10:0].

I would format this with one field per line. Otherwise,

Reviewed-by: Rob Herring <robh at kernel.org>

> +        $ref: /schemas/types.yaml#/definitions/uint32-array
> +
> +      drive-strength:
> +        enum: [ 0, 1, 3, 7, 15, 31, 63 ]
> +
> +      slew-rate:
> +        enum: [2, 3]
> +
> +      input-schmitt-enable: true
> +      drive-open-drain: true
> +      bias-pull-up: true
> +      bias-pull-down: true
> +
> +additionalProperties: true
> 
> -- 
> 2.37.1
> 



More information about the linux-arm-kernel mailing list