site  contact  subhomenews

Another 'vmlinuz' for OLPC test

January 15, 2010 — BarryK
I recompiled the one-file Quirky, this time I configured the kernel for the Geode GX1 CPU.

Download here:

Note, I also turned off MTRR register support in the kernel, as I don't know if the Geode GX1 has those registers. I think that Xorg needs those registers.
Anyway, see if this boots, and I can do another compile with MTRR enabled.

I had a quick look at Geode specs, I see that the GX1 doesn't even have the MMX instructions, but the GX2 does. If I recall rightly, even the i486 has MMX instructions.
I think that some applications compiled for a i486 are not going to work with a Geode GX1.

I don't know whether the first XO's have a GX1 or GX2, hopefully not the former.


Username: mavrothal
OLPC'x XO-1 is using a Geode LX700 CPU. Recent OLPC kernels are i586.

Geode GX
Username: BarryK
"Ok. I got my information about the GX from wikipedia: [i]The One Laptop per Child project originally used the GX series Geode processor in the OLPC XO, but it has since moved to the Geode LX.[/i] However, I think that I saw a comment somewhere that the GX may have only been in pre-production models, but I'm not sure about that.

vmlinuz15jan failed to boot
Username: aarf
"EePC701 md5sum ok setting up layered file system failed mounting: mounting /dev/sda3 on /mnt/data failed <3>FAT codepage cp437 not found quirky4 was ok.

Geode: no MTRR
Username: BarryK
"I found where the Geode CPU (LX and GX) is identified not to have MTRR: The second link is a discussion about problems with Xorg due to this. Xorg.conf can have: Option "NoMTRR" ...but apparently there are still issues.

Geode only
Username: BarryK
"aarf, This one-file Quirky is compiled for the Geode GX1 CPU. It may crash and burn on other systems.

XO 1.5
Username: BarryK
"I think that ttuuxxx said he has a XO 1.5, which I guess has an "i586" CPU, so this Quirky kernel probably won't work. But I think Raffy has an older XO with Geode CPU.

XO 1.5
Username: BarryK
"Ah, the XO 1.5 has a Via C7-M CPU. In that case, the previous one-file Quirky that I uploaded (now removed) should be fine for ttuuxxx.

Username: mavrothal
"ttuuxxx has XO-1. XO-1.5 did not start production yet (needs a final? board revision). [url=]Here you can find a DOTconfig that works on the XO-1 for both Fedora 11 and playdayz' uPup451 (full install) on the XO.

Starbox boot attempt
Username: pakt
"Barry, I have a Starbox SB-800 with a Geode LX800 CPU. It started to boot vmlinuz-15JAN2010.t00 but hung at this point (copied lines from screen): Loading the 'quirky-004.sfs' main file... Setting up the layered filesystem... Dumping last lines of /tmp/bootinit.log FATAL: Error inserting aufs (/lib/modules/ Invalid module format FATAL: Error inserting fuse (/lib/modules/ Invalid module format mount: mounting /dev/loop0 on /pup_ro2 failed mount: mounting unionfs on /pup_new failed Dumping last lines of kernel log... <4>nls_iso8859_1: disagrees about version of symbol module_layout <4>aufs: disagrees about version of symbol module_layout <4>fuse: disagrees about version of symbol module_layout <6>input: PS/2 Generic Mouse as /devices/platform/i8042/serio1/input/input1 Pausing for 60 seconds... Performing a 'switch_root' to the layered filesystem...Kernel panic - not syncing: Attempted to kill init!

geode target
Username: technosaurus
"If you already have a T2 setup, I recall there being a specific geode target. Also I think the GX1 refers to the last NSC geode chips - whereas the XO used the AMD geodes (GX2 then LX) ... I think this is what was used in previous versions of T2 as the target for geode: CFLAGS=" -march=i586 -mtune=i586 -mmmx -m3dnow " ... The proper target for newer gcc versions should be something like -march=geode -mtune=geode (but I think the kernel has a geode specific option as well) ... I do not think this has been updated in T2 as of yet since the option only came out in gcc-4.3 and T2 just recently upgraded that package - maybe because it would require an additional build step (bootstrap) if you were starting from a system with gcc < 4.3 I wonder if the "Invalid module format" is related to a former bug in busybox or if it is just from being gzipped?

Only GX2 and LX
Username: Raffy
"Only GX2 and LX Geodes are in the miniPC and industrial PCs since the time of OLPC. My GX2 466 runs just fine like a Pentium PC (see the [url=,,50_2330_9863_9864,00.html]specs). It runs Puppy 2.13 well!

Module loading
Username: BarryK
"pakt, This error message: [i]FATAL: Error inserting aufs (/lib/modules/ Invalid module format [/i] ...bothers me very much! 'depmod' and 'modprobe' in the initramfs are able to handle gzipped modules. All the puppies we are currently running work this way. I'm running Quirky 004 right now, which loaded the gzipped modules in the initramfs.

Tags: quirky