Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
…/git/broonie/sound into for-next

ASoC: Updates for v5.20

This is a big release thus far and there will probably be more changes
to come, it's a combination of a larger than usual crop of new drivers
and some subsysetm wide cleanups from Charles rather than anything
structural.  The SOF and Intel DSP code both also continue to be very
actively developed.

 - Restructing of the set_fmt() callbacks to be specified in terms of
   the device rather than with semantics depending on if the device is
   supposed to be a CODEC or SoC, making things clearer in situations
   like CODEC to CODEC links.
 - Clean up of the way we flag which DAI naming scheme we use to reflect
   the progress that's been made modernising things.
 - Merge of more of the Intel AVS driver stack, including some board
   integrations.
 - New version 4 mechanism for communication with SOF DSPs.
 - Suppoort for dynamically selecting the PLL to use at runtime on i.MX
   platforms.
 - Improvements for CODEC to CODEC support in the generic cards.
 - Support for AMD Jadeite and various machines, Intel MetorLake DSPs,
   Mediatek MT8186 DSPs and MT6366, nVidia Tegra MDDRC, OPE and PEQ, NXP
   TFA9890, Qualcomm SDM845, WCD9335 and WAS883x, and Texas Instruments
   TAS2780.
  • Loading branch information
Takashi Iwai committed Jul 15, 2022
2 parents ffb2759 + 7fb72b7 commit 29a249d
Show file tree
Hide file tree
Showing 688 changed files with 28,062 additions and 3,390 deletions.
91 changes: 91 additions & 0 deletions Documentation/devicetree/bindings/dsp/mediatek,mt8186-dsp.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/dsp/mediatek,mt8186-dsp.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: MediaTek mt8186 DSP core

maintainers:
- Tinghan Shen <tinghan.shen@mediatek.com>

description: |
MediaTek mt8186 SoC contains a DSP core used for
advanced pre- and post- audio processing.
properties:
compatible:
const: mediatek,mt8186-dsp

reg:
items:
- description: Address and size of the DSP config registers
- description: Address and size of the DSP SRAM
- description: Address and size of the DSP secure registers
- description: Address and size of the DSP bus registers

reg-names:
items:
- const: cfg
- const: sram
- const: sec
- const: bus

clocks:
items:
- description: mux for audio dsp clock
- description: mux for audio dsp local bus

clock-names:
items:
- const: audiodsp
- const: adsp_bus

power-domains:
maxItems: 1

mboxes:
items:
- description: mailbox for receiving audio DSP requests.
- description: mailbox for transmitting requests to audio DSP.

mbox-names:
items:
- const: rx
- const: tx

memory-region:
items:
- description: dma buffer between host and DSP.
- description: DSP system memory.

required:
- compatible
- reg
- reg-names
- clocks
- clock-names
- power-domains
- mbox-names
- mboxes

additionalProperties: false

examples:
- |
#include <dt-bindings/clock/mt8186-clk.h>
dsp@10680000 {
compatible = "mediatek,mt8186-dsp";
reg = <0x10680000 0x2000>,
<0x10800000 0x100000>,
<0x1068b000 0x100>,
<0x1068f000 0x1000>;
reg-names = "cfg", "sram", "sec", "bus";
clocks = <&topckgen CLK_TOP_AUDIODSP>,
<&topckgen CLK_TOP_ADSP_BUS>;
clock-names = "audiodsp",
"adsp_bus";
power-domains = <&spm 6>;
mbox-names = "rx", "tx";
mboxes = <&adsp_mailbox0>, <&adsp_mailbox1>;
};
10 changes: 5 additions & 5 deletions Documentation/devicetree/bindings/dsp/mediatek,mt8195-dsp.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -50,13 +50,13 @@ properties:

mboxes:
items:
- description: ipc reply between host and audio DSP.
- description: ipc request between host and audio DSP.
- description: mailbox for receiving audio DSP requests.
- description: mailbox for transmitting requests to audio DSP.

mbox-names:
items:
- const: mbox0
- const: mbox1
- const: rx
- const: tx

memory-region:
items:
Expand Down Expand Up @@ -100,6 +100,6 @@ examples:
memory-region = <&adsp_dma_mem_reserved>,
<&adsp_mem_reserved>;
power-domains = <&spm 6>; //MT8195_POWER_DOMAIN_ADSP
mbox-names = "mbox0", "mbox1";
mbox-names = "rx", "tx";
mboxes = <&adsp_mailbox0>, <&adsp_mailbox1>;
};
30 changes: 29 additions & 1 deletion Documentation/devicetree/bindings/sound/adi,max98396.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,21 @@ properties:
maxItems: 1
description: I2C address of the device.

avdd-supply:
description: A 1.8V supply that powers up the AVDD pin.

dvdd-supply:
description: A 1.2V supply that powers up the DVDD pin.

dvddio-supply:
description: A 1.2V or 1.8V supply that powers up the VDDIO pin.

pvdd-supply:
description: A 3.0V to 20V supply that powers up the PVDD pin.

vbat-supply:
description: A 3.3V to 5.5V supply that powers up the VBAT pin.

