Skip to content

Commit

Permalink
Merge branch 'asoc-4.19' into asoc-next
Browse files Browse the repository at this point in the history
  • Loading branch information
broonie committed Aug 9, 2018
2 parents 6c08483 + f2cf0ef commit 4aa5db2
Show file tree
Hide file tree
Showing 312 changed files with 15,488 additions and 4,288 deletions.
23 changes: 23 additions & 0 deletions Documentation/devicetree/bindings/sound/amlogic,axg-fifo.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
* Amlogic Audio FIFO controllers

Required properties:
- compatible: 'amlogic,axg-toddr' or
'amlogic,axg-frddr'
- reg: physical base address of the controller and length of memory
mapped region.
- interrupts: interrupt specifier for the fifo.
- clocks: phandle to the fifo peripheral clock provided by the audio
clock controller.
- resets: phandle to memory ARB line provided by the arb reset controller.
- #sound-dai-cells: must be 0.

Example of FRDDR A on the A113 SoC:

frddr_a: audio-controller@1c0 {
compatible = "amlogic,axg-frddr";
reg = <0x0 0x1c0 0x0 0x1c>;
#sound-dai-cells = <0>;
interrupts = <GIC_SPI 88 IRQ_TYPE_EDGE_RISING>;
clocks = <&clkc_audio AUD_CLKID_FRDDR_A>;
resets = <&arb AXG_ARB_FRDDR_A>;
};
124 changes: 124 additions & 0 deletions Documentation/devicetree/bindings/sound/amlogic,axg-sound-card.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
Amlogic AXG sound card:

Required properties:

- compatible: "amlogic,axg-sound-card"
- model : User specified audio sound card name, one string

Optional properties:

- audio-aux-devs : List of phandles pointing to auxiliary devices
- audio-widgets : Please refer to widgets.txt.
- audio-routing : A list of the connections between audio components.

Subnodes:

- dai-link: Container for dai-link level properties and the CODEC
sub-nodes. There should be at least one (and probably more)
subnode of this type.

Required dai-link properties:

- sound-dai: phandle and port of the CPU DAI.

Required TDM Backend dai-link properties:
- dai-format : CPU/CODEC common audio format

Optional TDM Backend dai-link properties:
- dai-tdm-slot-rx-mask-{0,1,2,3}: Receive direction slot masks
- dai-tdm-slot-tx-mask-{0,1,2,3}: Transmit direction slot masks
When omitted, mask is assumed to have to no
slots. A valid must have at one slot, so at
least one these mask should be provided with
an enabled slot.
- dai-tdm-slot-num : Please refer to tdm-slot.txt.
If omitted, slot number is set to accommodate the largest
mask provided.
- dai-tdm-slot-width : Please refer to tdm-slot.txt. default to 32 if omitted.
- mclk-fs : Multiplication factor between stream rate and mclk

Backend dai-link subnodes:

- codec: dai-link representing backend links should have at least one subnode.
One subnode for each codec of the dai-link.
dai-link representing frontend links have no codec, therefore have no
subnodes

Required codec subnodes properties:

- sound-dai: phandle and port of the CODEC DAI.

Optional codec subnodes properties:

- dai-tdm-slot-tx-mask : Please refer to tdm-slot.txt.
- dai-tdm-slot-rx-mask : Please refer to tdm-slot.txt.

Example:

sound {
compatible = "amlogic,axg-sound-card";
model = "AXG-S420";
audio-aux-devs = <&tdmin_a>, <&tdmout_c>;
audio-widgets = "Line", "Lineout",
"Line", "Linein",
"Speaker", "Speaker1 Left",
"Speaker", "Speaker1 Right";
"Speaker", "Speaker2 Left",
"Speaker", "Speaker2 Right";
audio-routing = "TDMOUT_C IN 0", "FRDDR_A OUT 2",
"SPDIFOUT IN 0", "FRDDR_A OUT 3",
"TDM_C Playback", "TDMOUT_C OUT",
"TDMIN_A IN 2", "TDM_C Capture",
"TDMIN_A IN 5", "TDM_C Loopback",
"TODDR_A IN 0", "TDMIN_A OUT",
"Lineout", "Lineout AOUTL",
"Lineout", "Lineout AOUTR",
"Speaker1 Left", "SPK1 OUT_A",
"Speaker2 Left", "SPK2 OUT_A",
"Speaker1 Right", "SPK1 OUT_B",
"Speaker2 Right", "SPK2 OUT_B",
"Linein AINL", "Linein",
"Linein AINR", "Linein";

dai-link@0 {
sound-dai = <&frddr_a>;
};

dai-link@1 {
sound-dai = <&toddr_a>;
};

dai-link@2 {
sound-dai = <&tdmif_c>;
dai-format = "i2s";
dai-tdm-slot-tx-mask-2 = <1 1>;
dai-tdm-slot-tx-mask-3 = <1 1>;
dai-tdm-slot-rx-mask-1 = <1 1>;
mclk-fs = <256>;

codec@0 {
sound-dai = <&lineout>;
};

codec@1 {
sound-dai = <&speaker_amp1>;
};

codec@2 {
sound-dai = <&speaker_amp2>;
};

codec@3 {
sound-dai = <&linein>;
};

};

dai-link@3 {
sound-dai = <&spdifout>;

codec {
sound-dai = <&spdif_dit>;
};
};
};
20 changes: 20 additions & 0 deletions Documentation/devicetree/bindings/sound/amlogic,axg-spdifout.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
* Amlogic Audio SPDIF Output

