Categories
embedded systems English articles OpenWrt qi-hardware Tech

OpenWrt on the Ben NanoNote!

The Ben NanoNote I got a few weeks ago by qi-hardware is now running OpenWrt!

The patch, published by the manufacturer ingenic itself, which provides linux support for their SoC’s (System-on-a-Chip’s), is roughly cleaned up, unneeded stuff is cleared out and it’s levelled up to 2.6.25.20 (originally the patch refers to 2.6.24.3) and – running!

That’s the good news…

…now the bad ones:

  • The mentioned patch by ingenic contains not only linux kernel source but also binary data – ELF-formatted binary code for the mips instruction set! For more details you may want to look at my post on the developer-mailinglist (http://lists.qi-hardware.com/pipermail/developer/2009-August/000162.html). They patch in a proprietary mtdblock-replacement which seems to differ to the original in nand-flash error correction and handling of bad blocks. That’s a no-go – not just because of the reaosons of open hardware/software but also as not being able to forward the patchset to a newer kernel version.
  • Strange problems appear with the MMC / SD-card hardware. Randomly the hardware does not recognize the card correctly (more precisely, the card is recognized but not the partition table why the kernel panics because of not finding it’s given root device). Spent days not on this issue, but weren’t able to figure out yet what’s causing this kind of behaviour 🙁

What’s next?

  • get this bloody MMC/SD-card issue fixed
  • get the NAND flash supported – either we get the sourcecode of the modified mtdblock driver or get it supported elsewise
  • further cleanups of the existing patchset
  • level up the patchset to a recent kernel version (2.6.31 would be best – much stuff went upstream / is now handled nativly, e.g. nand-chips > 4 GB don’t need the ingenic hacks anymore, also there’s a new interface for gpio-based keyboards which should make it pretty easy to write a keyboard-driver and allows us to get rid of the existing stuff).
  • (re)writing some (of the) drivers (e.g. MMC/SD-card support and support for SDIO, keyboard-driver as mentioned above)

I was in Hamburg this weekend meeting Lars for a hack-session on the Ben NanoNote. He’s also part of the OpenWrt-team and now another proud owner of such a device 🙂

Besides his ongoing contributions to the Openmoko-project, hopefully he will also help us* spending some of his time on the NanoNote – thank’s a lot at this point for your great work and efforts!

*i’m happy to announce that last week I “became an official developer of the [qi-]core team” with “focus
on the OpenWrt integration” – let’s see what will happen 🙂