Showing posts with label openembedded. Show all posts
Showing posts with label openembedded. Show all posts

Friday, January 30, 2009

Zipit2 linux 2.6.29-rc3 support

Here is a package to support the 2.6.29rc3 kernel.
This package needs to be extracted into your openembedded/packages/linux folder.

The package contains patches for sound, keyboard, backlights (both of them!) and pretty much everything to date. Obviously this is highly experimental, but give it a go if you are feeling adventurous! :)

Getting there!
-(e)

Wednesday, January 28, 2009

Original Z2 kernel support in OpenEmbedded

In my last post I provided a setup system for Zipit2 OpenEmbedded development.
As I mentioned in that post, only my test kernel 2.6.27.10 was supported. I realised that until full kernel support is available, people would probably like to build the old kernel to play with.

So here is a package that will provide 2.6.21.1 kernel support.
The setup package creates a configuration that will leverage OE's package version support to build the latest kernel, so in order to use this kernel you will need to navigate to your packages/linux folder and rename the linux-zipit2-2.6.27.10.bb file to something else e.g. linux-zipit2-2.6.27.10.bb_.

Once you have done that, extract the contents of the archive to the packages/linux folder and:
bitbake linux-zipit2

It is possible to specify a prefered kernel version in your local.conf file to override this behaviour but I do not have the exact syntax available. If anyone would like to comment and leave instructions on how to achieve this override, that would be great.

Have fun! Shortly I will be adding a package for cutting edge 2.6.29 support in the quest to achieve mainline acceptance.

edit:

Like a total fool I forgot to mention that you will need to add the checksums for the kernel into checksums.ini in your openembedded/conf/checksums.ini file, here is the text you need to add:

[http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.21.1.tar.bz2]
md5=a28b78793cd368592f7873bf36cb38b0
sha256=2e92625e887bff35522eed3eecc2b80eb9a588d3c0eac64f35b4d29a557bac15
edit2:

Another missing component. Sigh. In an effort to cleanup the original SVN files I nuked the packages/sysvinit/sysvinit/zipit2/rcS file. Unfortunately this is where the old (crappy) keyboard drivers are loaded. To sort this out you need to patch this file, look for:

#
# For compatibility, run the files in /etc/rc.boot too.
#
[ -d /etc/rc.boot ] && run-parts /etc/rc.boot

and add this text after it:

# for now, the module loader is not working.
/sbin/modprobe pxa27x_keyboard
/sbin/modprobe zipit2_kbd_helper
Which should sort it all out.

-(e)

Monday, January 26, 2009

Openembedded and the Z2

So after a long delay I finally have something concrete to add to the blog.

If you want to get started with the Zipit2 you'll probably have stumbled across the linux.zipitwireless.com site. Here there are links to all sorts of bits, one of which is an OpenEmbedded 'starter kit'. The problem is: the code you pull out of SVN to get started is very old and still relies on the monotone OpenEmbedded repository, which does not exist any more.

OpenEmbedded is complicated enough that broken setup scripts do not help in any way. So I have put together this package which should get you from zero to base-image in a fairly painless manner.

Currently the package will:
  1. Install a local copy of BitBake
  2. Pull the latest GIT repository of OpenEmbedded
  3. Patch the repo for Z2 support
  4. Build up a profile.sh script for you to run when you want a sane dev environment
  5. Build up a local.conf file for the bitbake system and the Z2 machine
  6. Add the linux-2.6.27.10 kernel build and all associated scripts
This is still very much a work in progress, and while I have tested the build (it works and generates a valid kernel and userland) many changes are going to be made in the near future.

Exciting stuff coming is a port to as new a kernel as possible, with the intent to get kernel patches pushed upstream and the Z2 integrated as proper machine. All of this thanks to the tireless persistence of GPSFan and some grunt work by me :)

Until the next update...
-(e)