1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only 2c66ec88fSEmmanuel Vadot%YAML 1.2 3c66ec88fSEmmanuel Vadot--- 4c66ec88fSEmmanuel Vadot$id: http://devicetree.org/schemas/sound/google,cros-ec-codec.yaml# 5c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6c66ec88fSEmmanuel Vadot 7c66ec88fSEmmanuel Vadottitle: Audio codec controlled by ChromeOS EC 8c66ec88fSEmmanuel Vadot 9c66ec88fSEmmanuel Vadotmaintainers: 10c66ec88fSEmmanuel Vadot - Cheng-Yi Chiang <cychiang@chromium.org> 117ef62cebSEmmanuel Vadot - Tzung-Bi Shih <tzungbi@kernel.org> 12c66ec88fSEmmanuel Vadot 13c66ec88fSEmmanuel Vadotdescription: | 14c66ec88fSEmmanuel Vadot Google's ChromeOS EC codec is a digital mic codec provided by the 156be33864SEmmanuel Vadot Embedded Controller (EC) and is controlled via a host-command 166be33864SEmmanuel Vadot interface. An EC codec node should only be found inside the "codecs" 176be33864SEmmanuel Vadot subnode of a cros-ec node. 186be33864SEmmanuel Vadot (see Documentation/devicetree/bindings/mfd/google,cros-ec.yaml). 19c66ec88fSEmmanuel Vadot 20*8bab661aSEmmanuel VadotallOf: 21*8bab661aSEmmanuel Vadot - $ref: dai-common.yaml# 22*8bab661aSEmmanuel Vadot 23c66ec88fSEmmanuel Vadotproperties: 24c66ec88fSEmmanuel Vadot compatible: 25c66ec88fSEmmanuel Vadot const: google,cros-ec-codec 26c66ec88fSEmmanuel Vadot 27c66ec88fSEmmanuel Vadot "#sound-dai-cells": 28c66ec88fSEmmanuel Vadot const: 1 29c66ec88fSEmmanuel Vadot 30c66ec88fSEmmanuel Vadot reg: 31c66ec88fSEmmanuel Vadot items: 32c66ec88fSEmmanuel Vadot - description: | 33c66ec88fSEmmanuel Vadot Physical base address and length of shared memory region from EC. 34c66ec88fSEmmanuel Vadot It contains 3 unsigned 32-bit integer. The first 2 integers 35c66ec88fSEmmanuel Vadot combine to become an unsigned 64-bit physical address. 36c66ec88fSEmmanuel Vadot The last one integer is the length of the shared memory. 37c66ec88fSEmmanuel Vadot 38c66ec88fSEmmanuel Vadot memory-region: 392eb4d8dcSEmmanuel Vadot maxItems: 1 40c66ec88fSEmmanuel Vadot description: | 41c66ec88fSEmmanuel Vadot Shared memory region to EC. A "shared-dma-pool". 42c66ec88fSEmmanuel Vadot See ../reserved-memory/reserved-memory.txt for details. 43c66ec88fSEmmanuel Vadot 44c66ec88fSEmmanuel Vadotrequired: 45c66ec88fSEmmanuel Vadot - compatible 46c66ec88fSEmmanuel Vadot - '#sound-dai-cells' 47c66ec88fSEmmanuel Vadot 48*8bab661aSEmmanuel VadotunevaluatedProperties: false 49c66ec88fSEmmanuel Vadot 50c66ec88fSEmmanuel Vadotexamples: 51c66ec88fSEmmanuel Vadot - | 52c66ec88fSEmmanuel Vadot reserved_mem: reserved-mem@52800000 { 53c66ec88fSEmmanuel Vadot compatible = "shared-dma-pool"; 54c66ec88fSEmmanuel Vadot reg = <0x52800000 0x100000>; 55c66ec88fSEmmanuel Vadot no-map; 56c66ec88fSEmmanuel Vadot }; 57c66ec88fSEmmanuel Vadot spi { 58c66ec88fSEmmanuel Vadot #address-cells = <1>; 59c66ec88fSEmmanuel Vadot #size-cells = <0>; 60c66ec88fSEmmanuel Vadot cros-ec@0 { 61c66ec88fSEmmanuel Vadot compatible = "google,cros-ec-spi"; 626be33864SEmmanuel Vadot reg = <0>; 63*8bab661aSEmmanuel Vadot interrupts = <93 0>; 646be33864SEmmanuel Vadot 656be33864SEmmanuel Vadot codecs { 66c66ec88fSEmmanuel Vadot #address-cells = <2>; 67c66ec88fSEmmanuel Vadot #size-cells = <1>; 686be33864SEmmanuel Vadot 69c66ec88fSEmmanuel Vadot cros_ec_codec: ec-codec@10500000 { 70c66ec88fSEmmanuel Vadot compatible = "google,cros-ec-codec"; 71c66ec88fSEmmanuel Vadot #sound-dai-cells = <1>; 72c66ec88fSEmmanuel Vadot reg = <0x0 0x10500000 0x80000>; 73c66ec88fSEmmanuel Vadot memory-region = <&reserved_mem>; 74c66ec88fSEmmanuel Vadot }; 756be33864SEmmanuel Vadot 766be33864SEmmanuel Vadot }; 77c66ec88fSEmmanuel Vadot }; 78c66ec88fSEmmanuel Vadot }; 79