Commit 0c906c92 authored by Charles Keepax's avatar Charles Keepax Committed by Rob Herring
Browse files

extcon: arizona: Move binding over to dtschema

parent afd9ee0e
Loading
Loading
Loading
Loading
+0 −76
Original line number Diff line number Diff line
Cirrus Logic Arizona class audio SoCs

These devices are audio SoCs with extensive digital capabilities and a range
of analogue I/O.

This document lists Extcon specific bindings, see the primary binding document:
  ../mfd/arizona.txt

Optional properties:

  - wlf,hpdet-channel : Headphone detection channel.
    ARIZONA_ACCDET_MODE_HPL or 1 - Headphone detect mode is set to HPDETL
    ARIZONA_ACCDET_MODE_HPR or 2 - Headphone detect mode is set to HPDETR
    If this node is not mentioned or if the value is unknown, then
    headphone detection mode is set to HPDETL.

  - wlf,use-jd2 : Use the additional JD input along with JD1 for dual pin jack
    detection.
  - wlf,use-jd2-nopull : Internal pull on JD2 is disabled when used for
    jack detection.
  - wlf,jd-invert : Invert the polarity of the jack detection switch

  - wlf,micd-software-compare : Use a software comparison to determine mic
    presence
  - wlf,micd-detect-debounce : Additional software microphone detection
    debounce specified in milliseconds.
  - wlf,micd-pol-gpio : GPIO specifier for the GPIO controlling the headset
    polarity if one exists.
  - wlf,micd-bias-start-time : Time allowed for MICBIAS to startup prior to
    performing microphone detection, specified as per the ARIZONA_MICD_TIME_XXX
    defines.
  - wlf,micd-rate : Delay between successive microphone detection measurements,
    specified as per the ARIZONA_MICD_TIME_XXX defines.
  - wlf,micd-dbtime : Microphone detection hardware debounces specified as the
    number of measurements to take, valid values being 2 and 4.
  - wlf,micd-timeout-ms : Timeout for microphone detection, specified in
    milliseconds.
  - wlf,micd-force-micbias : Force MICBIAS continuously on during microphone
    detection.
  - wlf,micd-configs : Headset polarity configurations (generally used for
    detection of CTIA / OMTP headsets), the field can be of variable length
    but should always be a multiple of 3 cells long, each three cell group
    represents one polarity configuration.
    The first cell defines the accessory detection pin, zero will use MICDET1
    and all other values will use MICDET2.
    The second cell represents the MICBIAS to be used.
    The third cell represents the value of the micd-pol-gpio pin.

  - wlf,gpsw : Settings for the general purpose switch, set as one of the
    ARIZONA_GPSW_XXX defines.

Example:

codec: wm8280@0 {
	compatible = "wlf,wm8280";
	reg = <0>;
	...

	wlf,use-jd2;
	wlf,use-jd2-nopull;
	wlf,jd-invert;

	wlf,micd-software-compare;
	wlf,micd-detect-debounce = <0>;
	wlf,micd-pol-gpio = <&codec 2 0>;
	wlf,micd-rate = <ARIZONA_MICD_TIME_8MS>;
	wlf,micd-dbtime = <4>;
	wlf,micd-timeout-ms = <100>;
	wlf,micd-force-micbias;
	wlf,micd-configs = <
		0 1 0 /* MICDET1 MICBIAS1 GPIO=low */
		1 2 1 /* MICDET2 MICBIAS2 GPIO=high */
	>;

	wlf,gpsw = <ARIZONA_GPSW_OPEN>;
};
+125 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/extcon/wlf,arizona.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Cirrus Logic/Wolfson Microelectronics Arizona class audio SoCs

maintainers:
  - patches@opensource.cirrus.com

description: |
  These devices are audio SoCs with extensive digital capabilities and a
  range of analogue I/O.

  This document lists Extcon specific bindings, see the primary binding
  document ../mfd/arizona.yaml

properties:
  wlf,hpdet-channel:
    description:
      Headphone detection channel.  ARIZONA_ACCDET_MODE_HPL/1 sets the
      headphone detect mode to HPDETL, ARIZONA_ACCDET_MODE_HPR/2 sets it
      to HPDETR.  If this node is not included or if the value is unknown,
      then headphone detection mode is set to HPDETL.
    $ref: "/schemas/types.yaml#/definitions/uint32"
    minimum: 1
    maximum: 2

  wlf,use-jd2:
    description:
      Use the additional JD input along with JD1 for dual pin jack detection.
    type: boolean

  wlf,use-jd2-nopull:
    description:
      Internal pull on JD2 is disabled when used for jack detection.
    type: boolean

  wlf,jd-invert:
    description:
      Invert the polarity of the jack detection switch.
    type: boolean

  wlf,micd-software-compare:
    description:
      Use a software comparison to determine mic presence.
    type: boolean

  wlf,micd-detect-debounce:
    description:
      Additional software microphone detection debounce specified in
      milliseconds.
    $ref: "/schemas/types.yaml#/definitions/uint32"

  wlf,micd-pol-gpio:
    description:
      GPIO specifier for the GPIO controlling the headset polarity if one
      exists.
    maxItems: 1

  wlf,micd-bias-start-time:
    description:
      Time allowed for MICBIAS to startup prior to performing microphone
      detection, specified as per the ARIZONA_MICD_TIME_XXX defines.
    $ref: "/schemas/types.yaml#/definitions/uint32"
    minimum: 0
    maximum: 12

  wlf,micd-rate:
    description:
      Delay between successive microphone detection measurements, specified
      as per the ARIZONA_MICD_TIME_XXX defines.
    $ref: "/schemas/types.yaml#/definitions/uint32"
    minimum: 0
    maximum: 12

  wlf,micd-dbtime:
    description:
      Microphone detection hardware debounces specified as the number of
      measurements to take.
    $ref: "/schemas/types.yaml#/definitions/uint32"
    enum: [2, 4]

  wlf,micd-timeout-ms:
    description:
      Timeout for microphone detection, specified in milliseconds.
    $ref: "/schemas/types.yaml#/definitions/uint32"

  wlf,micd-force-micbias:
    description:
      Force MICBIAS continuously on during microphone detection.
    type: boolean

  wlf,micd-configs:
    description:
      Headset polarity configurations (generally used for detection of
      CTIA / OMTP headsets), the field can be of variable length but
      should always be a multiple of 3 cells long, each three cell group
      represents one polarity configuration.
    $ref: "/schemas/types.yaml#/definitions/uint32-matrix"
    items:
      items:
        - description:
            The first cell defines the accessory detection pin, zero
            will use MICDET1 and 0x2000 will use MICDET2.
          enum: [ 0, 0x2000 ]
        - description:
            The second cell represents the MICBIAS to be used. Zero
            will use MICVDD, 1-3 will use MICBIASx.
          minimum: 0
          maximum: 3
        - description:
            The third cell represents the value of the micd-pol-gpio
            pin.
          minimum: 0
          maximum: 1

  wlf,gpsw:
    description:
      Settings for the general purpose switch, set as one of the
      ARIZONA_GPSW_XXX defines.
    $ref: "/schemas/types.yaml#/definitions/uint32"
    minimum: 0
    maximum: 3