Commit 080615b7 authored by Takashi Iwai's avatar Takashi Iwai
Browse files

Merge tag 'asoc-v7.1' of...

Merge tag 'asoc-v7.1' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus

ASoC: Updates for v7.1

There's one new core feature here but mostly this has been a fairly
quiet release, we've got a few new drivers and one core feature that's
likely to be relatively rarely used but the bulk of the work this time
around has been on quality.

 - Support for bus keepers, this will be used by the Apple device
   support.
 - Enhancements to the SDCA support, incuding retaskable jacks.
 - Unwinding of the pcm_new()/pcm_free() cleanups from Morimoto-san.
 - Test improvements for the Cirrus Logic drivers.
 - Large sets of fixes for the NXP, nVidia and Qualcomm drivers.
 - Support for AMD RPL DMICs, Cirrus Logic CS42L43 and CS47L47, nVidia
   machines with CPCAP and WM8962.
parents 67f4c61a 115e7d76
Loading
Loading
Loading
Loading
+0 −14
Original line number Diff line number Diff line
Analog Devices SSM2305 Speaker Amplifier
========================================

Required properties:
  - compatible : "adi,ssm2305"
  - shutdown-gpios : The gpio connected to the shutdown pin.
                     The gpio signal is ACTIVE_LOW.

Example:

ssm2305: analog-amplifier {
	compatible = "adi,ssm2305";
	shutdown-gpios = <&gpio3 20 GPIO_ACTIVE_LOW>;
};
+46 −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/sound/adi,ssm2305.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Analog Devices SSM2305 Class-D Speaker Amplifier

maintainers:
  - Lars-Peter Clausen <lars@metafoo.de>

description:
  The SSM2305 is a filterless, high efficiency, mono 2.8 W Class-D
  audio amplifier with a micropower shutdown mode controlled via a
  dedicated active-low GPIO pin.

allOf:
  - $ref: dai-common.yaml#

properties:
  compatible:
    const: adi,ssm2305

  shutdown-gpios:
    maxItems: 1
    description:
      GPIO connected to the shutdown pin (SD) of the SSM2305.
      The pin is active-low; asserting it puts the device into
      micropower shutdown mode.

required:
  - compatible
  - shutdown-gpios

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/gpio/gpio.h>

    analog-amplifier {
        compatible = "adi,ssm2305";
        shutdown-gpios = <&gpio3 20 GPIO_ACTIVE_LOW>;
    };

...
+4 −0
Original line number Diff line number Diff line
@@ -35,6 +35,10 @@ properties:

  dvdd-supply: true

  firmware-name:
    maxItems: 1
    description: Name of the *_acf.bin file used for amplifier initialization

  awinic,audio-channel:
    description:
      It is used to distinguish multiple PA devices, so that different
+3 −0
Original line number Diff line number Diff line
@@ -16,6 +16,8 @@ description: |
  DAC for headphone output, two integrated Class D amplifiers for
  loudspeakers, and two ADCs for wired headset microphone input or
  stereo line input. PDM inputs are provided for digital microphones.
  CS42L43B variant adds dedicated PDM interface, SoundWire Clock Gearing
  support and more decimators to ISRCs.

allOf:
  - $ref: dai-common.yaml#
@@ -24,6 +26,7 @@ properties:
  compatible:
    enum:
      - cirrus,cs42l43
      - cirrus,cs42l43b

  reg:
    maxItems: 1
+0 −42
Original line number Diff line number Diff line
* Hisilicon 6210 i2s controller

Required properties:

- compatible: should be one of the following:
   - "hisilicon,hi6210-i2s"
- reg: physical base address of the i2s controller unit and length of
   memory mapped region.
- interrupts: should contain the i2s interrupt.
- clocks: a list of phandle + clock-specifier pairs, one for each entry
  in clock-names.
- clock-names: should contain following:
   - "dacodec"
   - "i2s-base"
- dmas: DMA specifiers for tx dma. See the DMA client binding,
  Documentation/devicetree/bindings/dma/dma.txt
- dma-names: should be "tx" and "rx"
- hisilicon,sysctrl-syscon: phandle to sysctrl syscon
- #sound-dai-cells: Should be set to 1 (for multi-dai)
   - The dai cell indexes reference the following interfaces:
       0: S2 interface
       (Currently that is the only one available, but more may be
        supported in the future)

Example for the hi6210 i2s controller:

i2s0: i2s@f7118000{
	compatible = "hisilicon,hi6210-i2s";
	reg = <0x0 0xf7118000 0x0 0x8000>; /* i2s unit */
	interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>; /* 155 "DigACodec_intr"-32 */
	clocks = <&sys_ctrl HI6220_DACODEC_PCLK>,
		 <&sys_ctrl HI6220_BBPPLL0_DIV>;
	clock-names = "dacodec", "i2s-base";
	dmas = <&dma0 15 &dma0 14>;
	dma-names = "rx", "tx";
	hisilicon,sysctrl-syscon = <&sys_ctrl>;
	#sound-dai-cells = <1>;
};

Then when referencing the i2s controller:
	sound-dai = <&i2s0 0>; /* index 0 => S2 interface */
Loading