diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-07-23 13:59:37 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-07-23 13:59:37 -0400 |
commit | e4980371059ca4a81ccdcb4381c41af8869ca711 (patch) | |
tree | 29758f7e8d66b5866d9d3897eff12f122000b4d7 /Documentation | |
parent | 9d1c02135516866cbbb2f80e20cfb65c63a3ce40 (diff) | |
parent | 76531d4166fb620375ff3c1ac24753265216d579 (diff) |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: (297 commits)
ALSA: asihpi - Replace with snd_ctl_boolean_mono_info()
ALSA: asihpi - HPI version 4.08
ALSA: asihpi - Add volume mute controls
ALSA: asihpi - Control name updates
ALSA: asihpi - Use size_t for sizeof result
ALSA: asihpi - Explicitly include mutex.h
ALSA: asihpi - Add new node and message defines
ALSA: asihpi - Make local function static
ALSA: asihpi - Fix minor typos and spelling
ALSA: asihpi - Remove unused structures, macros and functions
ALSA: asihpi - Remove spurious adapter index check
ALSA: asihpi - Revise snd_pcm_debug_name, get rid of DEBUG_NAME macro
ALSA: asihpi - DSP code loader API now independent of OS
ALSA: asihpi - Remove controlex structs and associated special data transfer code
ALSA: asihpi - Increase request and response buffer sizes
ALSA: asihpi - Give more meaningful name to hpi request message type
ALSA: usb-audio - Add quirk for Roland / BOSS BR-800
ALSA: hda - Remove a superfluous argument of via_auto_init_output()
ALSA: hda - Fix indep-HP path (de-)activation for VT1708* codecs
ALSA: hda - Add documentation for codec-specific mixer controls
...
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/DocBook/writing-an-alsa-driver.tmpl | 10 | ||||
-rw-r--r-- | Documentation/sound/alsa/HD-Audio-Controls.txt | 100 |
2 files changed, 105 insertions, 5 deletions
diff --git a/Documentation/DocBook/writing-an-alsa-driver.tmpl b/Documentation/DocBook/writing-an-alsa-driver.tmpl index 58ced2346e67..598c22f3b3ac 100644 --- a/Documentation/DocBook/writing-an-alsa-driver.tmpl +++ b/Documentation/DocBook/writing-an-alsa-driver.tmpl | |||
@@ -1164,7 +1164,7 @@ | |||
1164 | } | 1164 | } |
1165 | chip->port = pci_resource_start(pci, 0); | 1165 | chip->port = pci_resource_start(pci, 0); |
1166 | if (request_irq(pci->irq, snd_mychip_interrupt, | 1166 | if (request_irq(pci->irq, snd_mychip_interrupt, |
1167 | IRQF_SHARED, "My Chip", chip)) { | 1167 | IRQF_SHARED, KBUILD_MODNAME, chip)) { |
1168 | printk(KERN_ERR "cannot grab irq %d\n", pci->irq); | 1168 | printk(KERN_ERR "cannot grab irq %d\n", pci->irq); |
1169 | snd_mychip_free(chip); | 1169 | snd_mychip_free(chip); |
1170 | return -EBUSY; | 1170 | return -EBUSY; |
@@ -1197,7 +1197,7 @@ | |||
1197 | 1197 | ||
1198 | /* pci_driver definition */ | 1198 | /* pci_driver definition */ |
1199 | static struct pci_driver driver = { | 1199 | static struct pci_driver driver = { |
1200 | .name = "My Own Chip", | 1200 | .name = KBUILD_MODNAME, |
1201 | .id_table = snd_mychip_ids, | 1201 | .id_table = snd_mychip_ids, |
1202 | .probe = snd_mychip_probe, | 1202 | .probe = snd_mychip_probe, |
1203 | .remove = __devexit_p(snd_mychip_remove), | 1203 | .remove = __devexit_p(snd_mychip_remove), |
@@ -1340,7 +1340,7 @@ | |||
1340 | <programlisting> | 1340 | <programlisting> |
1341 | <![CDATA[ | 1341 | <![CDATA[ |
1342 | if (request_irq(pci->irq, snd_mychip_interrupt, | 1342 | if (request_irq(pci->irq, snd_mychip_interrupt, |
1343 | IRQF_SHARED, "My Chip", chip)) { | 1343 | IRQF_SHARED, KBUILD_MODNAME, chip)) { |
1344 | printk(KERN_ERR "cannot grab irq %d\n", pci->irq); | 1344 | printk(KERN_ERR "cannot grab irq %d\n", pci->irq); |
1345 | snd_mychip_free(chip); | 1345 | snd_mychip_free(chip); |
1346 | return -EBUSY; | 1346 | return -EBUSY; |
@@ -1616,7 +1616,7 @@ | |||
1616 | <programlisting> | 1616 | <programlisting> |
1617 | <![CDATA[ | 1617 | <![CDATA[ |
1618 | static struct pci_driver driver = { | 1618 | static struct pci_driver driver = { |
1619 | .name = "My Own Chip", | 1619 | .name = KBUILD_MODNAME, |
1620 | .id_table = snd_mychip_ids, | 1620 | .id_table = snd_mychip_ids, |
1621 | .probe = snd_mychip_probe, | 1621 | .probe = snd_mychip_probe, |
1622 | .remove = __devexit_p(snd_mychip_remove), | 1622 | .remove = __devexit_p(snd_mychip_remove), |
@@ -5816,7 +5816,7 @@ struct _snd_pcm_runtime { | |||
5816 | <programlisting> | 5816 | <programlisting> |
5817 | <![CDATA[ | 5817 | <![CDATA[ |
5818 | static struct pci_driver driver = { | 5818 | static struct pci_driver driver = { |
5819 | .name = "My Chip", | 5819 | .name = KBUILD_MODNAME, |
5820 | .id_table = snd_my_ids, | 5820 | .id_table = snd_my_ids, |
5821 | .probe = snd_my_probe, | 5821 | .probe = snd_my_probe, |
5822 | .remove = __devexit_p(snd_my_remove), | 5822 | .remove = __devexit_p(snd_my_remove), |
diff --git a/Documentation/sound/alsa/HD-Audio-Controls.txt b/Documentation/sound/alsa/HD-Audio-Controls.txt new file mode 100644 index 000000000000..1482035243e6 --- /dev/null +++ b/Documentation/sound/alsa/HD-Audio-Controls.txt | |||
@@ -0,0 +1,100 @@ | |||
1 | This file explains the codec-specific mixer controls. | ||
2 | |||
3 | Realtek codecs | ||
4 | -------------- | ||
5 | |||
6 | * Channel Mode | ||
7 | This is an enum control to change the surround-channel setup, | ||
8 | appears only when the surround channels are available. | ||
9 | It gives the number of channels to be used, "2ch", "4ch", "6ch", | ||
10 | and "8ch". According to the configuration, this also controls the | ||
11 | jack-retasking of multi-I/O jacks. | ||
12 | |||
13 | * Auto-Mute Mode | ||
14 | This is an enum control to change the auto-mute behavior of the | ||
15 | headphone and line-out jacks. If built-in speakers and headphone | ||
16 | and/or line-out jacks are available on a machine, this controls | ||
17 | appears. | ||
18 | When there are only either headphones or line-out jacks, it gives | ||
19 | "Disabled" and "Enabled" state. When enabled, the speaker is muted | ||
20 | automatically when a jack is plugged. | ||
21 | |||
22 | When both headphone and line-out jacks are present, it gives | ||
23 | "Disabled", "Speaker Only" and "Line-Out+Speaker". When | ||
24 | speaker-only is chosen, plugging into a headphone or a line-out jack | ||
25 | mutes the speakers, but not line-outs. When line-out+speaker is | ||
26 | selected, plugging to a headphone jack mutes both speakers and | ||
27 | line-outs. | ||
28 | |||
29 | |||
30 | IDT/Sigmatel codecs | ||
31 | ------------------- | ||
32 | |||
33 | * Analog Loopback | ||
34 | This control enables/disables the analog-loopback circuit. This | ||
35 | appears only when "loopback" is set to true in a codec hint | ||
36 | (see HD-Audio.txt). Note that on some codecs the analog-loopback | ||
37 | and the normal PCM playback are exclusive, i.e. when this is on, you | ||
38 | won't hear any PCM stream. | ||
39 | |||
40 | * Swap Center/LFE | ||
41 | Swaps the center and LFE channel order. Normally, the left | ||
42 | corresponds to the center and the right to the LFE. When this is | ||
43 | ON, the left to the LFE and the right to the center. | ||
44 | |||
45 | * Headphone as Line Out | ||
46 | When this control is ON, treat the headphone jacks as line-out | ||
47 | jacks. That is, the headphone won't auto-mute the other line-outs, | ||
48 | and no HP-amp is set to the pins. | ||
49 | |||
50 | * Mic Jack Mode, Line Jack Mode, etc | ||
51 | These enum controls the direction and the bias of the input jack | ||
52 | pins. Depending on the jack type, it can set as "Mic In" and "Line | ||
53 | In", for determining the input bias, or it can be set to "Line Out" | ||
54 | when the pin is a multi-I/O jack for surround channels. | ||
55 | |||
56 | |||
57 | VIA codecs | ||
58 | ---------- | ||
59 | |||
60 | * Smart 5.1 | ||
61 | An enum control to re-task the multi-I/O jacks for surround outputs. | ||
62 | When it's ON, the corresponding input jacks (usually a line-in and a | ||
63 | mic-in) are switched as the surround and the CLFE output jacks. | ||
64 | |||
65 | * Independent HP | ||
66 | When this enum control is enabled, the headphone output is routed | ||
67 | from an individual stream (the third PCM such as hw:0,2) instead of | ||
68 | the primary stream. In the case the headphone DAC is shared with a | ||
69 | side or a CLFE-channel DAC, the DAC is switched to the headphone | ||
70 | automatically. | ||
71 | |||
72 | * Loopback Mixing | ||
73 | An enum control to determine whether the analog-loopback route is | ||
74 | enabled or not. When it's enabled, the analog-loopback is mixed to | ||
75 | the front-channel. Also, the same route is used for the headphone | ||
76 | and speaker outputs. As a side-effect, when this mode is set, the | ||
77 | individual volume controls will be no longer available for | ||
78 | headphones and speakers because there is only one DAC connected to a | ||
79 | mixer widget. | ||
80 | |||
81 | * Dynamic Power-Control | ||
82 | This control determines whether the dynamic power-control per jack | ||
83 | detection is enabled or not. When enabled, the widgets power state | ||
84 | (D0/D3) are changed dynamically depending on the jack plugging | ||
85 | state for saving power consumptions. However, if your system | ||
86 | doesn't provide a proper jack-detection, this won't work; in such a | ||
87 | case, turn this control OFF. | ||
88 | |||
89 | * Jack Detect | ||
90 | This control is provided only for VT1708 codec which gives no proper | ||
91 | unsolicited event per jack plug. When this is on, the driver polls | ||
92 | the jack detection so that the headphone auto-mute can work, while | ||
93 | turning this off would reduce the power consumption. | ||
94 | |||
95 | |||
96 | Conexant codecs | ||
97 | --------------- | ||
98 | |||
99 | * Auto-Mute Mode | ||
100 | See Reatek codecs. | ||