Loading Documentation/devicetree/bindings/sound/samsung,odroid.txt +5 −3 Original line number Diff line number Diff line Loading @@ -2,8 +2,10 @@ Samsung Exynos Odroid XU3/XU4 audio complex with MAX98090 codec Required properties: - compatible - "samsung,odroidxu3-audio" - for Odroid XU3 board, "samsung,odroidxu4-audio" - for Odroid XU4 board - compatible - "hardkernel,odroid-xu3-audio" - for Odroid XU3 board, "hardkernel,odroid-xu4-audio" - for Odroid XU4 board (deprecated), "samsung,odroid-xu3-audio" - for Odroid XU3 board (deprecated), "samsung,odroid-xu4-audio" - for Odroid XU4 board (deprecated) - model - the user-visible name of this sound complex - clocks - should contain entries matching clock names in the clock-names property Loading Loading @@ -35,7 +37,7 @@ Required sub-nodes: Example: sound { compatible = "samsung,odroidxu3-audio"; compatible = "hardkernel,odroid-xu3-audio"; model = "Odroid-XU3"; samsung,audio-routing = "Headphone Jack", "HPL", Loading Documentation/devicetree/bindings/sound/samsung,tm2-audio.txt +9 −5 Original line number Diff line number Diff line Loading @@ -4,9 +4,13 @@ Required properties: - compatible : "samsung,tm2-audio" - model : the user-visible name of this sound complex - audio-codec : the phandle of the wm5110 audio codec node, as described in ../mfd/arizona.txt - i2s-controller : the phandle of the I2S controller - audio-codec : the first entry should be phandle of the wm5110 audio codec node, as described in ../mfd/arizona.txt; the second entry should be phandle of the HDMI transmitter node - i2s-controller : the list of phandle and argument tuples pointing to I2S controllers, the first entry should be I2S0 and the second one I2S1 - audio-amplifier : the phandle of the MAX98504 amplifier - samsung,audio-routing : a list of the connections between audio components; each entry is a pair of strings, the first being the Loading @@ -22,8 +26,8 @@ Example: sound { compatible = "samsung,tm2-audio"; audio-codec = <&wm5110>; i2s-controller = <&i2s0>; audio-codec = <&wm5110>, <&hdmi>; i2s-controller = <&i2s0 0>, <&i2s1 0>; audio-amplifier = <&max98504>; mic-bias-gpios = <&gpr3 2 0>; model = "wm5110"; Loading Documentation/devicetree/bindings/sound/samsung-i2s.txt +12 −10 Original line number Diff line number Diff line Loading @@ -7,7 +7,7 @@ Required SoC Specific Properties: - samsung,s5pv210-i2s: for 8/16/24bit multichannel(5.1) I2S with secondary fifo, s/w reset control and internal mux for root clk src. - samsung,exynos5420-i2s: for 8/16/24bit multichannel(5.1) I2S for playback, sterio channel capture, secondary fifo using internal playback, stereo channel capture, secondary fifo using internal or external dma, s/w reset control, internal mux for root clk src and 7.1 channel TDM support for playback. TDM (Time division multiplexing) is to allow transfer of multiple channel audio data on single data line. Loading @@ -25,7 +25,7 @@ Required SoC Specific Properties: These strings correspond 1:1 with the ordered pairs in dmas. - clocks: Handle to iis clock and RCLK source clk. - clock-names: i2s0 uses some base clks from CMU and some are from audio subsystem internal i2s0 uses some base clocks from CMU and some are from audio subsystem internal clock controller. The clock names for i2s0 should be "iis", "i2s_opclk0" and "i2s_opclk1" as shown in the example below. i2s1 and i2s2 uses clocks from CMU. The clock names for i2s1 and i2s2 should Loading @@ -36,9 +36,9 @@ Required SoC Specific Properties: - #clock-cells: should be 1, this property must be present if the I2S device is a clock provider in terms of the common clock bindings, described in ../clock/clock-bindings.txt. - clock-output-names: from the common clock bindings, names of the CDCLK I2S output clocks, suggested values are "i2s_cdclk0", "i2s_cdclk1", "i2s_cdclk3" for the I2S0, I2S1, I2S2 devices recpectively. - clock-output-names (deprecated): from the common clock bindings, names of the CDCLK I2S output clocks, suggested values are "i2s_cdclk0", "i2s_cdclk1", "i2s_cdclk3" for the I2S0, I2S1, I2S2 devices respectively. There are following clocks available at the I2S device nodes: CLK_I2S_CDCLK - the CDCLK (CODECLKO) gate clock, Loading @@ -49,9 +49,10 @@ There are following clocks available at the I2S device nodes: Refer to the SoC datasheet for availability of the above clocks. The CLK_I2S_RCLK_PSR and CLK_I2S_RCLK_SRC clocks are usually only available in the IIS Multi Audio Interface (I2S0). Note: Old DTs may not have the #clock-cells, clock-output-names properties and then not use the I2S node as a clock supplier. in the IIS Multi Audio Interface. Note: Old DTs may not have the #clock-cells property and then not use the I2S node as a clock supplier. Optional SoC Specific Properties: Loading @@ -59,6 +60,7 @@ Optional SoC Specific Properties: sub system(used in secondary sound source). - pinctrl-0: Should specify pin control groups used for this controller. - pinctrl-names: Should contain only one value - "default". - #sound-dai-cells: should be 1. Example: Loading @@ -74,9 +76,9 @@ i2s0: i2s@3830000 { <&clock_audss EXYNOS_I2S_BUS>, <&clock_audss EXYNOS_SCLK_I2S>; clock-names = "iis", "i2s_opclk0", "i2s_opclk1"; #clock-cells; clock-output-names = "i2s_cdclk0"; #clock-cells = <1>; samsung,idma-addr = <0x03000000>; pinctrl-names = "default"; pinctrl-0 = <&i2s0_bus>; #sound-dai-cells = <1>; }; Documentation/devicetree/bindings/sound/snow.txt +11 −2 Original line number Diff line number Diff line Loading @@ -5,8 +5,17 @@ Required properties: "google,snow-audio-max98090" or "google,snow-audio-max98091" or "google,snow-audio-max98095" - samsung,i2s-controller: The phandle of the Samsung I2S controller - samsung,audio-codec: The phandle of the audio codec - samsung,i2s-controller (deprecated): The phandle of the Samsung I2S controller - samsung,audio-codec (deprecated): The phandle of the audio codec Required sub-nodes: - 'cpu' subnode with a 'sound-dai' property containing the phandle of the I2S controller - 'codec' subnode with a 'sound-dai' property containing list of phandles to the CODEC nodes, first entry must be the phandle of the MAX98090, MAX98091 or MAX98095 CODEC (exact device type is indicated by the compatible string) and the second entry must be the phandle of the HDMI IP block node Optional: - samsung,model: The name of the sound-card Loading include/sound/soc.h +1 −0 Original line number Diff line number Diff line Loading @@ -1807,6 +1807,7 @@ int snd_soc_of_get_dai_name(struct device_node *of_node, int snd_soc_of_get_dai_link_codecs(struct device *dev, struct device_node *of_node, struct snd_soc_dai_link *dai_link); void snd_soc_of_put_dai_link_codecs(struct snd_soc_dai_link *dai_link); int snd_soc_add_dai_link(struct snd_soc_card *card, struct snd_soc_dai_link *dai_link); Loading Loading
Documentation/devicetree/bindings/sound/samsung,odroid.txt +5 −3 Original line number Diff line number Diff line Loading @@ -2,8 +2,10 @@ Samsung Exynos Odroid XU3/XU4 audio complex with MAX98090 codec Required properties: - compatible - "samsung,odroidxu3-audio" - for Odroid XU3 board, "samsung,odroidxu4-audio" - for Odroid XU4 board - compatible - "hardkernel,odroid-xu3-audio" - for Odroid XU3 board, "hardkernel,odroid-xu4-audio" - for Odroid XU4 board (deprecated), "samsung,odroid-xu3-audio" - for Odroid XU3 board (deprecated), "samsung,odroid-xu4-audio" - for Odroid XU4 board (deprecated) - model - the user-visible name of this sound complex - clocks - should contain entries matching clock names in the clock-names property Loading Loading @@ -35,7 +37,7 @@ Required sub-nodes: Example: sound { compatible = "samsung,odroidxu3-audio"; compatible = "hardkernel,odroid-xu3-audio"; model = "Odroid-XU3"; samsung,audio-routing = "Headphone Jack", "HPL", Loading
Documentation/devicetree/bindings/sound/samsung,tm2-audio.txt +9 −5 Original line number Diff line number Diff line Loading @@ -4,9 +4,13 @@ Required properties: - compatible : "samsung,tm2-audio" - model : the user-visible name of this sound complex - audio-codec : the phandle of the wm5110 audio codec node, as described in ../mfd/arizona.txt - i2s-controller : the phandle of the I2S controller - audio-codec : the first entry should be phandle of the wm5110 audio codec node, as described in ../mfd/arizona.txt; the second entry should be phandle of the HDMI transmitter node - i2s-controller : the list of phandle and argument tuples pointing to I2S controllers, the first entry should be I2S0 and the second one I2S1 - audio-amplifier : the phandle of the MAX98504 amplifier - samsung,audio-routing : a list of the connections between audio components; each entry is a pair of strings, the first being the Loading @@ -22,8 +26,8 @@ Example: sound { compatible = "samsung,tm2-audio"; audio-codec = <&wm5110>; i2s-controller = <&i2s0>; audio-codec = <&wm5110>, <&hdmi>; i2s-controller = <&i2s0 0>, <&i2s1 0>; audio-amplifier = <&max98504>; mic-bias-gpios = <&gpr3 2 0>; model = "wm5110"; Loading
Documentation/devicetree/bindings/sound/samsung-i2s.txt +12 −10 Original line number Diff line number Diff line Loading @@ -7,7 +7,7 @@ Required SoC Specific Properties: - samsung,s5pv210-i2s: for 8/16/24bit multichannel(5.1) I2S with secondary fifo, s/w reset control and internal mux for root clk src. - samsung,exynos5420-i2s: for 8/16/24bit multichannel(5.1) I2S for playback, sterio channel capture, secondary fifo using internal playback, stereo channel capture, secondary fifo using internal or external dma, s/w reset control, internal mux for root clk src and 7.1 channel TDM support for playback. TDM (Time division multiplexing) is to allow transfer of multiple channel audio data on single data line. Loading @@ -25,7 +25,7 @@ Required SoC Specific Properties: These strings correspond 1:1 with the ordered pairs in dmas. - clocks: Handle to iis clock and RCLK source clk. - clock-names: i2s0 uses some base clks from CMU and some are from audio subsystem internal i2s0 uses some base clocks from CMU and some are from audio subsystem internal clock controller. The clock names for i2s0 should be "iis", "i2s_opclk0" and "i2s_opclk1" as shown in the example below. i2s1 and i2s2 uses clocks from CMU. The clock names for i2s1 and i2s2 should Loading @@ -36,9 +36,9 @@ Required SoC Specific Properties: - #clock-cells: should be 1, this property must be present if the I2S device is a clock provider in terms of the common clock bindings, described in ../clock/clock-bindings.txt. - clock-output-names: from the common clock bindings, names of the CDCLK I2S output clocks, suggested values are "i2s_cdclk0", "i2s_cdclk1", "i2s_cdclk3" for the I2S0, I2S1, I2S2 devices recpectively. - clock-output-names (deprecated): from the common clock bindings, names of the CDCLK I2S output clocks, suggested values are "i2s_cdclk0", "i2s_cdclk1", "i2s_cdclk3" for the I2S0, I2S1, I2S2 devices respectively. There are following clocks available at the I2S device nodes: CLK_I2S_CDCLK - the CDCLK (CODECLKO) gate clock, Loading @@ -49,9 +49,10 @@ There are following clocks available at the I2S device nodes: Refer to the SoC datasheet for availability of the above clocks. The CLK_I2S_RCLK_PSR and CLK_I2S_RCLK_SRC clocks are usually only available in the IIS Multi Audio Interface (I2S0). Note: Old DTs may not have the #clock-cells, clock-output-names properties and then not use the I2S node as a clock supplier. in the IIS Multi Audio Interface. Note: Old DTs may not have the #clock-cells property and then not use the I2S node as a clock supplier. Optional SoC Specific Properties: Loading @@ -59,6 +60,7 @@ Optional SoC Specific Properties: sub system(used in secondary sound source). - pinctrl-0: Should specify pin control groups used for this controller. - pinctrl-names: Should contain only one value - "default". - #sound-dai-cells: should be 1. Example: Loading @@ -74,9 +76,9 @@ i2s0: i2s@3830000 { <&clock_audss EXYNOS_I2S_BUS>, <&clock_audss EXYNOS_SCLK_I2S>; clock-names = "iis", "i2s_opclk0", "i2s_opclk1"; #clock-cells; clock-output-names = "i2s_cdclk0"; #clock-cells = <1>; samsung,idma-addr = <0x03000000>; pinctrl-names = "default"; pinctrl-0 = <&i2s0_bus>; #sound-dai-cells = <1>; };
Documentation/devicetree/bindings/sound/snow.txt +11 −2 Original line number Diff line number Diff line Loading @@ -5,8 +5,17 @@ Required properties: "google,snow-audio-max98090" or "google,snow-audio-max98091" or "google,snow-audio-max98095" - samsung,i2s-controller: The phandle of the Samsung I2S controller - samsung,audio-codec: The phandle of the audio codec - samsung,i2s-controller (deprecated): The phandle of the Samsung I2S controller - samsung,audio-codec (deprecated): The phandle of the audio codec Required sub-nodes: - 'cpu' subnode with a 'sound-dai' property containing the phandle of the I2S controller - 'codec' subnode with a 'sound-dai' property containing list of phandles to the CODEC nodes, first entry must be the phandle of the MAX98090, MAX98091 or MAX98095 CODEC (exact device type is indicated by the compatible string) and the second entry must be the phandle of the HDMI IP block node Optional: - samsung,model: The name of the sound-card Loading
include/sound/soc.h +1 −0 Original line number Diff line number Diff line Loading @@ -1807,6 +1807,7 @@ int snd_soc_of_get_dai_name(struct device_node *of_node, int snd_soc_of_get_dai_link_codecs(struct device *dev, struct device_node *of_node, struct snd_soc_dai_link *dai_link); void snd_soc_of_put_dai_link_codecs(struct snd_soc_dai_link *dai_link); int snd_soc_add_dai_link(struct snd_soc_card *card, struct snd_soc_dai_link *dai_link); Loading