On Wed, Mar 31, 2021 at 9:16 AM Rob Herring robh+dt@kernel.org wrote:
On Wed, Mar 10, 2021 at 7:33 AM Argus Lin argus.lin@mediatek.com wrote:
This patch adds MediaTek MT6359 ASoC accdet jack document.
Seems this never made it to the DT list so no checks ran. It's got all sorts of errors:
Still broken in linux-next. Please revert if can't be bothered to fix it.
/builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,four-key-thr: 'oneOf' conditional failed, one must be fixed: 'type' is a required property Additional properties are not allowed ('maxItems' was unexpected) /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,four-key-thr: 'oneOf' conditional failed, one must be fixed: 'enum' is a required property 'const' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,four-key-thr: 'oneOf' conditional failed, one must be fixed: '$ref' is a required property 'allOf' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,accdet-name: 'oneOf' conditional failed, one must be fixed: 'type' is a required property Additional properties are not allowed ('maxItems' was unexpected) /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,accdet-name: 'oneOf' conditional failed, one must be fixed: 'enum' is a required property 'const' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,accdet-name: 'oneOf' conditional failed, one must be fixed: '$ref' is a required property 'allOf' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,eint-use-ext-res: 'oneOf' conditional failed, one must be fixed: 'type' is a required property Additional properties are not allowed ('maxItems' was unexpected) /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,eint-use-ext-res: 'oneOf' conditional failed, one must be fixed: 'enum' is a required property 'const' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,eint-use-ext-res: 'oneOf' conditional failed, one must be fixed: '$ref' is a required property 'allOf' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,tri-key-cdd-thr: 'oneOf' conditional failed, one must be fixed: 'type' is a required property Additional properties are not allowed ('maxItems' was unexpected) /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,tri-key-cdd-thr: 'oneOf' conditional failed, one must be fixed: 'enum' is a required property 'const' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,tri-key-cdd-thr: 'oneOf' conditional failed, one must be fixed: '$ref' is a required property 'allOf' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,pwm-deb-setting: 'oneOf' conditional failed, one must be fixed: 'type' is a required property Additional properties are not allowed ('maxItems' was unexpected) /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,pwm-deb-setting: 'oneOf' conditional failed, one must be fixed: 'enum' is a required property 'const' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,pwm-deb-setting: 'oneOf' conditional failed, one must be fixed: '$ref' is a required property 'allOf' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,eint-num: 'oneOf' conditional failed, one must be fixed: 'type' is a required property Additional properties are not allowed ('maxItems' was unexpected) /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,eint-num: 'oneOf' conditional failed, one must be fixed: 'enum' is a required property 'const' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,eint-num: 'oneOf' conditional failed, one must be fixed: '$ref' is a required property 'allOf' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,mic-vol: 'oneOf' conditional failed, one must be fixed: 'type' is a required property Additional properties are not allowed ('maxItems' was unexpected) /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,mic-vol: 'oneOf' conditional failed, one must be fixed: 'enum' is a required property 'const' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,mic-vol: 'oneOf' conditional failed, one must be fixed: '$ref' is a required property 'allOf' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,eint-trig-mode: 'oneOf' conditional failed, one must be fixed: 'type' is a required property Additional properties are not allowed ('maxItems' was unexpected) /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,eint-trig-mode: 'oneOf' conditional failed, one must be fixed: 'enum' is a required property 'const' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,eint-trig-mode: 'oneOf' conditional failed, one must be fixed: '$ref' is a required property 'allOf' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,three-key-thr: 'oneOf' conditional failed, one must be fixed: 'type' is a required property Additional properties are not allowed ('maxItems' was unexpected) /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,three-key-thr: 'oneOf' conditional failed, one must be fixed: 'enum' is a required property 'const' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,three-key-thr: 'oneOf' conditional failed, one must be fixed: '$ref' is a required property 'allOf' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,key-mode: 'oneOf' conditional failed, one must be fixed: 'type' is a required property Additional properties are not allowed ('maxItems' was unexpected) /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,key-mode: 'oneOf' conditional failed, one must be fixed: 'enum' is a required property 'const' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,key-mode: 'oneOf' conditional failed, one must be fixed: '$ref' is a required property 'allOf' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,eint-comp-vth: 'oneOf' conditional failed, one must be fixed: 'type' is a required property Additional properties are not allowed ('maxItems' was unexpected) /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,eint-comp-vth: 'oneOf' conditional failed, one must be fixed: 'enum' is a required property 'const' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,eint-comp-vth: 'oneOf' conditional failed, one must be fixed: '$ref' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,eint-use-ap: 'oneOf' conditional failed, one must be fixed: 'type' is a required property Additional properties are not allowed ('maxItems' was unexpected) /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,eint-use-ap: 'oneOf' conditional failed, one must be fixed: 'enum' is a required property 'const' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,eint-use-ap: 'oneOf' conditional failed, one must be fixed: '$ref' is a required property 'allOf' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,mic-mode: 'oneOf' conditional failed, one must be fixed: 'type' is a required property Additional properties are not allowed ('maxItems' was unexpected) /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,mic-mode: 'oneOf' conditional failed, one must be fixed: 'enum' is a required property 'const' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,mic-mode: 'oneOf' conditional failed, one must be fixed: '$ref' is a required property 'allOf' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,eint-detect-mode: 'oneOf' conditional failed, one must be fixed: 'type' is a required property Additional properties are not allowed ('maxItems' was unexpected) /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,eint-detect-mode: 'oneOf' conditional failed, one must be fixed: 'enum' is a required property 'const' is a required property /builds/robherring/linux-dt-bindings/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml: properties:mediatek,eint-detect-mode: 'oneOf' conditional failed, one must be fixed: '$ref' is a required property 'allOf' is a required property
Signed-off-by: Argus Lin argus.lin@mediatek.com
.../bindings/sound/mt6359-accdet.yaml | 164 ++++++++++++++++++ 1 file changed, 164 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/mt6359-accdet.yaml
diff --git a/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml b/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml new file mode 100644 index 000000000000..7fb3e8dfb4c5 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/mt6359-accdet.yaml @@ -0,0 +1,164 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/sound/mt6359-accdet.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml#
+title: Mediatek Technologies Inc. MT6359 ASoC accdet jack driver bindings
+maintainers:
- Chipeng Chang chipeng.chang@mediatek.com
+description: |
- This binding describes the Mediatek Technologies MT6359 ASoC
- accdet jack driver.
+properties:
- mediatek,accdet-name:
- maxItems: 1
- description: named as "mt6359-accdet" jack.
Sounds like a constraint. Why do you need this in DT if only 1 value? And why expose an SoC specific name to userspace (I guess)?
- mediatek,mic-vol:
- maxItems: 1
This is an array because 'maxItems' is for arrays? It needs a type reference. Same problem throughout.
- description: |
accdet micbias1 voltage.
enum:
The indentation is wrong here, so this is just part of 'description'.
- 0x00 # 1.7v - micbias1 volage is 1.7v.
- 0x01 # 1.8v - micbias1 volage is 1.8v.
- 0x02 # 1.9v - micbias1 volage is 1.9v.
- 0x03 # 2.0v - micbias1 volage is 2.0v.
- 0x04 # 2.1v - micbias1 volage is 2.1v.
- 0x05 # 2.5v - micbias1 volage is 2.5v.
- 0x06 # 2.6v - micbias1 volage is 2.6v.
- 0x07 # 2.7v - micbias1 volage is 2.7v.
- 0x08 # 2.8v - micbias1 volage is 2.8v.
- 0x09 # 2.85v - micbias1 volage is 2.85v.
- mediatek,mic-mode:
- maxItems: 1
- description: |
value as 1, 2, 6 to indicate ACC/DCC mode. default is DCC mode 2.
enum:
- 0x01 # ACC - ACC mode.
- 0x02 # DCC - low cost without in bias.
- 0x06 # DCC - low cost with in bias.
- mediatek,pwm-deb-setting:
- maxItems: 15
- description: |
headset-mode-setting : Indicates customized pwm, debounce setting
accdet pwm_width, pwm_thresh, fall_delay, rise_delay
debounce0, debounce1, debounce3, debounce4
eint pwm_width, eint pwm_thresh
eint deb(debounce0, debounce1, debounce2, debounce3), inv_debounce.
This is a string?
- mediatek,eint-use-ap:
- maxItems: 1
- description: |
indicates to use ap gpio.
enum:
- 0x00 # MT6359 eint detection mode.
- 0x01 # SoC GPIO detection mode.
Would boolean work here?
- mediatek,eint-detect-mode:
- maxItems: 1
- description: |
indicates to use ap gpio.
enum:
- 0x00 # detection mode with higher detection power.
- 0x01 # detection mode with lower detection power.
- 0x02 # detection mode with sw moisture detection mode.
- 0x03 # detection mode with hw moisture detection mode1.
- 0x04 # detection mode with hw moisture detection mode2.
- mediatek,eint-num:
- maxItems: 1
- description: |
incicates pmic eint usage.
enum:
- 0x0 # PMIC_EINT0 - use pmic eint0 to trigger plug interrupt.
- 0x1 # PMIC_EINT1 - use pmic eint1 to trigger plug interrupt.
- 0x2 # PMIC_BI_EINT - use pmic eint0/1 to trigger plug interrupt.
- mediatek,eint-trig-mode:
- maxItems: 1
- description: |
incicates pmic eint trigger mode.
enum:
- 0x0 # PMIC_GPIO - use pmic gpio to detect plug status.
- 0x1 # PMIC_INVERTER - use pmic inverter to detect plug status.
Boolean instead?
- mediatek,eint-use-ext-res:
- maxItems: 1
- description: |
select HP_EINT pull up resistance, default 0 use internal resistance.
enum:
- 0x0 # use internal resistor.
- 0x1 # use external resistor.
Boolean?
- mediatek,eint-comp-vth:
- maxItems: 1
- description: |
indicates comparator detection voltage.
enum:
- 0x00 # 2.8v.
- 0x01 # 2.4v.
- 0x02 # 2.0v.
- 0x03 # 0.7v.
- mediatek,key-mode:
- maxItems: 1
- description: |
incicates key mode type.
enum:
- 0x0 # THREE_KEY - support 3-key key mode.
- 0x1 # FOUR_KEY - support 4-key key mode.
- 0x2 # TRI_KEY_CDD - support 3-key google CDD key mode.
- mediatek,three-key-thr:
- maxItems: 4
- description: |
3 key device detection threshold: 0--MD_MAX--UP_MAX--DW_MAX.
- mediatek,tri-key-cdd-thr:
- maxItems: 4
- description: |
3 key CDD device detection threshold: 0--MD_MAX--UP_MAX--DW_MAX.
- mediatek,four-key-thr:
- maxItems: 4
- description: |
4 key device detection threshold: 0--MD_MAX--VOICE_MAX--UP_MAX--DW_MAX.
+additionalProperties: false
+examples:
- |
- accdet: accdet {
Where does this node go? You've got no compatible, so it's a child of something else?
mediatek,accdet-name = "mt6359-accdet";
mediatek,mic-vol = <8>;
mediatek,mic-mode = <2>;
mediatek,pwm-deb-setting = <0x500 0x500 1 0x1f0
0x800 0x800 0x20 0x44
0x4 0x1
0x5 0x3 0x3 0x5 0xe>;
mediatek,eint-use-ap = <0>;
mediatek,eint-detect-mode = <4>;
mediatek,eint-num = <0>;
mediatek,eint-trig-mode = <1>;
mediatek,eint-use-ext-res = <0>;
mediatek,eint-comp-vth = <2>;
mediatek,key-mode = <0>;
mediatek,three-key-thr = <0 80 220 400>;
status = "okay";
Don't show status in examples.
- };
+...
-- 2.18.0