summaryrefslogtreecommitdiffstats
path: root/docs/src/hcl/index.texi
blob: fe4f213eb260080bf29c5a33d4bdb5dd329a8ec7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
\input texinfo
@documentencoding UTF-8

@ifnottex
@paragraphindent 0
@end ifnottex
@titlepage
@title Hardware compatibility list
@end titlepage

@node Top
@top Hardware compatibility list

@menu
* Hardware compatibility list::
@end menu

@node Hardware compatibility list
@chapter Hardware compatibility list
@anchor{#hardware-compatibility-list}
This sections relates to known hardware compatibility in libreboot.

@itemize
@item
@ref{#supported_list,List of supported hardware}
@itemize
@item
@ref{#supported_desktops_x86amd,Desktops (Intel and AMD, x86)}
@item
@ref{#supported_workstations_x86amd,Servers/workstations}
@item
@ref{#supported_laptops_arm,Laptops (ARM)}
@item
@ref{#supported_laptops_x86intel,Laptops (Intel, x86)}
@end itemize

@item
@ref{#recommended_wifi,Recommended wifi chipsets}
@end itemize

@uref{../index.html,Back to previous index}.
@menu
* List of supported hardware::
* Recommended wifi chipsets::
* List of supported ThinkPad X60s::
* List of supported ThinkPad X60 Tablets::
* Supported T60 list::
* ThinkPad T60 ATI GPU and ThinkPad T60 Intel GPU differences::
* Information about the macbook11::
* Information about the macbook21::
@end menu

@node List of supported hardware
@section List of supported hardware
@anchor{#list-of-supported-hardware}
Libreboot supports the following systems in this release:
@menu
* Desktops AMD and Intel x86::
* Servers/workstations AMD x86::
* Laptops ARM::
* Laptops Intel x86::
@end menu

@node Desktops AMD and Intel x86
@subsection Servers/workstations (AMD, x86)
@anchor{#desktops-amd-and-intel-x86}
@itemize
@item
@uref{ga-g41m-es2l.html,Gigabyte Gigabyte GA-G41M-ES2L motherboard}
@item
@uref{d510mo.html,Intel D510MO motherboard}
@item
@uref{kcma-d8.html,ASUS KCMA-D8 motherboard}
@end itemize

@node Servers/workstations AMD x86
@subsection Servers/workstations (AMD, x86)
@anchor{#serversworkstations-amd-x86}
@itemize
@item
@uref{kfsn4-dre.html,ASUS KFSN4-DRE motherboard}
@item
@uref{kgpe-d16.html,ASUS KGPE-D16 motherboard}
@end itemize

@node Laptops ARM
@subsection Laptops (ARM)
@anchor{#laptops-arm}
@itemize
@item
@uref{c201.html,ASUS Chromebook C201}
@end itemize

@node Laptops Intel x86
@subsection Laptops (Intel, x86)
@anchor{#laptops-intel-x86}
@itemize
@item
@ref{#supported_x60_list,Lenovo ThinkPad X60/X60s}
@item
@ref{#supported_x60t_list,Lenovo ThinkPad X60 Tablet}
@item
@ref{#supported_t60_list,Lenovo ThinkPad T60} (there are exceptions. see link)
@item
@uref{x200.html,Lenovo ThinkPad X200}
@item
@uref{r400.html,Lenovo ThinkPad R400}
@item
@uref{r500.html,Lenovo ThinkPad R500}
@item
@uref{t400.html,Lenovo ThinkPad T400}
@item
@uref{t500.html,Lenovo ThinkPad T500}
@item
@ref{#macbook11,Apple MacBook1,1}
@item
@ref{#macbook21,Apple MacBook2,1}
@end itemize

'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).

@ref{#pagetop,Back to top of page}

@node Recommended wifi chipsets
@section Recommended wifi chipsets
@anchor{#recommended-wifi-chipsets}
The following are known to work well:

@itemize
@item
@uref{http://h-node.org/search/results/en/1/search/wifi/ar9285,Atheros AR5B95} (chipset: Atheros AR9285); mini PCI-E. Most of these are half-height, so you will need a half>full height mini PCI express adapter/bracket.
@item
@uref{http://h-node.org/wifi/view/en/116/Atheros-Communications-Inc--AR928X-Wireless-Network-Adapter--PCI-Express---rev-01-,Atheros AR928X} chipset; mini PCI-E. Most of these are half-height, so you will need a half>full height mini PCI express adapter/bracket
@item
Unex DNUA-93F (chipset: @uref{http://h-node.org/search/results/en/1/search/wifi/ar9271,Atheros AR9271}); USB.
@item
Any of the chipsets listed at @uref{https://www.fsf.org/resources/hw/endorsement/respects-your-freedom,https://www.fsf.org/resources/hw/endorsement/respects-your-freedom}
@item
Any of the chipsets listed at @uref{http://h-node.org/wifi/catalogue/en/1/1/undef/undef/yes?,http://h-node.org/wifi/catalogue/en/1/1/undef/undef/yes?}
@end itemize

The following was mentioned (on IRC), but it's unknown to the libreboot project if these work with linux-libre kernel (TODO: test):

@itemize
@item
ar5bhb116 ar9382 ABGN
@item
[0200]: Qualcomm Atheros AR242x / AR542x Wireless Network Adapter (PCI-Express) [168c:001c]
@end itemize

@ref{#pagetop,Back to top of page}

@node List of supported ThinkPad X60s
@section List of supported ThinkPad X60s
@anchor{#list-of-supported-thinkpad-x60s}
Native gpu initialization ('native graphics') which replaces the proprietary VGA Option ROM ('@uref{https://en.wikipedia.org/wiki/Video_BIOS,Video BIOS}' or 'VBIOS'), all known LCD panels are currently compatible:

To find what LCD panel you have, see: @uref{../misc/index.html#get_edid_panelname,../misc/index.html#get_edid_panelname}.

@itemize
@item
TMD-Toshiba LTD121ECHB: #
@item
CMO N121X5-L06: #
@item
Samsung LTN121XJ-L07: #
@item
BOE-Hydis HT121X01-101: #
@end itemize

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 @strong{after} libreboot is installed. See @ref{#recommended_wifi,#recommended_wifi} for replacements.

@ref{#pagetop,Back to top of page.}

@node List of supported ThinkPad X60 Tablets
@section List of supported ThinkPad X60 Tablets
@anchor{#list-of-supported-thinkpad-x60-tablets}
Native gpu initialization ('native graphics') which replaces the proprietary VGA Option ROM ('@uref{https://en.wikipedia.org/wiki/Video_BIOS,Video BIOS}' or 'VBIOS').

To find what LCD panel you have, see: @uref{../misc/index.html#get_edid_panelname,../misc/index.html#get_edid_panelname}.

There are 5 known LCD panels for the X60 Tablet:

@itemize
@item
@strong{X60T XGA (1024x768):}
@itemize
@item
BOE-Hydis HV121X03-100 (works)
@item
Samsung LTN121XP01 (does not work. blank screen)
@item
BOE-Hydis HT12X21-351 (does not work. blank screen)
@end itemize

@item
@strong{X60T SXGA+ (1400x1050):}
@itemize
@item
BOE-Hydis HV121P01-100 (works)
@item
BOE-Hydis HV121P01-101 (works)
@end itemize

@end itemize

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. @strong{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 @strong{after} libreboot is installed. See @ref{#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:

@verbatim
# 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             "<default monitor>"
     DisplaySize     245 184
EndSection

Section "Screen"
     Identifier "Default Screen Section"
     Monitor    "<default monitor<"
EndSection

Section "InputDevice"
     Identifier  "WTouch"
     Driver      "wacom"
     Option      "Device" "/dev/ttyS0"
#    Option      "DebugLevel" "12"
     Option      "BaudRate" "38400"
     Option      "Type" "touch"
     Option      "Touch" "on"
     Option      "Gesture" "on"
     Option      "ForceDevice" "ISDV4"
#    Option      "KeepShape" "on"
     Option      "Mode" "Absolute"
     Option      "RawSample" "2"
#    Option      "TPCButton" "off"
     Option      "TopX" "17"
     Option      "TopY" "53"
     Option      "BottomX" "961"
     Option      "BottomY" "985"
EndSection

Section "ServerLayout"
  Identifier    "Default Layout"
  Screen        "Default Screen Section"
  InputDevice   "WTouch" "SendCoreEvents"
EndSection
@end verbatim

@ref{#pagetop,Back to top of page.}

@node Supported T60 list
@section Supported T60 list
@anchor{#supported-t60-list}
Native gpu initialization ('native graphics') which replaces the proprietary VGA Option ROM ('@uref{https://en.wikipedia.org/wiki/Video_BIOS,Video BIOS}' or 'VBIOS').

To find what LCD panel you have, see: @uref{../misc/index.html#get_edid_panelname,../misc/index.html#get_edid_panelname}.

@strong{Some T60s have ATI GPUs, and all T60P laptops have ATI GPUs These are incompatible! See @ref{#t60_ati_intel,#t60_ati_intel} for how to remedy this.}

How to dump the EDID:@*

Tested LCD panels: @strong{working(compatible)}

@itemize
@item
TMD-Toshiba LTD141EN9B (14.1" 1400x1050) (FRU P/N 41W1478 recommended for the inverter board)
@item
Samsung LTN141P4-L02 (14.1" 1400x1050) (FRU P/N 41W1478 recommended for the inverter board)
@item
LG-Philips LP150E05-A2K1 (15.1" 1400x1050) (P/N 42T0078 FRU 42T0079 or P/N 41W1338 recommended for the inverter board)
@item
Samsung LTN150P4-L01 (15.1" 1400x1050) (P/N 42T0078 FRU 42T0079 or P/N 41W1338 recommended for the inverter board) (not a T60 screen afaik, but it works)
@item
BOE-Hydis HV150UX1-100 (15.1" 1600x1200) (P/N 42T0078 FRU 42T0079 or P/N 41W1338 recommended for the inverter board)
@end itemize

Tested LCD panels: @strong{not working yet (incompatible; see @uref{../future/index.html#lcd_i945_incompatibility,../future/index.html#lcd_i945_incompatibility})}

@itemize
@item
Samsung LTN141XA-L01 (14.1" 1024x768)
@item
LG-Philips LP150X09 (15.1" 1024x768)
@item
Samsung LTN150XG (15.1" 1024x768)
@item
LG-Philips LP150E06-A5K4 (15.1" 1400x1050) (also, not an official T60 screen)
@item
Samsung LTN154X3-L0A (15.4" 1280x800)
@item
IDtech IAQX10N (15.1" 2048x1536) (no display in GRUB, display in GNU/Linux is temperamental) (P/N 42T0078 FRU 42T0079 or P/N 41W1338 recommended for the inverter board)
@item
IDtech N150U3-L01 (15.1" 1600x1200) (no display in GRUB, display in GNU/Linux works) (P/N 42T0078 FRU 42T0079 or P/N 41W1338 recommended for the inverter board)
@end itemize

@emph{The following LCD panels are @strong{UNTESTED}. If you have one of these panels then please submit a report!}:

@itemize
@item
CMO(IDtech?) N141XC (14.1" 1024x768)
@item
BOE-Hydis HT14X14 (14.1" 1024x768)
@item
TMD-Toshiba LTD141ECMB (14.1" 1024x768)
@item
Boe-Hydis HT14P12 (14.1" 1400x1050) (FRU P/N 41W1478 recommended for the inverter board)
@item
CMO (IDtech?) 13N7068 (15.1" 1024x768)
@item
CMO (IDtech?) 13N7069 (15.1" 1024x768)
@item
BOE-Hydis HV150P01-100 (15.1" 1400x1050) (P/N 42T0078 FRU 42T0079 or P/N 41W1338 recommended for the inverter board)
@item
BOE-Hydis HV150UX1-102 (15.1" 1600x1200) (P/N 42T0078 FRU 42T0079 or P/N 41W1338 recommended for the inverter board)
@item
IDtech IAQX10S (15.1" 2048x1536) (P/N 42T0078 FRU 42T0079 or P/N 41W1338 recommended for the inverter board)
@item
Samsung LTN154P2-L05 (42X4641 42T0329) (15.4" 1680x1050)
@item
LG-Philips LP154W02-TL10 (13N7020 42T0423) (15.4" 1680x1050)
@item
LG-Philips LP154WU1-TLB1 (42T0361) (15.4" 1920x1200) @strong{(for T61p but it might work in T60. Unknown!)}
@item
Samsung LTN154U2-L05 (42T0408 42T0574) (15.4" 1920x1200) @strong{(for T61p but it might work in T60. Unknown!)}
@end itemize

It is unknown whether the 1680x1050 (15.4") and 1920x1200 (15.4") panels use a different inverter board than the 1280x800 panels.

The T60 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 @strong{after} libreboot is installed. See @ref{#recommended_wifi,#recommended_wifi} for replacements.

@ref{#pagetop,Back to top of page.}

@node ThinkPad T60 ATI GPU and ThinkPad T60 Intel GPU differences
@section ThinkPad T60 (ATI GPU) and ThinkPad T60 (Intel GPU) differences.
@anchor{#thinkpad-t60-ati-gpu-and-thinkpad-t60-intel-gpu-differences.}
If your T60 is a 14.1" or 15.1" model with an ATI GPU, it won't work with libreboot by default but you can replace the motherboard with another T60 motherboard that has an Intel GPU, and then libreboot should work.

As far as I know, 14.1" (Intel GPU) and 15.1" (Intel GPU) T60 motherboards are the same, where 'spacers' are used on the 15.1" T60. In any case, it makes sense to find one that is guaranteed to fit in your chassis.

There is also a 15.4" T60 with Intel GPU.

Note: the T60@strong{p} laptops all have ATI graphics. The T60p laptops cannot be used with libreboot under any circumstances.

The following T60 motherboard (see area highlighted in white) shows an empty space where the ATI GPU would be (this particular motherboard has an Intel GPU):@*@* @image{../resources/images/t60_dev/t60_unbrick,,,,jpg}

The reason that the ATI GPU on T60 is unsupported is due to the VBIOS (Video BIOS) which is non-free. The VBIOS for the Intel GPU on X60/T60 has been reverse engineered, and replaced with Free Software and so will work in libreboot.

The 'Video BIOS' is what initializes graphics.

See: @uref{https://en.wikipedia.org/wiki/Video_BIOS,https://en.wikipedia.org/wiki/Video_BIOS}.@* 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).

@ref{#pagetop,Back to top of page.}

@node Information about the macbook11
@section Information about the macbook1,1
@anchor{#information-about-the-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 @ref{#macbook21,MacBook2,1} to coreboot, the ROM images also work on the macbook1,1.

You can refer to @ref{#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:

@itemize
@item
@uref{http://www.everymac.com/ultimate-mac-lookup/?search_keywords=MacBook1,1,http://www.everymac.com/ultimate-mac-lookup/?search_keywords=MacBook1,1}
@end itemize

@menu
* Compatible models::
@end menu

@node Compatible models
@subsection Compatible models
@anchor{#compatible-models}
Specifically (Order No. / Model No. / CPU):

@itemize
@item
MA255LL/A / A1181 (EMC 2092) / Core Duo T2500 @strong{(tested - working)}
@item
MA254LL/A / A1181 (EMC 2092) / Core Duo T2400 (untested)
@item
MA472LL/A / A1181 (EMC 2092) / Core Duo T2500 (untested)
@end itemize

Also of interest: @uref{../git/index.html#config_macbook21,../git/index.html#config_macbook21}.

Unbricking: @uref{https://www.ifixit.com/Device/MacBook_Core_2_Duo,this page shows disassembly guides} and mono's page (see @ref{#macbook21,#macbook21}) shows the location of the SPI flash chip on the motherboard. @uref{https://www.ifixit.com/Guide/MacBook+Core+2+Duo+PRAM+Battery+Replacement/529,How to remove the motherboard}.

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 @uref{../install/bbb_setup.html,../install/bbb_setup.html}.

@ref{#pagetop,Back to top of page.}

@node Information about the macbook21
@section Information about the macbook2,1
@anchor{#information-about-the-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:@* @strong{$ wget -m -p -E -k -K -np http://macbook.donderklumpen.de/}@* @strong{$ wget -m -p -E -k -K -np http://macbook.donderklumpen.de/coreboot/}@* Use @strong{-e robots=off} if using this trick for other sites and the site restricts using robots.txt

@strong{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}
@menu
* Installing GNU/Linux distributions on Apple EFI firmware::
* Information about coreboot::
* coreboot wiki page::
* Compatible models::
@end menu

@node Installing GNU/Linux distributions on Apple EFI firmware
@subsection Installing GNU/Linux distributions (on Apple EFI firmware)
@anchor{#installing-gnulinux-distributions-on-apple-efi-firmware}
@itemize
@item
@ref{#,Parabola GNU/Linux installation on a macbook2,1 with Apple EFI firmware} (this is a copy of Mono's page, see above)
@end itemize

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 @uref{../install/index.html#flashrom_macbook21,../install/index.html#flashrom_macbook21}.

@node Information about coreboot
@subsection Information about coreboot
@anchor{#information-about-coreboot}
@itemize
@item
@ref{#,Coreboot on the macbook2,1} (this is a copy of Mono's page, see above)
@end itemize

@node coreboot wiki page
@subsection coreboot wiki page
@anchor{#coreboot-wiki-page}
@itemize
@item
@uref{http://www.coreboot.org/Board:apple/macbook21,http://www.coreboot.org/Board:apple/macbook21}
@end itemize

@node Compatible models
@subsection Compatible models
@anchor{#compatible-models-1}
It is believed that all models are compatible, listed here:

@itemize
@item
@uref{http://www.everymac.com/ultimate-mac-lookup/?search_keywords=MacBook2,1,http://www.everymac.com/ultimate-mac-lookup/?search_keywords=MacBook2,1}
@end itemize

Specifically (Order No. / Model No. / CPU):

@itemize
@item
MA699LL/A / A1181 (EMC 2121) / Intel Core 2 Duo T5600 @strong{(tested - working)}
@item
MA701LL/A / A1181 (EMC 2121) / Intel Core 2 Duo T7200 @strong{(tested - working)}
@item
MB061LL/A / A1181 (EMC 2139) / Intel Core 2 Duo T7200 (untested)
@item
MA700LL/A / A1181 (EMC 2121) / Intel Core 2 Duo T7200 @strong{(tested - working)}
@item
MB063LL/A / A1181 (EMC 2139) / Intel Core 2 Duo T7400 (untested)
@item
MB062LL/A / A1181 (EMC 2139) / Intel Core 2 Duo T7400 @strong{(tested - working)}
@end itemize

Also of interest: @uref{../git/index.html#config_macbook21,../git/index.html#config_macbook21}.

Unbricking: @uref{https://www.ifixit.com/Device/MacBook_Core_2_Duo,this page shows disassembly guides} and mono's page (see above) shows the location of the SPI flash chip on the motherboard. @uref{https://www.ifixit.com/Guide/MacBook+Core+2+Duo+PRAM+Battery+Replacement/529,How to remove the motherboard}.

For external flashing, refer to @uref{../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): @uref{http://review.coreboot.org/#/c/7923/,http://review.coreboot.org/#/c/7923/}.

@strong{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:

@verbatim
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
@end verbatim

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 @emph{resources/utilities/macbook21-three-finger-tap} in the libreboot git repository. The script is for GNOME, confirmed to work in Trisquel 7.

@ref{#pagetop,Back to top of page.}

Copyright © 2014, 2015, 2016 Francis Rowe <info@@gluglug.org.uk>@* Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license can be found at @uref{../resources/licenses/gfdl-1.3.txt,gfdl-1.3.txt}

Updated versions of the license (when available) can be found at @uref{https://www.gnu.org/licenses/licenses.html,https://www.gnu.org/licenses/licenses.html}

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.

@bye