Re: [PATCH v2 3/3] mfd: google,cros-ec: add missing properties

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

 



On Thu, Oct 08, 2020 at 12:28:25PM +0200, Ricardo Cañuelo wrote:
> Add missing properties that are currently used in the examples of
> subnode bindings and in many DTs.
> 
> Also updates the example in sound/google,cros-ec-codec.yaml to comply
> with the google,cros-ec binding.
> 
> Signed-off-by: Ricardo Cañuelo <ricardo.canuelo@xxxxxxxxxxxxx>
> ---
>  .../bindings/mfd/google,cros-ec.yaml          | 42 +++++++++++++++++++
>  .../bindings/sound/google,cros-ec-codec.yaml  | 26 +++++++-----
>  2 files changed, 58 insertions(+), 10 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml b/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml
> index 351bfb6d37ba..48929bb07d98 100644
> --- a/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml
> +++ b/Documentation/devicetree/bindings/mfd/google,cros-ec.yaml
> @@ -59,6 +59,14 @@ properties:
>        whether this nvram is present or not.
>      type: boolean
>  
> +  mtk,rpmsg-name:
> +    description:
> +      Must be defined if the cros-ec is a rpmsg device for a Mediatek
> +      ARM Cortex M4 Co-processor. Contains the name pf the rpmsg
> +      device. Used to match the subnode to the rpmsg device announced by
> +      the SCP.
> +    $ref: "/schemas/types.yaml#/definitions/string"
> +
>    spi-max-frequency:
>      description: Maximum SPI frequency of the device in Hz.
>  
> @@ -71,14 +79,48 @@ properties:
>    wakeup-source:
>      description: Button can wake-up the system.
>  
> +  typec:
> +    $ref: "/schemas/chrome/google,cros-ec-typec.yaml#"
> +
> +  ec-pwm:
> +    $ref: "/schemas/pwm/google,cros-ec-pwm.yaml#"
> +
>    keyboard-controller:
>      $ref: "/schemas/input/google,cros-ec-keyb.yaml#"
>  
> +  codecs:

Doesn't moving this require a driver change? 

If you only need 1 codec, then just drop the unit-address.

> +    type: object
> +    additionalProperties: false
> +
> +    properties:
> +      '#address-cells':
> +        const: 2
> +
> +      '#size-cells':
> +        const: 1
> +
> +    patternProperties:
> +      "^ec-codec@[a-f0-9]+$":
> +        type: object
> +        $ref: "/schemas/sound/google,cros-ec-codec.yaml#"
> +
> +    required:
> +      - "#address-cells"
> +      - "#size-cells"
> +
>  patternProperties:
>    "^i2c-tunnel[0-9]*$":
>      type: object
>      $ref: "/schemas/i2c/google,cros-ec-i2c-tunnel.yaml#"
>  
> +  "^regulator@[0-9]+$":
> +    type: object
> +    $ref: "/schemas/regulator/google,cros-ec-regulator.yaml#"
> +
> +  "^extcon[0-9]*$":
> +    type: object
> +    $ref: "/schemas/extcon/extcon-usbc-cros-ec.yaml#"
> +
>  required:
>    - compatible
>  
> diff --git a/Documentation/devicetree/bindings/sound/google,cros-ec-codec.yaml b/Documentation/devicetree/bindings/sound/google,cros-ec-codec.yaml
> index c84e656afb0a..acfb9db021dc 100644
> --- a/Documentation/devicetree/bindings/sound/google,cros-ec-codec.yaml
> +++ b/Documentation/devicetree/bindings/sound/google,cros-ec-codec.yaml
> @@ -11,9 +11,10 @@ maintainers:
>  
>  description: |
>    Google's ChromeOS EC codec is a digital mic codec provided by the
> -  Embedded Controller (EC) and is controlled via a host-command interface.
> -  An EC codec node should only be found as a sub-node of the EC node (see
> -  Documentation/devicetree/bindings/mfd/cros-ec.txt).
> +  Embedded Controller (EC) and is controlled via a host-command
> +  interface.  An EC codec node should only be found inside the "codecs"
> +  subnode of a cros-ec node.
> +  (see Documentation/devicetree/bindings/mfd/google,cros-ec.yaml).
>  
>  properties:
>    compatible:
> @@ -54,14 +55,19 @@ examples:
>          #size-cells = <0>;
>          cros-ec@0 {
>              compatible = "google,cros-ec-spi";
> -            #address-cells = <2>;
> -            #size-cells = <1>;
>              reg = <0>;
> -            cros_ec_codec: ec-codec@10500000 {
> -                compatible = "google,cros-ec-codec";
> -                #sound-dai-cells = <1>;
> -                reg = <0x0 0x10500000 0x80000>;
> -                memory-region = <&reserved_mem>;
> +
> +            codecs {
> +                #address-cells = <2>;
> +                #size-cells = <1>;
> +
> +                cros_ec_codec: ec-codec@10500000 {
> +                    compatible = "google,cros-ec-codec";
> +                    #sound-dai-cells = <1>;
> +                    reg = <0x0 0x10500000 0x80000>;
> +                    memory-region = <&reserved_mem>;
> +                };
> +
>              };
>          };
>      };
> -- 
> 2.18.0
> 



[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