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> 11c66ec88fSEmmanuel Vadot 12c66ec88fSEmmanuel Vadotdescription: | 13c66ec88fSEmmanuel Vadot Google's ChromeOS EC codec is a digital mic codec provided by the 14*6be33864SEmmanuel Vadot Embedded Controller (EC) and is controlled via a host-command 15*6be33864SEmmanuel Vadot interface. An EC codec node should only be found inside the "codecs" 16*6be33864SEmmanuel Vadot subnode of a cros-ec node. 17*6be33864SEmmanuel Vadot (see Documentation/devicetree/bindings/mfd/google,cros-ec.yaml). 18c66ec88fSEmmanuel Vadot 19c66ec88fSEmmanuel Vadotproperties: 20c66ec88fSEmmanuel Vadot compatible: 21c66ec88fSEmmanuel Vadot const: google,cros-ec-codec 22c66ec88fSEmmanuel Vadot 23c66ec88fSEmmanuel Vadot "#sound-dai-cells": 24c66ec88fSEmmanuel Vadot const: 1 25c66ec88fSEmmanuel Vadot 26c66ec88fSEmmanuel Vadot reg: 27c66ec88fSEmmanuel Vadot items: 28c66ec88fSEmmanuel Vadot - description: | 29c66ec88fSEmmanuel Vadot Physical base address and length of shared memory region from EC. 30c66ec88fSEmmanuel Vadot It contains 3 unsigned 32-bit integer. The first 2 integers 31c66ec88fSEmmanuel Vadot combine to become an unsigned 64-bit physical address. 32c66ec88fSEmmanuel Vadot The last one integer is the length of the shared memory. 33c66ec88fSEmmanuel Vadot 34c66ec88fSEmmanuel Vadot memory-region: 35c66ec88fSEmmanuel Vadot $ref: '/schemas/types.yaml#/definitions/phandle' 36c66ec88fSEmmanuel Vadot description: | 37c66ec88fSEmmanuel Vadot Shared memory region to EC. A "shared-dma-pool". 38c66ec88fSEmmanuel Vadot See ../reserved-memory/reserved-memory.txt for details. 39c66ec88fSEmmanuel Vadot 40c66ec88fSEmmanuel Vadotrequired: 41c66ec88fSEmmanuel Vadot - compatible 42c66ec88fSEmmanuel Vadot - '#sound-dai-cells' 43c66ec88fSEmmanuel Vadot 44c66ec88fSEmmanuel VadotadditionalProperties: false 45c66ec88fSEmmanuel Vadot 46c66ec88fSEmmanuel Vadotexamples: 47c66ec88fSEmmanuel Vadot - | 48c66ec88fSEmmanuel Vadot reserved_mem: reserved-mem@52800000 { 49c66ec88fSEmmanuel Vadot compatible = "shared-dma-pool"; 50c66ec88fSEmmanuel Vadot reg = <0x52800000 0x100000>; 51c66ec88fSEmmanuel Vadot no-map; 52c66ec88fSEmmanuel Vadot }; 53c66ec88fSEmmanuel Vadot spi { 54c66ec88fSEmmanuel Vadot #address-cells = <1>; 55c66ec88fSEmmanuel Vadot #size-cells = <0>; 56c66ec88fSEmmanuel Vadot cros-ec@0 { 57c66ec88fSEmmanuel Vadot compatible = "google,cros-ec-spi"; 58*6be33864SEmmanuel Vadot reg = <0>; 59*6be33864SEmmanuel Vadot 60*6be33864SEmmanuel Vadot codecs { 61c66ec88fSEmmanuel Vadot #address-cells = <2>; 62c66ec88fSEmmanuel Vadot #size-cells = <1>; 63*6be33864SEmmanuel Vadot 64c66ec88fSEmmanuel Vadot cros_ec_codec: ec-codec@10500000 { 65c66ec88fSEmmanuel Vadot compatible = "google,cros-ec-codec"; 66c66ec88fSEmmanuel Vadot #sound-dai-cells = <1>; 67c66ec88fSEmmanuel Vadot reg = <0x0 0x10500000 0x80000>; 68c66ec88fSEmmanuel Vadot memory-region = <&reserved_mem>; 69c66ec88fSEmmanuel Vadot }; 70*6be33864SEmmanuel Vadot 71*6be33864SEmmanuel Vadot }; 72c66ec88fSEmmanuel Vadot }; 73c66ec88fSEmmanuel Vadot }; 74