[PATCH] ARM: dts: silk: add sound support

Kuninori Morimoto kuninori.morimoto.gx at renesas.com
Sun Feb 14 20:56:03 PST 2016


Hi

> Define the SILK board dependent part of the R8A7794 sound  device node.
> Add device node for Asahi Kasei AK4643 stereo codec to the I2C1 bus.
> Add the "simple-audio-card" device node to interconnect the SoC sound
> device  and the codec.
> 
> This patch is based on the commit 493b4da7c10c ("ARM: dts: porter: add
> sound support").
> 
> Signed-off-by: Sergei Shtylyov <sergei.shtylyov at cogentembedded.com>
> 
> ---
> This patch is against the 'renesas-devel-20160209-v4.5-rc3' tag of Simon
> Horman's 'renesas.git' repo. It depends on the 5 R8A7794 sound support patches
> in posted earlier this week  in order to build and the R8A7794 PFC driver
> patches posted yesterday in  order  for  the pins to be properly configured
> (but works without the pins  configured  too)...

Acked-by: Kuninori Morimoto <kuninori.morimoto.gx at renesas.com>

This patch doesn't use SRC, and it is no problem.
We need fixup src.c driver for r8a7794 because it lacks some SRCs.


>  arch/arm/boot/dts/r8a7794-silk.dts |   71 +++++++++++++++++++++++++++++++++++++
>  1 file changed, 71 insertions(+)
> 
> Index: renesas/arch/arm/boot/dts/r8a7794-silk.dts
> ===================================================================
> --- renesas.orig/arch/arm/boot/dts/r8a7794-silk.dts
> +++ renesas/arch/arm/boot/dts/r8a7794-silk.dts
> @@ -10,6 +10,17 @@
>   * kind, whether express or implied.
>   */
>  
> +/*
> + * SSI-AK4643
> + *
> + * SW1: 2-1: AK4643
> + *      2-3: ADV7511
> + *
> + * This command is required before playback/capture:
> + *
> + *	amixer set "LINEOUT Mixer DACL" on
> + */
> +
>  /dts-v1/;
>  #include "r8a7794.dtsi"
>  #include <dt-bindings/gpio/gpio.h>
> @@ -119,6 +130,30 @@
>  		#clock-cells = <0>;
>  		clock-frequency = <74250000>;
>  	};
> +
> +	x9_clk: x9-clock {
> +		compatible = "fixed-clock";
> +		#clock-cells = <0>;
> +		clock-frequency = <12288000>;
> +		clock-output-names = "audio_clock";
> +	};
> +
> +	sound {
> +		compatible = "simple-audio-card";
> +
> +		simple-audio-card,format = "left_j";
> +		simple-audio-card,bitclock-master = <&soundcodec>;
> +		simple-audio-card,frame-master = <&soundcodec>;
> +
> +		simple-audio-card,cpu {
> +			sound-dai = <&rcar_sound>;
> +		};
> +
> +		soundcodec: simple-audio-card,codec {
> +			sound-dai = <&ak4643>;
> +			clocks = <&x9_clk>;
> +		};
> +	};
>  };
>  
>  &extal_clk {
> @@ -183,6 +218,16 @@
>  		renesas,groups = "usb1";
>  		renesas,function = "usb1";
>  	};
> +
> +	ssi_pins: sound {
> +		renesas,groups = "ssi0129_ctrl", "ssi0_data", "ssi1_data";
> +		renesas,function = "ssi";
> +	};
> +
> +	audio_clk_pins: audio_clk {
> +		renesas,groups = "audio_clkc";
> +		renesas,function = "audio_clk";
> +	};
>  };
>  
>  &scif2 {
> @@ -220,6 +265,12 @@
>  	status = "okay";
>  	clock-frequency = <400000>;
>  
> +	ak4643: codec at 12 {
> +		compatible = "asahi-kasei,ak4643";
> +		#sound-dai-cells = <0>;
> +		reg = <0x12>;
> +	};
> +
>  	composite-in at 20 {
>  		compatible = "adi,adv7180";
>  		reg = <0x20>;
> @@ -380,3 +431,23 @@
>  		};
>  	};
>  };
> +
> +&rcar_sound {
> +	pinctrl-0 = <&ssi_pins &audio_clk_pins>;
> +	pinctrl-names = "default";
> +	status = "okay";
> +
> +	/* Single DAI */
> +	#sound-dai-cells = <0>;
> +
> +	rcar_sound,dai {
> +		dai0 {
> +			playback = <&ssi0>;
> +			capture  = <&ssi1>;
> +		};
> +	};
> +};
> +
> +&ssi1 {
> +	shared-pin;
> +};
> 



More information about the linux-arm-kernel mailing list