Linux 2.6.38 on Efika MX Smartbook

Some time ago I updated my Efika MX Smartbook to run latest natty (which it was running since I got it) and then to newer kernel: 2.6.38 version.

Most of informations how to do it I got from guys sitting on #efika irc channel. There are 3 git repositories involved:

Fetch/checkout all three into separate directories.

First we need sdma firmware. Do not ask me what it is — you will need it to build kernel. Cd into directory, call “make” then copy sdma-imx51-to3.bin into firmware directory of linux kernel sources.

Second step is applying patches to kernel. Cd into linux dir, checkout a10aabd5e313ec6481569be20d120191692b4ca6 revision (this is which I used) and call:

QUILT_PATCHES=../rtp-patches/ quilt push -a

This will apply all required patches. Grab my kernel configuration and store it under .config name. Feel free to make some changes into it. Then build kernel.

How to get kernel to device is left for readers — if you know how to build then you are expected to know that.

Next step (we nearly finished) is to boot kernel. So reboot machine and watch how it gets up and running. With my kernel config you will probably see nothing… Cause I moved lot of things into modules. Edit /etc/modules file and add:

  • snd-soc-imx-3stack-sgtl5000 — sound driver
  • efikasb_rfkill — needed for wifi to work
  • mx5fb — framebuffer

Do not expect that 2d/3d stuff which works on official images (with non-free packages) will work. But if you will check modules then you can also look what is in NOR flash (but better do not play with it):

hrw@efika:~$ cat /proc/mtd
dev: size erasesize name
mtd0: 00040000 00001000 “u-boot”
mtd1: 00010000 00001000 “config”
mtd2: 00010000 00001000 “test”

Is it worth playing? Yes and no. Good is that kernel is more fresh then which was installed, but also it lost some 2d/3d acceleration support. But who knows… Maybe one day :)

3 thoughts on “Linux 2.6.38 on Efika MX Smartbook

  1. William Cohen

    When using the patch set I found that I needed to get the matching set of patches for the kernel commit a10aabd5e313ec6481569be20d120191692b4ca6.

    For the rtp’s patchset I needed to do:

    git checkout 796261df05180207bf2af2204968a3283c43dca4

    What branch of the kernel is this patch set following? It would be nice to be able to move to newer versions of the kernel.

  2. William Cohen

    Found the appropriate branch kernel branch:

    git checkout origin/for-next

    The current set of patches apply cleanly to this: $ QUILT_PATCHES=../rtp-patches/ quilt push -a File series fully applied, ends at patch ../rtp-patches//imx-sdma-sound-mx353ds-mx51_babbage.patch

Comments are closed.

No Trackbacks.