<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.openmoko.org/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://wiki.openmoko.org/index.php?title=FreeRunner_backup_kernel&amp;feed=atom&amp;action=history</id>
		<title>FreeRunner backup kernel - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.openmoko.org/index.php?title=FreeRunner_backup_kernel&amp;feed=atom&amp;action=history"/>
		<link rel="alternate" type="text/html" href="http://wiki.openmoko.org/index.php?title=FreeRunner_backup_kernel&amp;action=history"/>
		<updated>2013-05-19T01:46:37Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.19.6</generator>

	<entry>
		<id>http://wiki.openmoko.org/index.php?title=FreeRunner_backup_kernel&amp;diff=54038&amp;oldid=prev</id>
		<title>Kempelen: Category: +Flashing Openmoko</title>
		<link rel="alternate" type="text/html" href="http://wiki.openmoko.org/index.php?title=FreeRunner_backup_kernel&amp;diff=54038&amp;oldid=prev"/>
				<updated>2008-09-15T22:27:52Z</updated>
		
		<summary type="html">&lt;p&gt;Category: +Flashing Openmoko&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Older revision&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Revision as of 22:27, 15 September 2008&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 27:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 27:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;[[Category:Kernel]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;[[Category:Kernel]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;[[Category:Flashing Openmoko]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Kempelen</name></author>	</entry>

	<entry>
		<id>http://wiki.openmoko.org/index.php?title=FreeRunner_backup_kernel&amp;diff=51103&amp;oldid=prev</id>
		<title>DolfjeBot1: Replacing 'Freerunner' with 'FreeRunner'</title>
		<link rel="alternate" type="text/html" href="http://wiki.openmoko.org/index.php?title=FreeRunner_backup_kernel&amp;diff=51103&amp;oldid=prev"/>
				<updated>2008-08-31T12:34:19Z</updated>
		
		<summary type="html">&lt;p&gt;Replacing &amp;#039;Freerunner&amp;#039; with &amp;#039;FreeRunner&amp;#039;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Older revision&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Revision as of 12:34, 31 August 2008&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;== &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Freerunner &lt;/del&gt;backup kernel ==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;== &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;FreeRunner &lt;/ins&gt;backup kernel ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;The &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Freerunner &lt;/del&gt;NAND partition for the monolithic kernel is set to be 8MBytes, but currently kernels are around 2MBytes in size.&amp;#160; This allows us to stash a second, backup kernel in that partition for use in an emergency.&amp;#160; If your USB network connection is unavailable was knocked out for some reason, or the modules in the rootfs are bad and crash on every boot, this can be highly useful to have alongside DFU as a boot menu option eventually.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;The &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;FreeRunner &lt;/ins&gt;NAND partition for the monolithic kernel is set to be 8MBytes, but currently kernels are around 2MBytes in size.&amp;#160; This allows us to stash a second, backup kernel in that partition for use in an emergency.&amp;#160; If your USB network connection is unavailable was knocked out for some reason, or the modules in the rootfs are bad and crash on every boot, this can be highly useful to have alongside DFU as a boot menu option eventually.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;[[Image:Recovery-kernel.png]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;[[Image:Recovery-kernel.png]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Since this was only implemented after production, factory &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Freerunners &lt;/del&gt;do not currently have a recovery kernel, but it's possible to add as described here.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Since this was only implemented after production, factory &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;FreeRunners &lt;/ins&gt;do not currently have a recovery kernel, but it's possible to add as described here.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Once you installed the recovery kernel, it won't get overwritten by subsequent DFU kernel updates because DFU only erases as far as it writes, which is no more than 2MBytes for normal kernel update.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;Once you installed the recovery kernel, it won't get overwritten by subsequent DFU kernel updates because DFU only erases as far as it writes, which is no more than 2MBytes for normal kernel update.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>DolfjeBot1</name></author>	</entry>

	<entry>
		<id>http://wiki.openmoko.org/index.php?title=FreeRunner_backup_kernel&amp;diff=50965&amp;oldid=prev</id>
		<title>DolfjeBot1: Freerunner backup kernel moved to FreeRunner backup kernel: Replacing 'Freerunner' with 'FreeRunner'</title>
		<link rel="alternate" type="text/html" href="http://wiki.openmoko.org/index.php?title=FreeRunner_backup_kernel&amp;diff=50965&amp;oldid=prev"/>
				<updated>2008-08-31T12:21:00Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;a href=&quot;/wiki/Freerunner_backup_kernel&quot; class=&quot;mw-redirect&quot; title=&quot;Freerunner backup kernel&quot;&gt;Freerunner backup kernel&lt;/a&gt; moved to &lt;a href=&quot;/wiki/FreeRunner_backup_kernel&quot; title=&quot;FreeRunner backup kernel&quot;&gt;FreeRunner backup kernel&lt;/a&gt;: Replacing &amp;#039;Freerunner&amp;#039; with &amp;#039;FreeRunner&amp;#039;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='1' style=&quot;background-color: white; color:black;&quot;&gt;← Older revision&lt;/td&gt;
			&lt;td colspan='1' style=&quot;background-color: white; color:black;&quot;&gt;Revision as of 12:21, 31 August 2008&lt;/td&gt;
			&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>DolfjeBot1</name></author>	</entry>

	<entry>
		<id>http://wiki.openmoko.org/index.php?title=FreeRunner_backup_kernel&amp;diff=45796&amp;oldid=prev</id>
		<title>Glenn: +cat</title>
		<link rel="alternate" type="text/html" href="http://wiki.openmoko.org/index.php?title=FreeRunner_backup_kernel&amp;diff=45796&amp;oldid=prev"/>
				<updated>2008-08-09T13:38:59Z</updated>
		
		<summary type="html">&lt;p&gt;+cat&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr valign='top'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Older revision&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Revision as of 13:38, 9 August 2008&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 25:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 25:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;blockquote&amp;gt;setenv bootcmd&amp;#160; nand read.e 0x32000000 kernel \; setenv bootargs \${mtdparts} rootfstype=jffs2 root=/dev/mtdblock6 console=tty0 console=ttySAC2,115200 loglevel=3 init=/sbin/init \; bootm 0x32400000 ; boot&amp;lt;/blockquote&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;blockquote&amp;gt;setenv bootcmd&amp;#160; nand read.e 0x32000000 kernel \; setenv bootargs \${mtdparts} rootfstype=jffs2 root=/dev/mtdblock6 console=tty0 console=ttySAC2,115200 loglevel=3 init=/sbin/init \; bootm 0x32400000 ; boot&amp;lt;/blockquote&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;[[Category:Kernel]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Glenn</name></author>	</entry>

	<entry>
		<id>http://wiki.openmoko.org/index.php?title=FreeRunner_backup_kernel&amp;diff=45305&amp;oldid=prev</id>
		<title>Warmcat: New page: == Freerunner backup kernel ==  The Freerunner NAND partition for the monolithic kernel is set to be 8MBytes, but currently kernels are around 2MBytes in size.  This allows us to stash a s...</title>
		<link rel="alternate" type="text/html" href="http://wiki.openmoko.org/index.php?title=FreeRunner_backup_kernel&amp;diff=45305&amp;oldid=prev"/>
				<updated>2008-08-07T08:14:14Z</updated>
		
		<summary type="html">&lt;p&gt;New page: == Freerunner backup kernel ==  The Freerunner NAND partition for the monolithic kernel is set to be 8MBytes, but currently kernels are around 2MBytes in size.  This allows us to stash a s...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Freerunner backup kernel ==&lt;br /&gt;
&lt;br /&gt;
The Freerunner NAND partition for the monolithic kernel is set to be 8MBytes, but currently kernels are around 2MBytes in size.  This allows us to stash a second, backup kernel in that partition for use in an emergency.  If your USB network connection is unavailable was knocked out for some reason, or the modules in the rootfs are bad and crash on every boot, this can be highly useful to have alongside DFU as a boot menu option eventually.&lt;br /&gt;
&lt;br /&gt;
[[Image:Recovery-kernel.png]]&lt;br /&gt;
&lt;br /&gt;
Since this was only implemented after production, factory Freerunners do not currently have a recovery kernel, but it's possible to add as described here.&lt;br /&gt;
&lt;br /&gt;
Once you installed the recovery kernel, it won't get overwritten by subsequent DFU kernel updates because DFU only erases as far as it writes, which is no more than 2MBytes for normal kernel update.&lt;br /&gt;
&lt;br /&gt;
=== Current packaging compatability issue ===&lt;br /&gt;
&amp;lt;blockquote&amp;gt;Right this second the packaged kernels erase the whole partition on update, but I am requesting that be changed so they won't touch the backup kernel either.&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Installing the backup kernel ==&lt;br /&gt;
&lt;br /&gt;
Recovery kernels are &amp;quot;moredrivers&amp;quot; kernels that include the critical drivers in the main kernel already.  Additionally, because they share a partition with the normal kernel, they are around 6MB in size to get the recovery part at the 4MB offset as shown in the picture above.&lt;br /&gt;
&lt;br /&gt;
You can get a 6MB recovery image from here: [http://warmcat.com/recovery-uImage-moredrivers-stable_507c3c1ba3921bb7.bin 6M recovery kernel image]&lt;br /&gt;
&lt;br /&gt;
Just DFU it in normally to the kernel partition.  When the issue about packaged erase is fixed, subsequent updates by DFU or kernel package will update the first kernel normally, but leave the backup one at +4MBytes alone.&lt;br /&gt;
&lt;br /&gt;
== Selecting the backup kernel in U-Boot ==&lt;br /&gt;
&lt;br /&gt;
This one-liner at the U-Boot prompt will boot you into the backup kernel.  (FIXME: integrate into boot menu to make all this actually useful)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;blockquote&amp;gt;setenv bootcmd  nand read.e 0x32000000 kernel \; setenv bootargs \${mtdparts} rootfstype=jffs2 root=/dev/mtdblock6 console=tty0 console=ttySAC2,115200 loglevel=3 init=/sbin/init \; bootm 0x32400000 ; boot&amp;lt;/blockquote&amp;gt;&lt;/div&gt;</summary>
		<author><name>Warmcat</name></author>	</entry>

	</feed>