[alsa-devel] [PATCH 8/8] ASoC: add snd-soc-dummy DT support

Kuninori Morimoto kuninori.morimoto.gx at gmail.com
Fri Aug 29 02:41:00 CEST 2014


Hi Mark, Lars

> > > 	sound {
> > > 		compatible = "simple-audio-card";
> > > 		...
> > > 
> > > 		cpu {
> > > 			sound-dai = <&rcar_sound 0>;
> > > 		};
> > > 		codec {
> > > 			sound-dai = <&ak4643>;
> > > 		};
> > > 	};
> (snip)
> > There's two separate things here.  One is how the code is implemented
> > (which does look very much like it should be doing DPCM) and the other
> > is how the DT binding looks - the DT binding is supposed to be a
> > hardware neutral thing and not depend on Linux implementation details.
> > If you've already got the hardware described well enough to discover
> > everything then that generally indicates that the DT binding should not
> > need to change.
> 
> In my case, I need DPCM if CPU want to use "sampling rate convert",
> otherwise, I don't need it.
> So, DPCM <-> non DPCM switching happen if DTS has
> sampling-rate-convert = <xxxxxxx> or something like that.
> Does my understanding correct ?

I re-considered about above, and checked current code.
If my above understanding was correct,
simple-card driver needs many patches to support it.
And, it is not easy

I want to synchronize basic agreement before starting it.
Otherwise, it is easy to reject my many weeks work,
and I don't want it.
# 1st simple-card DT support used 1 year...

My understanding is below.
It is good match for my current purpose,
and "sampling-rate-convert feature via DPCM" can be standard on simple-card.
My concern is simple card code will be not simple...

-- non DPCM ----

	sound {
		compatible = "simple-audio-card";
		...
		cpu {
			sound-dai = <&cpu-dai>;
		};
		codec {
			sound-dai = <&codec-dai>;
		};
	};

        same as current style

-- DPCM ----

	sound {
		compatible = "simple-audio-card";
		...
		cpu {
			sound-dai = <&cpu-dai>;
		};
		codec {
			sound-dai = <&codec-dai>;
			fixed-sampling-rate = <44100>;
		};
	};

	DPCM FE/BE will be

        FE cpu   : cpu-dai
           codec : dummy

        BE cpu   : dummy
           codec : codec-dai

        required route will be created automatically
        but, it needs "enable DAI name on DAPM route" method anyway


More information about the Alsa-devel mailing list