Unverified Commit eadd54c7 authored by Dafna Hirschfeld's avatar Dafna Hirschfeld Committed by Mark Brown
Browse files

dt-bindings: Convert the binding file google, cros-ec-codec.txt to yaml format.



This was tested and verified with:
make dt_binding_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/sound/google,cros-ec-codec.yaml

Signed-off-by: default avatarDafna Hirschfeld <dafna.hirschfeld@collabora.com>
Reviewed-by: default avatarRob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20200127091806.11403-1-dafna.hirschfeld@collabora.com


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 5d9fa03e
Loading
Loading
Loading
Loading
+0 −44
Original line number Diff line number Diff line
Audio codec controlled by ChromeOS EC

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).

Required properties:
- compatible: Must contain "google,cros-ec-codec"
- #sound-dai-cells: Should be 1. The cell specifies number of DAIs.

Optional properties:
- reg: Pysical base address and length of shared memory region from EC.
       It contains 3 unsigned 32-bit integer.  The first 2 integers
       combine to become an unsigned 64-bit physical address.  The last
       one integer is length of the shared memory.
- memory-region: Shared memory region to EC.  A "shared-dma-pool".  See
                 ../reserved-memory/reserved-memory.txt for details.

Example:

{
	...

	reserved_mem: reserved_mem {
		compatible = "shared-dma-pool";
		reg = <0 0x52800000 0 0x100000>;
		no-map;
	};
}

cros-ec@0 {
	compatible = "google,cros-ec-spi";

	...

	cros_ec_codec: ec-codec {
		compatible = "google,cros-ec-codec";
		#sound-dai-cells = <1>;
		reg = <0x0 0x10500000 0x80000>;
		memory-region = <&reserved_mem>;
	};
};
+62 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0-only
%YAML 1.2
---
$id: http://devicetree.org/schemas/sound/google,cros-ec-codec.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Audio codec controlled by ChromeOS EC

maintainers:
  - Cheng-Yi Chiang <cychiang@chromium.org>

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).

properties:
  compatible:
    const: google,cros-ec-codec

  "#sound-dai-cells":
    const: 1

  reg:
    items:
      - description: |
          Physical base address and length of shared memory region from EC.
          It contains 3 unsigned 32-bit integer. The first 2 integers
          combine to become an unsigned 64-bit physical address.
          The last one integer is the length of the shared memory.

  memory-region:
    $ref: '/schemas/types.yaml#/definitions/phandle'
    description: |
      Shared memory region to EC.  A "shared-dma-pool".
      See ../reserved-memory/reserved-memory.txt for details.

required:
  - compatible
  - '#sound-dai-cells'

additionalProperties: false

examples:
  - |
    reserved_mem: reserved_mem {
        compatible = "shared-dma-pool";
        reg = <0 0x52800000 0 0x100000>;
        no-map;
    };
    cros-ec@0 {
        compatible = "google,cros-ec-spi";
        #address-cells = <2>;
        #size-cells = <1>;
        cros_ec_codec: ec-codec {
            compatible = "google,cros-ec-codec";
            #sound-dai-cells = <1>;
            reg = <0x0 0x10500000 0x80000>;
            memory-region = <&reserved_mem>;
        };
    };