CS42L42 audio CODEC

Required properties:

  - compatible : "cirrus,cs42l42"

  - reg : the I2C address of the device for I2C.

  - VP-supply, VCP-supply, VD_FILT-supply, VL-supply, VA-supply :
  power supplies for the device, as covered in
  Documentation/devicetree/bindings/regulator/regulator.txt.

Optional properties:

  - reset-gpios : a GPIO spec for the reset pin. If specified, it will be
  deasserted before communication to the codec starts.

  - interrupt-parent : Specifies the phandle of the interrupt controller to
  which the IRQs from CS42L42 are delivered to.

  - interrupts : IRQ line info CS42L42.
  (See Documentation/devicetree/bindings/interrupt-controller/interrupts.txt
  for further information relating to interrupt properties)

  - cirrus,ts-inv : Boolean property. For jacks that invert the tip sense
  polarity. Normal jacks will short tip sense pin to HS1 when headphones are
  plugged in and leave tip sense floating when not plugged in. Inverting jacks
  short tip sense when unplugged and float when plugged in.

  0 = (Default) Non-inverted
  1 = Inverted

  - cirrus,ts-dbnc-rise : Debounce the rising edge of TIP_SENSE_PLUG. With no
  debounce, the tip sense pin might be noisy on a plug event.

  0 - 0ms,
  1 - 125ms,
  2 - 250ms,
  3 - 500ms,
  4 - 750ms,
  5 - (Default) 1s,
  6 - 1.25s,
  7 - 1.5s,

  - cirrus,ts-dbnc-fall : Debounce the falling edge of TIP_SENSE_UNPLUG.
  With no debounce, the tip sense pin might be noisy on an unplug event.

  0 - 0ms,
  1 - 125ms,
  2 - 250ms,
  3 - 500ms,
  4 - 750ms,
  5 - (Default) 1s,
  6 - 1.25s,
  7 - 1.5s,

  - cirrus,btn-det-init-dbnce : This sets how long the driver sleeps after
  enabling button detection interrupts. After auto-detection and before
  servicing button interrupts, the HS bias needs time to settle. If you
  don't wait, there is possibility for erroneous button interrupt.

  0ms - 200ms,
  Default = 100ms

  - cirrus,btn-det-event-dbnce : This sets how long the driver delays after
  receiving a button press interrupt. With level detect interrupts, you want
  to wait a small amount of time to make sure the button press is making a
  clean connection with the bias resistors.

  0ms - 20ms,
  Default = 10ms

  - cirrus,bias-lvls : For a level-detect headset button scheme, each button
  will bias the mic pin to a certain voltage. To determine which button was
  pressed, the driver will compare this biased voltage to sequential,
  decreasing voltages and will stop when a comparator is tripped,
  indicating a comparator voltage < bias voltage. This value represents a
  percentage of the internally generated HS bias voltage. For different
  hardware setups, a designer might want to tweak this. This is an array of
  descending values for the comparator voltage.

  Array of 4 values
  Each 0-63
  < x1 x2 x3 x4 >
  Default = < 15 8 4 1>


Example:

cs42l42: cs42l42@48 {
	compatible = "cirrus,cs42l42";
	reg = <0x48>;
	VA-supply = <&dummy_vreg>;
	VP-supply = <&dummy_vreg>;
	VCP-supply = <&dummy_vreg>;
	VD_FILT-supply = <&dummy_vreg>;
	VL-supply = <&dummy_vreg>;

	reset-gpios = <&axi_gpio_0 1 0>;
	interrupt-parent = <&gpio0>;
	interrupts = <55 8>

	cirrus,ts-inv = <0x00>;
	cirrus,ts-dbnc-rise = <0x05>;
	cirrus,ts-dbnc-fall = <0x00>;
	cirrus,btn-det-init-dbnce = <100>;
	cirrus,btn-det-event-dbnce = <10>;
	cirrus,bias-lvls = <0x0F 0x08 0x04 0x01>;
	cirrus,hs-bias-ramp-rate = <0x02>;
};