pondělí 14. června 2010

Typical boot and cursor in console

If you have Netwalker and have you tried to switch to console (for example by pressing ctrl+alt+f1), you probably noticed that there is no cursor. Well friends, it's not bug, it's feature. This part of code in drivers/video/mxc/mxc_ipuv3_fb.c is self-explanatory...

static int dmy_cursor(struct fb_info *info, struct fb_cursor *cursor)
* don't display cursor for slash image.
return 0;
#endif /* CONFIG_MACH_MX51_ERDOS */

Let's have cursor back with this patch. Well, with this you'll get cursor back, but what about removing SHARP logo? This one should give you typical Linux Tux logo instead. And for completely usual linux boot sequence we all love so much. To get all that informations running in startup, all errors and messages disable in kernel config System Type --> Freescale MXC Implementations --> MX51 Options --> printk suppress less KERN_ERR.

Good night!

pátek 11. června 2010

Netwalker for Sleep_Walker

I recently bought new gadget - SHARP PC-Z1 Netwalker. For those who doesn't know this device it's something between netbook and PDA - good choice for every geek. It has Freescale i.MX515 ARMv7 processor with Cortex-A8 core, 512 (!) MB RAM, 4 GB internal flash storage, WiFi, 1024x600 display, touchscreen and two USB ports. With its 16 cm it can well fit my pockets. Manufacturer says that it should work about 10 hours for single charge. Cool isn't it?

One of first things I tried was to boot my Debian system I use in Treo680 and Centro and it just worked. So I prepared Debian rootfile system for you with ease. It is quite up-to-date Debian sid with Illume on top. You can find it here. I plan to use it for updates since aptitude works there fast and has no need to swap. I'll try it for building Gentoo soon.

It has Netbook remix of Ubuntu 9.04 Jaunty Jackalope out of box with GNOME environment, but I tried even KDE4 and I have to say it's great to touch applications you are using daily...

Since it has Linux inside, it also has available kernel sources, but I have to say that quality of code is really low. It often fail to build when you just change kernel configuration a bit. Good news is that Amit Kucheria from Canonical is working on adding support of i.MX chips into upstream ARM kernel.

I searched a lot for any community around this nice device but found nothing but yahoo group (intended more for users than developers) so I decided to create wiki page on Hack&Dev web as basic place for cooperation. I found some interested people on #ubuntu-arm@freenode, but it seems it will be long road to the bright future of this device. Fortunately it is quite usable even now using that kernel sources provided by manufacturer. Wiki page should contain now some basic information but I'll use it to track current status.

OK, this was written about two months ago. I tried some experiments with Netwalker - running Gentoo (it was quite great, but compilation on Netwalker sucks), Ubuntu 9.10 and 10.04 - it mostly sucked. I'm now using Debian with E17 and XFCE and I'm completely satisfied. Maybe I'll try openSUSE for ARM in future, but for now is Debian the most suitable distribution on Netwalker.

I had this week Hackweek 5 so I dig a bit to Netwalker's kernel and tried to port it to 2.6.31 Freescale's latest kernel. I found very awful stuff:

  • Netwalker doesn't have it's own machine ID - it uses machine ID of Babbage board - one similar board.
  • code is very hardly portable... there are #ifdef CONFIG_MACH_MX51_ERDOS spread in many files
    $ grep -Rl CONFIG_MACH_MX51_ERDOS /usr/src/linux-fsl-imx51-2.6.28 | wc -l

Try to avoid devices containing kernel code by Nissin Systems Co.. It can save you half year of work :)