diff options
Diffstat (limited to 'Documentation/sound/alsa/soc/machine.txt')
-rw-r--r-- | Documentation/sound/alsa/soc/machine.txt | 38 |
1 files changed, 9 insertions, 29 deletions
diff --git a/Documentation/sound/alsa/soc/machine.txt b/Documentation/sound/alsa/soc/machine.txt index 2524c75557df..3e2ec9cbf397 100644 --- a/Documentation/sound/alsa/soc/machine.txt +++ b/Documentation/sound/alsa/soc/machine.txt | |||
@@ -12,6 +12,8 @@ the following struct:- | |||
12 | struct snd_soc_card { | 12 | struct snd_soc_card { |
13 | char *name; | 13 | char *name; |
14 | 14 | ||
15 | ... | ||
16 | |||
15 | int (*probe)(struct platform_device *pdev); | 17 | int (*probe)(struct platform_device *pdev); |
16 | int (*remove)(struct platform_device *pdev); | 18 | int (*remove)(struct platform_device *pdev); |
17 | 19 | ||
@@ -22,12 +24,13 @@ struct snd_soc_card { | |||
22 | int (*resume_pre)(struct platform_device *pdev); | 24 | int (*resume_pre)(struct platform_device *pdev); |
23 | int (*resume_post)(struct platform_device *pdev); | 25 | int (*resume_post)(struct platform_device *pdev); |
24 | 26 | ||
25 | /* machine stream operations */ | 27 | ... |
26 | struct snd_soc_ops *ops; | ||
27 | 28 | ||
28 | /* CPU <--> Codec DAI links */ | 29 | /* CPU <--> Codec DAI links */ |
29 | struct snd_soc_dai_link *dai_link; | 30 | struct snd_soc_dai_link *dai_link; |
30 | int num_links; | 31 | int num_links; |
32 | |||
33 | ... | ||
31 | }; | 34 | }; |
32 | 35 | ||
33 | probe()/remove() | 36 | probe()/remove() |
@@ -42,11 +45,6 @@ of any machine audio tasks that have to be done before or after the codec, DAIs | |||
42 | and DMA is suspended and resumed. Optional. | 45 | and DMA is suspended and resumed. Optional. |
43 | 46 | ||
44 | 47 | ||
45 | Machine operations | ||
46 | ------------------ | ||
47 | The machine specific audio operations can be set here. Again this is optional. | ||
48 | |||
49 | |||
50 | Machine DAI Configuration | 48 | Machine DAI Configuration |
51 | ------------------------- | 49 | ------------------------- |
52 | The machine DAI configuration glues all the codec and CPU DAIs together. It can | 50 | The machine DAI configuration glues all the codec and CPU DAIs together. It can |
@@ -61,8 +59,10 @@ struct snd_soc_dai_link is used to set up each DAI in your machine. e.g. | |||
61 | static struct snd_soc_dai_link corgi_dai = { | 59 | static struct snd_soc_dai_link corgi_dai = { |
62 | .name = "WM8731", | 60 | .name = "WM8731", |
63 | .stream_name = "WM8731", | 61 | .stream_name = "WM8731", |
64 | .cpu_dai = &pxa_i2s_dai, | 62 | .cpu_dai_name = "pxa-is2-dai", |
65 | .codec_dai = &wm8731_dai, | 63 | .codec_dai_name = "wm8731-hifi", |
64 | .platform_name = "pxa-pcm-audio", | ||
65 | .codec_name = "wm8713-codec.0-001a", | ||
66 | .init = corgi_wm8731_init, | 66 | .init = corgi_wm8731_init, |
67 | .ops = &corgi_ops, | 67 | .ops = &corgi_ops, |
68 | }; | 68 | }; |
@@ -77,26 +77,6 @@ static struct snd_soc_card snd_soc_corgi = { | |||
77 | }; | 77 | }; |
78 | 78 | ||
79 | 79 | ||
80 | Machine Audio Subsystem | ||
81 | ----------------------- | ||
82 | |||
83 | The machine soc device glues the platform, machine and codec driver together. | ||
84 | Private data can also be set here. e.g. | ||
85 | |||
86 | /* corgi audio private data */ | ||
87 | static struct wm8731_setup_data corgi_wm8731_setup = { | ||
88 | .i2c_address = 0x1b, | ||
89 | }; | ||
90 | |||
91 | /* corgi audio subsystem */ | ||
92 | static struct snd_soc_device corgi_snd_devdata = { | ||
93 | .machine = &snd_soc_corgi, | ||
94 | .platform = &pxa2xx_soc_platform, | ||
95 | .codec_dev = &soc_codec_dev_wm8731, | ||
96 | .codec_data = &corgi_wm8731_setup, | ||
97 | }; | ||
98 | |||
99 | |||
100 | Machine Power Map | 80 | Machine Power Map |
101 | ----------------- | 81 | ----------------- |
102 | 82 | ||