Required properties:
- compatible: 'amlogic,axg-spdifout'
- clocks: list of clock phandle, one for each entry clock-names.
- clock-names: should contain the following:
* "pclk" : peripheral clock.
* "mclk" : master clock
- #sound-dai-cells: must be 0.

Example on the A113 SoC:

spdifout: audio-controller@480 {
compatible = "amlogic,axg-spdifout";
reg = <0x0 0x480 0x0 0x50>;
#sound-dai-cells = <0>;
clocks = <&clkc_audio AUD_CLKID_SPDIFOUT>,
<&clkc_audio AUD_CLKID_SPDIFOUT_CLK>;
clock-names = "pclk", "mclk";
};
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
* Amlogic Audio TDM formatters

Required properties:
- compatible: 'amlogic,axg-tdmin' or
'amlogic,axg-tdmout'
- 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.
* "sclk" : bit clock.
* "sclk_sel" : bit clock input multiplexer.
* "lrclk" : sample clock
* "lrclk_sel": sample clock input multiplexer

Example of TDMOUT_A on the A113 SoC:

tdmout_a: audio-controller@500 {
compatible = "amlogic,axg-tdmout";
reg = <0x0 0x500 0x0 0x40>;
clocks = <&clkc_audio AUD_CLKID_TDMOUT_A>,
<&clkc_audio AUD_CLKID_TDMOUT_A_SCLK>,
<&clkc_audio AUD_CLKID_TDMOUT_A_SCLK_SEL>,
<&clkc_audio AUD_CLKID_TDMOUT_A_LRCLK>,
<&clkc_audio AUD_CLKID_TDMOUT_A_LRCLK>;
clock-names = "pclk", "sclk", "sclk_sel",
"lrclk", "lrclk_sel";
};
22 changes: 22 additions & 0 deletions Documentation/devicetree/bindings/sound/amlogic,axg-tdm-iface.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
* Amlogic Audio TDM Interfaces

Required properties:
- compatible: 'amlogic,axg-tdm-iface'
- clocks: list of clock phandle, one for each entry clock-names.
- clock-names: should contain the following:
* "sclk" : bit clock.
* "lrclk": sample clock
* "mclk" : master clock
-> optional if the interface is in clock slave mode.
- #sound-dai-cells: must be 0.

Example of TDM_A on the A113 SoC:

tdmif_a: audio-controller@0 {
compatible = "amlogic,axg-tdm-iface";
#sound-dai-cells = <0>;
clocks = <&clkc_audio AUD_CLKID_MST_A_MCLK>,
<&clkc_audio AUD_CLKID_MST_A_SCLK>,
<&clkc_audio AUD_CLKID_MST_A_LRCLK>;
clock-names = "mclk", "sclk", "lrclk";
};
11 changes: 5 additions & 6 deletions Documentation/devicetree/bindings/sound/atmel-i2s.txt
Original file line number Diff line number Diff line change
Expand Up @@ -15,17 +15,16 @@ Required properties:
- clock-names: Should be one of each entry matching the clocks phandles list:
- "pclk" (peripheral clock) Required.
- "gclk" (generated clock) Optional (1).
- "aclk" (Audio PLL clock) Optional (1).
- "muxclk" (I2S mux clock) Optional (1).

Optional properties:
- pinctrl-0: Should specify pin control groups used for this controller.
- princtrl-names: Should contain only one value - "default".


(1) : Only the peripheral clock is required. The generated clock, the Audio
PLL clock adn the I2S mux clock are optional and should only be set
together, when Master Mode is required.
(1) : Only the peripheral clock is required. The generated clock and the I2S
mux clock are optional and should only be set together, when Master Mode
is required.

Example:

