Difference between revisions of "Custom BIOS"

From ThinkWiki
Jump to: navigation, search
m (Added more modifications.)
 
Line 1: Line 1:
Some ThinkPad fans have created Custom BIOSes to remove whitelists, disable annoying errors, do Fn-Ctrl keyswaps, and add more functionality. With the exception of the ''Hardware Flashing'' section, the only thing you need to install these BIOSes is Windows.
+
{| width="100%"
 +
|style="vertical-align:top;padding-right:20px;width:10px;white-space:nowrap;" | __TOC__
 +
|style="vertical-align:top" |
 +
Some ThinkPad fans have created Custom BIOSes to remove whitelists, disable annoying errors, do Fn-Ctrl keyswaps, and add more functionality. With the exception of the ''Hardware Flashing'' section, the only thing you need to install these BIOSes is Microsoft Windows 2000/XP/Vista/7/8.1/10.
  
* '''X200, X60, T60, Macbook 2,1''' - [http://libreboot.org Libreboot] - Based on Coreboot, this BIOS (approved by the FSF) removes all proprietary blobs to create Free Libre Open Source Laptops, where everything from the motherboard to the computer can use Open Source Software. Richard Stallman famously uses a Libreboot X60.
+
* '''X200, X60, T60, Macbook 2,1''' - [http://libreboot.org Libreboot] - Based on Coreboot, this BIOS (approved by the FSF) removes all proprietary blobs to create Free Libre Open Source Laptops, where everything from the motherboard to the computer can use open source software.
* '''T61, R61, X61/X61s/X61T, X300''' - [[Middleton's BIOS]] - Enables SATAII, removes whitelist, thermal fixes, Fn-Ctrl swap.
+
* '''T61, R61, X61/X61s/X61T, X300''' - [[Middleton's BIOS]] - Enables SATA II, removes WLAN whitelist, thermal sensing error (Penryn CPUs on Merom planars), and adds Fn-Ctrl swap.
* '''T43/T43p, R52, X41/X41T''' - [[Problem with non-ThinkPad hard disks#Use unofficial modified BIOS|TTav134's BIOS]] - Removes Error 2010 for aftermarket hard drives, and the BIOS whitelist.
+
* '''T43/T43p, R52, X41/X41T''' - [[Problem with non-ThinkPad hard disks#Use unofficial modified BIOS|TTav134's BIOS]] - Removes Error 2010 for non-IBM hard drives, and the BIOS' WLAN whitelist.
 +
|}
  
 
== [[Middleton's BIOS]] ==
 
== [[Middleton's BIOS]] ==
 
+
A user on NotebookReview named 'middleton' made these alternative BIOSes to enable SATA II on certain ThinkPad models (X61/T61/R61/X300). These ThinkPads are limited to SATA I in their BIOS even though the hardware is capable of SATA II. This causes a huge drawback for anyone wishing to use SSDs, because it restricts them to much slower speeds.
A user on NotebookReview named 'Middleton' made these alternative BIOSes to enable SATA2 on certain Thinkpad models (X61/T61/R61/X300). These ThinkPads are limited to SATA1 in their BIOS even though the hardware is SATA2. This is a huge drawback for anyone wanting to use SSDs, because it is so much slower.
+
  
 
Also, it is not possible to install some wireless cards, because only certain models are whitelisted by IBM/Lenovo. [[Middleton's BIOS]] removes this limitation as well.
 
Also, it is not possible to install some wireless cards, because only certain models are whitelisted by IBM/Lenovo. [[Middleton's BIOS]] removes this limitation as well.
  
'''See the wikipage [[Middleton's BIOS]] for installation instructions, downloads, and more description.'''
+
'''See the wikipage [[Middleton's BIOS]] for installation instructions, downloads, and more information.'''
  
 
Note: If your BIOS-Update tool says that no update is needed, then simply downgrade the Bios first: On Lenovo's drivers download page, the old Bios files are listed at the very bottom of the page.
 
Note: If your BIOS-Update tool says that no update is needed, then simply downgrade the Bios first: On Lenovo's drivers download page, the old Bios files are listed at the very bottom of the page.
  
 
== Software Flashing (xx30 and up) ==
 
== Software Flashing (xx30 and up) ==
 
 
Until recently the only way to flash the xx30 Series of ThinkPads (X230/T430/W530) was to hardware flash. There is now a software flashing method provided by n4ru. The files and instructions to software flash are found on both [https://1vyra.in/ the main site] and also [https://github.com/n4ru/1vyrain/ this Github.] Note that you must be on an older BIOS version to use this method. [https://github.com/gch1p/thinkpad-bios-software-flashing-guide#bios-versions Here are the supported devices and bios versions.] An in-depth manual flashing guide can be found [https://github.com/gch1p/thinkpad-bios-software-flashing-guide here.] The process involves downgrading your BIOS, booting a Linux live USB, and installing the modded BIOS. The flashing tools include modded BIOS's for the supported hardware, though there is an option to supply your own using an HTTP URL. Please note that the author of this method spent a considerable amount of time creating this flash method. Please refer to [https://github.com/n4ru/1vyrain/#credits this section] of the readme.md to support his efforts.
 
Until recently the only way to flash the xx30 Series of ThinkPads (X230/T430/W530) was to hardware flash. There is now a software flashing method provided by n4ru. The files and instructions to software flash are found on both [https://1vyra.in/ the main site] and also [https://github.com/n4ru/1vyrain/ this Github.] Note that you must be on an older BIOS version to use this method. [https://github.com/gch1p/thinkpad-bios-software-flashing-guide#bios-versions Here are the supported devices and bios versions.] An in-depth manual flashing guide can be found [https://github.com/gch1p/thinkpad-bios-software-flashing-guide here.] The process involves downgrading your BIOS, booting a Linux live USB, and installing the modded BIOS. The flashing tools include modded BIOS's for the supported hardware, though there is an option to supply your own using an HTTP URL. Please note that the author of this method spent a considerable amount of time creating this flash method. Please refer to [https://github.com/n4ru/1vyrain/#credits this section] of the readme.md to support his efforts.
 
  
 
== Hardware Flashing (xx30 and up) ==
 
== Hardware Flashing (xx30 and up) ==
 
 
The xx30 Series of ThinkPads (X230/T430/W530) and up introduced new Intel security features that previously made it impossible to flash the BIOS using software. You had to use hardware flashing methods to modify these laptop BIOSes. For software modding, see above.
 
The xx30 Series of ThinkPads (X230/T430/W530) and up introduced new Intel security features that previously made it impossible to flash the BIOS using software. You had to use hardware flashing methods to modify these laptop BIOSes. For software modding, see above.
  
Line 33: Line 33:
 
! Download
 
! Download
 
! Notes
 
! Notes
 +
|-
 +
| {{P50s}}, {{P51s}}, {{P52s}}, {{T560}}, {{T570}}, {{T580}}
 +
| [http://paranoid.anal-slavery.com/biosmods/skylake.html paranoid.anal-slavery: David]
 +
| 2020
 +
| N/A
 +
| N/A
 +
| Uses SPI Flasher (RPi, BeagleBone Black, Bus Pirate) + Pomona 5250 solderless clip.
 +
|-
 +
| {{T460}}, {{T460s}}, {{T460p}}, {{T470}}, {{T470s}}, {{T470p}}, {{T480}}, {{T480s}}
 +
| [http://paranoid.anal-slavery.com/biosmods/skylake.html paranoid.anal-slavery: David]
 +
| 2020
 +
| N/A
 +
| N/A
 +
| Uses SPI Flasher (RPi, BeagleBone Black, Bus Pirate) + Pomona 5250 solderless clip.
 +
|-
 +
| {{X260}}, {{X270}}, {{X280}}
 +
| [http://paranoid.anal-slavery.com/biosmods/skylake.html paranoid.anal-slavery: David]
 +
| 2020
 +
| N/A
 +
| N/A
 +
| Uses SPI Flasher (RPi, BeagleBone Black, Bus Pirate) + Pomona 5250 solderless clip.
 +
|-
 +
| {{W540}}, {{W541}}, {{T540p}}
 +
| [http://paranoid.anal-slavery.com/biosmods/xx40.html paranoid.anal-slavery: David]
 +
| 2019
 +
| N/A
 +
| N/A
 +
| Uses SPI Flasher (RPi, BeagleBone Black, Bus Pirate) + Pomona 5250 solderless clip.
 +
|-
 +
| {{T440}}, {{T440s}}, {{T440p}}
 +
| [http://paranoid.anal-slavery.com/biosmods/xx40.html paranoid.anal-slavery: David]
 +
| 2019
 +
| N/A
 +
| N/A
 +
| Uses SPI Flasher (RPi, BeagleBone Black, Bus Pirate) + Pomona 5250 solderless clip.
 +
|-
 +
| {{X240}}, {{X240s}}
 +
| [http://paranoid.anal-slavery.com/biosmods/xx40.html paranoid.anal-slavery: David]
 +
| 2019
 +
| N/A
 +
| N/A
 +
| Uses SPI Flasher (RPi, BeagleBone Black, Bus Pirate) + Pomona 5250 solderless clip.
 
|-
 
|-
 
| {{T430}}
 
| {{T430}}
Line 38: Line 80:
 
| 2013
 
| 2013
 
| N/A
 
| N/A
|  
+
| N/A
 
| Uses SPI Flasher (RPi, BeagleBone Black, Bus Pirate) + Pomona 5250 solderless clip.
 
| Uses SPI Flasher (RPi, BeagleBone Black, Bus Pirate) + Pomona 5250 solderless clip.
 
|-
 
|-
Line 55: Line 97:
 
| Although this author desolders the chip to flash from an external programmer, you can actually just use a solderless Pomona 5250 Clip with an SPI Flasher (RPi, Bus Pirate). See the [https://www.bios-mods.com/forum/Thread-TUTORIAL-Lenovo-X230-Tablet-BIOS-Whitelist-Removal-Hardware-Flash X230 flashing thread for more info.]
 
| Although this author desolders the chip to flash from an external programmer, you can actually just use a solderless Pomona 5250 Clip with an SPI Flasher (RPi, Bus Pirate). See the [https://www.bios-mods.com/forum/Thread-TUTORIAL-Lenovo-X230-Tablet-BIOS-Whitelist-Removal-Hardware-Flash X230 flashing thread for more info.]
 
|}
 
|}
 
 
BIOS-Mods user BDMaster [https://www.bios-mods.com/forum/Thread-REQUEST-Whitelist-wifi-removal-for-T430-got-hardware-flash-programmer?pid=91097#pid91097 attempted to unlock the chip using software] (provides the possibility of no more hardware flashing), but it was a failure. Sorry. (Maybe the tester just did it wrong?)
 
BIOS-Mods user BDMaster [https://www.bios-mods.com/forum/Thread-REQUEST-Whitelist-wifi-removal-for-T430-got-hardware-flash-programmer?pid=91097#pid91097 attempted to unlock the chip using software] (provides the possibility of no more hardware flashing), but it was a failure. Sorry. (Maybe the tester just did it wrong?)
  
 
=== Possible Mods ===
 
=== Possible Mods ===
 
 
If you have the skills, please research these proposed BIOS mods to solve long unsolved issues in the ThinkPad xx30 Series.
 
If you have the skills, please research these proposed BIOS mods to solve long unsolved issues in the ThinkPad xx30 Series.
  
Line 67: Line 107:
  
 
== Oleh's eGPU + 16GB Instability Fix ==
 
== Oleh's eGPU + 16GB Instability Fix ==
 
 
The [[:Category:X220|ThinkPad X220]] and other xx20 laptops have long suffered from a crippling bug that causes [https://forums.lenovo.com/t5/ThinkPad-X-Series-Laptops/x220-with-16gb-eGPU-will-or-will-not-work/td-p/1122249 100% CPU usage when an eGPU and 16GB of RAM are installed simultaneously.] This most likely stems from a lack of support in BIOS for 1600 and 1866 MHz memory modules.
 
The [[:Category:X220|ThinkPad X220]] and other xx20 laptops have long suffered from a crippling bug that causes [https://forums.lenovo.com/t5/ThinkPad-X-Series-Laptops/x220-with-16gb-eGPU-will-or-will-not-work/td-p/1122249 100% CPU usage when an eGPU and 16GB of RAM are installed simultaneously.] This most likely stems from a lack of support in BIOS for 1600 and 1866 MHz memory modules.
  
Line 110: Line 149:
  
 
== Whitelist Removed BIOSes ==
 
== Whitelist Removed BIOSes ==
 
 
All known ThinkPads implement a [[Problem with unauthorized MiniPCI network card|BIOS mPCI Whitelist]], which only allow certain Lenovo-approved mPCI Wifi cards to work. This makes it difficult to upgrade the wireless card to newer standards such as Wireless-N (Although it apparently allows all mSATA drives)
 
All known ThinkPads implement a [[Problem with unauthorized MiniPCI network card|BIOS mPCI Whitelist]], which only allow certain Lenovo-approved mPCI Wifi cards to work. This makes it difficult to upgrade the wireless card to newer standards such as Wireless-N (Although it apparently allows all mSATA drives)
  
Line 178: Line 216:
  
 
=== DIY Whitelist Removal ===
 
=== DIY Whitelist Removal ===
 
 
The wikipage [[Problem with unauthorized MiniPCI network card]] gives deeper technical details about how the whitelist works and how to remove it. There is [[Problem with unauthorized MiniPCI network card#BIOS modifications status|a section on that page]] that also provides information about successful/unsuccessful attempts.
 
The wikipage [[Problem with unauthorized MiniPCI network card]] gives deeper technical details about how the whitelist works and how to remove it. There is [[Problem with unauthorized MiniPCI network card#BIOS modifications status|a section on that page]] that also provides information about successful/unsuccessful attempts.
  
These methods may be necessary for older and more obscure ThinkPads. They do not work on modern ThinkPads, over T43. Maybe a table of compatible ones should be made here?
+
These methods are necessary for older and more obscure ThinkPads. They do not work on newer ThinkPads, such as the T43/X41/R52/G50 and after.
  
 
* [[Problem with unauthorized MiniPCI network card#Modifying the BIOS|BIOS Modification Methods (Older ThinkPads)]]
 
* [[Problem with unauthorized MiniPCI network card#Modifying the BIOS|BIOS Modification Methods (Older ThinkPads)]]

Latest revision as of 12:41, 24 May 2020

Some ThinkPad fans have created Custom BIOSes to remove whitelists, disable annoying errors, do Fn-Ctrl keyswaps, and add more functionality. With the exception of the Hardware Flashing section, the only thing you need to install these BIOSes is Microsoft Windows 2000/XP/Vista/7/8.1/10.

  • X200, X60, T60, Macbook 2,1 - Libreboot - Based on Coreboot, this BIOS (approved by the FSF) removes all proprietary blobs to create Free Libre Open Source Laptops, where everything from the motherboard to the computer can use open source software.
  • T61, R61, X61/X61s/X61T, X300 - Middleton's BIOS - Enables SATA II, removes WLAN whitelist, thermal sensing error (Penryn CPUs on Merom planars), and adds Fn-Ctrl swap.
  • T43/T43p, R52, X41/X41T - TTav134's BIOS - Removes Error 2010 for non-IBM hard drives, and the BIOS' WLAN whitelist.

Middleton's BIOS

A user on NotebookReview named 'middleton' made these alternative BIOSes to enable SATA II on certain ThinkPad models (X61/T61/R61/X300). These ThinkPads are limited to SATA I in their BIOS even though the hardware is capable of SATA II. This causes a huge drawback for anyone wishing to use SSDs, because it restricts them to much slower speeds.

Also, it is not possible to install some wireless cards, because only certain models are whitelisted by IBM/Lenovo. Middleton's BIOS removes this limitation as well.

See the wikipage Middleton's BIOS for installation instructions, downloads, and more information.

Note: If your BIOS-Update tool says that no update is needed, then simply downgrade the Bios first: On Lenovo's drivers download page, the old Bios files are listed at the very bottom of the page.

Software Flashing (xx30 and up)

Until recently the only way to flash the xx30 Series of ThinkPads (X230/T430/W530) was to hardware flash. There is now a software flashing method provided by n4ru. The files and instructions to software flash are found on both the main site and also this Github. Note that you must be on an older BIOS version to use this method. Here are the supported devices and bios versions. An in-depth manual flashing guide can be found here. The process involves downgrading your BIOS, booting a Linux live USB, and installing the modded BIOS. The flashing tools include modded BIOS's for the supported hardware, though there is an option to supply your own using an HTTP URL. Please note that the author of this method spent a considerable amount of time creating this flash method. Please refer to this section of the readme.md to support his efforts.

Hardware Flashing (xx30 and up)

The xx30 Series of ThinkPads (X230/T430/W530) and up introduced new Intel security features that previously made it impossible to flash the BIOS using software. You had to use hardware flashing methods to modify these laptop BIOSes. For software modding, see above.

It's actually easier than it seems, all you need is a BIOS mod from the table below, an SPI Flasher (Raspberry Pi, BeagleBone Black, Bus Pirate) and a Pomona 5250 Solderless SOIC-8 Clip. More documentation on Hardware BIOS Flashing coming soon, but here's a preliminary one.

Model Author Date of Creation Version Download Notes
Template:P50s, Template:P51s, Template:P52s, T560, T570, T580 paranoid.anal-slavery: David 2020 N/A N/A Uses SPI Flasher (RPi, BeagleBone Black, Bus Pirate) + Pomona 5250 solderless clip.
T460, T460s, T460p, T470, T470s, T470p, T480, T480s paranoid.anal-slavery: David 2020 N/A N/A Uses SPI Flasher (RPi, BeagleBone Black, Bus Pirate) + Pomona 5250 solderless clip.
X260, X270, X280 paranoid.anal-slavery: David 2020 N/A N/A Uses SPI Flasher (RPi, BeagleBone Black, Bus Pirate) + Pomona 5250 solderless clip.
W540, W541, T540p paranoid.anal-slavery: David 2019 N/A N/A Uses SPI Flasher (RPi, BeagleBone Black, Bus Pirate) + Pomona 5250 solderless clip.
T440, T440s, T440p paranoid.anal-slavery: David 2019 N/A N/A Uses SPI Flasher (RPi, BeagleBone Black, Bus Pirate) + Pomona 5250 solderless clip.
X240, X240s paranoid.anal-slavery: David 2019 N/A N/A Uses SPI Flasher (RPi, BeagleBone Black, Bus Pirate) + Pomona 5250 solderless clip.
T430 BIOS-mods: BDMaster, ucupsz 2013 N/A N/A Uses SPI Flasher (RPi, BeagleBone Black, Bus Pirate) + Pomona 5250 solderless clip.
X230 BIOS-Mods: BDMaster, JimmyZ 2015-04-19 G2UJ20US (2.63) ROM Uses SPI Flasher (Raspberry Pi in this example) + Pomona 5250 solderless clip.
X230 Tablet BIOS-Mods: kemod, sovem 2014-03-12 (2.57) N/A Although this author desolders the chip to flash from an external programmer, you can actually just use a solderless Pomona 5250 Clip with an SPI Flasher (RPi, Bus Pirate). See the X230 flashing thread for more info.

BIOS-Mods user BDMaster attempted to unlock the chip using software (provides the possibility of no more hardware flashing), but it was a failure. Sorry. (Maybe the tester just did it wrong?)

Possible Mods

If you have the skills, please research these proposed BIOS mods to solve long unsolved issues in the ThinkPad xx30 Series.

  • Install Classic Keyboard on xx30 Series ThinkPads - Forum Thread - You can actually insert the 7-row keyboard into a T430, and it will work: except for the 7th row. However, given that the T430 Japanese Keyboard has 4 extra keys vs the US English 6-row, and it gets auto-detected perfectly, so there must be a way to add the 7-row keyboard as a new layout.
    • A great feasibility study for this mod is to do the mod in reverse: modify the T420 BIOS to allow a T430's 6-row keyboard to work. That way, we can learn to add a new keyboard layout without hardware flashing (or at least sacrifice the Japanese layout).
  • Fix 16GB + eGPU instability in the X230 - The X230/X230T has suffered from a crippling bug that causes 100% CPU usage when an eGPU and 16GB of RAM are installed simultaneously. Oleh solved this on the X220, but to make it work on the X230, it takes hardware flashing, and Oleh's assistance to make another BIOS mod for it.

Oleh's eGPU + 16GB Instability Fix

The ThinkPad X220 and other xx20 laptops have long suffered from a crippling bug that causes 100% CPU usage when an eGPU and 16GB of RAM are installed simultaneously. This most likely stems from a lack of support in BIOS for 1600 and 1866 MHz memory modules.

Lenovo has never bothered to release a patch, but recently in August 2015, a BIOS-Mods user named Oleh has fixed the issue. Note that, due to the amount of work needed for these nifty bonus features, Oleh's mods may cost a premium of 1500 Rubles (~USD 25). For the password-protected ones, you should ask him directly in the BIOS-Mods forums.

Model Author Date of Creation Version Download Notes
X220/X220 Tablet BIOS-Mods: Oleh 2015-08-06 8DUJ26US (1.40) Oleh Removes mPCI Whitelist. Oleh's mod also unlocks higher memory speeds, AES, and Intel vbios.
W520 BIOS-Mods: Oleh 2015-08-11 (1.42) Oleh Removes mPCI Whitelist. Oleh's mod also unlocks higher memory speeds, AES, and Intel vbios.
T520 BIOS-Mods: Oleh 2015-08-04 (1.45) Oleh Removes mPCI Whitelist. Oleh's mod also unlocks higher memory speeds, AES, and Intel vbios.
T420 BIOS-Mods: Oleh 2015-08-10 (1.46) Oleh Removes mPCI Whitelist. Oleh's mod also unlocks higher memory speeds, AES, and Intel vbios.

Whitelist Removed BIOSes

All known ThinkPads implement a BIOS mPCI Whitelist, which only allow certain Lenovo-approved mPCI Wifi cards to work. This makes it difficult to upgrade the wireless card to newer standards such as Wireless-N (Although it apparently allows all mSATA drives)

At bios-mods.com, there are a few skilled users who are able to remove mPCI whitelists upon request, such as Sovem. If you like their work, please donate a few dollars to help them continue their efforts.

Here is a list of mods, with installation files archived at the Internet Archive:

Model Author Date of Creation Version Download Notes
W520 BIOS-Mods: Sovem 2014-04-04 (1.42) EXE
T520 BIOS-Mods: Sovem 2013-07-27 (1.43) EXE - ISO
T420 BIOS-Mods: Sovem 2013-09-24 83ET76WW (1.46) EXE Also works on T420i (i3 edition)
T420s BIOS-Mods: Sovem 2015-08-06 8CET59WW (1.39) EXE Adds "Advanced Menu".
X220/X220 Tablet BIOS-Mods: Various 2015-08-06 8DUJ26US (1.40) EXE Adds "Advanced Menu".
X301 BIOS-Mods: Sovem 2013-09-25 6EET56WW (3.16) EXE
X300 Middleton 2015 - 2010 (1.10) EXE Includes SATA II Mod and other goodies.

Note that if the updater states that your BIOS is already "up-to-date", simply downgrade to a lower BIOS version from Lenovo's site (e.g. 1.41 for custom 1.42), and then try the custom BIOS installer again.

DIY Whitelist Removal

The wikipage Problem with unauthorized MiniPCI network card gives deeper technical details about how the whitelist works and how to remove it. There is a section on that page that also provides information about successful/unsuccessful attempts.

These methods are necessary for older and more obscure ThinkPads. They do not work on newer ThinkPads, such as the T43/X41/R52/G50 and after.