new file mode 100755
@@ -0,0 +1,109 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/everest,es8326.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Everest ES8326 audio CODEC
+
+maintainers:
+ - David Yang <yangxiaohua@everest-semi.com>
+
+properties:
+ compatible:
+ const: everest,es8326
+
+ reg:
+ maxItems: 1
+
+ clocks:
+ items:
+ - description: clock for master clock (MCLK)
+
+ clock-names:
+ items:
+ - const: mclk
+
+ "#sound-dai-cells":
+ const: 0
+
+ mclk-rate:
+ description:
+ clock rate of mclk
+ $ref: /schemas/types.yaml#/definitions/uint32-array
+ minItems: 1
+
+ everest,jack-pol:
+ description:
+ just the value of reg 57. Bit(3) decides whether the jack polarity is inverted.
+ Bit(2) decides whether the bottom on the headset is inverted.
+ Bit(1)/(0) decides the mic properity to be OMTP/CTIA or auto.
+ $ref: /schemas/types.yaml#/definitions/uint8-array
+ minimum: 0
+ maximum: 0x0f
+ default: 0x0f
+
+ everest,mic1-src:
+ description:
+ the value of reg 2A when headset plugged.
+ $ref: /schemas/types.yaml#/definitions/uint8-array
+ minimum: 0x00
+ maximum: 0x77
+ default: 0x22
+
+ everest,mic2-src:
+ description:
+ the value of reg 2A when headset unplugged.
+ $ref: /schemas/types.yaml#/definitions/uint8-array
+ minimum: 0x00
+ maximum: 0x77
+ default: 0x44
+
+ everest,amic1-src:
+ description:
+ the value of reg 23 when headset plugged.
+ $ref: /schemas/types.yaml#/definitions/uint8-array
+ minimum: 0x19
+ maximum: 0x29
+ default: 0x19
+
+ everest,amic2-src:
+ description:
+ the value of reg 23 when headset unplugged.
+ Set to 0x19 if dmic used. Set to 0x29 if amic used.
+ $ref: /schemas/types.yaml#/definitions/uint8-array
+ minimum: 0x19
+ maximum: 0x29
+ default: 0x19
+
+ everest,jack-detect-inverted:
+ description:
+ Defined to invert the jack detection.
+ $ref: /schemas/types.yaml#/definitions/flag
+
+required:
+ - compatible
+ - reg
+ - "#sound-dai-cells"
+
+
+additionalProperties: false
+
+examples:
+ - |
+ i2c0 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ es8326: codec@19 {
+ compatible = "everest,es8326";
+ reg = <0x19>;
+ clocks = <&clks 10>;
+ clock-names = "mclk";
+ #sound-dai-cells = <0>;
+ mic1-src = [22];
+ mic2-src = [44];
+ amic1-src = [19];
+ amic2-src = [19];
+ jack-pol = [0e];
+ };
+ };