[alsa-devel] [PATCH 00/49] ASoC: add simple-card-core and standardize "simple" card
Kuninori Morimoto
kuninori.morimoto.gx at renesas.com
Fri May 20 11:36:53 CEST 2016
Hi Mark
These are very big patch-set, but basically just cleanup for
simple-card driver.
Now, we have simple-card driver, but it is not simple today.
I would like to cleanup this.
And Renesas already have rsrc-card driver which is supporting DPCM,
and it is based on simple-card. This measn rsrc-card and simple-card
are very similar.
Thus, I would like to share these code between rsrc-card and simple-card.
This rsrc-card is only used from Renesas (actually, there is no upstream user,
current user is only me, by local). But this is not Renesas special driver,
I can say it is DPCM version of simple-card.
I would like to open it for all of ALSA people.
But, not merge simple-card <-> rsrc-card, to avoid diffcult future maintenance.
Thus, rsrc-card will be simple-dpcm-audio-card, and we can maintenance both
simple-card, and simple-dpcm-card. I'm not sure this is good nameing.
And finally, we will need HDMI sound support which uses graph base probing.
I know it needs more discussion with V4L2 people.
But in my understanding, basically, we can reuse simple-card base feature/function
on graph base driver somehow.
I would like to standardize simple card style, and use/share it with graph driver too.
It will be simple-graph-card ? I'm not sure. But I think we can share same code,
and can avoid development from 0.
These patch are for it.
Basically, it pickups common function/feature from simple-card and rsrc-card,
and standardize each feature/parse/init etc in simple-card-core.
Because of this patch-set, "simple-card" become "simple" again :)
I tested these (simple-card, rsrc-card) on my lager, Salvator boards.
But I couldn't test some feature. I hope test it on many environment.
1) - 4) cleanup for these patch-set
5) - 19) pickuped common function/feature and put it to simple-card-core
20) - 32) use simple-card-core on simple-card
33) - 46) use simple-card-core on rsrc-card
47) - 49) rename rsrc-card to simple-dpcm-audio-card
Kuninori Morimoto (49):
1) ASoC: simple-card: remove duplicate header
2) ASoC: rsrc-card: remove duplicate header
3) ASoC: rsrc-card: remove unused dai_num
4) ASoC: simple-card: platform also uses asoc_simple_card_sub_parse_of()
5) ASoC: add new simple-card-core.c
6) ASoC: simple-card-core: add asoc_simple_card_parse_tdm()
7) ASoC: simple-card-core: add asoc_simple_card_parse_dailink_name()
8) ASoC: simple-card-core: add asoc_simple_card_parse_card_name()
9) ASoC: simple-card-core: add asoc_simple_card_parse_card_prefix()
10) ASoC: simple-card-core: add asoc_simple_card_parse_card_widgets()
11) ASoC: simple-card-core: add asoc_simple_card_parse_card_widgets()
12) ASoC: simple-card-core: add asoc_simple_card_parse_clk()
13) ASoC: simple-card-core: add asoc_simple_card_parse_endpoint()
14) ASoC: simple-card-core: add asoc_simple_card_parse_dpcm()
15) ASoC: simple-card-core: add asoc_simple_card_init_jack()
16) ASoC: simple-card-core: add asoc_simple_card_init_dai()
17) ASoC: simple-card-core: add asoc_simple_card_canonicalize_dailink()
18) ASoC: simple-card-core: add asoc_simple_card_canonicalize_cpu()
19) ASoC: simple-card-core: add asoc_simple_card_clean_reference()
20) ASoC: simple-card: use asoc_simple_card_parse_daifmt()
21) ASoC: simple-card: use asoc_simple_card_parse_clk()
22) ASoC: simple-card: use asoc_simple_card_parse_endpoint()
23) ASoC: simple-card: use asoc_simple_card_parse_tdm()
24) ASoC: simple-card: use asoc_simple_card_parse_card_name()
25) ASoC: simple-card: use asoc_simple_card_parse_card_route()
26) ASoC: simple-card: use asoc_simple_card_parse_card_widgets()
27) ASoC: simple-card: use asoc_simple_card_parse_dailink_name()
28) ASoC: simple-card: use asoc_simple_card_init_jack()
29) ASoC: simple-card: use asoc_simple_card_init_dai()
30) ASoC: simple-card: use asoc_simple_card_canonicalize_dailink()
31) ASoC: simple-card: use asoc_simple_card_canonicalize_cpu()
32) ASoC: simple-card: use asoc_simple_card_clean_reference()
33) ASoC: rsrc-card: use asoc_simple_card_parse_daifmt()
34) ASoC: rsrc-card: use asoc_simple_card_parse_dailink_name()
35) ASoC: rsrc-card: use asoc_simple_dai instead of rsrc_card_dai
36) ASoC: rsrc-card: use asoc_simple_card_parse_clk()
37) ASoC: rsrc-card: use asoc_simple_card_parse_endpoint()
38) ASoC: rsrc-card: use asoc_simple_card_parse_card_name()
39) ASoC: rsrc-card: use asoc_simple_card_parse_card_prefix()
40) ASoC: rsrc-card: use asoc_simple_card_parse_dpcm()
41) ASoC: rsrc-card: use asoc_simple_card_parse_card_route()
42) ASoC: rsrc-card: use asoc_simple_card_parse_tdm()
43) ASoC: rsrc-card: use asoc_simple_card_init_dai()
44) ASoC: rsrc-card: use asoc_simple_card_canonicalize_cpu()
45) ASoC: rsrc-card: use asoc_simple_card_canonicalize_dailink()
46) ASoC: rsrc-card: use asoc_simple_card_clean_reference()
47) ASoC: rsrc-card: rename rsrc-card to simple-dpcm-card phase1
48) ASoC: rsrc-card: rename rsrc-card to simple-dpcm-card phase2
49) ASoC: rsrc-card: rename rsrc-card to simple-dpcm-card phase3
Documentation/devicetree/bindings/sound/renesas,rsrc-card.txt | 75 --------------
Documentation/devicetree/bindings/sound/simple-dpcm-card.txt | 79 +++++++++++++++
include/sound/simple_card.h | 11 +--
include/sound/simple_card_core.h | 106 ++++++++++++++++++++
sound/soc/generic/Kconfig | 10 ++
sound/soc/generic/Makefile | 4 +
sound/soc/generic/simple-card-core.c | 409 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
sound/soc/generic/simple-card.c | 359 ++++++++++++------------------------------------------------------
sound/soc/generic/simple-dpcm-card.c | 330 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
sound/soc/sh/Kconfig | 5 -
sound/soc/sh/rcar/Makefile | 3 -
sound/soc/sh/rcar/rsrc-card.c | 529 --------------------------------------------------------------------------------------------------
12 files changed, 999 insertions(+), 921 deletions(-)
More information about the Alsa-devel
mailing list