ARM: dts: r8a7742-iwg21d-q7: Sound DMA support via DVC on DTS

Enable sound with DMA support on carrier board.

DMA transfer uses DVC

     DMA               DMApp
[MEM] -> [SRC] -> [DVC] -> [SSIU] -> [SSI]

     DMA               DMApp
[MEM] <- [DVC] <- [SRC] <- [SSIU] <- [SSI]

Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Reviewed-by: Marian-Cristian Rotariu <marian-cristian.rotariu.rb@bp.renesas.com>
Link: https://lore.kernel.org/r/1590611013-26029-4-git-send-email-prabhakar.mahadev-lad.rj@bp.renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
This commit is contained in:
Lad Prabhakar 2020-05-27 21:23:33 +01:00 committed by Geert Uytterhoeven
parent 436765010f
commit fc3a1b2763

View File

@ -5,6 +5,29 @@
* Copyright (C) 2020 Renesas Electronics Corp.
*/
/*
* SSI-SGTL5000
*
* This command is required when Playback/Capture
*
* amixer set "DVC Out" 100%
* amixer set "DVC In" 100%
*
* You can use Mute
*
* amixer set "DVC Out Mute" on
* amixer set "DVC In Mute" on
*
* You can use Volume Ramp
*
* amixer set "DVC Out Ramp Up Rate" "0.125 dB/64 steps"
* amixer set "DVC Out Ramp Down Rate" "0.125 dB/512 steps"
* amixer set "DVC Out Ramp" on
* aplay xxx.wav &
* amixer set "DVC Out" 80% // Volume Down
* amixer set "DVC Out" 100% // Volume Up
*/
/dts-v1/;
#include "r8a7742-iwg21m.dtsi"
@ -37,6 +60,21 @@ reg_1p5v: 1p5v {
regulator-always-on;
};
rsnd_sgtl5000: sound {
compatible = "simple-audio-card";
simple-audio-card,format = "i2s";
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 = <&sgtl5000>;
};
};
vcc_sdhi2: regulator-vcc-sdhi2 {
compatible = "regulator-fixed";
@ -125,6 +163,27 @@ sdhi2_pins_uhs: sd2_uhs {
function = "sdhi2";
power-source = <1800>;
};
sound_pins: sound {
groups = "ssi34_ctrl", "ssi3_data", "ssi4_data";
function = "ssi";
};
};
&rcar_sound {
pinctrl-0 = <&sound_pins>;
pinctrl-names = "default";
status = "okay";
/* Single DAI */
#sound-dai-cells = <0>;
rcar_sound,dai {
dai0 {
playback = <&ssi4 &src4 &dvc1>;
capture = <&ssi3 &src3 &dvc0>;
};
};
};
&rwdt {
@ -159,3 +218,7 @@ &sdhi2 {
sd-uhs-sdr50;
status = "okay";
};
&ssi4 {
shared-pin;
};