diff options
author | Henrique de Moraes Holschuh <hmh@hmh.eng.br> | 2009-12-26 19:52:16 -0500 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2009-12-26 22:37:58 -0500 |
commit | 169220f88f0f26f4450ac0bc8ff0f807b453ec58 (patch) | |
tree | dbed22d9aaacd2deddc796771b9f4c5129db55ff /Documentation/laptops/thinkpad-acpi.txt | |
parent | ff850c339a1a6a7724537160c73cdc09a483fc5d (diff) |
thinkpad-acpi: update volume subdriver documentation
Signed-off-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'Documentation/laptops/thinkpad-acpi.txt')
-rw-r--r-- | Documentation/laptops/thinkpad-acpi.txt | 58 |
1 files changed, 50 insertions, 8 deletions
diff --git a/Documentation/laptops/thinkpad-acpi.txt b/Documentation/laptops/thinkpad-acpi.txt index 169091f75e6d..75afa1229fd7 100644 --- a/Documentation/laptops/thinkpad-acpi.txt +++ b/Documentation/laptops/thinkpad-acpi.txt | |||
@@ -1092,8 +1092,8 @@ WARNING: | |||
1092 | its level up and down at every change. | 1092 | its level up and down at every change. |
1093 | 1093 | ||
1094 | 1094 | ||
1095 | Volume control | 1095 | Volume control (Console Audio control) |
1096 | -------------- | 1096 | -------------------------------------- |
1097 | 1097 | ||
1098 | procfs: /proc/acpi/ibm/volume | 1098 | procfs: /proc/acpi/ibm/volume |
1099 | ALSA: "ThinkPad Console Audio Control", default ID: "ThinkPadEC" | 1099 | ALSA: "ThinkPad Console Audio Control", default ID: "ThinkPadEC" |
@@ -1110,9 +1110,53 @@ the desktop environment to just provide on-screen-display feedback. | |||
1110 | Software volume control should be done only in the main AC97/HDA | 1110 | Software volume control should be done only in the main AC97/HDA |
1111 | mixer. | 1111 | mixer. |
1112 | 1112 | ||
1113 | This feature allows volume control on ThinkPad models with a digital | 1113 | |
1114 | volume knob (when available, not all models have it), as well as | 1114 | About the ThinkPad Console Audio control: |
1115 | mute/unmute control. The available commands are: | 1115 | |
1116 | ThinkPads have a built-in amplifier and muting circuit that drives the | ||
1117 | console headphone and speakers. This circuit is after the main AC97 | ||
1118 | or HDA mixer in the audio path, and under exclusive control of the | ||
1119 | firmware. | ||
1120 | |||
1121 | ThinkPads have three special hotkeys to interact with the console | ||
1122 | audio control: volume up, volume down and mute. | ||
1123 | |||
1124 | It is worth noting that the normal way the mute function works (on | ||
1125 | ThinkPads that do not have a "mute LED") is: | ||
1126 | |||
1127 | 1. Press mute to mute. It will *always* mute, you can press it as | ||
1128 | many times as you want, and the sound will remain mute. | ||
1129 | |||
1130 | 2. Press either volume key to unmute the ThinkPad (it will _not_ | ||
1131 | change the volume, it will just unmute). | ||
1132 | |||
1133 | This is a very superior design when compared to the cheap software-only | ||
1134 | mute-toggle solution found on normal consumer laptops: you can be | ||
1135 | absolutely sure the ThinkPad will not make noise if you press the mute | ||
1136 | button, no matter the previous state. | ||
1137 | |||
1138 | The IBM ThinkPads, and the earlier Lenovo ThinkPads have variable-gain | ||
1139 | amplifiers driving the speakers and headphone output, and the firmware | ||
1140 | also handles volume control for the headphone and speakers on these | ||
1141 | ThinkPads without any help from the operating system (this volume | ||
1142 | control stage exists after the main AC97 or HDA mixer in the audio | ||
1143 | path). | ||
1144 | |||
1145 | The newer Lenovo models only have firmware mute control, and depend on | ||
1146 | the main HDA mixer to do volume control (which is done by the operating | ||
1147 | system). In this case, the volume keys are filtered out for unmute | ||
1148 | key press (there are some firmware bugs in this area) and delivered as | ||
1149 | normal key presses to the operating system (thinkpad-acpi is not | ||
1150 | involved). | ||
1151 | |||
1152 | |||
1153 | The ThinkPad-ACPI volume control: | ||
1154 | |||
1155 | The preferred way to interact with the Console Audio control is the | ||
1156 | ALSA interface. | ||
1157 | |||
1158 | The legacy procfs interface allows one to read the current state, | ||
1159 | and if volume control is enabled, accepts the following commands: | ||
1116 | 1160 | ||
1117 | echo up >/proc/acpi/ibm/volume | 1161 | echo up >/proc/acpi/ibm/volume |
1118 | echo down >/proc/acpi/ibm/volume | 1162 | echo down >/proc/acpi/ibm/volume |
@@ -1121,12 +1165,10 @@ mute/unmute control. The available commands are: | |||
1121 | echo 'level <level>' >/proc/acpi/ibm/volume | 1165 | echo 'level <level>' >/proc/acpi/ibm/volume |
1122 | 1166 | ||
1123 | The <level> number range is 0 to 14 although not all of them may be | 1167 | The <level> number range is 0 to 14 although not all of them may be |
1124 | distinct. The unmute the volume after the mute command, use either the | 1168 | distinct. To unmute the volume after the mute command, use either the |
1125 | up or down command (the level command will not unmute the volume), or | 1169 | up or down command (the level command will not unmute the volume), or |
1126 | the unmute command. | 1170 | the unmute command. |
1127 | 1171 | ||
1128 | The current volume level and mute state is shown in the file. | ||
1129 | |||
1130 | You can use the volume_capabilities parameter to tell the driver | 1172 | You can use the volume_capabilities parameter to tell the driver |
1131 | whether your thinkpad has volume control or mute-only control: | 1173 | whether your thinkpad has volume control or mute-only control: |
1132 | volume_capabilities=1 for mixers with mute and volume control, | 1174 | volume_capabilities=1 for mixers with mute and volume control, |