Expand All @@ -40,8 +39,8 @@ Example:
(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) |
AT91_XDMAC_DT_PERID(32))>;
dma-names = "tx", "rx";
clocks = <&i2s0_clk>, <&i2s0_gclk>, <&audio_pll_pmc>, <&i2s0muxck>;
clock-names = "pclk", "gclk", "aclk", "muxclk";
clocks = <&i2s0_clk>, <&i2s0_gclk>, <&i2s0muxck>;
clock-names = "pclk", "gclk", "muxclk";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_i2s0_default>;
};
2 changes: 2 additions & 0 deletions Documentation/devicetree/bindings/sound/audio-graph-card.txt
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ Below are same as Simple-Card.
- bitclock-inversion
- frame-inversion
- mclk-fs
- hp-det-gpio
- mic-det-gpio
- dai-tdm-slot-num
- dai-tdm-slot-width
- clocks / system-clock-frequency
Expand Down
12 changes: 0 additions & 12 deletions Documentation/devicetree/bindings/sound/dioo,dio2125.txt

This file was deleted.

7 changes: 6 additions & 1 deletion Documentation/devicetree/bindings/sound/everest,es7134.txt
Original file line number Diff line number Diff line change
@@ -1,10 +1,15 @@
ES7134 i2s DA converter

Required properties:
- compatible : "everest,es7134" or "everest,es7144"
- compatible : "everest,es7134" or
"everest,es7144" or
"everest,es7154"
- VDD-supply : regulator phandle for the VDD supply
- PVDD-supply: regulator phandle for the PVDD supply for the es7154

Example:

i2s_codec: external-codec {
compatible = "everest,es7134";
VDD-supply = <&vcc_5v>;
};
28 changes: 28 additions & 0 deletions Documentation/devicetree/bindings/sound/everest,es7241.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
ES7241 i2s AD converter

Required properties:
- compatible : "everest,es7241"
- VDDP-supply: regulator phandle for the VDDA supply
- VDDA-supply: regulator phandle for the VDDP supply
- VDDD-supply: regulator phandle for the VDDD supply

Optional properties:
- reset-gpios: gpio connected to the reset pin
- m0-gpios : gpio connected to the m0 pin
- m1-gpios : gpio connected to the m1 pin
- everest,sdout-pull-down:
Format used by the serial interface is controlled by pulling
the sdout. If the sdout is pulled down, leftj format is used.
If this property is not provided, sdout is assumed to pulled
up and i2s format is used

Example:

linein: audio-codec@2 {
#sound-dai-cells = <0>;
compatible = "everest,es7241";
VDDA-supply = <&vcc_3v3>;
VDDP-supply = <&vcc_3v3>;
VDDD-supply = <&vcc_3v3>;
reset-gpios = <&gpio GPIOH_42>;
};
27 changes: 27 additions & 0 deletions Documentation/devicetree/bindings/sound/marvell,pxa2xx-ac97.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
Marvell PXA2xx audio complex

This descriptions matches the AC97 controller found in pxa2xx and pxa3xx series.

Required properties:
- compatible: should be one of the following:
"marvell,pxa250-ac97"
"marvell,pxa270-ac97"
"marvell,pxa300-ac97"
- reg: device MMIO address space
- interrupts: single interrupt generated by AC97 IP
- clocks: input clock of the AC97 IP, refer to clock-bindings.txt

Optional properties:
- pinctrl-names, pinctrl-0: refer to pinctrl-bindings.txt
- reset-gpios: gpio used for AC97 reset, refer to gpio.txt

Example:
ac97: sound@40500000 {
compatible = "marvell,pxa250-ac97";
reg = < 0x40500000 0x1000 >;
interrupts = <14>;
reset-gpios = <&gpio 113 GPIO_ACTIVE_HIGH>;
#sound-dai-cells = <1>;
pinctrl-names = "default";
pinctrl-0 = < &pmux_ac97_default >;
};
8 changes: 8 additions & 0 deletions Documentation/devicetree/bindings/sound/mrvl,pxa-ssp.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,14 @@ Required properties:
compatible Must be "mrvl,pxa-ssp-dai"
port A phandle reference to a PXA ssp upstream device

Optional properties:

clock-names
clocks Through "clock-names" and "clocks", external clocks
can be configured. If a clock names "extclk" exists,
it will be set to the mclk rate of the audio stream
and be used as clock provider of the DAI.

Example:

/* upstream device */
Expand Down
15 changes: 0 additions & 15 deletions Documentation/devicetree/bindings/sound/mrvl,pxa2xx-pcm.txt

This file was deleted.

Loading

0 comments on commit 4aa5db2

Please sign in to comment.