Add support for internal audio codec found A1 SoC family. On this SoC
the component supports capturing from ADC and has specific configuration
of input/output lines.
Signed-off-by: Jan Dakinevich <jan.dakinevich@salutedevices.com>
---
.../bindings/sound/amlogic,t9015.yaml | 69 +++++++++++++++++--
1 file changed, 65 insertions(+), 4 deletions(-)
diff --git a/Documentation/devicetree/bindings/sound/amlogic,t9015.yaml b/Documentation/devicetree/bindings/sound/amlogic,t9015.yaml
index 5f5cccdbeb34..962795470601 100644
--- a/Documentation/devicetree/bindings/sound/amlogic,t9015.yaml
+++ b/Documentation/devicetree/bindings/sound/amlogic,t9015.yaml
@@ -9,9 +9,6 @@ title: Amlogic T9015 Internal Audio DAC
maintainers:
- Jerome Brunet <jbrunet@baylibre.com>
-allOf:
- - $ref: dai-common.yaml#
-
properties:
$nodename:
pattern: "^audio-controller@.*"
@@ -21,7 +18,9 @@ properties:
compatible:
items:
- - const: amlogic,t9015
+ - enum:
+ - amlogic,t9015
+ - amlogic,t9015-a1
clocks:
items:
@@ -43,6 +42,17 @@ properties:
sound-name-prefix: true
+ lineout-left:
+ $ref: /schemas/types.yaml#/definitions/string
+ lineout-right:
+ $ref: /schemas/types.yaml#/definitions/string
+ linein-left:
+ $ref: /schemas/types.yaml#/definitions/string
+ linein-right:
+ $ref: /schemas/types.yaml#/definitions/string
+ micbias:
+ $ref: /schemas/types.yaml#/definitions/string
+
required:
- "#sound-dai-cells"
- compatible
@@ -52,6 +62,57 @@ required:
- resets
- AVDD-supply
+
+allOf:
+ - $ref: dai-common.yaml#
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: amlogic,t9015-a1
+ then:
+ properties:
+ lineout-left:
+ items:
+ - enum:
+ - none
+ - right
+ - left-inverted
+ lineout-right:
+ items:
+ - enum:
+ - none
+ - left
+ - right-inverted
+ linein-left:
+ items:
+ - enum:
+ - none
+ - differential
+ - positive
+ - negative
+ linein-right:
+ items:
+ - enum:
+ - none
+ - differential
+ - positive
+ - negative
+ micbias:
+ items:
+ - enum:
+ - 2.0V
+ - 2.1V
+ - 2.3V
+ - 2.5V
+ - 2.8V
+ else:
+ lineout-left: false
+ lineout-right: false
+ linein-left: false
+ linein-right: false
+ micbias: false
+
additionalProperties: false
examples:
--
2.34.1
On Sun, Mar 09, 2025 at 09:16:29PM +0300, Jan Dakinevich wrote: > Add support for internal audio codec found A1 SoC family. On this SoC > the component supports capturing from ADC and has specific configuration > of input/output lines. > > Signed-off-by: Jan Dakinevich <jan.dakinevich@salutedevices.com> > --- > .../bindings/sound/amlogic,t9015.yaml | 69 +++++++++++++++++-- > 1 file changed, 65 insertions(+), 4 deletions(-) > > diff --git a/Documentation/devicetree/bindings/sound/amlogic,t9015.yaml b/Documentation/devicetree/bindings/sound/amlogic,t9015.yaml > index 5f5cccdbeb34..962795470601 100644 > --- a/Documentation/devicetree/bindings/sound/amlogic,t9015.yaml > +++ b/Documentation/devicetree/bindings/sound/amlogic,t9015.yaml > @@ -9,9 +9,6 @@ title: Amlogic T9015 Internal Audio DAC > maintainers: > - Jerome Brunet <jbrunet@baylibre.com> > > -allOf: > - - $ref: dai-common.yaml# > - > properties: > $nodename: > pattern: "^audio-controller@.*" > @@ -21,7 +18,9 @@ properties: > > compatible: > items: > - - const: amlogic,t9015 > + - enum: > + - amlogic,t9015 > + - amlogic,t9015-a1 > > clocks: > items: > @@ -43,6 +42,17 @@ properties: > > sound-name-prefix: true > > + lineout-left: Missing vendor prefix. > + $ref: /schemas/types.yaml#/definitions/string enum with values > + lineout-right: > + $ref: /schemas/types.yaml#/definitions/string > + linein-left: > + $ref: /schemas/types.yaml#/definitions/string > + linein-right: > + $ref: /schemas/types.yaml#/definitions/string > + micbias: use proper unit suffix name, e.g. microvolt > + $ref: /schemas/types.yaml#/definitions/string > + > required: > - "#sound-dai-cells" > - compatible > @@ -52,6 +62,57 @@ required: > - resets > - AVDD-supply > > + Only one blank line > +allOf: > + - $ref: dai-common.yaml# > + - if: > + properties: > + compatible: > + contains: > + const: amlogic,t9015-a1 > + then: > + properties: > + lineout-left: > + items: You do not have multiple items here, drop. > + - enum: > + - none > + - right > + - left-inverted > + lineout-right: > + items: > + - enum: > + - none > + - left > + - right-inverted > + linein-left: > + items: > + - enum: > + - none > + - differential > + - positive > + - negative > + linein-right: > + items: > + - enum: > + - none > + - differential > + - positive > + - negative All these go to the top level. > + micbias: > + items: > + - enum: > + - 2.0V > + - 2.1V > + - 2.3V > + - 2.5V > + - 2.8V > + else: > + lineout-left: false > + lineout-right: false > + linein-left: false > + linein-right: false > + micbias: false This is correct. Best regards, Krzysztof
On Sun, 09 Mar 2025 21:16:29 +0300, Jan Dakinevich wrote: > Add support for internal audio codec found A1 SoC family. On this SoC > the component supports capturing from ADC and has specific configuration > of input/output lines. > > Signed-off-by: Jan Dakinevich <jan.dakinevich@salutedevices.com> > --- > .../bindings/sound/amlogic,t9015.yaml | 69 +++++++++++++++++-- > 1 file changed, 65 insertions(+), 4 deletions(-) > My bot found errors running 'make dt_binding_check' on your patch: yamllint warnings/errors: dtschema/dtc warnings/errors: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/sound/amlogic,t9015.yaml: allOf:1:else: 'anyOf' conditional failed, one must be fixed: 'lineout-left' is not one of ['$ref', 'additionalItems', 'additionalProperties', 'allOf', 'anyOf', 'const', 'contains', 'default', 'dependencies', 'dependentRequired', 'dependentSchemas', 'deprecated', 'description', 'else', 'enum', 'exclusiveMaximum', 'exclusiveMinimum', 'items', 'if', 'minItems', 'minimum', 'maxItems', 'maximum', 'multipleOf', 'not', 'oneOf', 'pattern', 'patternProperties', 'properties', 'required', 'then', 'typeSize', 'unevaluatedProperties', 'uniqueItems'] 'type' was expected from schema $id: http://devicetree.org/meta-schemas/keywords.yaml# /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/sound/amlogic,t9015.yaml: allOf:1:else: 'anyOf' conditional failed, one must be fixed: 'lineout-right' is not one of ['$ref', 'additionalItems', 'additionalProperties', 'allOf', 'anyOf', 'const', 'contains', 'default', 'dependencies', 'dependentRequired', 'dependentSchemas', 'deprecated', 'description', 'else', 'enum', 'exclusiveMaximum', 'exclusiveMinimum', 'items', 'if', 'minItems', 'minimum', 'maxItems', 'maximum', 'multipleOf', 'not', 'oneOf', 'pattern', 'patternProperties', 'properties', 'required', 'then', 'typeSize', 'unevaluatedProperties', 'uniqueItems'] 'type' was expected from schema $id: http://devicetree.org/meta-schemas/keywords.yaml# /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/sound/amlogic,t9015.yaml: allOf:1:else: 'anyOf' conditional failed, one must be fixed: 'linein-left' is not one of ['$ref', 'additionalItems', 'additionalProperties', 'allOf', 'anyOf', 'const', 'contains', 'default', 'dependencies', 'dependentRequired', 'dependentSchemas', 'deprecated', 'description', 'else', 'enum', 'exclusiveMaximum', 'exclusiveMinimum', 'items', 'if', 'minItems', 'minimum', 'maxItems', 'maximum', 'multipleOf', 'not', 'oneOf', 'pattern', 'patternProperties', 'properties', 'required', 'then', 'typeSize', 'unevaluatedProperties', 'uniqueItems'] 'type' was expected from schema $id: http://devicetree.org/meta-schemas/keywords.yaml# /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/sound/amlogic,t9015.yaml: allOf:1:else: 'anyOf' conditional failed, one must be fixed: 'linein-right' is not one of ['$ref', 'additionalItems', 'additionalProperties', 'allOf', 'anyOf', 'const', 'contains', 'default', 'dependencies', 'dependentRequired', 'dependentSchemas', 'deprecated', 'description', 'else', 'enum', 'exclusiveMaximum', 'exclusiveMinimum', 'items', 'if', 'minItems', 'minimum', 'maxItems', 'maximum', 'multipleOf', 'not', 'oneOf', 'pattern', 'patternProperties', 'properties', 'required', 'then', 'typeSize', 'unevaluatedProperties', 'uniqueItems'] 'type' was expected from schema $id: http://devicetree.org/meta-schemas/keywords.yaml# /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/sound/amlogic,t9015.yaml: allOf:1:else: 'anyOf' conditional failed, one must be fixed: 'micbias' is not one of ['$ref', 'additionalItems', 'additionalProperties', 'allOf', 'anyOf', 'const', 'contains', 'default', 'dependencies', 'dependentRequired', 'dependentSchemas', 'deprecated', 'description', 'else', 'enum', 'exclusiveMaximum', 'exclusiveMinimum', 'items', 'if', 'minItems', 'minimum', 'maxItems', 'maximum', 'multipleOf', 'not', 'oneOf', 'pattern', 'patternProperties', 'properties', 'required', 'then', 'typeSize', 'unevaluatedProperties', 'uniqueItems'] 'type' was expected from schema $id: http://devicetree.org/meta-schemas/keywords.yaml# doc reference errors (make refcheckdocs): See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20250309181630.1322745-3-jan.dakinevich@salutedevices.com The base for the series is generally the latest rc1. A different dependency should be noted in *this* patch. If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure 'yamllint' is installed and dt-schema is up to date: pip3 install dtschema --upgrade Please check and re-submit after running the above command yourself. Note that DT_SCHEMA_FILES can be set to your schema file to speed up checking your schema. However, it must be unset to test all examples with your schema.
© 2016 - 2026 Red Hat, Inc.