Loading Documentation/devicetree/bindings/sound/inno-rk3036.txt 0 → 100644 +20 −0 Original line number Diff line number Diff line Inno audio codec for RK3036 Inno audio codec is integrated inside RK3036 SoC. Required properties: - compatible : Should be "rockchip,rk3036-codec". - reg : The registers of codec. - clock-names : Should be "acodec_pclk". - clocks : The clock of codec. - rockchip,grf : The phandle of grf device node. Example: acodec: acodec-ana@20030000 { compatible = "rk3036-codec"; reg = <0x20030000 0x4000>; rockchip,grf = <&grf>; clock-names = "acodec_pclk"; clocks = <&cru ACLK_VCODEC>; }; Documentation/devicetree/bindings/sound/renesas,rsnd.txt +82 −0 Original line number Diff line number Diff line Loading @@ -7,8 +7,11 @@ Required properties: "renesas,rcar_sound-gen3" if generation3 Examples with soctypes are: - "renesas,rcar_sound-r8a7778" (R-Car M1A) - "renesas,rcar_sound-r8a7779" (R-Car H1) - "renesas,rcar_sound-r8a7790" (R-Car H2) - "renesas,rcar_sound-r8a7791" (R-Car M2-W) - "renesas,rcar_sound-r8a7793" (R-Car M2-N) - "renesas,rcar_sound-r8a7794" (R-Car E2) - "renesas,rcar_sound-r8a7795" (R-Car H3) - reg : Should contain the register physical address. required register is Loading @@ -34,6 +37,8 @@ Required properties: see below for detail. - #sound-dai-cells : it must be 0 if your system is using single DAI it must be 1 if your system is using multi DAI Optional properties: - #clock-cells : it must be 0 if your system has audio_clkout it must be 1 if your system has audio_clkout0/1/2/3 - clock-frequency : for all audio_clkout0/1/2/3 Loading Loading @@ -244,3 +249,80 @@ rcar_sound: sound@ec500000 { }; }; }; Example: simple sound card rsnd_ak4643: sound { compatible = "simple-audio-card"; simple-audio-card,format = "left_j"; simple-audio-card,bitclock-master = <&sndcodec>; simple-audio-card,frame-master = <&sndcodec>; sndcpu: simple-audio-card,cpu { sound-dai = <&rcar_sound>; }; sndcodec: simple-audio-card,codec { sound-dai = <&ak4643>; clocks = <&audio_clock>; }; }; &rcar_sound { pinctrl-0 = <&sound_pins &sound_clk_pins>; pinctrl-names = "default"; /* Single DAI */ #sound-dai-cells = <0>; status = "okay"; rcar_sound,dai { dai0 { playback = <&ssi0 &src2 &dvc0>; capture = <&ssi1 &src3 &dvc1>; }; }; }; &ssi1 { shared-pin; }; Example: simple sound card for TDM rsnd_tdm: sound { compatible = "simple-audio-card"; simple-audio-card,format = "left_j"; simple-audio-card,bitclock-master = <&sndcodec>; simple-audio-card,frame-master = <&sndcodec>; sndcpu: simple-audio-card,cpu { sound-dai = <&rcar_sound>; dai-tdm-slot-num = <6>; }; sndcodec: simple-audio-card,codec { sound-dai = <&xxx>; }; }; Example: simple sound card for Multi channel &rcar_sound { pinctrl-0 = <&sound_pins &sound_clk_pins>; pinctrl-names = "default"; /* Single DAI */ #sound-dai-cells = <0>; status = "okay"; rcar_sound,dai { dai0 { playback = <&ssi0 &ssi1 &ssi2 &src0 &dvc0>; }; }; }; Documentation/devicetree/bindings/sound/renesas,rsrc-card.txt +2 −2 Original line number Diff line number Diff line Loading @@ -4,8 +4,8 @@ Renesas Sampling Rate Convert Sound Card specifies audio DAI connections of SoC Required properties: - compatible : "renesas,rsrc-card,<board>" Examples with soctypes are: - compatible : "renesas,rsrc-card{,<board>}" Examples with boards are: - "renesas,rsrc-card" - "renesas,rsrc-card,lager" - "renesas,rsrc-card,koelsch" Loading Documentation/devicetree/bindings/sound/rockchip-i2s.txt +2 −0 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ Required properties: - clock-names: should contain followings: - "i2s_hclk": clock for I2S BUS - "i2s_clk" : clock for I2S controller - rockchip,playback-channels: max playback channels, if not set, 8 channels default. - rockchip,capture-channels: max capture channels, if not set, 2 channels default. Example for rk3288 I2S controller: Loading @@ -31,5 +32,6 @@ i2s@ff890000 { dma-names = "tx", "rx"; clock-names = "i2s_hclk", "i2s_clk"; clocks = <&cru HCLK_I2S0>, <&cru SCLK_I2S0>; rockchip,playback-channels = <8>; rockchip,capture-channels = <2>; }; sound/soc/codecs/Kconfig +4 −0 Original line number Diff line number Diff line Loading @@ -70,6 +70,7 @@ config SND_SOC_ALL_CODECS select SND_SOC_GTM601 select SND_SOC_HDAC_HDMI select SND_SOC_ICS43432 select SND_SOC_INNO_RK3036 select SND_SOC_ISABELLE if I2C select SND_SOC_JZ4740_CODEC select SND_SOC_LM4857 if I2C Loading Loading @@ -492,6 +493,9 @@ config SND_SOC_HDAC_HDMI config SND_SOC_ICS43432 tristate config SND_SOC_INNO_RK3036 tristate "Inno codec driver for RK3036 SoC" config SND_SOC_ISABELLE tristate Loading Loading
Documentation/devicetree/bindings/sound/inno-rk3036.txt 0 → 100644 +20 −0 Original line number Diff line number Diff line Inno audio codec for RK3036 Inno audio codec is integrated inside RK3036 SoC. Required properties: - compatible : Should be "rockchip,rk3036-codec". - reg : The registers of codec. - clock-names : Should be "acodec_pclk". - clocks : The clock of codec. - rockchip,grf : The phandle of grf device node. Example: acodec: acodec-ana@20030000 { compatible = "rk3036-codec"; reg = <0x20030000 0x4000>; rockchip,grf = <&grf>; clock-names = "acodec_pclk"; clocks = <&cru ACLK_VCODEC>; };
Documentation/devicetree/bindings/sound/renesas,rsnd.txt +82 −0 Original line number Diff line number Diff line Loading @@ -7,8 +7,11 @@ Required properties: "renesas,rcar_sound-gen3" if generation3 Examples with soctypes are: - "renesas,rcar_sound-r8a7778" (R-Car M1A) - "renesas,rcar_sound-r8a7779" (R-Car H1) - "renesas,rcar_sound-r8a7790" (R-Car H2) - "renesas,rcar_sound-r8a7791" (R-Car M2-W) - "renesas,rcar_sound-r8a7793" (R-Car M2-N) - "renesas,rcar_sound-r8a7794" (R-Car E2) - "renesas,rcar_sound-r8a7795" (R-Car H3) - reg : Should contain the register physical address. required register is Loading @@ -34,6 +37,8 @@ Required properties: see below for detail. - #sound-dai-cells : it must be 0 if your system is using single DAI it must be 1 if your system is using multi DAI Optional properties: - #clock-cells : it must be 0 if your system has audio_clkout it must be 1 if your system has audio_clkout0/1/2/3 - clock-frequency : for all audio_clkout0/1/2/3 Loading Loading @@ -244,3 +249,80 @@ rcar_sound: sound@ec500000 { }; }; }; Example: simple sound card rsnd_ak4643: sound { compatible = "simple-audio-card"; simple-audio-card,format = "left_j"; simple-audio-card,bitclock-master = <&sndcodec>; simple-audio-card,frame-master = <&sndcodec>; sndcpu: simple-audio-card,cpu { sound-dai = <&rcar_sound>; }; sndcodec: simple-audio-card,codec { sound-dai = <&ak4643>; clocks = <&audio_clock>; }; }; &rcar_sound { pinctrl-0 = <&sound_pins &sound_clk_pins>; pinctrl-names = "default"; /* Single DAI */ #sound-dai-cells = <0>; status = "okay"; rcar_sound,dai { dai0 { playback = <&ssi0 &src2 &dvc0>; capture = <&ssi1 &src3 &dvc1>; }; }; }; &ssi1 { shared-pin; }; Example: simple sound card for TDM rsnd_tdm: sound { compatible = "simple-audio-card"; simple-audio-card,format = "left_j"; simple-audio-card,bitclock-master = <&sndcodec>; simple-audio-card,frame-master = <&sndcodec>; sndcpu: simple-audio-card,cpu { sound-dai = <&rcar_sound>; dai-tdm-slot-num = <6>; }; sndcodec: simple-audio-card,codec { sound-dai = <&xxx>; }; }; Example: simple sound card for Multi channel &rcar_sound { pinctrl-0 = <&sound_pins &sound_clk_pins>; pinctrl-names = "default"; /* Single DAI */ #sound-dai-cells = <0>; status = "okay"; rcar_sound,dai { dai0 { playback = <&ssi0 &ssi1 &ssi2 &src0 &dvc0>; }; }; };
Documentation/devicetree/bindings/sound/renesas,rsrc-card.txt +2 −2 Original line number Diff line number Diff line Loading @@ -4,8 +4,8 @@ Renesas Sampling Rate Convert Sound Card specifies audio DAI connections of SoC Required properties: - compatible : "renesas,rsrc-card,<board>" Examples with soctypes are: - compatible : "renesas,rsrc-card{,<board>}" Examples with boards are: - "renesas,rsrc-card" - "renesas,rsrc-card,lager" - "renesas,rsrc-card,koelsch" Loading
Documentation/devicetree/bindings/sound/rockchip-i2s.txt +2 −0 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ Required properties: - clock-names: should contain followings: - "i2s_hclk": clock for I2S BUS - "i2s_clk" : clock for I2S controller - rockchip,playback-channels: max playback channels, if not set, 8 channels default. - rockchip,capture-channels: max capture channels, if not set, 2 channels default. Example for rk3288 I2S controller: Loading @@ -31,5 +32,6 @@ i2s@ff890000 { dma-names = "tx", "rx"; clock-names = "i2s_hclk", "i2s_clk"; clocks = <&cru HCLK_I2S0>, <&cru SCLK_I2S0>; rockchip,playback-channels = <8>; rockchip,capture-channels = <2>; };
sound/soc/codecs/Kconfig +4 −0 Original line number Diff line number Diff line Loading @@ -70,6 +70,7 @@ config SND_SOC_ALL_CODECS select SND_SOC_GTM601 select SND_SOC_HDAC_HDMI select SND_SOC_ICS43432 select SND_SOC_INNO_RK3036 select SND_SOC_ISABELLE if I2C select SND_SOC_JZ4740_CODEC select SND_SOC_LM4857 if I2C Loading Loading @@ -492,6 +493,9 @@ config SND_SOC_HDAC_HDMI config SND_SOC_ICS43432 tristate config SND_SOC_INNO_RK3036 tristate "Inno codec driver for RK3036 SoC" config SND_SOC_ISABELLE tristate Loading