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