[alsa-devel] [PATCH 1/6] ASoC: add Renesas R-Car core feature
Kuninori Morimoto
kuninori.morimoto.gx at renesas.com
Thu Jul 4 02:39:39 CEST 2013
Hi Mark
Thank you for your review
> > + * Gen1
> > + *
> > + * SRU : Sound Routing Unit
> > + * - SRC : Sampling Rate Converter
> > + * - CMD
> > + * - CTU : Channel Count Conversion Unit
> > + * - MIX : Mixer
> > + * - DVC : Digital Volume and Mute Function
> > + * - SSI : Serial Sound Interface
> > + *
> > + * Gen2
> > + *
> > + * SCU : Sampling Rate Converter Unit
> > + * - SRC : Sampling Rate Converter
> > + * - CMD
> > + * - CTU : Channel Count Conversion Unit
> > + * - MIX : Mixer
> > + * - DVC : Digital Volume and Mute Function
> > + * SSIU : Serial Sound Interface Unit
> > + * - SSI : Serial Sound Interface
>
> So, this hardware looks like something that should be using the soc-pcm
> framework or representing the SCU as a CODEC device but it seems that
> the final result here is going to be something that is open coded inside
> the CPU driver. This stuff doesn't all need to be added in the first
> version but it does need to be where we're heading.
>
> I think it'd help review here to strip out a lot of the stubs that are
> in place and focus on just getting the basic functionality up and
> running then build up the functionality later. Right now it seems like
> there's a lot of internal structure in here that's not connected to the
> ASoC frameworks at all.
Please give me apology time
This SCU/SRU part do nothing on "feature point" in 1st patch set.
But it has "SCU/SRU" register which will be used on SSI part.
Yes, this Renesas sound IP has mixed register.
And unfortunately, this mixed register mapping is different in Gen1/Gen2.
(This register mapping difference between Gen1/Gen2 is absorbed in gen.c)
And additionally, the main feature of this SCU/SRU part
is "sampling rate convert",
but it has data path control register, and SSI-MODE setting register.
The main purpose of SCU/SRU part in 1st patch is...
1) to mapping register in the right position.
(SCU/SRU register is handled in SCU/SRU patch)
2) to indicate it will control SCU/SRU feature in this driver.
(in 2nd patch set)
3) to check function call timing.
(SCU/SRU/SSI calling timing check)
I'm so sorry that I didn't explain about it.
Yes, this Renesas R-Car sound mixed register mapping (SCU/SRU/SSI) is one of my headache.
2nd headache is Gen1/Gen2 feature/register mapping difference.
Anyway, this 1st patch set has very basic playback/capture feature only
ADG controls SSI clock, SCU/SRU has SSI mode register.
The image of these file/feature is like this
ASoC -> core -> SSI -> ADG/SCU/SRU
Best regards
---
Kuninori Morimoto
More information about the Alsa-devel
mailing list