summaryrefslogtreecommitdiffstats
path: root/docs/release.html
blob: 94c933bcc4709350f4e938bf0aed3bc96e8261ec (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
<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<meta name="viewport" content="width=device-width, initial-scale=1">

	<style type="text/css">
		@import url('css/main.css');
	</style>

	<title>Libreboot release information</title>
</head>
<body>
	<div class="section">
		<h1 id="pagetop">Libreboot release information</h1>
			<p>
				Documentation for this release can be found at <a href="index.html">index.html</a>.
				Updated versions of libreboot can be found at <a href="http://libreboot.org/">libreboot.org</a>.
			</p>
	</div>

	<div class="section">
		
		<h2>Old Releases</h2>
			<p>
				See <a href="archive_old.html">archive_old.html</a> for information about older libreboot releases.
			</p>

			<div class="important">
				<h2>
					See <a href="#critical_tasks">tasks</a> for the current TODO list.
				</h2>
			</div>
			
	</div>

	<div class="section">

		<h1 id="releaseYYYYMMDD">Release YYYYMMDD</h1>
		
			<p>
				Release date: Month Day(st,rd,th), Year.
			</p>

				<p>
					Installation instructions can be found at <a href="install/index.html">install/index.html</a>. 
					Building instructions (for source code) can be found at <a href="git/index.html#build">git/index.html#build</a>.
				</p>

			<h2>Machines supported in this release:</h2>
				<ul>
					<li>
						<b>Lenovo ThinkPad X60/X60s</b>
						<ul>
							<li>
								You can also remove the motherboard from an X61/X61s and replace it with an X60/X60s motherboard.
								An X60 Tablet motherboard will also fit inside an X60/X60s. 
							</li>
						</ul>
					</li>
					<li>
						<b>Lenovo ThinkPad X60 Tablet</b> (1024x768 and 1400x1050) with digitizer support
						<ul>
							<li>See <a href="hcl/index.html#supported_x60t_list">hcl/index.html#supported_x60t_list</a> for list of supported LCD panels</li>
							<li>It is unknown whether an X61 Tablet can have it's mainboard replaced with an X60 Tablet motherboard.</li>
						</ul>
					</li>
					<li>
						<b>Lenovo ThinkPad T60</b> (Intel GPU) (there are issues; see below):
						<ul>
							<li>See notes below for exceptions, and <a href="hcl/index.html#supported_t60_list">hcl/index.html#supported_t60_list</a> for known working LCD panels.</li>
							<li>It is unknown whether a T61 can have it's mainboard replaced with a T60 motherboard.</li>
							<li>See <a href="future/index.html#t60_cpu_microcode">future/index.html#t60_cpu_microcode</a>.</li>
							<li>T60P (and T60 laptops with ATI GPU) will likely never be supported: <a href="hcl/index.html#t60_ati_intel">hcl/index.html#t60_ati_intel</a></li>
						</ul>
					</li>
					<li>
						<b>Lenovo ThinkPad X200</b>
						<ul>
							<li>X200S and X200 Tablet are also supported, conditionally; see <a href="hcl/x200.html#x200s">hcl/x200.html#x200s</a></li>
							<li><b>ME/AMT</b>: libreboot removes this, permanently. <a href="hcl/gm45_remove_me.html">hcl/gm45_remove_me.html</a></li>
						</ul>
					</li>
					<li>
						<b>Lenovo ThinkPad R400</b>
						<ul>
							<li><b>ME/AMT</b>: libreboot removes this, permanently. <a href="hcl/gm45_remove_me.html">hcl/gm45_remove_me.html</a></li>
						</ul>
					</li>
					<li>
						<b>Apple MacBook1,1</b> (MA255LL/A, MA254LL/A, MA472LL/A)
						<ul>
							<li>See <a href="hcl/index.html#macbook11">hcl/index.html#macbook11</a>.</li>
						</ul>
					</li>
					<li>
						<b>Apple MacBook2,1</b> (MA699LL/A, MA701LL/A, MB061LL/A, MA700LL/A, MB063LL/A, MB062LL/A)
						<ul>
							<li>See <a href="hcl/index.html#macbook21">hcl/index.html#macbook21</a>.</li>
						</ul>
					</li>
				</ul>


			<h2>
				Git. No changelog!
			</h2>
				<p>
					This version of libreboot is from git. It is not a stable release!
					If you are using a snapshot (tarball), you can find a file included called <b>commitid</b>
					which tells you what git revision it is from the libreboot git repository. If this is not
					a snapshot, then you have cloned libreboot, so you can simply run <b>git log</b>.
				</p>
				<ul>
					<li>Did we forget to mention that this is from git?</li>
					<li>This is from the libreboot git repository.</li>
				</ul>

				
	</div>

	<div class="section">

		<div class="subsection">

			<h2 id="tasks">
				Tasks for future release
			</h2>
				<ul>
					<li>
						Look into the possibility of expanding libreboot to support non-coreboot systems. (u-boot, for instance). 
						Currently, libreboot presents itself as a deblobbed coreboot distribution. There are other systems out there
						that use other firmware, such as u-boot, which libreboot could theoretically support. This would mean that
						the build scripts know how to build things other than just coreboot/grub.
						<ul>
							<li>Allwinner A10 (ARM) SoCs</li>
							<li>PMON?</li>
							<li>barebox (u-boot derivative)</li>
							<li>etc</li>
						</ul>
					</li>
					<li>
						GRUB: analyse how coreboot builds GRUB. Does it use it's own toolchain? Look into simplifying the building
						of GRUB (and memtest86+) using coreboot's own toolchain (crossgcc) instead of distro toolchain.
					</li>
					<li>
						.spd.hex files. These aren't blobs? Don't remove them? (in coreboot). See deblob script. 
						Categorize blobs and non-blobs more clearly, explaining what they are for
						and why they are (or are not) blobs.
					</li>
					<li>
						i945: fix linux (if possible). VBT. http://www.coreboot.org/pipermail/coreboot/2014-June/078104.html
						http://www.coreboot.org/pipermail/coreboot/2014-June/078105.html
						This is talking about without native init / oprom. Paul reported it, look into it.
					</li>
					<li>
						Make ich9gen/ich9deblob portable. They both rely extensively on bitfields, and they assume
						little-endian; for instance, mapping a little endian file directly to a struct, instead
						of serializing/deserializing. Re-factor both utilities and make them fully portable.
					</li>
					<li>
						X60: <b>ACPI PCC Probe Failed</b> message on linux-libre 3.19 and higher. Fix it.
						<a href="https://bugzilla.kernel.org/show_bug.cgi?id=93171">Preliminary bug report (kernel, linux)</a>
						-- the error message is probably not the issue, but something else. do a bisect of linux. 
						Also, does the issue still occur on lenovobios? pstuge said <a href="http://biosbits.org/">http://biosbits.org/</a>
						patricg says https://wiki.ubuntu.com/HardwareEnablementTeam/Documentation/FirmwareTestSuiteLive
					</li>
					<li>
						X200: only framebuffer graphics work. This is fine, since it's what most people use,
						but text-mode graphics initialization is currently broken, which means that
						memtest86+ will require serial output or ehci debugging.
					</li>
					<li>
						Fix remaining incompatible LCD panels in native graphics on T60. 
						See <a href="future/index.html#lcd_i945_incompatibility">future/index.html#lcd_i945_incompatibility</a>.
					</li>
					<li>i945: fix VRAM size (currently 8MB. should be 64MB). See <a href="future/index.html#i945_vram_size">future/index.html#i945_vram_size</a>.</li>
					<li>
						Add proper GS45 raminit for enabling all X200S and X200 Tablets to work properly. See <a href="hcl/x200.html#x200s_raminit">hcl/x200.html#x200s_raminit</a>
					</li>
					<li>
						Look into those machines:
						<ul>
							<li>
								ThinkPad X201 - ME ignition is an issue. Watchdog for ME is an issue. Might be possible to disable watchdog in the flash descriptor
								(soft straps).
							</li>
							<li>
								T410S is supported but not yet merged. This uses the same chipset as the X201. 
								<a href="http://review.coreboot.org/#/c/7975/">http://review.coreboot.org/#/c/7975/</a>
								has the patch. This should be tested by someone and should ideally be merged in coreboot. pecg has one. help him.
							</li>
							<li>
								ThinkPad R400/R500/T400/T400S/T500.
							</li>
							<li>
								T400S and X301. These both seem to be GS45. X301 uses only the low-performance mode CPUs, so raminit
								is the main blocker there. They both probably use WSON-8 flash chips.
							</li>
							<li>
								This page contains a list of basically every thinkpad that would ever be a candidate for libreboot:
								<a href="http://psref.lenovo.com/WithdrawnBook">http://psref.lenovo.com/WithdrawnBook</a> - 
								take a look at <a href="http://www.lenovo.com/psref/pdf/ltwbook_2013.pdf">this PDF</a>.
							</li>
							<li>
								Lenovo G505S - might need video bios and microcode updates. These would have to be removed and/or replaced to be in libreboot
								<a href="https://github.com/alterapraxisptyltd/lenovo-g505s">https://github.com/alterapraxisptyltd/lenovo-g505s</a>.
								It's AMD (not Intel) based on the same design as the HP Pavillion 1035DX. No ME/AMT to worry about!
								<a href"http://www.coreboot.org/User_talk:MrNuke/LTS_Candidates">http://www.coreboot.org/User_talk:MrNuke/LTS_Candidates</a>
								and <a href="http://www.coreboot.org/Board:hp/pavilion_m6_1035dx#Native_graphics_init">http://www.coreboot.org/Board:hp/pavilion_m6_1035dx#Native_graphics_init</a>
							</li>
							<li>
								F2A85-M and E350M1 (libreboot_*_headless.rom). Test openatom. SMU firmware is a problem. XHCI firmware is a problem.
							</li>
						</ul>
					</li>
					<li>add roda rk9 support (contact nico to ask for more details about hw). This is GM45 but these machines do not have a descriptor (no ME), should be easy</li>
					<li>
						port acer aspire 5738 to coreboot (gm45)? (and then libreboot). EC is the main blocker (no support in coreboot yet).
						ME isn't an issue, because its GM45 so it could be removed (it looks like this machine might also be shipped in 
						non-descriptor mode by default, like the roda rk9). 
						Search <b>jv50 block diagram filetype:pdf</b> for schematics.
						(jv50 is written on the board); noone seems to have found any documentation for the EC chip, but
						maybe it could be sufficiently reverse engineered via serialice and ectool.
					</li>
					<li>
						Commit 26ca08caf81ad2dcc9c8246a743d82ffb464c767 in coreboot, see the while (1) loop that
						waits for the panel to power up on i945. This is an infinite loop if the panel doesn't power up.
						Fix it. Also, are there panels that don't power up? Test this, and fix it.
					</li>
					<li>
						<a href="http://blogs.coreboot.org/files/2013/07/vultureprog_shuttle_sbs.jpg">image</a>,
						<a href="http://blogs.coreboot.org/files/2013/08/vultureprog_probing.jpg">image</a>,
						<a href="http://blogs.coreboot.org/files/2013/06/superboosted2.jpg">image</a> - 
						work with mrnuke on getting info about vultureprog PLCC flashing into libreboot. Libreboot needs
						server boards. <a href="https://github.com/mrnuke/vultureprog">https://github.com/mrnuke/vultureprog</a>,
						<a href="https://github.com/mrnuke/qiprog">https://github.com/mrnuke/qiprog</a>,
						<a href="https://github.com/mrnuke/vultureprog-hardware">https://github.com/mrnuke/vultureprog-hardware</a>.
						He also uses the sigrok logic analyzer (free/libre):
						<a href="http://www.dx.com/p/logic-analyzer-w-dupont-lines-and-usb-cable-for-scm-black-148945">http://www.dx.com/p/logic-analyzer-w-dupont-lines-and-usb-cable-for-scm-black-148945</a>
					</li>
					<li>Add cubieboard SPI flashing instructions to libreboot. 
					<a href="https://github.com/mrnuke/coreboot/commits/cubie_mmc?author=mrnuke">mrnuke's github page with patches</a>. mrnuke in IRC knows
					about the cubieboard</li>
					<li>Memtest86+ is currently broken in text-mode. investigate</li>
					<li>Todo: modify memtest86+ to work with libpayload (coreboot framebuffer) and delete all the text-mode ROM images.</li>
					<li>linux 3.18 broke acpi brightness on i945. Libreboot reverted to legacy brightness for now. Look into why it
					broke on 3.18 (do a git bisect).</li>
					<li>Adapt linux-libre deblob scripts for use with coreboot. Libreboot is already deblobbed
					using its own script, but updating it is still a bit too manual. linux-libre's deblob
					scripts do an excellent job and (adapted) will make it much easier to maintain coreboot-libre.</li>
				</ul>
		</div>

		<p><a href="#pagetop">Back to top of page.</a></p>
		
	</div>

	<div class="section">

		<p>
			Copyright &copy; 2014, 2015 Francis Rowe &lt;info@gluglug.org.uk&gt;<br/>
			This document is released under the Creative Commons Attribution-ShareAlike 4.0 International Public License and all future versions.
			A copy of the license can be found at <a href="license.txt">license.txt</a>.
		</p>

		<p>
			This document is distributed in the hope that it will be useful,
			but WITHOUT ANY WARRANTY; without even the implied warranty of
			MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See <a href="license.txt">license.txt</a> for more information.
		</p>
		
	</div>

</body>
</html>