<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">

  <title><![CDATA[OpenEmbedded for the Chumby]]></title>
  <link href="http://guy.carpenter.id.au/chumby-oe/atom.xml" rel="self"/>
  <link href="http://guy.carpenter.id.au/chumby-oe/"/>
  <updated>2012-10-23T09:42:56+10:00</updated>
  <id>http://guy.carpenter.id.au/chumby-oe/</id>
  <author>
    <name><![CDATA[Guy Carpenter]]></name>
    
  </author>
  <generator uri="http://octopress.org/">Octopress</generator>

  
  <entry>
    <title type="html"><![CDATA[Building a Kernel: Ubuntu is Not Your Friend]]></title>
    <link href="http://guy.carpenter.id.au/chumby-oe/blog/2012/10/22/building-a-kernel-ubuntu-is-not-your-friend/"/>
    <updated>2012-10-22T17:27:00+10:00</updated>
    <id>http://guy.carpenter.id.au/chumby-oe/blog/2012/10/22/building-a-kernel-ubuntu-is-not-your-friend</id>
    <content type="html"><![CDATA[<p>Before you try building a Chumby OpenEmbedded kernel using Ubuntu, I have one bit of advice: <em>Don&#8217;t</em>.  Use Debian.</p>

<p>I&#8217;ve had email from a couple of people indicating they had problems building the Chumby OE kernel under Ubuntu,
but until now I&#8217;ve not tried it myself.  This came up again recently, and I thought I would check it out
for myself.  I haven&#8217;t used Ubuntu much; isn&#8217;t it just Debian in OSX clothing?  <a href="http://ubuntuforums.org/showthread.php?t=1429749">No?</a>
Well the <a href="http://www.ubuntu.com/project/about-ubuntu/ubuntu-and-debian">Ubuntu website says</a>
Debian is <em>&#8216;the rock upon which Ubuntu is built&#8217;</em>, so I assume they are married or something.</p>

<p>Anyway, I tested with Ubuntu 12.04.1 (Precise Pangolin).  The first break happens building perl:</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
<span class='line-number'>3</span>
<span class='line-number'>4</span>
<span class='line-number'>5</span>
<span class='line-number'>6</span>
<span class='line-number'>7</span>
<span class='line-number'>8</span>
<span class='line-number'>9</span>
<span class='line-number'>10</span>
<span class='line-number'>11</span>
<span class='line-number'>12</span>
<span class='line-number'>13</span>
<span class='line-number'>14</span>
<span class='line-number'>15</span>
<span class='line-number'>16</span>
<span class='line-number'>17</span>
<span class='line-number'>18</span>
<span class='line-number'>19</span>
<span class='line-number'>20</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>| opmini.o: In function `Perl_load_module_nocontext':
</span><span class='line'>| opmini.c:(.text+0xebac): undefined reference to `pthread_getspecific'
</span><span class='line'>| collect2: ld returned 1 exit status
</span><span class='line'>| make: *** [miniperl] Error 1
</span><span class='line'>| + die 'oe_runmake failed'
</span><span class='line'>| + oefatal 'oe_runmake failed'
</span><span class='line'>| + echo FATAL: 'oe_runmake failed'
</span><span class='line'>| FATAL: oe_runmake failed
</span><span class='line'>| + exit 1
</span><span class='line'>NOTE: package perl-native-5.10.1-r10: task do_compile: Failed
</span><span class='line'>ERROR: Function 'do_compile' failed (see /home2/guy/chumby-oe/output-angstrom-.9/work/i686-linux/perl-native-5.10.1-r10/temp/log.do_compile.21907 for further information)
</span><span class='line'>ERROR: Task 2619 (/home2/guy/chumby-oe/openembedded/recipes/perl/perl-native_5.10.1.bb, do_compile) failed with exit code '1'
</span><span class='line'>Waiting for 2 active tasks to finish:
</span><span class='line'>0: m4-native-1.4.14-r0.1 do_install (pid 27991)
</span><span class='line'>1: linux-libc-headers-2.6.32-r5 do_unpack (pid 28489)
</span><span class='line'>Waiting for 1 active tasks to finish:
</span><span class='line'>0: m4-native-1.4.14-r0.1 do_install (pid 27991)
</span><span class='line'>NOTE: package linux-libc-headers-2.6.32-r5: task do_unpack: Succeeded
</span><span class='line'>NOTE: package m4-native-1.4.14-r0.1: task do_install: Succeeded
</span><span class='line'>ERROR: '/home2/guy/chumby-oe/openembedded/recipes/perl/perl-native_5.10.1.bb' failed</span></code></pre></td></tr></table></div></figure>


<p>I found a discussion of a similar problem on a <a href="http://gumstix.8.n6.nabble.com/Problems-making-PERL-td665846.html">Gumstix thread</a> which
offered the workaround of adding the following line to meta-chumby/conf/site.conf:</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>ASSUME_PROVIDED += "perl-native"</span></code></pre></td></tr></table></div></figure>


<p>That worked and the build progressed to the next failure:</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
<span class='line-number'>3</span>
<span class='line-number'>4</span>
<span class='line-number'>5</span>
<span class='line-number'>6</span>
<span class='line-number'>7</span>
<span class='line-number'>8</span>
<span class='line-number'>9</span>
<span class='line-number'>10</span>
<span class='line-number'>11</span>
<span class='line-number'>12</span>
<span class='line-number'>13</span>
<span class='line-number'>14</span>
<span class='line-number'>15</span>
<span class='line-number'>16</span>
<span class='line-number'>17</span>
<span class='line-number'>18</span>
<span class='line-number'>19</span>
<span class='line-number'>20</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>| make[2]: Entering directory `/home2/guy/chumby-oe/output-angstrom-.9/work/i686-linux/openssl-native-1.0.0d-r14.0/openssl-1.0.0d/apps'
</span><span class='line'>| openssl.o: In function `main':
</span><span class='line'>| openssl.c:(.text+0x199): undefined reference to `BIO_s_file'
</span><span class='line'>| openssl.c:(.text+0x1a1): undefined reference to `BIO_new'
</span><span class='line'>| openssl.c:(.text+0x1e1): undefined reference to `BIO_ctrl'
</span><span class='line'>| openssl.c:(.text+0x231): undefined reference to `CRYPTO_dbg_get_options'
</span><span class='line'>| openssl.c:(.text+0x23b): undefined reference to `CRYPTO_dbg_set_options'
</span><span class='line'>| openssl.c:(.text+0x245): undefined reference to `CRYPTO_dbg_free'
</span><span class='line'>| openssl.c:(.text+0x24f): undefined reference to `CRYPTO_dbg_realloc'
</span><span class='line'>| openssl.c:(.text+0x259): undefined reference to `CRYPTO_dbg_malloc'
</span><span class='line'>| openssl.c:(.text+0x261): undefined reference to `CRYPTO_set_mem_debug_functions'
</span><span class='line'>| openssl.c:(.text+0x26d): undefined reference to `CRYPTO_set_mem_debug_options'
</span><span class='line'>| openssl.c:(.text+0x29b): undefined reference to `CRYPTO_set_mem_debug_functions'
</span><span class='line'>| openssl.c:(.text+0x2a7): undefined reference to `CRYPTO_mem_ctrl'
</span><span class='line'>| openssl.c:(.text+0x2b5): undefined reference to `CRYPTO_set_locking_callback'
</span><span class='line'>| openssl.c:(.text+0x2eb): undefined reference to `CRYPTO_set_mem_functions'
</span><span class='line'>| openssl.c:(.text+0x2f0): undefined reference to `ERR_load_crypto_strings'
</span><span class='line'>| openssl.c:(.text+0x2f5): undefined reference to `OPENSSL_add_all_algorithms_noconf'
</span><span class='line'>| openssl.c:(.text+0x2fa): undefined reference to `ENGINE_load_builtin_engines'
</span><span class='line'>| openssl.c:(.text+0x35a): undefined reference to `NCONF_new'</span></code></pre></td></tr></table></div></figure>


<p>I applied a workaround in <a href="http://comments.gmane.org/gmane.comp.handhelds.openembedded/49694">gmane.comp.handhelds.openembedded</a>
and moved on.</p>

<p>And so on&#8230; Initially I thought I would create a project fork to support Ubuntu 12, but after continuing
like this with several more breaks I could see no end in sight so I abandoned that idea.
Honestly if you are going to put a bunch of work into this project, it would be smarter to port it to the new oe-core
framework.</p>

<p>Or just use Debian, okay?</p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[The Chumby Forums Are Gone?]]></title>
    <link href="http://guy.carpenter.id.au/chumby-oe/blog/2012/05/06/chumby-forums-offline/"/>
    <updated>2012-05-06T12:23:00+10:00</updated>
    <id>http://guy.carpenter.id.au/chumby-oe/blog/2012/05/06/chumby-forums-offline</id>
    <content type="html"><![CDATA[<p><em>Spoiler alert: no, the forums are not gone.  It was back, but it looks like problems with the anti-spam feature are not fully resolved.  Thanks to Duane for his hard work getting the forum back up.</em></p>

<p><img class="right" src="http://guy.carpenter.id.au/chumby-oe/resources/chumby_mark_master_w.png"></p>

<p>Following close on the news that Chumby Industries has stopped trading,
today their incredibly useful discussion forum has gone off-line.  That&#8217;s
bad news for folks looking to keep their Chumby alive
as the ecosystem shuts down, and for those of us who have
been using the forums to collaborate on kernel development and the OpenEmbedded image.</p>

<p>Zurk&#8217;s offline firmware is available <a href="http://sourceforge.net/projects/zurk/files/">on sourceforge</a>, and of course my OE resources are still available on github.</p>

<p>At the moment the Chumby <a href="http://files.chumby.com/source">source files</a> are still available, but given where things seem to be headed, I&#8217;ve taken the precaution of taking a snapshot of that server.</p>

<p>So what&#8217;s next?  If you want to be part of the Chumby community maybe the dormant <a href="https://groups.google.com/forum/?fromgroups#!forum/chumby-user-group">Chumby Users Group</a> is the place to start.  <em>Nope, the Google group appears to be dead, new posts are not being propagated.</em></p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[Reading Joystick Inputs with GPIO]]></title>
    <link href="http://guy.carpenter.id.au/chumby-oe/blog/2012/04/03/reading-joystick-inputs-with-gpio/"/>
    <updated>2012-04-03T11:04:00+10:00</updated>
    <id>http://guy.carpenter.id.au/chumby-oe/blog/2012/04/03/reading-joystick-inputs-with-gpio</id>
    <content type="html"><![CDATA[<p>The Chumby Hacker Board has a 5-way Panasonic EVQQ7(<a href="http://guy.carpenter.id.au/chumby-oe/resources/ATR0000CE9.pdf">Datasheet</a>) dpad joystick on one corner at SW400.  This post explains how to read the state of this switch via the GPIO interface.</p>

<p><img src="http://guy.carpenter.id.au/chumby-oe/resources/evqq7.png"></p>

<p>Holding the CHB such that the switch is in the south east
corner <a href="http://clearwater.github.com/chumby-oe/blog/2012/03/20/chumby-hacker-board-illustrated/">as pictured here</a>, switch A closes when the stick is pushed east, B is south, C is north, D is west and E closes when the stick is depressed.  Sad dpad is sad.</p>

<p>The following table lists the signals and pin addresses for each of the
switch contacts A-E.</p>

<ul>
<li>A : east : GPMI CE0n : BANK2_PIN28</li>
<li>B : south : GPMI WPn : BANK0_PIN23</li>
<li>C : north : GPMI WRn : BANK0_PIN24</li>
<li>D : west : GPMI RDn : BANK0_PIN25</li>
<li>E : down : PWM4 : BANK_1_PIN30 (aka CHUMBY BEND)</li>
</ul>


<p>Each of these inputs is pulled high, and driven low when the switch is closed.
1nF capacitors on each signal line prevent switch bounce.</p>

<p><img src="http://guy.carpenter.id.au/chumby-oe/resources/sw400.png"></p>

<p>To read these inputs using GPIO you must make 3 calls:</p>

<ul>
<li>set the associated pin to GPIO mode,</li>
<li>disable output on the pin,</li>
<li>read the associated GPIO register to get the value</li>
</ul>


<p>For example to read switch E using the GPIO library from the
<a href="https://github.com/clearwater/chumby-sampler">Chumby Sampler</a> code:</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
<span class='line-number'>3</span>
<span class='line-number'>4</span>
<span class='line-number'>5</span>
<span class='line-number'>6</span>
<span class='line-number'>7</span>
<span class='line-number'>8</span>
<span class='line-number'>9</span>
<span class='line-number'>10</span>
<span class='line-number'>11</span>
<span class='line-number'>12</span>
<span class='line-number'>13</span>
<span class='line-number'>14</span>
<span class='line-number'>15</span>
<span class='line-number'>16</span>
<span class='line-number'>17</span>
<span class='line-number'>18</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>GPIO gpio;
</span><span class='line'>gpio.open();
</span><span class='line'>
</span><span class='line'>// E is on bank1, pin 30
</span><span class='line'>
</span><span class='line'>// Set GPIO mode for BANK1_PIN30
</span><span class='line'>// See imx23 Table 37-14
</span><span class='line'>gpio.set(HW_PINCTRL_MUXSEL3_SET, 0x30000000);
</span><span class='line'>
</span><span class='line'>// Disable output mode for BANK1_PIN30
</span><span class='line'>// See imx23 Table 37-75
</span><span class='line'>gpio.set(HW_PINCTRL_DOE1_CLR, 0x40000000);
</span><span class='line'>
</span><span class='line'>// read the value into bit 0
</span><span class='line'>// See imx23 Table 37-75
</span><span class='line'>// Note that the input is active-low but we invert it below so that
</span><span class='line'>// value_E will be 0 if the switch is open, 1 if the switch is closed.
</span><span class='line'>unsigned int value_E = (gpio.get(HW_PINCTRL_DIN1, 0x40000000) &gt;&gt; 30) ^ 0x1;
</span></code></pre></td></tr></table></div></figure>


<p>Complete sample code for reading the state of all 5 switches
is available in the <a href="https://github.com/clearwater/chumby-sampler/">Chumby Sampler</a>.</p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[Using All of the SD Card]]></title>
    <link href="http://guy.carpenter.id.au/chumby-oe/blog/2012/03/29/using-all-of-the-sd-card/"/>
    <updated>2012-03-29T11:58:00+10:00</updated>
    <id>http://guy.carpenter.id.au/chumby-oe/blog/2012/03/29/using-all-of-the-sd-card</id>
    <content type="html"><![CDATA[<h2>Option 1: Set IMAGE_ROOTFS_SIZE Before You Build</h2>

<p>The SD card images created by chumby-oe are designed to fit on a 512Mb SD card.
The image size is set in <code>chumby-oe/meta-chumby/conf/machine/chumby-falconwing.conf</code>
with this line:</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>IMAGE_ROOTFS_SIZE = "450000"</span></code></pre></td></tr></table></div></figure>


<p>The size is in Kbytes and is set a little smaller than the final card size to allow for
overheads like the boot loader.</p>

<h2>Option 2: Add a New Partition</h2>

<p>You can add a new partition to fill any unused space on your SD card.
The default 512Mb disk image contains two partitions:</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
<span class='line-number'>3</span>
<span class='line-number'>4</span>
<span class='line-number'>5</span>
<span class='line-number'>6</span>
<span class='line-number'>7</span>
<span class='line-number'>8</span>
<span class='line-number'>9</span>
<span class='line-number'>10</span>
<span class='line-number'>11</span>
<span class='line-number'>12</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>root@chumby-falconwing:/media/card# fdisk -l /dev/mmcblk0
</span><span class='line'>
</span><span class='line'>Disk /dev/mmcblk0: 1018 MB, 1018691584 bytes
</span><span class='line'>1 heads, 16 sectors/track, 124352 cylinders, total 1989632 sectors
</span><span class='line'>Units = sectors of 1 * 512 = 512 bytes
</span><span class='line'>Sector size (logical/physical): 512 bytes / 512 bytes
</span><span class='line'>I/O size (minimum/optimal): 512 bytes / 512 bytes
</span><span class='line'>Disk identifier: 0x00000000
</span><span class='line'>
</span><span class='line'>        Device Boot      Start         End      Blocks   Id  System
</span><span class='line'>/dev/mmcblk0p1   *           4       32771       16384   53  OnTrack DM6 Aux3
</span><span class='line'>/dev/mmcblk0p2           32772      932771      450000   83  Linux</span></code></pre></td></tr></table></div></figure>


<p>Using the chumby itself you can add a new partition in the unused space,
format it, and mount it.  The steps are as follows:</p>

<h3>Step 1. Edit the Partition Table</h3>

<p>cfdisk is available on the default chumby-oe image, and provides a reasonably
friendly interface for adding a partition.</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>cfdisk /dev/mmcblk0</span></code></pre></td></tr></table></div></figure>




<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
<span class='line-number'>3</span>
<span class='line-number'>4</span>
<span class='line-number'>5</span>
<span class='line-number'>6</span>
<span class='line-number'>7</span>
<span class='line-number'>8</span>
<span class='line-number'>9</span>
<span class='line-number'>10</span>
<span class='line-number'>11</span>
<span class='line-number'>12</span>
<span class='line-number'>13</span>
<span class='line-number'>14</span>
<span class='line-number'>15</span>
<span class='line-number'>16</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>                      cfdisk (util-linux-ng 2.18)
</span><span class='line'>
</span><span class='line'>                        Disk Drive: /dev/mmcblk0
</span><span class='line'>                    Size: 1018691584 bytes, 1018 MB
</span><span class='line'>          Heads: 1   Sectors per Track: 16   Cylinders: 124352
</span><span class='line'>
</span><span class='line'>Name        Flags      Part Type  FS Type          [Label]        Size (MB)
</span><span class='line'> ------------------------------------------------------------------------------
</span><span class='line'>mmcblk0p1   Boot, NC    Primary   OnTrack DM6 Aux3                    16.78*
</span><span class='line'>mmcblk0p2               Primary   ext3                               460.80*
</span><span class='line'>                        Pri/Log   Free Space                         541.12*
</span><span class='line'>
</span><span class='line'>
</span><span class='line'>
</span><span class='line'> [   Help   ]  [   New    ]  [  Print   ]  [   Quit   ]  [  Units   ]
</span><span class='line'> [  Write   ]
</span></code></pre></td></tr></table></div></figure>


<ul>
<li>Move the cursor to the free space</li>
<li>Select <code>New</code></li>
<li>Select <code>Primary</code></li>
<li>Accept the default size (541.11MB for my 1Gb SD card)</li>
<li>Select <code>Write</code></li>
<li>Type <code>yes</code> in response to <code>Warning!!  This may destroy data on your disk!</code></li>
<li>Select <code>Quit</code></li>
</ul>


<h3>Step 2. Format the Partition</h3>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
<span class='line-number'>3</span>
<span class='line-number'>4</span>
<span class='line-number'>5</span>
<span class='line-number'>6</span>
<span class='line-number'>7</span>
<span class='line-number'>8</span>
<span class='line-number'>9</span>
<span class='line-number'>10</span>
<span class='line-number'>11</span>
<span class='line-number'>12</span>
<span class='line-number'>13</span>
<span class='line-number'>14</span>
<span class='line-number'>15</span>
<span class='line-number'>16</span>
<span class='line-number'>17</span>
<span class='line-number'>18</span>
<span class='line-number'>19</span>
<span class='line-number'>20</span>
<span class='line-number'>21</span>
<span class='line-number'>22</span>
<span class='line-number'>23</span>
<span class='line-number'>24</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>root@chumby-falconwing:~# mkfs.ext3 -b 4096 /dev/mmcblk0p3 
</span><span class='line'>mke2fs 1.41.14 (22-Dec-2010)
</span><span class='line'>warning: Unable to get device geometry for /dev/mmcblk0p3
</span><span class='line'>Filesystem label=
</span><span class='line'>OS type: Linux
</span><span class='line'>Block size=4096 (log=2)
</span><span class='line'>Fragment size=4096 (log=2)
</span><span class='line'>Stride=0 blocks, Stripe width=0 blocks
</span><span class='line'>33040 inodes, 132107 blocks
</span><span class='line'>6605 blocks (5.00%) reserved for the super user
</span><span class='line'>First data block=0
</span><span class='line'>Maximum filesystem blocks=138412032
</span><span class='line'>5 block groups
</span><span class='line'>32768 blocks per group, 32768 fragments per group
</span><span class='line'>6608 inodes per group
</span><span class='line'>Superblock backups stored on blocks: 
</span><span class='line'>        32768, 98304
</span><span class='line'>
</span><span class='line'>Writing inode tables: done                            
</span><span class='line'>Creating journal (4096 blocks): done
</span><span class='line'>Writing superblocks and filesystem accounting information: done
</span><span class='line'>
</span><span class='line'>This filesystem will be automatically checked every 22 mounts or
</span><span class='line'>180 days, whichever comes first.  Use tune2fs -c or -i to override.</span></code></pre></td></tr></table></div></figure>


<h3>Step 3. Add the Parition to /etc/fstab</h3>

<p>Edit fstab.  The example below will mount the new partition
as <code>/media/card</code>.</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
<span class='line-number'>3</span>
<span class='line-number'>4</span>
<span class='line-number'>5</span>
<span class='line-number'>6</span>
<span class='line-number'>7</span>
<span class='line-number'>8</span>
<span class='line-number'>9</span>
<span class='line-number'>10</span>
<span class='line-number'>11</span>
<span class='line-number'>12</span>
<span class='line-number'>13</span>
<span class='line-number'>14</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>root@chumby-falconwing:~# vi /etc/fstab 
</span><span class='line'>
</span><span class='line'># stock fstab - you probably want to override this with a machine specific one
</span><span class='line'>
</span><span class='line'>rootfs               /                    auto       defaults              1  1
</span><span class='line'>proc                 /proc                proc       defaults              0  0
</span><span class='line'>devpts               /dev/pts             devpts     mode=0620,gid=5       0  0
</span><span class='line'>usbfs                /proc/bus/usb        usbfs      defaults              0  0
</span><span class='line'>tmpfs                /var/volatile        tmpfs      defaults              0  0
</span><span class='line'>tmpfs                /dev/shm             tmpfs      mode=0777             0  0
</span><span class='line'>tmpfs                /media/ram           tmpfs      defaults              0  0
</span><span class='line'>
</span><span class='line'># add this line to mount the new partition at /media/card
</span><span class='line'>/dev/mmcblk0p3       /media/card          auto       defaults,sync         0  2</span></code></pre></td></tr></table></div></figure>


<h3>Step 4. Mount the Partition</h3>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>root@chumby-falconwing:/media/card# mount -a</span></code></pre></td></tr></table></div></figure>


<h2>Option 3: Expand the Partition to Fill the Disk</h2>

<p>This is possible by
 - use cfdisk resize partition 2 to fill the disk
 - use resize2fs to expand the ext3 partition to fill the partition</p>

<p>You cannot run this procedure while the device is mounted, so you will need to
run this process on another machine (or on a USB SD adaptor on your chumby).</p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[Chumby Hacker Board Illustrated]]></title>
    <link href="http://guy.carpenter.id.au/chumby-oe/blog/2012/03/20/chumby-hacker-board-illustrated/"/>
    <updated>2012-03-20T15:33:00+10:00</updated>
    <id>http://guy.carpenter.id.au/chumby-oe/blog/2012/03/20/chumby-hacker-board-illustrated</id>
    <content type="html"><![CDATA[<p>Note that connection labels correspond to the identifiers on the <a href="http://files.chumby.com/hackerboard/falconwing_oem3.pdf">Version 1.0 schematics</a>.</p>

<h1>Front of Board</h1>

<p><img src="http://guy.carpenter.id.au/chumby-oe/resources/chumbyhackerboardfront.jpg" alt="Chumby Hackers Board Front" /></p>

<h2>JP300</h2>

<p>5VDC Power : Requires a regulated 5VDC power supply, positive tip,
3.5mm OD, 1.4mm ID barrel jack (aka a 3.8mm or 4mm connector).</p>

<p>Schematics indicate 2A peak.  According to <a href="http://wiki.ladyada.net/chumbyhackerboard/power">AdaFruit</a> the power draw for the subsystems is roughly:</p>

<ul>
<li>300 mA for the base hardware (processor, RAM, SD card),</li>
<li>200 mA for the USB hub (not including power to the USB devices),</li>
<li>300 mA for a speaker plugged into the 2W output,</li>
<li>500 mA max for charging a Lipoly battery.</li>
</ul>


<h2>P100</h2>

<p>Li-poly battery connector : JST B3B-EH-A connector.</p>

<p>If powering from a Li-poly, USB0 will be powered, 1 and 2 will not.<br/>
There is a fourth USB connection on the GPIO header which is
also powered by the Li-poly boost system.
<a href="http://wiki.ladyada.net/chumbyhackerboard/power#lithium_battery">ref</a></p>

<h2>P102</h2>

<p>Serial JTAG header - 0.1&#8221; male header (DNP)</p>

<ul>
<li>Pin 1 : 3.3v</li>
<li>Pin 2 : DEBUG</li>
<li>Pin 3 : PSWITCH</li>
<li>Pin 4 : GND</li>
</ul>


<h2>P104</h2>

<p>Rotary Quadrature Encoder (no connector, solder points only)</p>

<ul>
<li>Pin 1 : ROTARYA</li>
<li>Pin 2 : GND</li>
<li>Pin 3 : ROTARYB</li>
</ul>


<h2>P200</h2>

<p>9x2 header : USB, I2C and GPMI</p>

<p>The following signals are available (by pin number)</p>

<h4>Bottom Row, Left to Right</h4>

<ul>
<li>1 - 5V</li>
<li>3 - USBC1 N</li>
<li>5 - USBC1 P</li>
<li>7 - GND</li>
<li>9 - Vid to Ext</li>
<li>10 - i2C SCL</li>
<li>11 - i2C SDA</li>
<li>15 - 3.3V</li>
<li>17 - LCD XP</li>
<li>19 - LCD YP</li>
<li>21 - LCD XM</li>
<li>23 - LCD YM</li>
<li>25 - HOST TO CP UART</li>
</ul>


<h4>Top Row, Left to Right</h4>

<ul>
<li>2 - GPMI D00</li>
<li>4 - GPMI D01</li>
<li>6 - GPMI D02</li>
<li>8 - GPMI D03</li>
<li>10 - GPMI D04</li>
<li>12 - GPMI D05</li>
<li>14 - GPMI D07</li>
<li>16 - GPMI D06</li>
<li>18 - OSC TO FM</li>
<li>20 - PWM2</li>
<li>22 - CHUMBY BEND</li>
<li>26 - CP TO HOST UART</li>
</ul>


<h2>P400</h2>

<p>LRADC1 : Low Resolution Analog to Digital Converter</p>

<ul>
<li>Pin 1 : LRADC1 (CPU)</li>
<li>Pin 2 : connected to pin 39 of P401 (why?)</li>
</ul>


<h2>P401</h2>

<p>22x2 Header, LCD Connector</p>

<h3>Top Row, Right to Left</h3>

<ul>
<li>1 : GND</li>
<li>3 : LCD T B1</li>
<li>5 : LCD T B3</li>
<li>7 : LCD T B5</li>
<li>9 : LCD T G0</li>
<li>11 : LCD T G2</li>
<li>13 : LCD T G4</li>
<li>15 : GND</li>
<li>17 : LCD T R1</li>
<li>19 : LCD T R3</li>
<li>21 : LCD T R5</li>
<li>23 : LCD VSYNC T</li>
<li>25 : LCD DOTCLK</li>
<li>27 : LCD ENABLE T</li>
<li>29 : LED A</li>
<li>31 : LCD WR E</li>
<li>33 : LCD CS</li>
<li>35 : LINE1 INL</li>
<li>37 : GND</li>
<li>39 : LRADC1 EXT</li>
<li>41 : LCD XP</li>
<li>43 : LCD XM</li>
</ul>


<h4>Bottom Row, Right to Left</h4>

<ul>
<li>2 : LCD T B0</li>
<li>4 : LCD T B2</li>
<li>6 : LCD T B4</li>
<li>8 : GND</li>
<li>10 : LCD T G1</li>
<li>12 : LCD T G3</li>
<li>14 : LCD T G5</li>
<li>16 : LCD T R0</li>
<li>18 : LCD T R2</li>
<li>20 : LCD T R4</li>
<li>22 : P 3.3V</li>
<li>24 : LCD HSYNC T</li>
<li>26 : GND</li>
<li>28 : LCD RESET</li>
<li>30 : LED K</li>
<li>32 : LCD RS</li>
<li>34 : LCD DET</li>
<li>36 : LINE1 INR</li>
<li>38 : VDDA</li>
<li>40 : LRADC0</li>
<li>42 : LCD YP</li>
<li>44 : LCD YM</li>
</ul>


<h2>P406</h2>

<p>PWM2 : Pulse Width Modulation</p>

<ul>
<li>Pin 1 : GND</li>
<li>Pin 2 : PWM2 (CPU)</li>
</ul>


<h2>P500</h2>

<p>USB2 : USB Type A Female</p>

<h2>P503</h2>

<p>USB1 : USB Type A Female (is this really USB4?)</p>

<p>Note that the power to this port (and P500?) is software controlled and may be off at power-up.  It can be enabled as explained <a href="http://forum.chumby.com/viewtopic.php?pid=36906#p36906">here.</a></p>

<h2>SW400</h2>

<p>DPad switch type EVQQ7.
The <a href="http://guy.carpenter.id.au/chumby-oe/resources/ATR0000CE9.pdf">Data sheet</a> is available.
<a href="https://github.com/clearwater/chumby-sampler/tree/master/dpad">Sample code</a> is available.</p>

<ul>
<li>A : GPMI CE0n : BANK2_PIN28</li>
<li>B : GPMI WPn : BANK0_PIN23</li>
<li>C : GPMI WRn : BANK0_PIN24</li>
<li>D : GPMI RDn : BANK0_PIN25</li>
<li>E : PWM4 : BANK_1_PIN30 (aka CHUMBY BEND)</li>
</ul>


<p><img src="http://guy.carpenter.id.au/chumby-oe/resources/evqq7.png"></p>

<p><img src="http://guy.carpenter.id.au/chumby-oe/resources/sw400.png"></p>

<h2>Accelerometer</h2>

<p>A Freescale MMA7455L 3-axis accelerometer
with adjustable sensitivity from +-2G to +-8G is accessible over I2C
at device address 0x1D.</p>

<p>The <a href="http://guy.carpenter.id.au/chumby-oe/resources/MMA7455L.pdf">Datasheet</a> is available, <a href="https://github.com/clearwater/chumby-sampler/tree/master/accel">sample code</a> is available.</p>

<p><img src="https://github.com/clearwater/chumby-sampler/raw/master/images/accel-schematics.png" alt="Schematic" /></p>

<h2>Green LEDs</h2>

<p>The 4 green LEDs are connected to the following GPIO pins:</p>

<ul>
<li>GPMI_D00</li>
<li>GPMI_D01</li>
<li>GPMI_D02</li>
<li>GPMI_D03</li>
</ul>


<p>Importantly, before any of the LEDs can be used, the transistor on GPMI_RDY0 must be turned on to
ground the LEDs.</p>

<p><a href="https://github.com/clearwater/chumby-sampler/tree/master/leds">Sample code</a> is available.</p>

<p><img src="https://github.com/clearwater/chumby-sampler/raw/master/images/led-schematics.png" alt="Schematic" /></p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[Reading the Accelerometer With I²C]]></title>
    <link href="http://guy.carpenter.id.au/chumby-oe/blog/2012/03/20/reading-the-accelerometer-with-i2c/"/>
    <updated>2012-03-20T13:47:00+10:00</updated>
    <id>http://guy.carpenter.id.au/chumby-oe/blog/2012/03/20/reading-the-accelerometer-with-i2c</id>
    <content type="html"><![CDATA[<p>The CHB has an on-board Freescale MMA7455L 3-axis accelerometer, <a href="http://www.freescale.com/files/sensors/doc/data_sheet/MMA7455L.pdf">datasheet here</a>, which can be accessed over the <a href="http://en.wikipedia.org/wiki/I2C">I²C</a> bus.
Not long after the Chumby Hackers Board was released
Adafruit published <a href="http://www.ladyada.net/learn/chumby/i2c.html">a tutorial</a>
explaining how to access the accelerometer over i2c.</p>

<p>I&#8217;ve added some i2c tools to the OpenEmbedded image, so as well
as compiling the tools in the Adafruit tutorial,
you can use the packaged i2c tools (i2cdetect, i2cget, i2cset, i2c)
to talk to the accelerometer.</p>

<h2>i2cdetect</h2>

<p>The <code>i2cdetect</code> tool will give you information about
the i2c bus device:</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>root@chumby-falconwing:~# i2cdetect -l
</span><span class='line'>i2c-0   i2c             378x I2C adapter                        I2C adapter</span></code></pre></td></tr></table></div></figure>




<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
<span class='line-number'>3</span>
<span class='line-number'>4</span>
<span class='line-number'>5</span>
<span class='line-number'>6</span>
<span class='line-number'>7</span>
<span class='line-number'>8</span>
<span class='line-number'>9</span>
<span class='line-number'>10</span>
<span class='line-number'>11</span>
<span class='line-number'>12</span>
<span class='line-number'>13</span>
<span class='line-number'>14</span>
<span class='line-number'>15</span>
<span class='line-number'>16</span>
<span class='line-number'>17</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>root@chumby-falconwing:~# i2cdetect -F 0
</span><span class='line'>Functionalities implemented by /dev/i2c-0:
</span><span class='line'>I2C                              yes
</span><span class='line'>SMBus Quick Command              no
</span><span class='line'>SMBus Send Byte                  yes
</span><span class='line'>SMBus Receive Byte               yes
</span><span class='line'>SMBus Write Byte                 yes
</span><span class='line'>SMBus Read Byte                  yes
</span><span class='line'>SMBus Write Word                 yes
</span><span class='line'>SMBus Read Word                  yes
</span><span class='line'>SMBus Process Call               yes
</span><span class='line'>SMBus Block Write                yes
</span><span class='line'>SMBus Block Read                 no
</span><span class='line'>SMBus Block Process Call         no
</span><span class='line'>SMBus PEC                        yes
</span><span class='line'>I2C Block Write                  yes
</span><span class='line'>I2C Block Read                   yes</span></code></pre></td></tr></table></div></figure>


<h2>Enable the Accelerometer</h2>

<p>The accelerometer is at bus address $1d (decimal 29).  The
Adafruit tutorial explains that i2c encodes
7-bit addresses in the high 7 bits, so we shift this up 1 bit
giving an effective address of 58.</p>

<p>Register $16 (decimal 22) controls the mode of the accelerometer
and at power-up it is in standby mode.  The lower two
bits set the mode as follows:</p>

<ul>
<li>00 : standby mode</li>
<li>01 : measurement mode</li>
<li>10 : level detection mode</li>
<li>11 : pulse detection mode</li>
</ul>


<p>The next two bits define the sensitivity:</p>

<ul>
<li>00 : 8g range, 16 LSB/g</li>
<li>01 : 2g range, 64 LSB/g</li>
<li>10 : 4g range, 32 LSB/g</li>
</ul>


<p>So put it into measurement mode, 2g range, we write
0000 0101 binary (5 decimal) to register $16 (decimal 22)
at bus address 58.</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>root@chumby-falconwing:~# i2c 58 wb 22 5</span></code></pre></td></tr></table></div></figure>


<p>The easiest way to read the accelerometer data is
to use the mma7455.c example from the Adafruit tutorial.
For convenience you can download the file from <a href="https://raw.github.com/gist/2131304/8ccc68a8725347e2a5fcebaf259ac75eb2d0113b/mma7455.c">here</a>.</p>

<script src="https://gist.github.com/2131304.js?file=mma7455.c"></script>


<p>Save that file as <code>mma7455.c</code>, and Compile it as follows:</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>root@chumby-falconwing:~# gcc -o mma7455 mma7455.c</span></code></pre></td></tr></table></div></figure>


<p>When you run the compiled binary, you should see something like this:</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
<span class='line-number'>3</span>
<span class='line-number'>4</span>
<span class='line-number'>5</span>
<span class='line-number'>6</span>
<span class='line-number'>7</span>
<span class='line-number'>8</span>
<span class='line-number'>9</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>root@chumby-falconwing:~# ./mma7455
</span><span class='line'>X = -5  Y = -15 Z = 67
</span><span class='line'>X = -6  Y = -15 Z = 65
</span><span class='line'>X = -6  Y = -15 Z = 65
</span><span class='line'>X = -6  Y = -15 Z = 65
</span><span class='line'>X = -6  Y = -15 Z = 65
</span><span class='line'>X = -6  Y = -15 Z = 65
</span><span class='line'>X = -5  Y = -15 Z = 68
</span><span class='line'>X = -5  Y = -15 Z = 68</span></code></pre></td></tr></table></div></figure>


<p>Now pick up the device and wave it at your
office-mates.  Watch the numbers change.
Say woo-hoo.</p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[Building a Development Image]]></title>
    <link href="http://guy.carpenter.id.au/chumby-oe/blog/2012/03/19/building-a-development-image/"/>
    <updated>2012-03-19T14:46:00+10:00</updated>
    <id>http://guy.carpenter.id.au/chumby-oe/blog/2012/03/19/building-a-development-image</id>
    <content type="html"><![CDATA[<p>The standard &#8220;chumby-starter-image&#8221; we&#8217;ve been building with the OE toolchain doesn&#8217;t include a development environment for compiling and linking on the device itself.  In response to <a href="http://forum.chumby.com/viewtopic.php?pid=41604">this question</a> in the forums I&#8217;ve added a new recipe file &#8220;chumby-dev-image&#8221; which bakes in the compiler and linker and friends by incorporating the OE task-native-sdk package.  This in turn pulls in these packages:</p>

<ul>
<li>gcc-symlinks</li>
<li>g++-symlinks</li>
<li>cpp</li>
<li>cpp-symlinks</li>
<li>binutils-symlinks</li>
<li>make</li>
<li>virtual-libc-dev</li>
<li>task-proper-tools</li>
<li>perl-modules</li>
<li>flex</li>
<li>flex-dev</li>
<li>bison</li>
<li>gawk</li>
<li>sed</li>
<li>grep</li>
<li>autoconf</li>
<li>automake</li>
<li>make</li>
<li>patch</li>
<li>patchutils</li>
<li>diffstat</li>
<li>diffutils</li>
<li>libstdc++-dev</li>
<li>libtool</li>
<li>libtool-dev</li>
<li>libltdl-dev</li>
<li>pkgconfig</li>
</ul>


<p>I have a feeling most people will probably prefer this image over the old chumby-starter-image, so I&#8217;ve made chumby-dev-image the default make target.  You can change the default target by modifying this line in the Makefile: <code>export CHUMBY_IMAGE:=chumby-dev-image</code>.</p>

<h2>And Another Thing</h2>

<p>It turns out that we also need to add libgcc-dev to the list of packages.  Without it <code>libgcc_s.so</code> will not be created and you will see errors like this when you compile:</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>/usr/lib/gcc/arm-angstrom-linux-gnueabi/4.5.3/../../../../arm-angstrom-linux-gnueabi/bin/ld: cannot find -lgcc_s
</span><span class='line'>collect2: ld returned 1 exit status</span></code></pre></td></tr></table></div></figure>


<p>By adding the libgcc-dev package, we get <code>/usr/lib/libgcc_s.so</code>, which interestingly is an ld script file with the following contents:</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
<span class='line-number'>3</span>
<span class='line-number'>4</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>/* GNU ld script
</span><span class='line'>   Use the shared library, but some functions are only in
</span><span class='line'>   the static library.  */
</span><span class='line'>GROUP ( libgcc_s.so.1 libgcc.a )</span></code></pre></td></tr></table></div></figure>

]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[OpenEmbedded 2.6.28 Boot Log]]></title>
    <link href="http://guy.carpenter.id.au/chumby-oe/blog/2012/02/16/openembedded-2-dot-6-28-boot-log/"/>
    <updated>2012-02-16T16:19:00+10:00</updated>
    <id>http://guy.carpenter.id.au/chumby-oe/blog/2012/02/16/openembedded-2-dot-6-28-boot-log</id>
    <content type="html"><![CDATA[<p>This is the boot log from the very first boot of the 2.6.28 kernel created by merging the Falconwing source as released by Chumby with the subsequent changes to the 2.6.28 source tree as provided by Freescale.</p>

<p>This code was built using <a href="https://github.com/clearwater/chumby-linux/tree/767e8235a616106a4b4142dbe8abd3a57a98bfea">SHA 767e8235a616106a4b4142dbe8abd3a57a98bfea</a></p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
<span class='line-number'>3</span>
<span class='line-number'>4</span>
<span class='line-number'>5</span>
<span class='line-number'>6</span>
<span class='line-number'>7</span>
<span class='line-number'>8</span>
<span class='line-number'>9</span>
<span class='line-number'>10</span>
<span class='line-number'>11</span>
<span class='line-number'>12</span>
<span class='line-number'>13</span>
<span class='line-number'>14</span>
<span class='line-number'>15</span>
<span class='line-number'>16</span>
<span class='line-number'>17</span>
<span class='line-number'>18</span>
<span class='line-number'>19</span>
<span class='line-number'>20</span>
<span class='line-number'>21</span>
<span class='line-number'>22</span>
<span class='line-number'>23</span>
<span class='line-number'>24</span>
<span class='line-number'>25</span>
<span class='line-number'>26</span>
<span class='line-number'>27</span>
<span class='line-number'>28</span>
<span class='line-number'>29</span>
<span class='line-number'>30</span>
<span class='line-number'>31</span>
<span class='line-number'>32</span>
<span class='line-number'>33</span>
<span class='line-number'>34</span>
<span class='line-number'>35</span>
<span class='line-number'>36</span>
<span class='line-number'>37</span>
<span class='line-number'>38</span>
<span class='line-number'>39</span>
<span class='line-number'>40</span>
<span class='line-number'>41</span>
<span class='line-number'>42</span>
<span class='line-number'>43</span>
<span class='line-number'>44</span>
<span class='line-number'>45</span>
<span class='line-number'>46</span>
<span class='line-number'>47</span>
<span class='line-number'>48</span>
<span class='line-number'>49</span>
<span class='line-number'>50</span>
<span class='line-number'>51</span>
<span class='line-number'>52</span>
<span class='line-number'>53</span>
<span class='line-number'>54</span>
<span class='line-number'>55</span>
<span class='line-number'>56</span>
<span class='line-number'>57</span>
<span class='line-number'>58</span>
<span class='line-number'>59</span>
<span class='line-number'>60</span>
<span class='line-number'>61</span>
<span class='line-number'>62</span>
<span class='line-number'>63</span>
<span class='line-number'>64</span>
<span class='line-number'>65</span>
<span class='line-number'>66</span>
<span class='line-number'>67</span>
<span class='line-number'>68</span>
<span class='line-number'>69</span>
<span class='line-number'>70</span>
<span class='line-number'>71</span>
<span class='line-number'>72</span>
<span class='line-number'>73</span>
<span class='line-number'>74</span>
<span class='line-number'>75</span>
<span class='line-number'>76</span>
<span class='line-number'>77</span>
<span class='line-number'>78</span>
<span class='line-number'>79</span>
<span class='line-number'>80</span>
<span class='line-number'>81</span>
<span class='line-number'>82</span>
<span class='line-number'>83</span>
<span class='line-number'>84</span>
<span class='line-number'>85</span>
<span class='line-number'>86</span>
<span class='line-number'>87</span>
<span class='line-number'>88</span>
<span class='line-number'>89</span>
<span class='line-number'>90</span>
<span class='line-number'>91</span>
<span class='line-number'>92</span>
<span class='line-number'>93</span>
<span class='line-number'>94</span>
<span class='line-number'>95</span>
<span class='line-number'>96</span>
<span class='line-number'>97</span>
<span class='line-number'>98</span>
<span class='line-number'>99</span>
<span class='line-number'>100</span>
<span class='line-number'>101</span>
<span class='line-number'>102</span>
<span class='line-number'>103</span>
<span class='line-number'>104</span>
<span class='line-number'>105</span>
<span class='line-number'>106</span>
<span class='line-number'>107</span>
<span class='line-number'>108</span>
<span class='line-number'>109</span>
<span class='line-number'>110</span>
<span class='line-number'>111</span>
<span class='line-number'>112</span>
<span class='line-number'>113</span>
<span class='line-number'>114</span>
<span class='line-number'>115</span>
<span class='line-number'>116</span>
<span class='line-number'>117</span>
<span class='line-number'>118</span>
<span class='line-number'>119</span>
<span class='line-number'>120</span>
<span class='line-number'>121</span>
<span class='line-number'>122</span>
<span class='line-number'>123</span>
<span class='line-number'>124</span>
<span class='line-number'>125</span>
<span class='line-number'>126</span>
<span class='line-number'>127</span>
<span class='line-number'>128</span>
<span class='line-number'>129</span>
<span class='line-number'>130</span>
<span class='line-number'>131</span>
<span class='line-number'>132</span>
<span class='line-number'>133</span>
<span class='line-number'>134</span>
<span class='line-number'>135</span>
<span class='line-number'>136</span>
<span class='line-number'>137</span>
<span class='line-number'>138</span>
<span class='line-number'>139</span>
<span class='line-number'>140</span>
<span class='line-number'>141</span>
<span class='line-number'>142</span>
<span class='line-number'>143</span>
<span class='line-number'>144</span>
<span class='line-number'>145</span>
<span class='line-number'>146</span>
<span class='line-number'>147</span>
<span class='line-number'>148</span>
<span class='line-number'>149</span>
<span class='line-number'>150</span>
<span class='line-number'>151</span>
<span class='line-number'>152</span>
<span class='line-number'>153</span>
<span class='line-number'>154</span>
<span class='line-number'>155</span>
<span class='line-number'>156</span>
<span class='line-number'>157</span>
<span class='line-number'>158</span>
<span class='line-number'>159</span>
<span class='line-number'>160</span>
<span class='line-number'>161</span>
<span class='line-number'>162</span>
<span class='line-number'>163</span>
<span class='line-number'>164</span>
<span class='line-number'>165</span>
<span class='line-number'>166</span>
<span class='line-number'>167</span>
<span class='line-number'>168</span>
<span class='line-number'>169</span>
<span class='line-number'>170</span>
<span class='line-number'>171</span>
<span class='line-number'>172</span>
<span class='line-number'>173</span>
<span class='line-number'>174</span>
<span class='line-number'>175</span>
<span class='line-number'>176</span>
<span class='line-number'>177</span>
<span class='line-number'>178</span>
<span class='line-number'>179</span>
<span class='line-number'>180</span>
<span class='line-number'>181</span>
<span class='line-number'>182</span>
<span class='line-number'>183</span>
<span class='line-number'>184</span>
<span class='line-number'>185</span>
<span class='line-number'>186</span>
<span class='line-number'>187</span>
<span class='line-number'>188</span>
<span class='line-number'>189</span>
<span class='line-number'>190</span>
<span class='line-number'>191</span>
<span class='line-number'>192</span>
<span class='line-number'>193</span>
<span class='line-number'>194</span>
<span class='line-number'>195</span>
<span class='line-number'>196</span>
<span class='line-number'>197</span>
<span class='line-number'>198</span>
<span class='line-number'>199</span>
<span class='line-number'>200</span>
<span class='line-number'>201</span>
<span class='line-number'>202</span>
<span class='line-number'>203</span>
<span class='line-number'>204</span>
<span class='line-number'>205</span>
<span class='line-number'>206</span>
<span class='line-number'>207</span>
<span class='line-number'>208</span>
<span class='line-number'>209</span>
<span class='line-number'>210</span>
<span class='line-number'>211</span>
<span class='line-number'>212</span>
<span class='line-number'>213</span>
<span class='line-number'>214</span>
<span class='line-number'>215</span>
<span class='line-number'>216</span>
<span class='line-number'>217</span>
<span class='line-number'>218</span>
<span class='line-number'>219</span>
<span class='line-number'>220</span>
<span class='line-number'>221</span>
<span class='line-number'>222</span>
<span class='line-number'>223</span>
<span class='line-number'>224</span>
<span class='line-number'>225</span>
<span class='line-number'>226</span>
<span class='line-number'>227</span>
<span class='line-number'>228</span>
<span class='line-number'>229</span>
<span class='line-number'>230</span>
<span class='line-number'>231</span>
<span class='line-number'>232</span>
<span class='line-number'>233</span>
<span class='line-number'>234</span>
<span class='line-number'>235</span>
<span class='line-number'>236</span>
<span class='line-number'>237</span>
<span class='line-number'>238</span>
<span class='line-number'>239</span>
<span class='line-number'>240</span>
<span class='line-number'>241</span>
<span class='line-number'>242</span>
<span class='line-number'>243</span>
<span class='line-number'>244</span>
<span class='line-number'>245</span>
<span class='line-number'>246</span>
<span class='line-number'>247</span>
<span class='line-number'>248</span>
<span class='line-number'>249</span>
<span class='line-number'>250</span>
<span class='line-number'>251</span>
<span class='line-number'>252</span>
<span class='line-number'>253</span>
<span class='line-number'>254</span>
<span class='line-number'>255</span>
<span class='line-number'>256</span>
<span class='line-number'>257</span>
<span class='line-number'>258</span>
<span class='line-number'>259</span>
<span class='line-number'>260</span>
<span class='line-number'>261</span>
<span class='line-number'>262</span>
<span class='line-number'>263</span>
<span class='line-number'>264</span>
<span class='line-number'>265</span>
<span class='line-number'>266</span>
<span class='line-number'>267</span>
<span class='line-number'>268</span>
<span class='line-number'>269</span>
<span class='line-number'>270</span>
<span class='line-number'>271</span>
<span class='line-number'>272</span>
<span class='line-number'>273</span>
<span class='line-number'>274</span>
<span class='line-number'>275</span>
<span class='line-number'>276</span>
<span class='line-number'>277</span>
<span class='line-number'>278</span>
<span class='line-number'>279</span>
<span class='line-number'>280</span>
<span class='line-number'>281</span>
<span class='line-number'>282</span>
<span class='line-number'>283</span>
<span class='line-number'>284</span>
<span class='line-number'>285</span>
<span class='line-number'>286</span>
<span class='line-number'>287</span>
<span class='line-number'>288</span>
<span class='line-number'>289</span>
<span class='line-number'>290</span>
<span class='line-number'>291</span>
<span class='line-number'>292</span>
<span class='line-number'>293</span>
<span class='line-number'>294</span>
<span class='line-number'>295</span>
<span class='line-number'>296</span>
<span class='line-number'>297</span>
<span class='line-number'>298</span>
<span class='line-number'>299</span>
<span class='line-number'>300</span>
<span class='line-number'>301</span>
<span class='line-number'>302</span>
<span class='line-number'>303</span>
<span class='line-number'>304</span>
<span class='line-number'>305</span>
<span class='line-number'>306</span>
<span class='line-number'>307</span>
<span class='line-number'>308</span>
<span class='line-number'>309</span>
<span class='line-number'>310</span>
<span class='line-number'>311</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>�Loading SD image...
</span><span class='line'>Reading 0x00000800 bytes from offset 0x0000b800 to destination 0x45a00000
</span><span class='line'>Skipping 2944 chunks
</span><span class='line'>Reading 0x00034800 bytes from offset 0x0000f800 to destination 0x40808000
</span><span class='line'>Skipping 3968 chunks
</span><span class='line'>Jumping to address 0x40808000:
</span><span class='line'>0x00000000  0f 00 a0 e1 08 00 40 e2  02 0a 40 e2 08 10 9f e5  |......@...@.....|
</span><span class='line'>0x00000010  00 00 81 e5 02 00 00 eb  d8 04 00 eb 20 80 80 40  |............ ..@|
</span><span class='line'>0x00000020  11 b1 11 c1 14 00 9f e5  14 10 9f e5 00 20 a0 e3  |............. ..|
</span><span class='line'>0x00000030  04 20 80 e4 01 00 50 e1  fc ff ff 3a 0e f0 a0 e1  |. ....P....:....|
</span><span class='line'>0x00000040  c0 6d 82 40 20 6e 82 40  0e f0 a0 e1 0e f0 a0 e1  |.m.@ n.@........|
</span><span class='line'>0x00000050  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
</span><span class='line'>0x00000060  04 b0 2d e5 00 b0 8d e2  14 d0 4d e2 64 30 9f e5  |..-.......M.d0..|
</span><span class='line'>0x00000070  00 30 93 e5 08 30 0b e5  58 30 9f e5 00 20 a0 e3  |.0...0..X0... ..|
</span><span class='line'>0x00000080  00 20 83 e5 50 30 9f e5  0c 30 0b e5 4c 30 9f e5  |. ..P0...0..L0..|
</span><span class='line'>0x00000090  0c 20 1b e5 3f 20 02 e2  00 20 83 e5 40 30 9f e5  |. ..? ... ..@0..|
</span><span class='line'>0x000000a0  0c 20 1b e5 22 23 a0 e1  00 20 83 e5 70 30 a0 e3  |. .."#... ..p0..|
</span><span class='line'>0x000000b0  10 30 0b e5 2c 30 9f e5  10 20 1b e5 00 20 83 e5  |.0..,0... ... ..|
</span><span class='line'>0x000000c0  10 30 9f e5 08 20 1b e5  00 20 83 e5 00 d0 8b e2  |.0... ... ......|
</span><span class='line'>0x000000d0  00 08 bd e8 1e ff 2f e1  30 00 07 80 41 03 00 00  |....../.0...A...|
</span><span class='line'>0x000000e0  28 00 07 80 24 00 07 80  2c 00 07 80 00 48 2d e9  |(...$...,....H-.|
</span><span class='line'>0x000000f0  04 b0 8d e2 08 d0 4d e2  90 30 9f e5 05 26 a0 e3  |......M..0...&..|
</span><span class='line'>0x00000100  00 20 83 e5 88 30 9f e5  0a 26 a0 e3 00 20 83 e5  |. ...0...&... ..|
</span><span class='line'>0x00000110  80 30 9f e5 00 20 a0 e3  00 20 83 e5 78 30 9f e5  |.0... ... ..x0..|
</span><span class='line'>0x00000120  00 20 a0 e3 00 20 83 e5  cc ff ff eb 6c 30 9f e5  |. ... ......l0..|
</span><span class='line'>0x00000130  00 30 93 e5 08 30 0b e5  08 30 1b e5 10 30 c3 e3  |.0...0...0...0..|
</span><span class='line'>0x00000140  08 30 0b e5 54 30 9f e5  08 20 1b e5 00 20 83 e5  |.0..T0... ... ..|
</span><span class='line'>0x00000150  4c 30 9f e5 08 30 0b e5  38 30 9f e5 08 20 1b e5  |L0...0..80... ..|
</span><span class='line'>0x00000160  00 20 83 e5 34 30 9f e5  00 30 93 e5 08 30 0b e5  |. ..40...0...0..|
</span><span class='line'>0x00000170  08 30 1b e5 10 30 c3 e3  08 30 0b e5 1c 30 9f e5  |.0...0...0...0..|
</span><span class='line'>0x00000180  08 20 1b e5 00 20 83 e5  04 d0 4b e2 00 88 bd e8  |. ... ....K.....|
</span><span class='line'>0x00000190  38 81 01 80 34 81 01 80  30 00 07 80 38 00 07 80  |8...4...0...8...|
</span><span class='line'>0x000001a0  2c 00 07 80 01 03 00 00  04 b0 2d e5 00 b0 8d e2  |,.........-.....|
</span><span class='line'>0x000001b0  00 00 a0 e1 18 30 9f e5  00 30 93 e5 80 30 03 e2  |.....0...0...0..|
</span><span class='line'>0x000001c0  00 00 53 e3 fa ff ff 0a  00 d0 8b e2 00 08 bd e8  |..S.............|
</span><span class='line'>0x000001d0  1e ff 2f e1 18 00 07 80  00 48 2d e9 04 b0 8d e2  |../......H-.....|
</span><span class='line'>0x000001e0  ec 30 9f e5 03 30 8f e0  03 00 a0 e1 5e 00 00 eb  |.0...0......^...|
</span><span class='line'>0x000001f0  e0 30 9f e5 00 30 93 e5  03 00 a0 e1 bd 00 00 eb  |.0...0..........|
</span><span class='line'>
</span><span class='line'>Go!
</span><span class='line'>Hardware version: 0x00000009
</span><span class='line'>Screen pressed: 0
</span><span class='line'>Setting up LCD to point at 0x44844000
</span><span class='line'>Setting up LCD to point at 0x44844000
</span><span class='line'>Reading 0x00000800 bytes from offset 0x0000b800 to destination 0x45a00000
</span><span class='line'>Skipping 2944 chunks
</span><span class='line'>Read 0 chunks.  Trying again...
</span><span class='line'>    Comparing block [boot] with img1...
</span><span class='line'>    Comparing block [img1] with img1... Found!
</span><span class='line'>Reading 0x00025800 bytes from offset 0x00044000 to destination 0x44844000
</span><span class='line'>Skipping 17408 chunks
</span><span class='line'>Read 0 chunks.  Trying again...
</span><span class='line'>
</span><span class='line'>boot&gt; shell
</span><span class='line'>
</span><span class='line'>
</span><span class='line'>
</span><span class='line'>Chumby bootloader console v1.0
</span><span class='line'>Booting in 2 seconds...
</span><span class='line'>Press any key to enter shell... 0
</span><span class='line'>
</span><span class='line'>boot&gt; regutil -w HW_EMI_CTRL 0x1c574040
</span><span class='line'>Setting 0x80020000: 0x1c884040 -&gt; 0x1c574040 ok
</span><span class='line'>
</span><span class='line'>boot&gt; regutil -w HW_POWER_BATTMONITOR 0x01ec0414
</span><span class='line'>Setting 0x800440e0: 0x01c30600 -&gt; 0x01ec0414 ok
</span><span class='line'>
</span><span class='line'>boot&gt; regutil -w HW_POWER_5VCTRL_CLR 0x00000080
</span><span class='line'>Setting 0x80044018: 0x0403f193 -&gt; 0x0403f113 ok
</span><span class='line'>
</span><span class='line'>boot&gt; regutil -w HW_POWER_MINPWR_SET 0x00001000
</span><span class='line'>Setting 0x80044024: 0x00000040 -&gt; 0x00001040 ok
</span><span class='line'>
</span><span class='line'>boot&gt; regutil -w HW_PINCTRL_MUXSEL1_SET 0x03300000
</span><span class='line'>Setting 0x80018114: 0x0fffffff -&gt; 0x0fffffff ok
</span><span class='line'>
</span><span class='line'>boot&gt; regutil -w HW_PINCTRL_DOUT0_CLR 0x24000000
</span><span class='line'>Setting 0x80018508: 0x00000000 -&gt; 0x00000000 ok
</span><span class='line'>
</span><span class='line'>boot&gt; regutil -w HW_PINCTRL_DOE0_SET 0x24000000
</span><span class='line'>Setting 0x80018704: 0x00000000 -&gt; 0x24000000 ok
</span><span class='line'>
</span><span class='line'>boot&gt; regutil -w HW_PINCTRL_DOUT0_CLR 0x24000000
</span><span class='line'>Setting 0x80018508: 0x00000000 -&gt; 0x00000000 ok
</span><span class='line'>
</span><span class='line'>boot&gt; regutil -w HW_PINCTRL_DOUT0_SET 0x20000000
</span><span class='line'>Setting 0x80018504: 0x00000000 -&gt; 0x20000000 ok
</span><span class='line'>
</span><span class='line'>boot&gt; regutil -w HW_PINCTRL_DOUT0_SET 0x04000000
</span><span class='line'>Setting 0x80018504: 0x20000000 -&gt; 0x24000000 ok
</span><span class='line'>
</span><span class='line'>boot&gt; 
</span><span class='line'>    Comparing block [boot] with img2...
</span><span class='line'>    Comparing block [img1] with img2...
</span><span class='line'>    Comparing block [img2] with img2... Found!
</span><span class='line'>Reading 0x00025800 bytes from offset 0x00069800 to destination 0x44844000
</span><span class='line'>Skipping 27008 chunks
</span><span class='line'>Read 0 chunks.  Trying again...
</span><span class='line'>
</span><span class='line'>boot&gt; load krnA 0x40008000
</span><span class='line'>    Comparing block [boot] with krnA...
</span><span class='line'>    Comparing block [img1] with krnA...
</span><span class='line'>    Comparing block [img2] with krnA...
</span><span class='line'>    Comparing block [img3] with krnA...
</span><span class='line'>    Comparing block [img4] with krnA...
</span><span class='line'>    Comparing block [img5] with krnA...
</span><span class='line'>    Comparing block [krnA] with krnA... Found!
</span><span class='line'>Reading 0x00400000 bytes from offset 0x000ff800 to destination 0x40008000
</span><span class='line'>Skipping 65408 chunks
</span><span class='line'>Read 0 chunks.  Trying again...
</span><span class='line'>
</span><span class='line'>boot&gt; linux 0x40008000 "console=ttyAM0,115200 root=/dev/mmcblk0p2 rw rootwait chumbyrev=** ssp1=mmc sysrq_always_enabled logo.brand=BBBBBBBBBBBB"
</span><span class='line'>Going to run linux at offset 0x40008000 with cmdline console=ttyAM0,115200 root=/dev/mmcblk0p2 rw rootwait chumbyrev=09 ssp1=mmc sysrq_always_enabled logo.brand=chumby
</span><span class='line'>Uncompressing Linux................................................................................................................................................. done, booting the kernel.
</span><span class='line'>[    0.000000] Linux version 2.6.28-chumby (guy@vdebian) (gcc version 4.5.3 20110311 (prerelease) (GCC) ) #4 PREEMPT Thu Feb 16 22:31:05 EST 2012
</span><span class='line'>[    0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
</span><span class='line'>[    0.000000] CPU: VIVT data cache, VIVT instruction cache
</span><span class='line'>[    0.000000] Machine: STMP378X
</span><span class='line'>[    0.000000] Memory policy: ECC disabled, Data cache writeback
</span><span class='line'>[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 16256
</span><span class='line'>[    0.000000] Kernel command line: console=ttyAM0,115200 root=/dev/mmcblk0p2 rw rootwait chumbyrev=09 ssp1=mmc sysrq_always_enabled logo.brand=chumby
</span><span class='line'>[    0.000000] Detected chumby version 9 (from str 09)
</span><span class='line'>[    0.000000] debug: sysrq always enabled.
</span><span class='line'>[    0.000000] Unknown boot option `logo.brand=chumby': ignoring
</span><span class='line'>[    0.000000] PID hash table entries: 256 (order: 8, 1024 bytes)
</span><span class='line'>[    0.000000] Console: colour dummy device 80x30
</span><span class='line'>[    0.000000] console [ttyAM0] enabled
</span><span class='line'>[    0.010000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
</span><span class='line'>[    0.010000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
</span><span class='line'>[    0.020000] Memory: 64MB = 64MB total
</span><span class='line'>[    0.030000] Memory: 59820KB available (4220K code, 704K data, 116K init)
</span><span class='line'>[    0.030000] SLUB: Genslabs=12, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
</span><span class='line'>[    0.040000] Calibrating delay loop... 226.91 BogoMIPS (lpj=1134592)
</span><span class='line'>[    0.280000] Security Framework initialized
</span><span class='line'>[    0.280000] Mount-cache hash table entries: 512
</span><span class='line'>[    0.280000] CPU: Testing write buffer coherency: ok
</span><span class='line'>[    0.290000] net_namespace: 708 bytes
</span><span class='line'>[    0.300000] regulator: core version 0.5
</span><span class='line'>[    0.300000] NET: Registered protocol family 16
</span><span class='line'>[    0.310000] regulator: vddd: 800 &lt;--&gt; 1575 mV fast normal 
</span><span class='line'>[    0.310000] regulator: vddd_bo: 800 &lt;--&gt; 1575 mV fast normal 
</span><span class='line'>[    0.320000] regulator: vdda: 1500 &lt;--&gt; 2275 mV fast normal 
</span><span class='line'>[    0.320000] regulator: vddio: 2800 &lt;--&gt; 3575 mV fast normal 
</span><span class='line'>[    0.330000] regulator: overall_current: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.330000] regulator: stmp3xxx-fb-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.340000] regulator: stmp3xxx-bl-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.340000] regulator: stmp3xxx_ts-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.350000] regulator: stmp37xx-dbguart-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.350000] regulator: stmp3xxx_wdt-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.360000] regulator: stmp3xxx-rtc-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.360000] regulator: stmp3xxx-rotdec-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.370000] regulator: i2c_stmp-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.370000] regulator: stmp3xxx-persistent-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.380000] regulator: stmp3xxx-dcp-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.380000] regulator: stmp3xxx-battery-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.390000] regulator: mmc_ssp-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.390000] regulator: mmc_ssp-2: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.400000] regulator: charger-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.400000] regulator: power-test-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.410000] regulator: cpufreq-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.410000] stmp378x_devb.c - stmp378x_devb_init():353 - Adding 13 platform-specific devices
</span><span class='line'>[    0.420000] Initialized chumby GPIO IRQ router
</span><span class='line'>[    0.430000] chumbyfbfw.c - chumbyfwfb_probe():1255 - resolution 720x480, bpp 2
</span><span class='line'>[    0.440000] chumbyfbfw.c - get_max_memsize():1060 - get_max_memsize: mem_size now 1382400 (720 x 480 x 16)
</span><span class='line'>[    0.440000] chumbyfbfw.c - get_max_memsize():1060 - get_max_memsize: mem_size now 1382400 (320 x 240 x 16)
</span><span class='line'>[    0.450000] chumbyfbfw.c - get_max_memsize():1060 - get_max_memsize: mem_size now 1658880 (720 x 576 x 16)
</span><span class='line'>[    0.450000] chumbyfbfw.c - chumbyfwfb_probe():1268 - memory to allocate for screen: 1658880
</span><span class='line'>[    0.460000] chumbyfbfw.c - chumbyfwfb_probe():1277 - allocated screen at ff600000:0x43a00000
</span><span class='line'>[    0.470000] chumbyfbfw.c - chumbyfwfb_probe():1326 - memory to allocate for plane 0: 1658880
</span><span class='line'>[    0.480000] chumbyfbfw.c - chumbyfwfb_probe():1336 - allocated at ff795000:0x43c00000
</span><span class='line'>[    0.490000] chumbyfbfw.c - chumbyfwfb_probe():1326 - memory to allocate for plane 1: 1658880
</span><span class='line'>[    0.500000] chumbyfbfw.c - chumbyfwfb_probe():1336 - allocated at ff92a000:0x43e00000
</span><span class='line'>[    0.510000] chumbyfbfw.c - chumbyfwfb_probe():1326 - memory to allocate for plane 2: 307200
</span><span class='line'>[    0.510000] chumbyfbfw.c - chumbyfwfb_probe():1336 - allocated at ffabf000:0x43880000
</span><span class='line'>[    0.520000] Going to copy splash image from 44844000 (153600 bytes) to ff600000 (not 43a00000)
</span><span class='line'>[    0.530000] chumbyfbfw.c - pxp_setup():1124 - Pointing S0 at 43c00000
</span><span class='line'>[    0.540000] stmp37xx-dbguart.0: ttyAM0 at MMIO 0xf0070000 (irq = 0) is a Debug UART
</span><span class='line'>[    0.550000] usbcore: registered new interface driver usbfs
</span><span class='line'>[    0.550000] usbcore: registered new interface driver hub
</span><span class='line'>[    0.560000] usbcore: registered new device driver usb
</span><span class='line'>[    0.600000] NET: Registered protocol family 2
</span><span class='line'>[    0.690000] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
</span><span class='line'>[    0.700000] TCP established hash table entries: 2048 (order: 2, 16384 bytes)
</span><span class='line'>[    0.700000] TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
</span><span class='line'>[    0.710000] TCP: Hash tables configured (established 2048 bind 2048)
</span><span class='line'>[    0.720000] TCP reno registered
</span><span class='line'>[    0.750000] NET: Registered protocol family 1
</span><span class='line'>[    0.750000] usb: DR gadget (utmi) registered
</span><span class='line'>[    0.770000] ashmem: initialized
</span><span class='line'>[    0.770000] Registering unionfs 2.5.2 (for 2.6.28.10)
</span><span class='line'>[    0.780000] NTFS driver 2.1.29 [Flags: R/O].
</span><span class='line'>[    0.780000] fuse init (API version 7.10)
</span><span class='line'>[    0.790000] msgmni has been set to 116
</span><span class='line'>[    0.800000] alg: No test for stdrng (krng)
</span><span class='line'>[    0.810000] cryptodev: driver loaded.
</span><span class='line'>[    0.810000] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)
</span><span class='line'>[    0.820000] io scheduler noop registered (default)
</span><span class='line'>[    0.850000] logger: created 64K log 'log_main'
</span><span class='line'>[    0.850000] logger: created 256K log 'log_events'
</span><span class='line'>[    0.860000] logger: created 64K log 'log_radio'
</span><span class='line'>[    0.870000] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
</span><span class='line'>[    0.870000] fsl-ehci fsl-ehci.0: Freescale On-Chip EHCI Host Controller
</span><span class='line'>[    0.880000] fsl-ehci fsl-ehci.0: new USB bus registered, assigned bus number 1
</span><span class='line'>[    2.010000] fsl-ehci fsl-ehci.0: irq 11, io mem 0x80080000
</span><span class='line'>[    2.030000] fsl-ehci fsl-ehci.0: USB 2.0 started, EHCI 1.00
</span><span class='line'>[    2.030000] usb usb1: configuration #1 chosen from 1 choice
</span><span class='line'>[    2.040000] hub 1-0:1.0: USB hub found
</span><span class='line'>[    2.040000] hub 1-0:1.0: 1 port detected
</span><span class='line'>[    2.050000] Chumby bend sensor driver version 2.3-Falconwing initializing (scross@chumby.com)...
</span><span class='line'>[    2.060000] input: bend-sensor as /devices/platform/bend-sensor/input/input0
</span><span class='line'>[    2.100000] input: STMP3XXX touchscreen as /devices/virtual/input/input1
</span><span class='line'>[    2.100000] input: stmp3xxx-rotdec as /devices/virtual/input/input2
</span><span class='line'>[    2.110000] STMP3xxx RTC driver v1.0 hardware v2.0.0
</span><span class='line'>[    2.120000] stmp3xxx-rtc stmp3xxx-rtc: rtc core: registered stmp3xxx-rtc as rtc0
</span><span class='line'>[    2.120000] i2c /dev entries driver
</span><span class='line'>[    2.140000] ddi_bc_Init: success
</span><span class='line'>[    2.150000] stmp3xxx-battery stmp3xxx-battery.0: bc_sm_restart: no battery present
</span><span class='line'>[    2.150000] power/linux.c - bc_sm_restart():987 - Returning from sm_restart()
</span><span class='line'>[    2.280000] stmp3xxx-dcp stmp3xxx-dcp: DCP crypto enabled.!
</span><span class='line'>[    2.280000] Advanced Linux Sound Architecture Driver Version 1.0.18rc3.
</span><span class='line'>[    2.290000] ASoC version 0.13.2
</span><span class='line'>[    2.290000] STMP378X ADC/DAC Audio Codec 0.1
</span><span class='line'>[    2.300000] asoc: stmp378x adc/dac &lt;-&gt; stmp3xxx adc/dac mapping ok
</span><span class='line'>[    2.310000] ALSA device list:
</span><span class='line'>[    2.320000]   #0: STMP3780 Devb (stmp378x adc/dac)
</span><span class='line'>[    2.320000] oprofile: using timer interrupt.
</span><span class='line'>[    2.330000] nf_conntrack version 0.5.0 (1024 buckets, 4096 max)
</span><span class='line'>[    2.330000] CONFIG_NF_CT_ACCT is deprecated and will be removed soon. Please use
</span><span class='line'>[    2.340000] nf_conntrack.acct=1 kernel paramater, acct=1 nf_conntrack module option or
</span><span class='line'>[    2.350000] sysctl net.netfilter.nf_conntrack_acct=1 to enable it.
</span><span class='line'>[    2.360000] ip_tables: (C) 2000-2006 Netfilter Core Team
</span><span class='line'>[    2.370000] arp_tables: (C) 2002 David S. Miller
</span><span class='line'>[    2.370000] TCP cubic registered
</span><span class='line'>[    2.380000] NET: Registered protocol family 17
</span><span class='line'>[    2.380000] RPC: Registered udp transport module.
</span><span class='line'>[    2.390000] RPC: Registered tcp transport module.
</span><span class='line'>[    2.390000] stmp3xxx-rtc stmp3xxx-rtc: setting system clock to 1970-01-01 00:00:13 UTC (13)
</span><span class='line'>[    2.400000] Waiting for root device /dev/mmcblk0p2...
</span><span class='line'>[    2.430000] mmc0: new SD card at address 0002
</span><span class='line'>[    2.440000] usb 1-1: new high speed USB device using fsl-ehci and address 2
</span><span class='line'>[    2.440000] mmcblk0: mmc0:0002 00000 971 MiB 
</span><span class='line'>[    2.450000]  mmcblk0: p1 p2
</span><span class='line'>[    2.520000] NILFS: Can't find nilfs on dev mmcblk0p2.
</span><span class='line'>[    2.520000] EXT3-fs warning: feature flags set on rev 0 fs, running e2fsck is recommended
</span><span class='line'>[    2.540000] kjournald starting.  Commit interval 5 seconds
</span><span class='line'>[    2.540000] EXT3-fs warning (device mmcblk0p2): ext3_update_dynamic_rev: updating to rev 1 because of new feature flag, running e2fsck is recommended
</span><span class='line'>[    2.590000] usb 1-1: configuration #1 chosen from 1 choice
</span><span class='line'>[    2.590000] EXT3 FS on mmcblk0p2, internal journal
</span><span class='line'>[    2.600000] EXT3-fs: mounted filesystem with ordered data mode.
</span><span class='line'>[    2.600000] VFS: Mounted root (ext3 filesystem).
</span><span class='line'>[    2.610000] Freeing init memory: 116K
</span><span class='line'>[    2.610000] hub 1-1:1.0: USB hub found
</span><span class='line'>[    2.620000] hub 1-1:1.0: config failed, hub has too many ports! (err -19)
</span><span class='line'>INIT: version 2.86 booting
</span><span class='line'>Please wait: booting...
</span><span class='line'>Starting udev
</span><span class='line'>[    6.160000] mice: PS/2 mouse device common for all mice
</span><span class='line'>Remounting root file system...
</span><span class='line'>Caching udev devnodes
</span><span class='line'>Populating dev cache
</span><span class='line'>ALSA: Restoring mixer settings...
</span><span class='line'>No state is present for card Devb
</span><span class='line'>/usr/sbin/alsactl: parse:1655: Unable to open file '/usr/share/alsa/init/00main': No such file or directory
</span><span class='line'>No state is present for card Devb
</span><span class='line'>Configuring update-modules.
</span><span class='line'>Configuring ppp.
</span><span class='line'>Configuring ppp-dialin.
</span><span class='line'>Configuring e2fsprogs.
</span><span class='line'>update-alternatives: Error: cannot register alternative chattr to /usr/bin/chattr since it is already registered to /bin/chattr
</span><span class='line'>update-alternatives: Linking //sbin/uuidd to uuidd.util-linux-ng
</span><span class='line'>Configuring dbus.
</span><span class='line'> Adding system startup for /etc/init.d/dbus-1.
</span><span class='line'>Configuring angstrom-libc-fixup-hack.
</span><span class='line'>Configuring libnss-mdns.
</span><span class='line'>Configuring avahi-daemon.
</span><span class='line'> Adding system startup for /etc/init.d/avahi-daemon.
</span><span class='line'>Configuring avahi-autoipd.
</span><span class='line'>[   17.610000] NET: Registered protocol family 10
</span><span class='line'>Configuring network interfaces... ifconfig: SIOCGIFFLAGS: No such device
</span><span class='line'>done.
</span><span class='line'>Starting portmap daemon: portmap.
</span><span class='line'>net.ipv4.conf.default.rp_filter = 1
</span><span class='line'>net.ipv4.conf.all.rp_filter = 1
</span><span class='line'>Thu Feb 16 23:57:00 UTC 2012
</span><span class='line'>INIT: Entering runlevel: 5
</span><span class='line'>Starting system message bus: dbus.
</span><span class='line'>Creating Dropbear SSH server RSA host key.
</span><span class='line'>Will output 1024 bit rsa secret key to '/etc/dropbear/dropbear_rsa_host_key'
</span><span class='line'>Generating key, this may take a while...
</span><span class='line'>Public key portion is:
</span><span class='line'>ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgwDMAHLVuprK4TDNbqQwmR5TX2J9gTzW+6m9M+hEDqzihheHcmhiNi9lRdj2SRqg3OXMIFwdboT9RtJt2rxFtjJsA4GuSPOzGHa5sDq4uH2KfVtbnVlyHilF0HgpiGaN0UFbm72A/ocra3HmJf/MIJj7ImTuLihUV6zlet3GfSi9I7tX root@chumby-falconwing
</span><span class='line'>Fingerprint: md5 83:9c:8d:c8:c5:fa:d5:c9:ee:92:78:21:9c:2e:e7:40
</span><span class='line'>Starting Dropbear SSH server: dropbear.
</span><span class='line'>Starting syslogd/klogd: done
</span><span class='line'> * Starting Avahi mDNS/DNS-SD Daemon: avahi-daemon
</span><span class='line'>   ...done.
</span><span class='line'>
</span><span class='line'>.---O---.                                           
</span><span class='line'>|       |                  .-.           o o        
</span><span class='line'>|   |   |-----.-----.-----.| |   .----..-----.-----.
</span><span class='line'>|       |     | __  |  ---'| '--.|  .-'|     |     |
</span><span class='line'>|   |   |  |  |     |---  ||  --'|  |  |  '  | | | |
</span><span class='line'>'---'---'--'--'--.  |-----''----''--'  '-----'-'-'-'
</span><span class='line'>                -'  |
</span><span class='line'>                '---'
</span><span class='line'>
</span><span class='line'>The Angstrom Distribution chumby-falconwing ttyAM0
</span><span class='line'>
</span><span class='line'>Angstrom v20120216 chumby-falconwing ttyAM0
</span><span class='line'>
</span><span class='line'>chumby-falconwing login: </span></code></pre></td></tr></table></div></figure>


<p>To help identify the differences between this kernel and the stock Chumby
kernel, here is the boot log diffed against the stock boot log.</p>

<div><script src='https://gist.github.com/1842712.js?file='></script>
<noscript><pre><code>--- bootlog.stock.tmp   2012-02-16 16:54:44.000000000 +1000
+++ bootlog.2.6.28.tmp  2012-02-16 16:54:44.000000000 +1000
@@ -5,37 +5,37 @@
 Skipping 3968 chunks
 Jumping to address 0x40808000:
 0x00000000  0f 00 a0 e1 08 00 40 e2  02 0a 40 e2 08 10 9f e5  |......@...@.....|
-0x00000010  00 00 81 e5 02 00 00 eb  25 05 00 eb 20 20 00 00  |........%...  ..|
+0x00000010  00 00 81 e5 02 00 00 eb  d8 04 00 eb 20 80 80 40  |............ ..@|
 0x00000020  11 b1 11 c1 14 00 9f e5  14 10 9f e5 00 20 a0 e3  |............. ..|
 0x00000030  04 20 80 e4 01 00 50 e1  fc ff ff 3a 0e f0 a0 e1  |. ....P....:....|
-0x00000040  a0 13 02 00 20 15 02 00  0e f0 a0 e1 0e f0 a0 e1  |.... ...........|
+0x00000040  c0 6d 82 40 20 6e 82 40  0e f0 a0 e1 0e f0 a0 e1  |.m.@ n.@........|
 0x00000050  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
 0x00000060  04 b0 2d e5 00 b0 8d e2  14 d0 4d e2 64 30 9f e5  |..-.......M.d0..|
-0x00000070  00 30 93 e5 10 30 0b e5  58 20 9f e5 00 30 a0 e3  |.0...0..X ...0..|
-0x00000080  00 30 82 e5 50 30 9f e5  08 30 0b e5 4c 20 9f e5  |.0..P0...0..L ..|
-0x00000090  08 30 1b e5 3f 30 03 e2  00 30 82 e5 40 20 9f e5  |.0..?0...0..@ ..|
-0x000000a0  08 30 1b e5 23 33 a0 e1  00 30 82 e5 70 30 a0 e3  |.0..#3...0..p0..|
-0x000000b0  0c 30 0b e5 2c 20 9f e5  0c 30 1b e5 00 30 82 e5  |.0.., ...0...0..|
-0x000000c0  10 20 9f e5 10 30 1b e5  00 30 82 e5 00 d0 8b e2  |. ...0...0......|
+0x00000070  00 30 93 e5 08 30 0b e5  58 30 9f e5 00 20 a0 e3  |.0...0..X0... ..|
+0x00000080  00 20 83 e5 50 30 9f e5  0c 30 0b e5 4c 30 9f e5  |. ..P0...0..L0..|
+0x00000090  0c 20 1b e5 3f 20 02 e2  00 20 83 e5 40 30 9f e5  |. ..? ... ..@0..|
+0x000000a0  0c 20 1b e5 22 23 a0 e1  00 20 83 e5 70 30 a0 e3  |. ..&quot;#... ..p0..|
+0x000000b0  10 30 0b e5 2c 30 9f e5  10 20 1b e5 00 20 83 e5  |.0..,0... ... ..|
+0x000000c0  10 30 9f e5 08 20 1b e5  00 20 83 e5 00 d0 8b e2  |.0... ... ......|
 0x000000d0  00 08 bd e8 1e ff 2f e1  30 00 07 80 41 03 00 00  |....../.0...A...|
 0x000000e0  28 00 07 80 24 00 07 80  2c 00 07 80 00 48 2d e9  |(...$...,....H-.|
-0x000000f0  04 b0 8d e2 08 d0 4d e2  90 20 9f e5 05 36 a0 e3  |......M.. ...6..|
-0x00000100  00 30 82 e5 88 20 9f e5  0a 36 a0 e3 00 30 82 e5  |.0... ...6...0..|
-0x00000110  80 20 9f e5 00 30 a0 e3  00 30 82 e5 78 20 9f e5  |. ...0...0..x ..|
-0x00000120  00 30 a0 e3 00 30 82 e5  cc ff ff eb 6c 30 9f e5  |.0...0......l0..|
+0x000000f0  04 b0 8d e2 08 d0 4d e2  90 30 9f e5 05 26 a0 e3  |......M..0...&amp;..|
+0x00000100  00 20 83 e5 88 30 9f e5  0a 26 a0 e3 00 20 83 e5  |. ...0...&amp;... ..|
+0x00000110  80 30 9f e5 00 20 a0 e3  00 20 83 e5 78 30 9f e5  |.0... ... ..x0..|
+0x00000120  00 20 a0 e3 00 20 83 e5  cc ff ff eb 6c 30 9f e5  |. ... ......l0..|
 0x00000130  00 30 93 e5 08 30 0b e5  08 30 1b e5 10 30 c3 e3  |.0...0...0...0..|
-0x00000140  08 30 0b e5 54 20 9f e5  08 30 1b e5 00 30 82 e5  |.0..T ...0...0..|
-0x00000150  4c 30 9f e5 08 30 0b e5  38 20 9f e5 08 30 1b e5  |L0...0..8 ...0..|
-0x00000160  00 30 82 e5 34 30 9f e5  00 30 93 e5 08 30 0b e5  |.0..40...0...0..|
-0x00000170  08 30 1b e5 10 30 c3 e3  08 30 0b e5 1c 20 9f e5  |.0...0...0... ..|
-0x00000180  08 30 1b e5 00 30 82 e5  04 d0 4b e2 00 88 bd e8  |.0...0....K.....|
+0x00000140  08 30 0b e5 54 30 9f e5  08 20 1b e5 00 20 83 e5  |.0..T0... ... ..|
+0x00000150  4c 30 9f e5 08 30 0b e5  38 30 9f e5 08 20 1b e5  |L0...0..80... ..|
+0x00000160  00 20 83 e5 34 30 9f e5  00 30 93 e5 08 30 0b e5  |. ..40...0...0..|
+0x00000170  08 30 1b e5 10 30 c3 e3  08 30 0b e5 1c 30 9f e5  |.0...0...0...0..|
+0x00000180  08 20 1b e5 00 20 83 e5  04 d0 4b e2 00 88 bd e8  |. ... ....K.....|
 0x00000190  38 81 01 80 34 81 01 80  30 00 07 80 38 00 07 80  |8...4...0...8...|
 0x000001a0  2c 00 07 80 01 03 00 00  04 b0 2d e5 00 b0 8d e2  |,.........-.....|
-0x000001b0  18 30 9f e5 00 30 93 e5  80 30 03 e2 00 00 53 e3  |.0...0...0....S.|
-0x000001c0  fa ff ff 0a 00 d0 8b e2  00 08 bd e8 1e ff 2f e1  |............../.|
-0x000001d0  18 00 07 80 30 48 2d e9  0c b0 8d e2 f4 40 9f e5  |....0H-......@..|
-0x000001e0  04 40 8f e0 f0 30 9f e5  03 30 84 e0 03 00 a0 e1  |.@...0...0......|
-0x000001f0  5e 00 00 eb e4 30 9f e5  00 30 93 e5 03 00 a0 e1  |^....0...0......|
+0x000001b0  00 00 a0 e1 18 30 9f e5  00 30 93 e5 80 30 03 e2  |.....0...0...0..|
+0x000001c0  00 00 53 e3 fa ff ff 0a  00 d0 8b e2 00 08 bd e8  |..S.............|
+0x000001d0  1e ff 2f e1 18 00 07 80  00 48 2d e9 04 b0 8d e2  |../......H-.....|
+0x000001e0  ec 30 9f e5 03 30 8f e0  03 00 a0 e1 5e 00 00 eb  |.0...0......^...|
+0x000001f0  e0 30 9f e5 00 30 93 e5  03 00 a0 e1 bd 00 00 eb  |.0...0..........|
 
 Go!
 Hardware version: 0x00000009
@@ -44,10 +44,12 @@
 Setting up LCD to point at 0x44844000
 Reading 0x00000800 bytes from offset 0x0000b800 to destination 0x45a00000
 Skipping 2944 chunks
+Read 0 chunks.  Trying again...
     Comparing block [boot] with img1...
     Comparing block [img1] with img1... Found!
 Reading 0x00025800 bytes from offset 0x00044000 to destination 0x44844000
 Skipping 17408 chunks
+Read 0 chunks.  Trying again...
 
 boot&gt; shell
 
@@ -57,17 +59,11 @@
 Booting in 2 seconds...
 Press any key to enter shell... 0
 
-boot&gt; regutil -w HW_RTC_WATCHDOG 0x00004e20
-Setting 0x8005c050: 0xffffffff -&gt; 0x00004e20 ok
-
-boot&gt; regutil -w HW_RTC_CTRL_SET 0x00000010
-Setting 0x8005c004: 0x00000008 -&gt; 0x00000018 ok
-
-boot&gt; regutil -w HW_EMI_CTRL 0x1c444040
-Setting 0x80020000: 0x1c884040 -&gt; 0x1c444040 ok
+boot&gt; regutil -w HW_EMI_CTRL 0x1c574040
+Setting 0x80020000: 0x1c884040 -&gt; 0x1c574040 ok
 
 boot&gt; regutil -w HW_POWER_BATTMONITOR 0x01ec0414
-Setting 0x800440e0: 0x01d10614 -&gt; 0x01ec0414 ok
+Setting 0x800440e0: 0x01c30600 -&gt; 0x01ec0414 ok
 
 boot&gt; regutil -w HW_POWER_5VCTRL_CLR 0x00000080
 Setting 0x80044018: 0x0403f193 -&gt; 0x0403f113 ok
@@ -99,6 +95,7 @@
     Comparing block [img2] with img2... Found!
 Reading 0x00025800 bytes from offset 0x00069800 to destination 0x44844000
 Skipping 27008 chunks
+Read 0 chunks.  Trying again...
 
 boot&gt; load krnA 0x40008000
     Comparing block [boot] with krnA...
@@ -110,17 +107,18 @@
     Comparing block [krnA] with krnA... Found!
 Reading 0x00400000 bytes from offset 0x000ff800 to destination 0x40008000
 Skipping 65408 chunks
+Read 0 chunks.  Trying again...
 
-boot&gt; linux 0x40008000 &quot;console=ttyAM0,115200 init=/linuxrc root=/dev/mmcblk0p2 rootfstype=ext3 ro rootwait chumbyrev=** ssp1=mmc sysrq_always_enabled logo.brand=BBBBBBBBBBBB&quot;
-Going to run linux at offset 0x40008000 with cmdline console=ttyAM0,115200 init=/linuxrc root=/dev/mmcblk0p2 rootfstype=ext3 ro rootwait chumbyrev=09 ssp1=mmc sysrq_always_enabled logo.brand=chumby
-Uncompressing Linux.............................................................................................................................................. done, booting the kernel.
-[            ] Linux version 2.6.28-chumby (builder@stormbuild) (gcc version 4.3.2 (Sourcery G++ Lite 2008q3-72) ) #302 PREEMPT Wed Jul 28 14:40:46 PDT 2010
+boot&gt; linux 0x40008000 &quot;console=ttyAM0,115200 root=/dev/mmcblk0p2 rw rootwait chumbyrev=** ssp1=mmc sysrq_always_enabled logo.brand=BBBBBBBBBBBB&quot;
+Going to run linux at offset 0x40008000 with cmdline console=ttyAM0,115200 root=/dev/mmcblk0p2 rw rootwait chumbyrev=09 ssp1=mmc sysrq_always_enabled logo.brand=chumby
+Uncompressing Linux................................................................................................................................................. done, booting the kernel.
+[            ] Linux version 2.6.28-chumby (guy@vdebian) (gcc version 4.5.3 20110311 (prerelease) (GCC) ) #4 PREEMPT Thu Feb 16 22:31:05 EST 2012
 [            ] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
 [            ] CPU: VIVT data cache, VIVT instruction cache
 [            ] Machine: STMP378X
 [            ] Memory policy: ECC disabled, Data cache writeback
 [            ] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 16256
-[            ] Kernel command line: console=ttyAM0,115200 init=/linuxrc root=/dev/mmcblk0p2 rootfstype=ext3 ro rootwait chumbyrev=09 ssp1=mmc sysrq_always_enabled logo.brand=chumby
+[            ] Kernel command line: console=ttyAM0,115200 root=/dev/mmcblk0p2 rw rootwait chumbyrev=09 ssp1=mmc sysrq_always_enabled logo.brand=chumby
 [            ] Detected chumby version 9 (from str 09)
 [            ] debug: sysrq always enabled.
 [            ] Unknown boot option `logo.brand=chumby': ignoring
@@ -130,7 +128,7 @@
 [            ] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
 [            ] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
 [            ] Memory: 64MB = 64MB total
-[            ] Memory: 59932KB available (4116K code, 699K data, 120K init)
+[            ] Memory: 59820KB available (4220K code, 704K data, 116K init)
 [            ] SLUB: Genslabs=12, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
 [            ] Calibrating delay loop... 226.91 BogoMIPS (lpj=1134592)
 [            ] Security Framework initialized
@@ -160,7 +158,7 @@
 [            ] regulator: charger-1: 0 &lt;--&gt; 2147483 mA fast normal 
 [            ] regulator: power-test-1: 0 &lt;--&gt; 2147483 mA fast normal 
 [            ] regulator: cpufreq-1: 0 &lt;--&gt; 2147483 mA fast normal 
-[            ] stmp378x_devb.c - stmp378x_devb_init():388 - Adding 15 platform-specific devices
+[            ] stmp378x_devb.c - stmp378x_devb_init():353 - Adding 13 platform-specific devices
 [            ] Initialized chumby GPIO IRQ router
 [            ] chumbyfbfw.c - chumbyfwfb_probe():1255 - resolution 720x480, bpp 2
 [            ] chumbyfbfw.c - get_max_memsize():1060 - get_max_memsize: mem_size now 1382400 (720 x 480 x 16)
@@ -173,10 +171,13 @@
 [            ] chumbyfbfw.c - chumbyfwfb_probe():1326 - memory to allocate for plane 1: 1658880
 [            ] chumbyfbfw.c - chumbyfwfb_probe():1336 - allocated at ff92a000:0x43e00000
 [            ] chumbyfbfw.c - chumbyfwfb_probe():1326 - memory to allocate for plane 2: 307200
-[            ] chumbyfbfw.c - chumbyfwfb_probe():1336 - allocated at ffabf000:0x43900000
+[            ] chumbyfbfw.c - chumbyfwfb_probe():1336 - allocated at ffabf000:0x43880000
 [            ] Going to copy splash image from 44844000 (153600 bytes) to ff600000 (not 43a00000)
 [            ] chumbyfbfw.c - pxp_setup():1124 - Pointing S0 at 43c00000
 [            ] stmp37xx-dbguart.0: ttyAM0 at MMIO 0xf0070000 (irq = 0) is a Debug UART
+[            ] usbcore: registered new interface driver usbfs
+[            ] usbcore: registered new interface driver hub
+[            ] usbcore: registered new device driver usb
 [            ] NET: Registered protocol family 2
 [            ] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
 [            ] TCP established hash table entries: 2048 (order: 2, 16384 bytes)
@@ -184,22 +185,37 @@
 [            ] TCP: Hash tables configured (established 2048 bind 2048)
 [            ] TCP reno registered
 [            ] NET: Registered protocol family 1
+[            ] usb: DR gadget (utmi) registered
 [            ] ashmem: initialized
 [            ] Registering unionfs 2.5.2 (for 2.6.28.10)
 [            ] NTFS driver 2.1.29 [Flags: R/O].
 [            ] fuse init (API version 7.10)
-[            ] msgmni has been set to 117
+[            ] msgmni has been set to 116
 [            ] alg: No test for stdrng (krng)
 [            ] cryptodev: driver loaded.
+[            ] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)
 [            ] io scheduler noop registered (default)
 [            ] logger: created 64K log 'log_main'
 [            ] logger: created 256K log 'log_events'
 [            ] logger: created 64K log 'log_radio'
+[            ] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
+[            ] fsl-ehci fsl-ehci.0: Freescale On-Chip EHCI Host Controller
+[            ] fsl-ehci fsl-ehci.0: new USB bus registered, assigned bus number 1
+[            ] fsl-ehci fsl-ehci.0: irq 11, io mem 0x80080000
+[            ] fsl-ehci fsl-ehci.0: USB 2.0 started, EHCI 1.00
+[            ] usb usb1: configuration #1 chosen from 1 choice
+[            ] hub 1-0:1.0: USB hub found
+[            ] hub 1-0:1.0: 1 port detected
+[            ] Chumby bend sensor driver version 2.3-Falconwing initializing (scross@chumby.com)...
+[            ] input: bend-sensor as /devices/platform/bend-sensor/input/input0
+[            ] input: STMP3XXX touchscreen as /devices/virtual/input/input1
+[            ] input: stmp3xxx-rotdec as /devices/virtual/input/input2
 [            ] STMP3xxx RTC driver v1.0 hardware v2.0.0
 [            ] stmp3xxx-rtc stmp3xxx-rtc: rtc core: registered stmp3xxx-rtc as rtc0
+[            ] i2c /dev entries driver
 [            ] ddi_bc_Init: success
 [            ] stmp3xxx-battery stmp3xxx-battery.0: bc_sm_restart: no battery present
-[            ] power/linux.c - bc_sm_restart():982 - Returning from sm_restart()
+[            ] power/linux.c - bc_sm_restart():987 - Returning from sm_restart()
 [            ] stmp3xxx-dcp stmp3xxx-dcp: DCP crypto enabled.!
 [            ] Advanced Linux Sound Architecture Driver Version 1.0.18rc3.
 [            ] ASoC version 0.13.2
@@ -216,114 +232,80 @@
 [            ] arp_tables: (C) 2002 David S. Miller
 [            ] TCP cubic registered
 [            ] NET: Registered protocol family 17
-[            ] mmc0: new SD card at address 0002
 [            ] RPC: Registered udp transport module.
 [            ] RPC: Registered tcp transport module.
+[            ] stmp3xxx-rtc stmp3xxx-rtc: setting system clock to 1970-01-01 00:00:13 UTC (13)
+[            ] Waiting for root device /dev/mmcblk0p2...
+[            ] mmc0: new SD card at address 0002
+[            ] usb 1-1: new high speed USB device using fsl-ehci and address 2
 [            ] mmcblk0: mmc0:0002 00000 971 MiB 
-[            ]  mmcblk0: p1 p2 p3 p4 &lt; p5 p6 &gt;
-[            ] stmp3xxx-rtc stmp3xxx-rtc: setting system clock to 1970-01-01 00:02:20 UTC (140)
+[            ]  mmcblk0: p1 p2
+[            ] NILFS: Can't find nilfs on dev mmcblk0p2.
 [            ] EXT3-fs warning: feature flags set on rev 0 fs, running e2fsck is recommended
-[            ] EXT3-fs: mounted filesystem with ordered data mode.
-[            ] VFS: Mounted root (ext3 filesystem) readonly.
-[            ] Freeing init memory: 120K
-[            ] kjournald starting.  Commit interval 5 seconds
-/linuxrc v0.42 $Rev: 23680 $ pid=1
-Parsing /etc/init.d/linuxrc.config
-Executing scripted actions (including 11 setenv statements)
-[MOUNT] tmpfs (type tmpfs) on /tmp (mode=755)
-[MOUNT] proc (type proc) on /proc
-[MOUNT] sysfs (type sysfs) on /sys
-Scripted execution complete, 3 actions with 0 failures
-environ[0]: HOME=/
-environ[1]: TERM=linux
-environ[2]: ssp1=mmc
-Adding /psp/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/chumby/scripts
-[SETENV] PATH=/usr/bin:/bin:/usr/sbin:/usr/local/sbin:/sbin:/usr/chumby/scripts
-[SETENV] CNPLATFORM=falconwing
-[SETENV] CONFIGNAME=falconwing
-[SETENV] VIDEO_RES=320x240
-[SETENV] VIDEO_X_RES=320
-[SETENV] VIDEO_Y_RES=240
-[SETENV] HAS_CP=1
-[SETENV] LANGUAGE=en_US
-[SETENV] GST_PLUGIN_PATH=/lib/gstreamer-0.10/
-[SETENV] CAMLIBS=/lib/libgphoto2-2.4.3
-[SETENV] IOLIBS=/lib/libgphoto2_port-0.8.0
-Starting /sbin/init (cwd=/) (envcount=15)
-init started: BusyBox v1.16.0 (2010-07-28 15:14:10 PDT)
-imgtool 1.22 (built for falconwing)
-Drawing image /bitmap/320x240/chumby_logo.bin.jpg
-Opening output /dev/fb0 fmt=0
-fb handle = 4
-Displaying rows from 0 to 239 inclusive
-Closing frame buffer
-Welcome to Falconwing
-
-can't open /dev/tty0: No such file or directory
-/etc/init.d/rcS.background: line 18: can't create /psp/branding: Read-only file system
-Setting 0x8005c078: 0x80000000 -&gt; 0x80000000 ok
-e2fsck 1.41.5 (23-Apr-2009)
-/dev/mmcblk0p5: clean, 48/256 files, 10533/124997 blocks
-[            ] kjournald starting.  Commit interval 5 seconds
-[            ] EXT3 FS on mmcblk0p5, internal journal
-[            ] EXT3-fs: mounted filesystem with journal data mode.
-e2fsck 1.41.5 (23-Apr-2009)
-/dev/mmcblk0p6: clean, 12/37520 files, 6577/150022 blocks
 [            ] kjournald starting.  Commit interval 5 seconds
-[            ] EXT3 FS on mmcblk0p6, internal journal
-[            ] EXT3-fs: mounted filesystem with ordered data mode.
-can't open /dev/tty0: No such file or directory
-can't open /dev/tty0: No such file or directory
-[            ] Chumby bend sensor driver version 2.3-Falconwing initializing (scross@chumby.com)...
-[            ] input: bend-sensor as /devices/platform/bend-sensor/input/input0
-can't open /dev/tty0: No such file or directory
-can't open /dev/tty0: No such file or directory
-can't open /dev/tty0: No such file or directory
-[            ] input: STMP3XXX touchscreen as /devices/virtual/input/input1
-can't open /dev/tty0: No such file or directory
-[            ] mice: PS/2 mouse device common for all mice
-Setting 0x80018508: 0x24011000 -&gt; 0x20011000 ok
-Setting 0x80018504: 0x20011000 -&gt; 0x24011000 ok
-[            ] usbcore: registered new interface driver usbfs
-[            ] usbcore: registered new interface driver hub
-[            ] usbcore: registered new device driver usb
-[            ] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
-[            ] fsl-ehci fsl-ehci: Freescale On-Chip EHCI Host Controller
-[            ] fsl-ehci fsl-ehci: new USB bus registered, assigned bus number 1
-[            ] fsl-ehci fsl-ehci: irq 11, io mem 0xf0080000
-[            ] fsl-ehci fsl-ehci: USB 2.0 started, EHCI 1.00
-[            ] usb usb1: configuration #1 chosen from 1 choice
-[            ] hub 1-0:1.0: USB hub found
-[            ] hub 1-0:1.0: 1 port detected
-[            ] usb 1-1: new high speed USB device using fsl-ehci and address 2
+[            ] EXT3-fs warning (device mmcblk0p2): ext3_update_dynamic_rev: updating to rev 1 because of new feature flag, running e2fsck is recommended
 [            ] usb 1-1: configuration #1 chosen from 1 choice
+[            ] EXT3 FS on mmcblk0p2, internal journal
+[            ] EXT3-fs: mounted filesystem with ordered data mode.
+[            ] VFS: Mounted root (ext3 filesystem).
+[            ] Freeing init memory: 116K
 [            ] hub 1-1:1.0: USB hub found
-[            ] hub 1-1:1.0: 4 ports detected
-Setting 0x80018200: 0x00000000 -&gt; 0x00000000 ok
-Setting 0x80018210: 0x00000000 -&gt; 0x00000000 ok
-Setting 0x80018220: 0x00000000 -&gt; 0x00000000 ok
-Setting 0x80018230: 0x00000000 -&gt; 0x00000000 ok
-Setting 0x80018240: 0x00000000 -&gt; 0x00000000 ok
-Setting 0x80018250: 0x00000000 -&gt; 0x00000000 ok
-Setting 0x80018260: 0x00000000 -&gt; 0x00000000 ok
-Setting 0x80018270: 0x00000000 -&gt; 0x00000000 ok
-Setting 0x80018280: 0x01111111 -&gt; 0x00000000 ok
-Setting 0x80018290: 0x33333330 -&gt; 0x11111110 ok
-Setting 0x800182a0: 0x33333333 -&gt; 0x11111111 ok
-Setting 0x800182b0: 0x33300333 -&gt; 0x11111111 ok
-Setting 0x800182c0: 0x33333333 -&gt; 0x11111111 ok
-Setting 0x800182d0: 0x33333333 -&gt; 0x11111111 ok
-Setting 0x800182e0: 0x00333333 -&gt; 0x00111111 ok
-[            ] i2c /dev entries driver
-FATAL: Module snd_soc_stmp3780_devb not found.
-[            ] Chumby timerx[2] driver version 3.0-Falconwing initializing (bunnie@chumby.com)... show me your jiffies!!!
-[            ] input: stmp3xxx-rotdec as /devices/virtual/input/input2
+[            ] hub 1-1:1.0: config failed, hub has too many ports! (err -19)
+INIT: version 2.86 booting
+Please wait: booting...
+Starting udev
+[            ] mice: PS/2 mouse device common for all mice
+Remounting root file system...
+Caching udev devnodes
+Populating dev cache
+ALSA: Restoring mixer settings...
+No state is present for card Devb
+/usr/sbin/alsactl: parse:1655: Unable to open file '/usr/share/alsa/init/00main': No such file or directory
+No state is present for card Devb
+Configuring update-modules.
+Configuring ppp.
+Configuring ppp-dialin.
+Configuring e2fsprogs.
+update-alternatives: Error: cannot register alternative chattr to /usr/bin/chattr since it is already registered to /bin/chattr
+update-alternatives: Linking //sbin/uuidd to uuidd.util-linux-ng
+Configuring dbus.
+ Adding system startup for /etc/init.d/dbus-1.
+Configuring angstrom-libc-fixup-hack.
+Configuring libnss-mdns.
+Configuring avahi-daemon.
+ Adding system startup for /etc/init.d/avahi-daemon.
+Configuring avahi-autoipd.
 [            ] NET: Registered protocol family 10
-Starting chumbhowld service
-Started chumbhowld 
-Adobe FlashLite 3.1.7 Release (Version 9,1,122,0)- Chumby Industries (version 9 build 112-3320 [GCC 4.3.2])
-Portions copyright (C) 2005-2010 Chumby Industries, Inc.
-Built for: falconwing; Features: Video ALSA ARM-optimizations
-Build time: Wed 28Jul2010 1454
-GetRegisteredInstancePid(/var/run/chumbyflashplayer.pid) returned 0 - no other instance is running
-rcS completed at Wed Dec 31 16:02:48 PST 1969
+Configuring network interfaces... ifconfig: SIOCGIFFLAGS: No such device
+done.
+Starting portmap daemon: portmap.
+net.ipv4.conf.default.rp_filter = 1
+net.ipv4.conf.all.rp_filter = 1
+Thu Feb 16 23:57:00 UTC 2012
+INIT: Entering runlevel: 5
+Starting system message bus: dbus.
+Creating Dropbear SSH server RSA host key.
+Will output 1024 bit rsa secret key to '/etc/dropbear/dropbear_rsa_host_key'
+Generating key, this may take a while...
+Public key portion is:
+ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgwDMAHLVuprK4TDNbqQwmR5TX2J9gTzW+6m9M+hEDqzihheHcmhiNi9lRdj2SRqg3OXMIFwdboT9RtJt2rxFtjJsA4GuSPOzGHa5sDq4uH2KfVtbnVlyHilF0HgpiGaN0UFbm72A/ocra3HmJf/MIJj7ImTuLihUV6zlet3GfSi9I7tX root@chumby-falconwing
+Fingerprint: md5 83:9c:8d:c8:c5:fa:d5:c9:ee:92:78:21:9c:2e:e7:40
+Starting Dropbear SSH server: dropbear.
+Starting syslogd/klogd: done
+ * Starting Avahi mDNS/DNS-SD Daemon: avahi-daemon
+   ...done.
+
+.---O---.                                           
+|       |                  .-.           o o        
+|   |   |-----.-----.-----.| |   .----..-----.-----.
+|       |     | __  |  ---'| '--.|  .-'|     |     |
+|   |   |  |  |     |---  ||  --'|  |  |  '  | | | |
+'---'---'--'--'--.  |-----''----''--'  '-----'-'-'-'
+                -'  |
+                '---'
+
+The Angstrom Distribution chumby-falconwing ttyAM0
+
+Angstrom v20120216 chumby-falconwing ttyAM0
+
+chumby-falconwing login: </code></pre></noscript></div>



]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[Installing a Kernel Image with OSX]]></title>
    <link href="http://guy.carpenter.id.au/chumby-oe/blog/2012/02/16/installing-a-kernel-image-with-osx/"/>
    <updated>2012-02-16T15:29:00+10:00</updated>
    <id>http://guy.carpenter.id.au/chumby-oe/blog/2012/02/16/installing-a-kernel-image-with-osx</id>
    <content type="html"><![CDATA[<p>Insert the microSD in the SD adaptor and insert it into the SD
slot on your Mac.  You will get a popup warning saying <code>The disk you
inserted was not readable by this computer.</code>  Click Ignore.</p>

<p>Use diskutil to find the device name.  Look for the 1GB disk
with 4 Linux partitions.  If you missed the instructions above and
clicked Eject instead, it will not be listed here.</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
<span class='line-number'>3</span>
<span class='line-number'>4</span>
<span class='line-number'>5</span>
<span class='line-number'>6</span>
<span class='line-number'>7</span>
<span class='line-number'>8</span>
<span class='line-number'>9</span>
<span class='line-number'>10</span>
<span class='line-number'>11</span>
<span class='line-number'>12</span>
<span class='line-number'>13</span>
<span class='line-number'>14</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>$ diskutil list
</span><span class='line'>/dev/disk0
</span><span class='line'>   #:                       TYPE NAME                    SIZE       IDENTIFIER
</span><span class='line'>   0:     FDisk_partition_scheme                        *1.0 GB     disk0
</span><span class='line'>   1:                       0x53                         150.2 MB   disk0s1
</span><span class='line'>   2:                      Linux                         128.0 MB   disk0s2
</span><span class='line'>   3:                      Linux                         128.0 MB   disk0s3
</span><span class='line'>   4:                      Linux                         128.0 MB   disk0s5
</span><span class='line'>   5:                      Linux                         614.5 MB   disk0s6
</span><span class='line'>/dev/disk1
</span><span class='line'>   #:                       TYPE NAME                    SIZE       IDENTIFIER
</span><span class='line'>   0:      GUID_partition_scheme                        *320.1 GB   disk1
</span><span class='line'>   1:                        EFI                         209.7 MB   disk1s1
</span><span class='line'>   2:                  Apple_HFS Macintosh HD            319.7 GB   disk1s2</span></code></pre></td></tr></table></div></figure>


<p>In my case this identifies the device as <code>/dev/disk0</code>.  Unmount the disk.</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>$ diskutil unmountDisk /dev/disk0
</span><span class='line'>Unmount of all volumes on disk0 was successful</span></code></pre></td></tr></table></div></figure>


<p>Copy the ROM image to the SD as follows:</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>sudo dd if=rom-chumby-falconwing-chumby-starter-image.img of=/dev/disk0 bs=8m</span></code></pre></td></tr></table></div></figure>


<p>Be patient, this takes a while&#8230; like 6 and a half minutes in my case.  Perhaps you would like to amuse youself by looking at <a href="http://squee.icanhascheezburger.com/">pictures of cats</a>?</p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[Chumby Serial Console Under OSX]]></title>
    <link href="http://guy.carpenter.id.au/chumby-oe/blog/2012/02/16/chumby-serial-console-with-osx/"/>
    <updated>2012-02-16T15:06:00+10:00</updated>
    <id>http://guy.carpenter.id.au/chumby-oe/blog/2012/02/16/chumby-serial-console-with-osx</id>
    <content type="html"><![CDATA[<p>This assumes you already have</p>

<ul>
<li>a <a href="http://www.adafruit.com/products/70">3.3v FTDI cable</a> from AdaFruit</li>
<li>modified the cable as per <a href="http://www.ladyada.net/learn/chumby/serial.html">the AdaFruit tutorial</a>.</li>
<li>connected it to the OSX machine</li>
</ul>


<p>To determine the device name:</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
<span class='line-number'>3</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>$ ls /dev/tty.*
</span><span class='line'>/dev/tty.Bluetooth-Modem        /dev/tty.iphone-SerialPort1
</span><span class='line'>/dev/tty.Bluetooth-PDA-Sync     /dev/tty.usbserial-FTF7VKP4</span></code></pre></td></tr></table></div></figure>


<p>The device name starting with <code>tty.usbserial</code> is the one we are looking for.</p>

<p>To make a connection using <code>screen</code> at 152000 baud:</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>screen /dev/tty.usbserial-FTF7VKP4 115200</span></code></pre></td></tr></table></div></figure>


<p>You should now have a full-screen console.  To exit, type <code>ctrl-a ctrl-k</code>.  When you are asked <code>Really kill this window [y/n]</code> type <code>y</code>.</p>
]]></content>
  </entry>
  
  <entry>
    <title type="html"><![CDATA[Stock Firmware Boot Log]]></title>
    <link href="http://guy.carpenter.id.au/chumby-oe/blog/2012/02/16/stock-firmware-boot-log/"/>
    <updated>2012-02-16T15:05:00+10:00</updated>
    <id>http://guy.carpenter.id.au/chumby-oe/blog/2012/02/16/stock-firmware-boot-log</id>
    <content type="html"><![CDATA[<p>For reference, this is a log of the console output when booting a CHB from the
stock kernel image provided on a 1GB microSD card.</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
<span class='line-number'>3</span>
<span class='line-number'>4</span>
<span class='line-number'>5</span>
<span class='line-number'>6</span>
<span class='line-number'>7</span>
<span class='line-number'>8</span>
<span class='line-number'>9</span>
<span class='line-number'>10</span>
<span class='line-number'>11</span>
<span class='line-number'>12</span>
<span class='line-number'>13</span>
<span class='line-number'>14</span>
<span class='line-number'>15</span>
<span class='line-number'>16</span>
<span class='line-number'>17</span>
<span class='line-number'>18</span>
<span class='line-number'>19</span>
<span class='line-number'>20</span>
<span class='line-number'>21</span>
<span class='line-number'>22</span>
<span class='line-number'>23</span>
<span class='line-number'>24</span>
<span class='line-number'>25</span>
<span class='line-number'>26</span>
<span class='line-number'>27</span>
<span class='line-number'>28</span>
<span class='line-number'>29</span>
<span class='line-number'>30</span>
<span class='line-number'>31</span>
<span class='line-number'>32</span>
<span class='line-number'>33</span>
<span class='line-number'>34</span>
<span class='line-number'>35</span>
<span class='line-number'>36</span>
<span class='line-number'>37</span>
<span class='line-number'>38</span>
<span class='line-number'>39</span>
<span class='line-number'>40</span>
<span class='line-number'>41</span>
<span class='line-number'>42</span>
<span class='line-number'>43</span>
<span class='line-number'>44</span>
<span class='line-number'>45</span>
<span class='line-number'>46</span>
<span class='line-number'>47</span>
<span class='line-number'>48</span>
<span class='line-number'>49</span>
<span class='line-number'>50</span>
<span class='line-number'>51</span>
<span class='line-number'>52</span>
<span class='line-number'>53</span>
<span class='line-number'>54</span>
<span class='line-number'>55</span>
<span class='line-number'>56</span>
<span class='line-number'>57</span>
<span class='line-number'>58</span>
<span class='line-number'>59</span>
<span class='line-number'>60</span>
<span class='line-number'>61</span>
<span class='line-number'>62</span>
<span class='line-number'>63</span>
<span class='line-number'>64</span>
<span class='line-number'>65</span>
<span class='line-number'>66</span>
<span class='line-number'>67</span>
<span class='line-number'>68</span>
<span class='line-number'>69</span>
<span class='line-number'>70</span>
<span class='line-number'>71</span>
<span class='line-number'>72</span>
<span class='line-number'>73</span>
<span class='line-number'>74</span>
<span class='line-number'>75</span>
<span class='line-number'>76</span>
<span class='line-number'>77</span>
<span class='line-number'>78</span>
<span class='line-number'>79</span>
<span class='line-number'>80</span>
<span class='line-number'>81</span>
<span class='line-number'>82</span>
<span class='line-number'>83</span>
<span class='line-number'>84</span>
<span class='line-number'>85</span>
<span class='line-number'>86</span>
<span class='line-number'>87</span>
<span class='line-number'>88</span>
<span class='line-number'>89</span>
<span class='line-number'>90</span>
<span class='line-number'>91</span>
<span class='line-number'>92</span>
<span class='line-number'>93</span>
<span class='line-number'>94</span>
<span class='line-number'>95</span>
<span class='line-number'>96</span>
<span class='line-number'>97</span>
<span class='line-number'>98</span>
<span class='line-number'>99</span>
<span class='line-number'>100</span>
<span class='line-number'>101</span>
<span class='line-number'>102</span>
<span class='line-number'>103</span>
<span class='line-number'>104</span>
<span class='line-number'>105</span>
<span class='line-number'>106</span>
<span class='line-number'>107</span>
<span class='line-number'>108</span>
<span class='line-number'>109</span>
<span class='line-number'>110</span>
<span class='line-number'>111</span>
<span class='line-number'>112</span>
<span class='line-number'>113</span>
<span class='line-number'>114</span>
<span class='line-number'>115</span>
<span class='line-number'>116</span>
<span class='line-number'>117</span>
<span class='line-number'>118</span>
<span class='line-number'>119</span>
<span class='line-number'>120</span>
<span class='line-number'>121</span>
<span class='line-number'>122</span>
<span class='line-number'>123</span>
<span class='line-number'>124</span>
<span class='line-number'>125</span>
<span class='line-number'>126</span>
<span class='line-number'>127</span>
<span class='line-number'>128</span>
<span class='line-number'>129</span>
<span class='line-number'>130</span>
<span class='line-number'>131</span>
<span class='line-number'>132</span>
<span class='line-number'>133</span>
<span class='line-number'>134</span>
<span class='line-number'>135</span>
<span class='line-number'>136</span>
<span class='line-number'>137</span>
<span class='line-number'>138</span>
<span class='line-number'>139</span>
<span class='line-number'>140</span>
<span class='line-number'>141</span>
<span class='line-number'>142</span>
<span class='line-number'>143</span>
<span class='line-number'>144</span>
<span class='line-number'>145</span>
<span class='line-number'>146</span>
<span class='line-number'>147</span>
<span class='line-number'>148</span>
<span class='line-number'>149</span>
<span class='line-number'>150</span>
<span class='line-number'>151</span>
<span class='line-number'>152</span>
<span class='line-number'>153</span>
<span class='line-number'>154</span>
<span class='line-number'>155</span>
<span class='line-number'>156</span>
<span class='line-number'>157</span>
<span class='line-number'>158</span>
<span class='line-number'>159</span>
<span class='line-number'>160</span>
<span class='line-number'>161</span>
<span class='line-number'>162</span>
<span class='line-number'>163</span>
<span class='line-number'>164</span>
<span class='line-number'>165</span>
<span class='line-number'>166</span>
<span class='line-number'>167</span>
<span class='line-number'>168</span>
<span class='line-number'>169</span>
<span class='line-number'>170</span>
<span class='line-number'>171</span>
<span class='line-number'>172</span>
<span class='line-number'>173</span>
<span class='line-number'>174</span>
<span class='line-number'>175</span>
<span class='line-number'>176</span>
<span class='line-number'>177</span>
<span class='line-number'>178</span>
<span class='line-number'>179</span>
<span class='line-number'>180</span>
<span class='line-number'>181</span>
<span class='line-number'>182</span>
<span class='line-number'>183</span>
<span class='line-number'>184</span>
<span class='line-number'>185</span>
<span class='line-number'>186</span>
<span class='line-number'>187</span>
<span class='line-number'>188</span>
<span class='line-number'>189</span>
<span class='line-number'>190</span>
<span class='line-number'>191</span>
<span class='line-number'>192</span>
<span class='line-number'>193</span>
<span class='line-number'>194</span>
<span class='line-number'>195</span>
<span class='line-number'>196</span>
<span class='line-number'>197</span>
<span class='line-number'>198</span>
<span class='line-number'>199</span>
<span class='line-number'>200</span>
<span class='line-number'>201</span>
<span class='line-number'>202</span>
<span class='line-number'>203</span>
<span class='line-number'>204</span>
<span class='line-number'>205</span>
<span class='line-number'>206</span>
<span class='line-number'>207</span>
<span class='line-number'>208</span>
<span class='line-number'>209</span>
<span class='line-number'>210</span>
<span class='line-number'>211</span>
<span class='line-number'>212</span>
<span class='line-number'>213</span>
<span class='line-number'>214</span>
<span class='line-number'>215</span>
<span class='line-number'>216</span>
<span class='line-number'>217</span>
<span class='line-number'>218</span>
<span class='line-number'>219</span>
<span class='line-number'>220</span>
<span class='line-number'>221</span>
<span class='line-number'>222</span>
<span class='line-number'>223</span>
<span class='line-number'>224</span>
<span class='line-number'>225</span>
<span class='line-number'>226</span>
<span class='line-number'>227</span>
<span class='line-number'>228</span>
<span class='line-number'>229</span>
<span class='line-number'>230</span>
<span class='line-number'>231</span>
<span class='line-number'>232</span>
<span class='line-number'>233</span>
<span class='line-number'>234</span>
<span class='line-number'>235</span>
<span class='line-number'>236</span>
<span class='line-number'>237</span>
<span class='line-number'>238</span>
<span class='line-number'>239</span>
<span class='line-number'>240</span>
<span class='line-number'>241</span>
<span class='line-number'>242</span>
<span class='line-number'>243</span>
<span class='line-number'>244</span>
<span class='line-number'>245</span>
<span class='line-number'>246</span>
<span class='line-number'>247</span>
<span class='line-number'>248</span>
<span class='line-number'>249</span>
<span class='line-number'>250</span>
<span class='line-number'>251</span>
<span class='line-number'>252</span>
<span class='line-number'>253</span>
<span class='line-number'>254</span>
<span class='line-number'>255</span>
<span class='line-number'>256</span>
<span class='line-number'>257</span>
<span class='line-number'>258</span>
<span class='line-number'>259</span>
<span class='line-number'>260</span>
<span class='line-number'>261</span>
<span class='line-number'>262</span>
<span class='line-number'>263</span>
<span class='line-number'>264</span>
<span class='line-number'>265</span>
<span class='line-number'>266</span>
<span class='line-number'>267</span>
<span class='line-number'>268</span>
<span class='line-number'>269</span>
<span class='line-number'>270</span>
<span class='line-number'>271</span>
<span class='line-number'>272</span>
<span class='line-number'>273</span>
<span class='line-number'>274</span>
<span class='line-number'>275</span>
<span class='line-number'>276</span>
<span class='line-number'>277</span>
<span class='line-number'>278</span>
<span class='line-number'>279</span>
<span class='line-number'>280</span>
<span class='line-number'>281</span>
<span class='line-number'>282</span>
<span class='line-number'>283</span>
<span class='line-number'>284</span>
<span class='line-number'>285</span>
<span class='line-number'>286</span>
<span class='line-number'>287</span>
<span class='line-number'>288</span>
<span class='line-number'>289</span>
<span class='line-number'>290</span>
<span class='line-number'>291</span>
<span class='line-number'>292</span>
<span class='line-number'>293</span>
<span class='line-number'>294</span>
<span class='line-number'>295</span>
<span class='line-number'>296</span>
<span class='line-number'>297</span>
<span class='line-number'>298</span>
<span class='line-number'>299</span>
<span class='line-number'>300</span>
<span class='line-number'>301</span>
<span class='line-number'>302</span>
<span class='line-number'>303</span>
<span class='line-number'>304</span>
<span class='line-number'>305</span>
<span class='line-number'>306</span>
<span class='line-number'>307</span>
<span class='line-number'>308</span>
<span class='line-number'>309</span>
<span class='line-number'>310</span>
<span class='line-number'>311</span>
<span class='line-number'>312</span>
<span class='line-number'>313</span>
<span class='line-number'>314</span>
<span class='line-number'>315</span>
<span class='line-number'>316</span>
<span class='line-number'>317</span>
<span class='line-number'>318</span>
<span class='line-number'>319</span>
<span class='line-number'>320</span>
<span class='line-number'>321</span>
<span class='line-number'>322</span>
<span class='line-number'>323</span>
<span class='line-number'>324</span>
<span class='line-number'>325</span>
<span class='line-number'>326</span>
<span class='line-number'>327</span>
<span class='line-number'>328</span>
<span class='line-number'>329</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>Loading SD image...
</span><span class='line'>Reading 0x00000800 bytes from offset 0x0000b800 to destination 0x45a00000
</span><span class='line'>Skipping 2944 chunks
</span><span class='line'>Reading 0x00034800 bytes from offset 0x0000f800 to destination 0x40808000
</span><span class='line'>Skipping 3968 chunks
</span><span class='line'>Jumping to address 0x40808000:
</span><span class='line'>0x00000000  0f 00 a0 e1 08 00 40 e2  02 0a 40 e2 08 10 9f e5  |......@...@.....|
</span><span class='line'>0x00000010  00 00 81 e5 02 00 00 eb  25 05 00 eb 20 20 00 00  |........%...  ..|
</span><span class='line'>0x00000020  11 b1 11 c1 14 00 9f e5  14 10 9f e5 00 20 a0 e3  |............. ..|
</span><span class='line'>0x00000030  04 20 80 e4 01 00 50 e1  fc ff ff 3a 0e f0 a0 e1  |. ....P....:....|
</span><span class='line'>0x00000040  a0 13 02 00 20 15 02 00  0e f0 a0 e1 0e f0 a0 e1  |.... ...........|
</span><span class='line'>0x00000050  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
</span><span class='line'>0x00000060  04 b0 2d e5 00 b0 8d e2  14 d0 4d e2 64 30 9f e5  |..-.......M.d0..|
</span><span class='line'>0x00000070  00 30 93 e5 10 30 0b e5  58 20 9f e5 00 30 a0 e3  |.0...0..X ...0..|
</span><span class='line'>0x00000080  00 30 82 e5 50 30 9f e5  08 30 0b e5 4c 20 9f e5  |.0..P0...0..L ..|
</span><span class='line'>0x00000090  08 30 1b e5 3f 30 03 e2  00 30 82 e5 40 20 9f e5  |.0..?0...0..@ ..|
</span><span class='line'>0x000000a0  08 30 1b e5 23 33 a0 e1  00 30 82 e5 70 30 a0 e3  |.0..#3...0..p0..|
</span><span class='line'>0x000000b0  0c 30 0b e5 2c 20 9f e5  0c 30 1b e5 00 30 82 e5  |.0.., ...0...0..|
</span><span class='line'>0x000000c0  10 20 9f e5 10 30 1b e5  00 30 82 e5 00 d0 8b e2  |. ...0...0......|
</span><span class='line'>0x000000d0  00 08 bd e8 1e ff 2f e1  30 00 07 80 41 03 00 00  |....../.0...A...|
</span><span class='line'>0x000000e0  28 00 07 80 24 00 07 80  2c 00 07 80 00 48 2d e9  |(...$...,....H-.|
</span><span class='line'>0x000000f0  04 b0 8d e2 08 d0 4d e2  90 20 9f e5 05 36 a0 e3  |......M.. ...6..|
</span><span class='line'>0x00000100  00 30 82 e5 88 20 9f e5  0a 36 a0 e3 00 30 82 e5  |.0... ...6...0..|
</span><span class='line'>0x00000110  80 20 9f e5 00 30 a0 e3  00 30 82 e5 78 20 9f e5  |. ...0...0..x ..|
</span><span class='line'>0x00000120  00 30 a0 e3 00 30 82 e5  cc ff ff eb 6c 30 9f e5  |.0...0......l0..|
</span><span class='line'>0x00000130  00 30 93 e5 08 30 0b e5  08 30 1b e5 10 30 c3 e3  |.0...0...0...0..|
</span><span class='line'>0x00000140  08 30 0b e5 54 20 9f e5  08 30 1b e5 00 30 82 e5  |.0..T ...0...0..|
</span><span class='line'>0x00000150  4c 30 9f e5 08 30 0b e5  38 20 9f e5 08 30 1b e5  |L0...0..8 ...0..|
</span><span class='line'>0x00000160  00 30 82 e5 34 30 9f e5  00 30 93 e5 08 30 0b e5  |.0..40...0...0..|
</span><span class='line'>0x00000170  08 30 1b e5 10 30 c3 e3  08 30 0b e5 1c 20 9f e5  |.0...0...0... ..|
</span><span class='line'>0x00000180  08 30 1b e5 00 30 82 e5  04 d0 4b e2 00 88 bd e8  |.0...0....K.....|
</span><span class='line'>0x00000190  38 81 01 80 34 81 01 80  30 00 07 80 38 00 07 80  |8...4...0...8...|
</span><span class='line'>0x000001a0  2c 00 07 80 01 03 00 00  04 b0 2d e5 00 b0 8d e2  |,.........-.....|
</span><span class='line'>0x000001b0  18 30 9f e5 00 30 93 e5  80 30 03 e2 00 00 53 e3  |.0...0...0....S.|
</span><span class='line'>0x000001c0  fa ff ff 0a 00 d0 8b e2  00 08 bd e8 1e ff 2f e1  |............../.|
</span><span class='line'>0x000001d0  18 00 07 80 30 48 2d e9  0c b0 8d e2 f4 40 9f e5  |....0H-......@..|
</span><span class='line'>0x000001e0  04 40 8f e0 f0 30 9f e5  03 30 84 e0 03 00 a0 e1  |.@...0...0......|
</span><span class='line'>0x000001f0  5e 00 00 eb e4 30 9f e5  00 30 93 e5 03 00 a0 e1  |^....0...0......|
</span><span class='line'>
</span><span class='line'>Go!
</span><span class='line'>Hardware version: 0x00000009
</span><span class='line'>Screen pressed: 0
</span><span class='line'>Setting up LCD to point at 0x44844000
</span><span class='line'>Setting up LCD to point at 0x44844000
</span><span class='line'>Reading 0x00000800 bytes from offset 0x0000b800 to destination 0x45a00000
</span><span class='line'>Skipping 2944 chunks
</span><span class='line'>    Comparing block [boot] with img1...
</span><span class='line'>    Comparing block [img1] with img1... Found!
</span><span class='line'>Reading 0x00025800 bytes from offset 0x00044000 to destination 0x44844000
</span><span class='line'>Skipping 17408 chunks
</span><span class='line'>
</span><span class='line'>boot&gt; shell
</span><span class='line'>
</span><span class='line'>
</span><span class='line'>
</span><span class='line'>Chumby bootloader console v1.0
</span><span class='line'>Booting in 2 seconds...
</span><span class='line'>Press any key to enter shell... 0
</span><span class='line'>
</span><span class='line'>boot&gt; regutil -w HW_RTC_WATCHDOG 0x00004e20
</span><span class='line'>Setting 0x8005c050: 0xffffffff -&gt; 0x00004e20 ok
</span><span class='line'>
</span><span class='line'>boot&gt; regutil -w HW_RTC_CTRL_SET 0x00000010
</span><span class='line'>Setting 0x8005c004: 0x00000008 -&gt; 0x00000018 ok
</span><span class='line'>
</span><span class='line'>boot&gt; regutil -w HW_EMI_CTRL 0x1c444040
</span><span class='line'>Setting 0x80020000: 0x1c884040 -&gt; 0x1c444040 ok
</span><span class='line'>
</span><span class='line'>boot&gt; regutil -w HW_POWER_BATTMONITOR 0x01ec0414
</span><span class='line'>Setting 0x800440e0: 0x01d10614 -&gt; 0x01ec0414 ok
</span><span class='line'>
</span><span class='line'>boot&gt; regutil -w HW_POWER_5VCTRL_CLR 0x00000080
</span><span class='line'>Setting 0x80044018: 0x0403f193 -&gt; 0x0403f113 ok
</span><span class='line'>
</span><span class='line'>boot&gt; regutil -w HW_POWER_MINPWR_SET 0x00001000
</span><span class='line'>Setting 0x80044024: 0x00000040 -&gt; 0x00001040 ok
</span><span class='line'>
</span><span class='line'>boot&gt; regutil -w HW_PINCTRL_MUXSEL1_SET 0x03300000
</span><span class='line'>Setting 0x80018114: 0x0fffffff -&gt; 0x0fffffff ok
</span><span class='line'>
</span><span class='line'>boot&gt; regutil -w HW_PINCTRL_DOUT0_CLR 0x24000000
</span><span class='line'>Setting 0x80018508: 0x00000000 -&gt; 0x00000000 ok
</span><span class='line'>
</span><span class='line'>boot&gt; regutil -w HW_PINCTRL_DOE0_SET 0x24000000
</span><span class='line'>Setting 0x80018704: 0x00000000 -&gt; 0x24000000 ok
</span><span class='line'>
</span><span class='line'>boot&gt; regutil -w HW_PINCTRL_DOUT0_CLR 0x24000000
</span><span class='line'>Setting 0x80018508: 0x00000000 -&gt; 0x00000000 ok
</span><span class='line'>
</span><span class='line'>boot&gt; regutil -w HW_PINCTRL_DOUT0_SET 0x20000000
</span><span class='line'>Setting 0x80018504: 0x00000000 -&gt; 0x20000000 ok
</span><span class='line'>
</span><span class='line'>boot&gt; regutil -w HW_PINCTRL_DOUT0_SET 0x04000000
</span><span class='line'>Setting 0x80018504: 0x20000000 -&gt; 0x24000000 ok
</span><span class='line'>
</span><span class='line'>boot&gt; 
</span><span class='line'>    Comparing block [boot] with img2...
</span><span class='line'>    Comparing block [img1] with img2...
</span><span class='line'>    Comparing block [img2] with img2... Found!
</span><span class='line'>Reading 0x00025800 bytes from offset 0x00069800 to destination 0x44844000
</span><span class='line'>Skipping 27008 chunks
</span><span class='line'>
</span><span class='line'>boot&gt; load krnA 0x40008000
</span><span class='line'>    Comparing block [boot] with krnA...
</span><span class='line'>    Comparing block [img1] with krnA...
</span><span class='line'>    Comparing block [img2] with krnA...
</span><span class='line'>    Comparing block [img3] with krnA...
</span><span class='line'>    Comparing block [img4] with krnA...
</span><span class='line'>    Comparing block [img5] with krnA...
</span><span class='line'>    Comparing block [krnA] with krnA... Found!
</span><span class='line'>Reading 0x00400000 bytes from offset 0x000ff800 to destination 0x40008000
</span><span class='line'>Skipping 65408 chunks
</span><span class='line'>
</span><span class='line'>boot&gt; linux 0x40008000 "console=ttyAM0,115200 init=/linuxrc root=/dev/mmcblk0p2 rootfstype=ext3 ro rootwait chumbyrev=** ssp1=mmc sysrq_always_enabled logo.brand=BBBBBBBBBBBB"
</span><span class='line'>Going to run linux at offset 0x40008000 with cmdline console=ttyAM0,115200 init=/linuxrc root=/dev/mmcblk0p2 rootfstype=ext3 ro rootwait chumbyrev=09 ssp1=mmc sysrq_always_enabled logo.brand=chumby
</span><span class='line'>Uncompressing Linux.............................................................................................................................................. done, booting the kernel.
</span><span class='line'>[    0.000000] Linux version 2.6.28-chumby (builder@stormbuild) (gcc version 4.3.2 (Sourcery G++ Lite 2008q3-72) ) #302 PREEMPT Wed Jul 28 14:40:46 PDT 2010
</span><span class='line'>[    0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
</span><span class='line'>[    0.000000] CPU: VIVT data cache, VIVT instruction cache
</span><span class='line'>[    0.000000] Machine: STMP378X
</span><span class='line'>[    0.000000] Memory policy: ECC disabled, Data cache writeback
</span><span class='line'>[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 16256
</span><span class='line'>[    0.000000] Kernel command line: console=ttyAM0,115200 init=/linuxrc root=/dev/mmcblk0p2 rootfstype=ext3 ro rootwait chumbyrev=09 ssp1=mmc sysrq_always_enabled logo.brand=chumby
</span><span class='line'>[    0.000000] Detected chumby version 9 (from str 09)
</span><span class='line'>[    0.000000] debug: sysrq always enabled.
</span><span class='line'>[    0.000000] Unknown boot option `logo.brand=chumby': ignoring
</span><span class='line'>[    0.000000] PID hash table entries: 256 (order: 8, 1024 bytes)
</span><span class='line'>[    0.000000] Console: colour dummy device 80x30
</span><span class='line'>[    0.000000] console [ttyAM0] enabled
</span><span class='line'>[    0.010000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
</span><span class='line'>[    0.010000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
</span><span class='line'>[    0.020000] Memory: 64MB = 64MB total
</span><span class='line'>[    0.030000] Memory: 59932KB available (4116K code, 699K data, 120K init)
</span><span class='line'>[    0.030000] SLUB: Genslabs=12, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
</span><span class='line'>[    0.040000] Calibrating delay loop... 226.91 BogoMIPS (lpj=1134592)
</span><span class='line'>[    0.280000] Security Framework initialized
</span><span class='line'>[    0.280000] Mount-cache hash table entries: 512
</span><span class='line'>[    0.280000] CPU: Testing write buffer coherency: ok
</span><span class='line'>[    0.290000] net_namespace: 708 bytes
</span><span class='line'>[    0.300000] regulator: core version 0.5
</span><span class='line'>[    0.300000] NET: Registered protocol family 16
</span><span class='line'>[    0.320000] regulator: vddd: 800 &lt;--&gt; 1575 mV fast normal 
</span><span class='line'>[    0.330000] regulator: vddd_bo: 800 &lt;--&gt; 1575 mV fast normal 
</span><span class='line'>[    0.330000] regulator: vdda: 1500 &lt;--&gt; 2275 mV fast normal 
</span><span class='line'>[    0.340000] regulator: vddio: 2800 &lt;--&gt; 3575 mV fast normal 
</span><span class='line'>[    0.340000] regulator: overall_current: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.350000] regulator: stmp3xxx-fb-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.350000] regulator: stmp3xxx-bl-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.360000] regulator: stmp3xxx_ts-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.360000] regulator: stmp37xx-dbguart-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.370000] regulator: stmp3xxx_wdt-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.370000] regulator: stmp3xxx-rtc-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.380000] regulator: stmp3xxx-rotdec-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.380000] regulator: i2c_stmp-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.390000] regulator: stmp3xxx-persistent-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.390000] regulator: stmp3xxx-dcp-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.400000] regulator: stmp3xxx-battery-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.400000] regulator: mmc_ssp-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.410000] regulator: mmc_ssp-2: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.410000] regulator: charger-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.420000] regulator: power-test-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.420000] regulator: cpufreq-1: 0 &lt;--&gt; 2147483 mA fast normal 
</span><span class='line'>[    0.430000] stmp378x_devb.c - stmp378x_devb_init():388 - Adding 15 platform-specific devices
</span><span class='line'>[    0.450000] Initialized chumby GPIO IRQ router
</span><span class='line'>[    0.500000] chumbyfbfw.c - chumbyfwfb_probe():1255 - resolution 720x480, bpp 2
</span><span class='line'>[    0.510000] chumbyfbfw.c - get_max_memsize():1060 - get_max_memsize: mem_size now 1382400 (720 x 480 x 16)
</span><span class='line'>[    0.510000] chumbyfbfw.c - get_max_memsize():1060 - get_max_memsize: mem_size now 1382400 (320 x 240 x 16)
</span><span class='line'>[    0.520000] chumbyfbfw.c - get_max_memsize():1060 - get_max_memsize: mem_size now 1658880 (720 x 576 x 16)
</span><span class='line'>[    0.520000] chumbyfbfw.c - chumbyfwfb_probe():1268 - memory to allocate for screen: 1658880
</span><span class='line'>[    0.530000] chumbyfbfw.c - chumbyfwfb_probe():1277 - allocated screen at ff600000:0x43a00000
</span><span class='line'>[    0.540000] chumbyfbfw.c - chumbyfwfb_probe():1326 - memory to allocate for plane 0: 1658880
</span><span class='line'>[    0.550000] chumbyfbfw.c - chumbyfwfb_probe():1336 - allocated at ff795000:0x43c00000
</span><span class='line'>[    0.560000] chumbyfbfw.c - chumbyfwfb_probe():1326 - memory to allocate for plane 1: 1658880
</span><span class='line'>[    0.570000] chumbyfbfw.c - chumbyfwfb_probe():1336 - allocated at ff92a000:0x43e00000
</span><span class='line'>[    0.580000] chumbyfbfw.c - chumbyfwfb_probe():1326 - memory to allocate for plane 2: 307200
</span><span class='line'>[    0.580000] chumbyfbfw.c - chumbyfwfb_probe():1336 - allocated at ffabf000:0x43900000
</span><span class='line'>[    0.590000] Going to copy splash image from 44844000 (153600 bytes) to ff600000 (not 43a00000)
</span><span class='line'>[    0.600000] chumbyfbfw.c - pxp_setup():1124 - Pointing S0 at 43c00000
</span><span class='line'>[    0.610000] stmp37xx-dbguart.0: ttyAM0 at MMIO 0xf0070000 (irq = 0) is a Debug UART
</span><span class='line'>[    0.690000] NET: Registered protocol family 2
</span><span class='line'>[    0.810000] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
</span><span class='line'>[    0.820000] TCP established hash table entries: 2048 (order: 2, 16384 bytes)
</span><span class='line'>[    0.820000] TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
</span><span class='line'>[    0.830000] TCP: Hash tables configured (established 2048 bind 2048)
</span><span class='line'>[    0.840000] TCP reno registered
</span><span class='line'>[    0.870000] NET: Registered protocol family 1
</span><span class='line'>[    0.890000] ashmem: initialized
</span><span class='line'>[    0.900000] Registering unionfs 2.5.2 (for 2.6.28.10)
</span><span class='line'>[    0.900000] NTFS driver 2.1.29 [Flags: R/O].
</span><span class='line'>[    0.910000] fuse init (API version 7.10)
</span><span class='line'>[    0.920000] msgmni has been set to 117
</span><span class='line'>[    0.930000] alg: No test for stdrng (krng)
</span><span class='line'>[    0.940000] cryptodev: driver loaded.
</span><span class='line'>[    0.940000] io scheduler noop registered (default)
</span><span class='line'>[    1.040000] logger: created 64K log 'log_main'
</span><span class='line'>[    1.050000] logger: created 256K log 'log_events'
</span><span class='line'>[    1.050000] logger: created 64K log 'log_radio'
</span><span class='line'>[    1.060000] STMP3xxx RTC driver v1.0 hardware v2.0.0
</span><span class='line'>[    1.060000] stmp3xxx-rtc stmp3xxx-rtc: rtc core: registered stmp3xxx-rtc as rtc0
</span><span class='line'>[    1.090000] ddi_bc_Init: success
</span><span class='line'>[    1.090000] stmp3xxx-battery stmp3xxx-battery.0: bc_sm_restart: no battery present
</span><span class='line'>[    1.100000] power/linux.c - bc_sm_restart():982 - Returning from sm_restart()
</span><span class='line'>[    1.430000] stmp3xxx-dcp stmp3xxx-dcp: DCP crypto enabled.!
</span><span class='line'>[    1.440000] Advanced Linux Sound Architecture Driver Version 1.0.18rc3.
</span><span class='line'>[    1.450000] ASoC version 0.13.2
</span><span class='line'>[    1.460000] STMP378X ADC/DAC Audio Codec 0.1
</span><span class='line'>[    1.460000] asoc: stmp378x adc/dac &lt;-&gt; stmp3xxx adc/dac mapping ok
</span><span class='line'>[    1.480000] ALSA device list:
</span><span class='line'>[    1.480000]   #0: STMP3780 Devb (stmp378x adc/dac)
</span><span class='line'>[    1.490000] oprofile: using timer interrupt.
</span><span class='line'>[    1.490000] nf_conntrack version 0.5.0 (1024 buckets, 4096 max)
</span><span class='line'>[    1.500000] CONFIG_NF_CT_ACCT is deprecated and will be removed soon. Please use
</span><span class='line'>[    1.510000] nf_conntrack.acct=1 kernel paramater, acct=1 nf_conntrack module option or
</span><span class='line'>[    1.510000] sysctl net.netfilter.nf_conntrack_acct=1 to enable it.
</span><span class='line'>[    1.530000] ip_tables: (C) 2000-2006 Netfilter Core Team
</span><span class='line'>[    1.540000] arp_tables: (C) 2002 David S. Miller
</span><span class='line'>[    1.540000] TCP cubic registered
</span><span class='line'>[    1.540000] NET: Registered protocol family 17
</span><span class='line'>[    1.550000] mmc0: new SD card at address 0002
</span><span class='line'>[    1.560000] RPC: Registered udp transport module.
</span><span class='line'>[    1.560000] RPC: Registered tcp transport module.
</span><span class='line'>[    1.570000] mmcblk0: mmc0:0002 00000 971 MiB 
</span><span class='line'>[    1.580000]  mmcblk0: p1 p2 p3 p4 &lt; p5 p6 &gt;
</span><span class='line'>[    1.590000] stmp3xxx-rtc stmp3xxx-rtc: setting system clock to 1970-01-01 00:02:20 UTC (140)
</span><span class='line'>[    1.710000] EXT3-fs warning: feature flags set on rev 0 fs, running e2fsck is recommended
</span><span class='line'>[    1.720000] EXT3-fs: mounted filesystem with ordered data mode.
</span><span class='line'>[    1.730000] VFS: Mounted root (ext3 filesystem) readonly.
</span><span class='line'>[    1.730000] Freeing init memory: 120K
</span><span class='line'>[    1.740000] kjournald starting.  Commit interval 5 seconds
</span><span class='line'>/linuxrc v0.42 $Rev: 23680 $ pid=1
</span><span class='line'>Parsing /etc/init.d/linuxrc.config
</span><span class='line'>Executing scripted actions (including 11 setenv statements)
</span><span class='line'>[MOUNT] tmpfs (type tmpfs) on /tmp (mode=755)
</span><span class='line'>[MOUNT] proc (type proc) on /proc
</span><span class='line'>[MOUNT] sysfs (type sysfs) on /sys
</span><span class='line'>Scripted execution complete, 3 actions with 0 failures
</span><span class='line'>environ[0]: HOME=/
</span><span class='line'>environ[1]: TERM=linux
</span><span class='line'>environ[2]: ssp1=mmc
</span><span class='line'>Adding /psp/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/chumby/scripts
</span><span class='line'>[SETENV] PATH=/usr/bin:/bin:/usr/sbin:/usr/local/sbin:/sbin:/usr/chumby/scripts
</span><span class='line'>[SETENV] CNPLATFORM=falconwing
</span><span class='line'>[SETENV] CONFIGNAME=falconwing
</span><span class='line'>[SETENV] VIDEO_RES=320x240
</span><span class='line'>[SETENV] VIDEO_X_RES=320
</span><span class='line'>[SETENV] VIDEO_Y_RES=240
</span><span class='line'>[SETENV] HAS_CP=1
</span><span class='line'>[SETENV] LANGUAGE=en_US
</span><span class='line'>[SETENV] GST_PLUGIN_PATH=/lib/gstreamer-0.10/
</span><span class='line'>[SETENV] CAMLIBS=/lib/libgphoto2-2.4.3
</span><span class='line'>[SETENV] IOLIBS=/lib/libgphoto2_port-0.8.0
</span><span class='line'>Starting /sbin/init (cwd=/) (envcount=15)
</span><span class='line'>init started: BusyBox v1.16.0 (2010-07-28 15:14:10 PDT)
</span><span class='line'>imgtool 1.22 (built for falconwing)
</span><span class='line'>Drawing image /bitmap/320x240/chumby_logo.bin.jpg
</span><span class='line'>Opening output /dev/fb0 fmt=0
</span><span class='line'>fb handle = 4
</span><span class='line'>Displaying rows from 0 to 239 inclusive
</span><span class='line'>Closing frame buffer
</span><span class='line'>Welcome to Falconwing
</span><span class='line'>
</span><span class='line'>can't open /dev/tty0: No such file or directory
</span><span class='line'>/etc/init.d/rcS.background: line 18: can't create /psp/branding: Read-only file system
</span><span class='line'>Setting 0x8005c078: 0x80000000 -&gt; 0x80000000 ok
</span><span class='line'>e2fsck 1.41.5 (23-Apr-2009)
</span><span class='line'>/dev/mmcblk0p5: clean, 48/256 files, 10533/124997 blocks
</span><span class='line'>[    3.290000] kjournald starting.  Commit interval 5 seconds
</span><span class='line'>[    3.310000] EXT3 FS on mmcblk0p5, internal journal
</span><span class='line'>[    3.310000] EXT3-fs: mounted filesystem with journal data mode.
</span><span class='line'>e2fsck 1.41.5 (23-Apr-2009)
</span><span class='line'>/dev/mmcblk0p6: clean, 12/37520 files, 6577/150022 blocks
</span><span class='line'>[    3.500000] kjournald starting.  Commit interval 5 seconds
</span><span class='line'>[    3.510000] EXT3 FS on mmcblk0p6, internal journal
</span><span class='line'>[    3.510000] EXT3-fs: mounted filesystem with ordered data mode.
</span><span class='line'>can't open /dev/tty0: No such file or directory
</span><span class='line'>can't open /dev/tty0: No such file or directory
</span><span class='line'>[    4.890000] Chumby bend sensor driver version 2.3-Falconwing initializing (scross@chumby.com)...
</span><span class='line'>[    4.900000] input: bend-sensor as /devices/platform/bend-sensor/input/input0
</span><span class='line'>can't open /dev/tty0: No such file or directory
</span><span class='line'>can't open /dev/tty0: No such file or directory
</span><span class='line'>can't open /dev/tty0: No such file or directory
</span><span class='line'>[    8.620000] input: STMP3XXX touchscreen as /devices/virtual/input/input1
</span><span class='line'>can't open /dev/tty0: No such file or directory
</span><span class='line'>[   10.110000] mice: PS/2 mouse device common for all mice
</span><span class='line'>Setting 0x80018508: 0x24011000 -&gt; 0x20011000 ok
</span><span class='line'>Setting 0x80018504: 0x20011000 -&gt; 0x24011000 ok
</span><span class='line'>[   13.300000] usbcore: registered new interface driver usbfs
</span><span class='line'>[   13.320000] usbcore: registered new interface driver hub
</span><span class='line'>[   13.340000] usbcore: registered new device driver usb
</span><span class='line'>[   13.450000] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
</span><span class='line'>[   13.450000] fsl-ehci fsl-ehci: Freescale On-Chip EHCI Host Controller
</span><span class='line'>[   13.470000] fsl-ehci fsl-ehci: new USB bus registered, assigned bus number 1
</span><span class='line'>[   14.590000] fsl-ehci fsl-ehci: irq 11, io mem 0xf0080000
</span><span class='line'>[   14.610000] fsl-ehci fsl-ehci: USB 2.0 started, EHCI 1.00
</span><span class='line'>[   14.620000] usb usb1: configuration #1 chosen from 1 choice
</span><span class='line'>[   14.630000] hub 1-0:1.0: USB hub found
</span><span class='line'>[   14.630000] hub 1-0:1.0: 1 port detected
</span><span class='line'>[   14.950000] usb 1-1: new high speed USB device using fsl-ehci and address 2
</span><span class='line'>[   15.120000] usb 1-1: configuration #1 chosen from 1 choice
</span><span class='line'>[   15.140000] hub 1-1:1.0: USB hub found
</span><span class='line'>[   15.140000] hub 1-1:1.0: 4 ports detected
</span><span class='line'>Setting 0x80018200: 0x00000000 -&gt; 0x00000000 ok
</span><span class='line'>Setting 0x80018210: 0x00000000 -&gt; 0x00000000 ok
</span><span class='line'>Setting 0x80018220: 0x00000000 -&gt; 0x00000000 ok
</span><span class='line'>Setting 0x80018230: 0x00000000 -&gt; 0x00000000 ok
</span><span class='line'>Setting 0x80018240: 0x00000000 -&gt; 0x00000000 ok
</span><span class='line'>Setting 0x80018250: 0x00000000 -&gt; 0x00000000 ok
</span><span class='line'>Setting 0x80018260: 0x00000000 -&gt; 0x00000000 ok
</span><span class='line'>Setting 0x80018270: 0x00000000 -&gt; 0x00000000 ok
</span><span class='line'>Setting 0x80018280: 0x01111111 -&gt; 0x00000000 ok
</span><span class='line'>Setting 0x80018290: 0x33333330 -&gt; 0x11111110 ok
</span><span class='line'>Setting 0x800182a0: 0x33333333 -&gt; 0x11111111 ok
</span><span class='line'>Setting 0x800182b0: 0x33300333 -&gt; 0x11111111 ok
</span><span class='line'>Setting 0x800182c0: 0x33333333 -&gt; 0x11111111 ok
</span><span class='line'>Setting 0x800182d0: 0x33333333 -&gt; 0x11111111 ok
</span><span class='line'>Setting 0x800182e0: 0x00333333 -&gt; 0x00111111 ok
</span><span class='line'>[   22.210000] i2c /dev entries driver
</span><span class='line'>FATAL: Module snd_soc_stmp3780_devb not found.
</span><span class='line'>[   23.020000] Chumby timerx[2] driver version 3.0-Falconwing initializing (bunnie@chumby.com)... show me your jiffies!!!
</span><span class='line'>[   25.970000] input: stmp3xxx-rotdec as /devices/virtual/input/input2
</span><span class='line'>[   27.320000] NET: Registered protocol family 10
</span><span class='line'>Starting chumbhowld service
</span><span class='line'>Started chumbhowld 
</span><span class='line'>Adobe FlashLite 3.1.7 Release (Version 9,1,122,0)- Chumby Industries (version 9 build 112-3320 [GCC 4.3.2])
</span><span class='line'>Portions copyright (C) 2005-2010 Chumby Industries, Inc.
</span><span class='line'>Built for: falconwing; Features: Video ALSA ARM-optimizations
</span><span class='line'>Build time: Wed 28Jul2010 1454
</span><span class='line'>GetRegisteredInstancePid(/var/run/chumbyflashplayer.pid) returned 0 - no other instance is running
</span><span class='line'>rcS completed at Wed Dec 31 16:02:48 PST 1969</span></code></pre></td></tr></table></div></figure>


<p>At this point hit enter to get the shell prompt.</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>chumby-:/ # </span></code></pre></td></tr></table></div></figure>


<p>Here&#8217;s a dump of the shutdown output:</p>

<figure class='code'><div class="highlight"><table><tr><td class="gutter"><pre class="line-numbers"><span class='line-number'>1</span>
<span class='line-number'>2</span>
<span class='line-number'>3</span>
<span class='line-number'>4</span>
<span class='line-number'>5</span>
<span class='line-number'>6</span>
<span class='line-number'>7</span>
<span class='line-number'>8</span>
<span class='line-number'>9</span>
<span class='line-number'>10</span>
<span class='line-number'>11</span>
<span class='line-number'>12</span>
<span class='line-number'>13</span>
<span class='line-number'>14</span>
<span class='line-number'>15</span>
<span class='line-number'>16</span>
<span class='line-number'>17</span>
<span class='line-number'>18</span>
<span class='line-number'>19</span>
<span class='line-number'>20</span>
<span class='line-number'>21</span>
<span class='line-number'>22</span>
<span class='line-number'>23</span>
<span class='line-number'>24</span>
<span class='line-number'>25</span>
<span class='line-number'>26</span>
<span class='line-number'>27</span>
<span class='line-number'>28</span>
<span class='line-number'>29</span>
</pre></td><td class='code'><pre><code class=''><span class='line'>chumby-:/ # shutdown -h now
</span><span class='line'>System is shutting down now
</span><span class='line'>root: Created /tmp/flashplayer_notrunning_once script
</span><span class='line'>Switching to fb0
</span><span class='line'>killall: headphone_mgr: no process killed
</span><span class='line'>root: shutting down via cpi.sh
</span><span class='line'>cpi.sh -s failed - use reset switch to power down
</span><span class='line'>chumby-:/ # killall: ntpd: no process killed
</span><span class='line'>umount: none busy - remounted read-only
</span><span class='line'>umount: can't remount none read-only
</span><span class='line'>umount: /etc/mtab: No such file or directory
</span><span class='line'>umount: tmpfs busy - remounted read-only
</span><span class='line'>umount: /etc/mtab: No such file or directory
</span><span class='line'>umount: /etc/mtab: No such file or directory
</span><span class='line'>The system is going down NOW!
</span><span class='line'>Sent SIGTERM to all processes
</span><span class='line'>Sent SIGKILL to all processes
</span><span class='line'>Requesting system poweroff
</span><span class='line'>[ 1807.570000] power/linux.c - stmp3xxx_bat_shutdown():1450 - Not shutting down battery.  Letting the battery charger run.
</span><span class='line'>[ 1807.580000] Power down.
</span><span class='line'>[ 1807.580000] &gt;&gt;&gt; Detected power switch pressed.  Turning off.
</span><span class='line'>[ 1807.590000] &gt;&gt;&gt; A note to those of you watching at home:
</span><span class='line'>[ 1807.590000] &gt;&gt;&gt; We're going to kill all processes and unmount all filesystems.
</span><span class='line'>[ 1807.600000] &gt;&gt;&gt; Then we'll sit here charging the battery.
</span><span class='line'>[ 1807.610000] &gt;&gt;&gt; If you press the power button again, we'll reboot.
</span><span class='line'>[ 1807.610000] &gt;&gt;&gt; If you unplug this device, we'll power off for real.
</span><span class='line'>[ 1807.620000] &gt;&gt;&gt; But for now, we'll just make the device look like it's off.
</span><span class='line'>[ 1808.730000] Error unmounting /mnt/storage: -2
</span><span class='line'>[ 1808.730000] Error unmounting /psp: -22</span></code></pre></td></tr></table></div></figure>

]]></content>
  </entry>
  
</feed>
