% Hardware compatibility list This sections relates to known hardware compatibility in libreboot. - [List of supported hardware](#supported_list) - [Desktops (x86, AMD and Intel)](#supported_desktops_x86amdintel) - [Servers/workstations](#supported_workstations_x86amd) - [Laptops (ARM)](#supported_laptops_arm) - [Laptops (Intel, x86)](#supported_laptops_x86intel) - NOTES: - [Updating the EC firmware on i945 and GM45 (recommended)](#ecupdate) - [How to find what EC version you have (i945/GM45)](#ecversion) - [Recommended wifi chipsets](#recommended_wifi) [Back to previous index](../). List of supported hardware {#supported_list} -------------------------- Libreboot supports the following systems in this release: ### Desktops (AMD, Intel, x86) {#supported_desktops_x86amdintel} - [Gigabyte GA-G41M-ES2L motherboard](ga-g41m-es2l.html) - [Intel D510MO motherboard](d510mo.html) - [ASUS KCMA-D8 motherboard](kcma-d8.html) - [Intel D945GCLF](d945gclf.html) - [Apple iMac 5,2](imac52.html) ### Servers/workstations (AMD, x86) {#supported_workstations_x86amd} - [ASUS KFSN4-DRE motherboard](kfsn4-dre.html) - [ASUS KGPE-D16 motherboard](kgpe-d16.html) ### Laptops (ARM) {#supported_laptops_arm} - [ASUS Chromebook C201](c201.html) ### Laptops (Intel, x86) {#supported_laptops_x86intel} - [Lenovo ThinkPad X60/X60s](#supported_x60_list) - [Lenovo ThinkPad X60 Tablet](#supported_x60t_list) - [Lenovo ThinkPad T60](#supported_t60_list) (there are exceptions. see link) - [Lenovo ThinkPad X200](x200.html) - [Lenovo ThinkPad R400](r400.html) - [Lenovo ThinkPad T400](t400.html) - [Lenovo ThinkPad T500](t500.html) - [Apple MacBook1,1](#macbook11) - [Apple MacBook2,1](#macbook21) 'Supported' means that the build scripts know how to build ROM images for these systems, and that the systems have been tested (confirmed working). There may be exceptions; in other words, this is a list of 'officially' supported systems. It is also possible to build ROM images (from source) for other systems (and virtual systems, e.g. QEMU). [Back to top of page](#pagetop) EC update on i945 (X60, T60) and GM45 (X200, T400, T500, R400) {#ecupdate} ============================================================== It is recommended that you update to the latest EC firmware version. The [EC firmware](https://libreboot.org/faq/#firmware-ec) is separate from libreboot, so we don't actually provide that, but if you still have Lenovo BIOS then you can just run the Lenovo BIOS update utility, which will update both the BIOS and EC version. See: - - NOTE: this can only be done when you are using Lenovo BIOS. How to update the EC firmware while running libreboot is unknown. Libreboot only replaces the BIOS firmware, not EC. Updated EC firmware has several advantages e.g. bettery battery handling. [Back to top of page](#pagetop) How to find what EC version you have (i945/GM45) {#ecversion} ================================================ In GNU+Linux, you can try this:\ **grep 'at EC' /proc/asound/cards** Sample output:\ **ThinkPad Console Audio Control at EC reg 0x30, fw 7WHT19WW-3.6** 7WHT19WW is the version in different notation, use search engine to find out regular version - in this case it's a 1.06 for x200 tablet [Back to top of page](#pagetop) Recommended wifi chipsets {#recommended_wifi} ------------------------- The following are known to work well: - mini PCI express cards using the Atheros AR9285 chipset (e.g. Atheros AR5B95) - 802.11n - USB dongles using the AR9271 chipset (e.g. Unex DNuA 93-F) - 802.11n - Any of the chipsets listed at The following was mentioned (on IRC), but it's unknown to the libreboot project if these work with linux-libre kernel (TODO: test): - ar5bhb116 ar9382 ABGN - \[0200\]: Qualcomm Atheros AR242x / AR542x Wireless Network Adapter (PCI-Express) \[168c:001c\] [Back to top of page](#pagetop) List of supported ThinkPad X60s {#supported_x60_list} ------------------------------- Native gpu initialization ('native graphics') which replaces the proprietary VGA Option ROM ('[Video BIOS](https://en.wikipedia.org/wiki/Video_BIOS)' or 'VBIOS'), all known LCD panels are currently compatible: To find what LCD panel you have, see: [../misc/\#get\_edid\_panelname](../misc/#get_edid_panelname). - TMD-Toshiba LTD121ECHB: \# - CMO N121X5-L06: \# - Samsung LTN121XJ-L07: \# - BOE-Hydis HT121X01-101: \# You can remove an X61/X61s motherboard from the chassis and install an X60/X60s motherboard in it's place (for flashing libreboot). The chassis is mostly identical and the motherboards are the same shape/size. The X60 typically comes with an Intel wifi chipset which does not work at all without proprietary firmware, and while Lenovo BIOS is running the system will refuse to boot if you replace the card. Fortunately it is very easily replaced; just remove the card and install another one **after** libreboot is installed. See [\#recommended\_wifi](#recommended_wifi) for replacements. List of supported ThinkPad X60 Tablets {#supported_x60t_list} -------------------------------------- Native gpu initialization ('native graphics') which replaces the proprietary VGA Option ROM ('[Video BIOS](https://en.wikipedia.org/wiki/Video_BIOS)' or 'VBIOS'). To find what LCD panel you have, see: [../misc/\#get\_edid\_panelname](../misc/#get_edid_panelname). There are 5 known LCD panels for the X60 Tablet: - **X60T XGA (1024x768):** - BOE-Hydis HV121X03-100 (works) - Samsung LTN121XP01 (does not work. blank screen) - BOE-Hydis HT12X21-351 (does not work. blank screen) - **X60T SXGA+ (1400x1050):** - BOE-Hydis HV121P01-100 (works) - BOE-Hydis HV121P01-101 (works) Most X60Ts only have digitizer (pen), but some have finger (touch) aswell as pen; finger/multitouch doesn't work, only digitizer (pen) does. You can remove an X61/X61s motherboard from the chassis and install an X60/X60s motherboard in its place (for flashing libreboot). The chassis is mostly identical and the motherboards are the same shape/size. **It is unknown if the same applies between the X60 Tablet and the X61 Tablet**. The X60 Tablet typically comes with an Intel wifi chipset which does not work at all without proprietary firmware, and while Lenovo BIOS is running the system will refuse to boot if you replace the card. Fortunately it is very easily replaced; just remove the card and install another one **after** libreboot is installed. See [\#recommended\_wifi](#recommended_wifi) for replacements. A user with a X60T that has digitizer+finger support, reported that they could get finger input working. They used linuxwacom at git tag 0.25.99.2 and had the following in their xorg.conf: # Now, for some reason (probably a bug in linuxwacom), # the 'Touch=on' directive gets reset to 'off'. # So you'll need to do # $ xsetwacom --set WTouch Touch on # # tested with linuxwacom git 42a42b2a8636abc9e105559e5dea467163499de7 Section "Monitor" Identifier "" DisplaySize 245 184 EndSection Section "Screen" Identifier "Default Screen Section" Monitor ".\ In fact, lack of free VBIOS in general is a big problem in coreboot, and is one reason (among others) why many ports for coreboot are unsuitable for libreboot's purpose. Theoretically, the ThinkPad T60 with ATI GPU can work with libreboot and have ROM images compiled for it, however in practise it would not be usable as a laptop because there would be no visual display at all. That being said, such a configuration is acceptable for use in a 'headless' server setup (with serial and/or ssh console as the display). Information about the macbook1,1 {#macbook11} -------------------------------- There is an Apple laptop called the macbook1,1 from 2006 which uses the same i945 chipset as the ThinkPad X60/T60. A developer ported the [MacBook2,1](#macbook21) to coreboot, the ROM images also work on the macbook1,1. You can refer to [\#macbook21](#macbook21) for most of this. Macbook2,1 laptops come with Core 2 Duo processors which support 64-bit operating systems (and 32-bit). The MacBook1,1 uses Core Duo processors (supports 32-bit OS but not 64-bit), and it is believed that this is the only difference. It is believed that all models are compatible, listed here: - ### Compatible models Specifically (Order No. / Model No. / CPU): - MA255LL/A / A1181 (EMC 2092) / Core Duo T2500 **(tested - working)** - MA254LL/A / A1181 (EMC 2092) / Core Duo T2400 **(tested - working)** - MA472LL/A / A1181 (EMC 2092) / Core Duo T2500 (untested) Also of interest: [../git/\#config\_macbook21](../git/#config_macbook21). Unbricking: [this page shows disassembly guides](https://www.ifixit.com/Device/MacBook_Core_2_Duo) and mono's page (see [\#macbook21](#macbook21)) shows the location of the SPI flash chip on the motherboard. [How to remove the motherboard](https://www.ifixit.com/Guide/MacBook+Core+2+Duo+PRAM+Battery+Replacement/529). No method is yet known for flashing in GNU+Linux while the Apple firmware is running. You will need to disassemble the system and flash externally. Reading from flash seems to work. For external flashing, refer to [../install/bbb\_setup.html](../install/bbb_setup.html). Information about the macbook2,1 {#macbook21} -------------------------------- There is an Apple laptop called the macbook2,1 from late 2006 or early 2007 that uses the same i945 chipset as the ThinkPad X60 and ThinkPad T60. A developer ported coreboot to their macbook2,1, and now libreboot can run on it. Mono Moosbart is the person who wrote the port for macbook2,1. Referenced below are copies (up to date at the time of writing, 20140630) of the pages that this person wrote when porting coreboot to the macbook2,1. They are included here in case the main site goes down for whatever reason, since they include a lot of useful information. Backups created using wget: $ wget -m -p -E -k -K -np http://macbook.donderklumpen.de/ **\$ wget -m -p -E -k -K -np http://macbook.donderklumpen.de/coreboot/**\ Use **-e robots=off** if using this trick for other sites and the site restricts using robots.txt **Links to wget backups (and the backups themselves) of Mono's pages (see above) removed temporarily. Mono has given me permission to distribute them, but I need to ask this person to tell me what license these works fall under first. Otherwise, the above URLs should be fine. NOTE TO SELF: REMOVE THIS WHEN DONE** ### Installing GNU+Linux distributions (on Apple EFI firmware) - [Parabola GNU+Linux installation on a macbook2,1 with Apple EFI firmware](#) (this is a copy of Mono's page, see above) How to boot an ISO: burn it to a CD (like you would normally) and hold down the Alt/Control key while booting. The bootloader will detect the GNU+Linux CD as 'Windows' (because Apple doesn't think GNU+Linux exists). Install it like you normally would. When you boot up again, hold Alt/Control once more. The installation (on the HDD) will once again be seen as 'Windows'. (it's not actually Windows, but Apple likes to think that Apple and Microsoft are all that exist.) Now to install libreboot, follow [../install/\#flashrom\_macbook21](../install/#flashrom_macbook21). ### Information about coreboot - [Coreboot on the macbook2,1](#) (this is a copy of Mono's page, see above) ### coreboot wiki page - ### Compatible models It is believed that all models are compatible, listed here: - Specifically (Order No. / Model No. / CPU): - MA699LL/A / A1181 (EMC 2121) / Intel Core 2 Duo T5600 **(tested - working)** - MA701LL/A / A1181 (EMC 2121) / Intel Core 2 Duo T7200 **(tested - working)** - MB061LL/A / A1181 (EMC 2139) / Intel Core 2 Duo T7200 (untested) - MA700LL/A / A1181 (EMC 2121) / Intel Core 2 Duo T7200 **(tested - working)** - MB063LL/A / A1181 (EMC 2139) / Intel Core 2 Duo T7400 (works) - MB062LL/A / A1181 (EMC 2139) / Intel Core 2 Duo T7400 **(tested - working)** Also of interest: [../git/\#config\_macbook21](../git/#config_macbook21). Unbricking: [this page shows disassembly guides](https://www.ifixit.com/Device/MacBook_Core_2_Duo) and mono's page (see above) shows the location of the SPI flash chip on the motherboard. [How to remove the motherboard](https://www.ifixit.com/Guide/MacBook+Core+2+Duo+PRAM+Battery+Replacement/529). For external flashing, refer to [../install/bbb\_setup.html](../install/bbb_setup.html). You need to replace OS X with GNU+Linux before flashing libreboot. (OSX won't run at all in libreboot). There are some issues with this system (compared to other computers that libreboot supports): This is an apple laptop, so it comes with OS X: it has an Apple keyboard, which means that certain keys are missing: insert, del, home, end, pgup, pgdown. There is also one mouse button only. Battery life is poor compared to X60/T60 (for now). It also has other issues: for example, the Apple logo on the back is a hole, exposing the backlight, which means that it glows. You should cover it up. The system does get a bit hotter compared to when running the original firmware. It is certainly hotter than an X60/T60. The heat issues have been partially fixed by the following patch (now merged in libreboot): . **The MacBook2,1 comes with a webcam, which does not work without proprietary software. Also, webcams are a security risk; cover it up! Or remove it.** A user reported that they could get better response from the touchpad with the following in their xorg.conf: Section "InputClass" Identifier "Synaptics Touchpad" Driver "synaptics" MatchIsTouchpad "on" MatchDevicePath "/dev/input/event*" Driver "synaptics" # The next two values determine how much pressure one needs # for tapping, moving the cursor and other events. Option "FingerLow" "10" Option "FingerHigh" "15" # Do not emulate mouse buttons in the touchpad corners. Option "RTCornerButton" "0" Option "RBCornerButton" "0" Option "LTCornerButton" "0" Option "LBCornerButton" "0" # One finger tap = left-click Option "TapButton1" "1" # Two fingers tap = right-click Option "TapButton2" "3" # Three fingers tap = middle-mouse Option "TapButton3" "2" # Try to not count the palm of the hand landing on the touchpad # as a tap. Not sure if helps. Option "PalmDetect" "1" # The following modifies how long and how fast scrolling continues # after lifting the finger when scrolling Option "CoastingSpeed" "20" Option "CoastingFriction" "200" # Smaller number means that the finger has to travel less distance # for it to count as cursor movement. Larger number prevents cursor # shaking. Option "HorizHysteresis" "10" Option "VertHysteresis" "10" # Prevent two-finger scrolling. Very jerky movement Option "HorizTwoFingerScroll" "0" Option "VertTwoFingerScroll" "0" # Use edge scrolling Option "HorizEdgeScroll" "1" Option "VertEdgeScroll" "1" EndSection A user reported that the above is only for linux kernel 3.15 or lower. For newer kernels, the touchpad works fine out of the box, except middle tapping. A user submitted a utility to enable 3-finger tap on this laptop. It's available at *resources/utilities/macbook21-three-finger-tap* in the libreboot git repository. Copyright © 2014, 2015, 2016 Leah Rowe \ Permission is granted to copy, distribute and/or modify this document under the terms of the Creative Commons Attribution-ShareAlike 4.0 International license or any later version published by Creative Commons; A copy of the license can be found at [../cc-by-sa-4.0.txt](../cc-by-sa-4.0.txt) Updated versions of the license (when available) can be found at UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. The disclaimer of warranties and limitation of liability provided above shall be interpreted in a manner that, to the extent possible, most closely approximates an absolute disclaimer and waiver of all liability.