adi,vmon-slot-no:
description: slot number of the voltage sense monitor
$ref: "/schemas/types.yaml#/definitions/uint32"
Expand All @@ -36,13 +51,22 @@ properties:
$ref: "/schemas/types.yaml#/definitions/uint32"
minimum: 0
maximum: 15
default: 0
default: 1

adi,spkfb-slot-no:
description: slot number of speaker DSP monitor
$ref: "/schemas/types.yaml#/definitions/uint32"
minimum: 0
maximum: 15
default: 2

adi,bypass-slot-no:
description:
Selects the PCM data input channel that is routed to the speaker
audio processing bypass path.
$ref: "/schemas/types.yaml#/definitions/uint32"
minimum: 0
maximum: 15
default: 0

adi,interleave-mode:
Expand Down Expand Up @@ -72,6 +96,10 @@ examples:
max98396: amplifier@39 {
compatible = "adi,max98396";
reg = <0x39>;
dvdd-supply = <&regulator_1v2>;
dvddio-supply = <&regulator_1v8>;
avdd-supply = <&regulator_1v8>;
pvdd-supply = <&regulator_pvdd>;
adi,vmon-slot-no = <0>;
adi,imon-slot-no = <1>;
reset-gpios = <&gpio 4 GPIO_ACTIVE_LOW>;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,11 @@ properties:
description:
Regulator for the headphone amplifier

allwinner,internal-bias-resistor:
description:
Enable the internal 2.2K bias resistor between HBIAS and MICDET pins
type: boolean

required:
- compatible
- reg
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ Board connectors:
* Line In Jack

wm8731 pins:
cf Documentation/devicetree/bindings/sound/wm8731.txt
cf Documentation/devicetree/bindings/sound/wlf,wm8731.yaml

Example:
sound {
Expand Down
35 changes: 0 additions & 35 deletions Documentation/devicetree/bindings/sound/designware-i2s.txt

This file was deleted.

33 changes: 0 additions & 33 deletions Documentation/devicetree/bindings/sound/fsl,micfil.txt

This file was deleted.

85 changes: 85 additions & 0 deletions Documentation/devicetree/bindings/sound/fsl,micfil.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/sound/fsl,micfil.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: NXP MICFIL Digital Audio Interface (MICFIL)

maintainers:
- Shengjiu Wang <shengjiu.wang@nxp.com>

description: |
The MICFIL digital interface provides a 16-bit or 24-bit audio signal
from a PDM microphone bitstream in a configurable output sampling rate.
properties:
compatible:
enum:
- fsl,imx8mm-micfil
- fsl,imx8mp-micfil

reg:
maxItems: 1

interrupts:
items:
- description: Digital Microphone interface interrupt
- description: Digital Microphone interface error interrupt
- description: voice activity detector event interrupt
- description: voice activity detector error interrupt

dmas:
items:
- description: DMA controller phandle and request line for RX

dma-names:
items:
- const: rx

clocks:
items:
- description: The ipg clock for register access
- description: internal micfil clock
- description: PLL clock source for 8kHz series
- description: PLL clock source for 11kHz series
- description: External clock 3
minItems: 2

clock-names:
items:
- const: ipg_clk
- const: ipg_clk_app
- const: pll8k
- const: pll11k
- const: clkext3
minItems: 2

required:
- compatible
- reg
- interrupts
- dmas
- dma-names
- clocks
- clock-names

additionalProperties: false

examples:
- |
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/clock/imx8mm-clock.h>
micfil: audio-controller@30080000 {
compatible = "fsl,imx8mm-micfil";
reg = <0x30080000 0x10000>;
interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clk IMX8MM_CLK_PDM_IPG>,
<&clk IMX8MM_CLK_PDM_ROOT>;
clock-names = "ipg_clk", "ipg_clk_app";
dmas = <&sdma2 24 25 0>;
dma-names = "rx";
};
2 changes: 1 addition & 1 deletion Documentation/devicetree/bindings/sound/fsl,mqs.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ fsl,mqs audio CODEC

Required properties:
- compatible : Must contain one of "fsl,imx6sx-mqs", "fsl,codec-mqs"
"fsl,imx8qm-mqs", "fsl,imx8qxp-mqs".
"fsl,imx8qm-mqs", "fsl,imx8qxp-mqs", "fsl,imx93-mqs".
- clocks : A list of phandles + clock-specifiers, one for each entry in
clock-names
- clock-names : "mclk" - must required.
Expand Down
4 changes: 4 additions & 0 deletions Documentation/devicetree/bindings/sound/fsl,spdif.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,8 @@ properties:
slave of the Shared Peripheral Bus and when two or more bus masters
(CPU, DMA or DSP) try to access it. This property is optional depending
on the SoC design.
- description: PLL clock source for 8kHz series rate, optional.
- description: PLL clock source for 11khz series rate, optional.
minItems: 9

clock-names:
Expand All @@ -72,6 +74,8 @@ properties:
- const: rxtx6
- const: rxtx7
- const: spba
- const: pll8k
- const: pll11k
minItems: 9

big-endian:
Expand Down
Loading

0 comments on commit 29a249d

Please sign in to comment.