The Lenovo X220 laptop firmware automatically adjusts fan speed based upon CPU temperature. But in some situations under heavy load (video encoding for example) the CPU will still throttle based upon temperature, as the X220 firmware will only ramp the fan up to a maximum RPM of around 4,400. However, under linux you CAN put it in “full-speed” or “disengaged” mode, where the PWM controller just turns the power all the way up and lets the fan run as fast as it can (around 6,600 rpm on my machine, which is quite noisy.)
The magic command is:
echo level full-speed | sudo tee /proc/acpi/ibm/fan
To go back to “automatic” (quiet) mode use:
echo level auto | sudo tee /proc/acpi/ibm/fan
If you just want to know what mode you are currently operating under, which commands are available, or view the fan RPM, you can type:
cat /proc/acpi/ibm/fan