Commit 3acbd2de authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull sound updates from Takashi Iwai:
 "There have been little changes in ALSA core stuff, but ASoC core still
  kept rolling for the continued restructuring. The rest are lots of
  small driver-specific changes and some minor API updates. Here are
  highlights:

  General:
  - Appropriate fall-through annotations everywhere
  - Some code cleanup in memalloc code, handling non-cacahed pages more
    commonly in the helper
  - Deployment of SNDRV_PCM_INFO_SYNC_APPLPTR flag consistently

  Drivers:
  - More HD-audio CA0132 codec improvement for supporting other Creative
    boards
  - Plumbing legacy HD-audio codecs as ASoC BE on Intel SST; this will
    give move support of existing HD-audio devices with DSP
  - A few device-specific HD-audio quirks as usual
  - New quirk for RME CC devices and correction for B&W PX for USB-audio
  - FireWire: code refactoring including devres usages

  ASoC Core:
  - Continued componentization works; it's almost done!
  - A bunch of new for_each_foo macros
  - Cleanups and fixes in DAPM code

  ASoC Drivers:
  - MCLK support for several different devices, including CS42L51, STM32
    SAI, and MAX98373
  - Support for Allwinner A64 CODEC analog, Intel boards with DA7219 and
    MAX98927, Meson AXG PDM inputs, Nuvoton NAU8822, Renesas R8A7744 and
    TI PCM3060"

* tag 'sound-4.20-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (299 commits)
  ASoC: stm32: sai: fix master clock naming
  ASoC: stm32: add clock dependency for sai
  ALSA: hda/ca0132 - Actually fix microphone issue
  ASoC: sun4i-i2s: move code from startup/shutdown hooks into pm_runtime hooks
  ASoC: wm2000: Remove wm2000_read helper function
  ASoC: cs42l51: fix mclk support
  ASoC: wm_adsp: Log addresses as 8 digits in wm_adsp_buffer_populate
  ASoC: wm_adsp: Rename memory fields in wm_adsp_buffer
  ASoC: cs42l51: add mclk support
  ASoC: stm32: sai: set sai as mclk clock provider
  ASoC: dt-bindings: add mclk support to cs42l51
  ASoC: dt-bindings: add mclk provider support to stm32 sai
  ASoC: soc-core: fix trivial checkpatch issues
  ASoC: dapm: Add support for hw_free on CODEC to CODEC links
  ASoC: Intel: kbl_da7219_max98927: minor white space clean up
  ALSA: i2c/cs8427: Fix int to char conversion
  ALSA: doc: Brush up the old writing-an-alsa-driver
  ASoC: rsnd: tidyup SSICR::SWSP for TDM
  ASoC: rsnd: enable TDM settings for SSI parent
  ASoC: pcm3168a: add hw constraint for capture channel
  ...
parents d49f8a52 de7d83da
Loading
Loading
Loading
Loading
+54 −0
Original line number Diff line number Diff line
Analog Devices ADAU1977/ADAU1978/ADAU1979

Datasheets:
http://www.analog.com/media/en/technical-documentation/data-sheets/ADAU1977.pdf
http://www.analog.com/media/en/technical-documentation/data-sheets/ADAU1978.pdf
http://www.analog.com/media/en/technical-documentation/data-sheets/ADAU1979.pdf

This driver supports both the I2C and SPI bus.

Required properties:
 - compatible: Should contain one of the following:
               "adi,adau1977"
               "adi,adau1978"
               "adi,adau1979"

 - AVDD-supply: analog power supply for the device, please consult
                Documentation/devicetree/bindings/regulator/regulator.txt

Optional properties:
 - reset-gpio:  the reset pin for the chip, for more details consult
                Documentation/devicetree/bindings/gpio/gpio.txt

 - DVDD-supply: supply voltage for the digital core, please consult
                Documentation/devicetree/bindings/regulator/regulator.txt

For required properties on SPI, please consult
Documentation/devicetree/bindings/spi/spi-bus.txt

Required properties on I2C:

 - reg:         The i2c address. Value depends on the state of ADDR0
                and ADDR1, as wired in hardware.

Examples:

	adau1977_spi: adau1977@0 {
		compatible = "adi,adau1977";
		spi-max-frequency = <600000>;

		AVDD-supply = <&regulator>;
		DVDD-supply = <&regulator_digital>;

		reset_gpio = <&gpio 10 GPIO_ACTIVE_LOW>;
	};

	adau1977_i2c: adau1977@11 {
		compatible = "adi,adau1977";
		reg = <0x11>;

		AVDD-supply = <&regulator>;
		DVDD-supply = <&regulator_digital>;

		reset_gpio = <&gpio 10 GPIO_ACTIVE_LOW>;
	};
+24 −0
Original line number Diff line number Diff line
* Amlogic Audio PDM input

Required properties:
- compatible: 'amlogic,axg-pdm'
- reg: physical base address of the controller and length of memory
       mapped region.
- clocks: list of clock phandle, one for each entry clock-names.
- clock-names: should contain the following:
  * "pclk"   : peripheral clock.
  * "dclk"   : pdm digital clock
  * "sysclk" : dsp system clock
- #sound-dai-cells: must be 0.

Example of PDM on the A113 SoC:

pdm: audio-controller@ff632000 {
	compatible = "amlogic,axg-pdm";
	reg = <0x0 0xff632000 0x0 0x34>;
	#sound-dai-cells = <0>;
	clocks = <&clkc_audio AUD_CLKID_PDM>,
		 <&clkc_audio AUD_CLKID_PDM_DCLK>,
		 <&clkc_audio AUD_CLKID_PDM_SYSCLK>;
	clock-names = "pclk", "dclk", "sysclk";
};
+17 −0
Original line number Diff line number Diff line
CS42L51 audio CODEC

Optional properties:

  - clocks : a list of phandles + clock-specifiers, one for each entry in
    clock-names

  - clock-names : must contain "MCLK"

Example:

cs42l51: cs42l51@4a {
	compatible = "cirrus,cs42l51";
	reg = <0x4a>;
	clocks = <&mclk_prov>;
	clock-names = "MCLK";
};
+23 −0
Original line number Diff line number Diff line
MAX98088 audio CODEC

This device supports I2C only.

Required properties:

- compatible: "maxim,max98088" or "maxim,max98089".
- reg: The I2C address of the device.

Optional properties:

- clocks: the clock provider of MCLK, see ../clock/clock-bindings.txt section
  "consumer" for more information.
- clock-names: must be set to "mclk"

Example:

max98089: codec@10 {
	compatible = "maxim,max98089";
	reg = <0x10>;
	clocks = <&clks IMX6QDL_CLK_CKO2>;
	clock-names = "mclk";
};
+23 −0
Original line number Diff line number Diff line
Mikroe-PROTO audio board

Required properties:
  - compatible: "mikroe,mikroe-proto"
  - dai-format: Must be "i2s".
  - i2s-controller: The phandle of the I2S controller.
  - audio-codec: The phandle of the WM8731 audio codec.
Optional properties:
  - model: The user-visible name of this sound complex.
  - bitclock-master: Indicates dai-link bit clock master; for details see simple-card.txt (1).
  - frame-master: Indicates dai-link frame master; for details see simple-card.txt (1).

(1) : There must be the same master for both bit and frame clocks.

Example:
	sound {
		compatible = "mikroe,mikroe-proto";
		model = "wm8731 @ sama5d2_xplained";
		i2s-controller = <&i2s0>;
		audio-codec = <&wm8731>;
		dai-format = "i2s";
        };
};
Loading