XOpup Interest Group. Puppy Linux for the OLPC XO-1 laptop

A home for all kinds of Puppy related projects
Message
Author
eowens2
Posts: 177
Joined: Wed 27 Aug 2008, 17:57

XOpup Interest Group

#181 Post by eowens2 »

I was mistaken, when in an earlier post, I said that I had pup_412.sfs in RAM on my XO. I think now that I was simply looking at it as it was mounted on the USB stick. (I was seeing OTHER things in RAM, just not the .sfs file).

After further messin' around with it, I believe pup_412.sfs is now being copied (line 1000 in Puppy's initrd/init) to XO's RAM's /mnt/tmpfs. When I drop out to a command line shell (using a dump to look at variables, etc.), "ls /mnt/tmpfs" => "pup_412.sfs", and "free" decreases by ~105MB after the copy is performed. The problem is getting it to a point where it is useful.

In line 1004 in initrd/init, /mnt/tmpfs/pup_412.sfs is set up with /dev/loop0. This seems to go OK ("losetup /dev/loop0" => "/mnt/tmpfs/pup_412.sfs").

In line 1009 in initrd/init, things get mired down. The line reads:

mount -r-t squashfs -o noatime /dev/loop0 $CREATEPUPXXXSFS

This iteration is a pupmode5, and line 624 initrd/init defines $CREATEPUPXXXSFS as /pup_ro2.

In the above mentioned dump /tmp/bootinit.log says:

mount: mounting /dev/loop0 on /pup_ro2 failed: Invalid Argument

which seems absurd. I googled this, and came us with 5 references relating to puppy, and none of them (to me, anyway) seemed to be useful in sorting this out.

Has anyone had any experience with this error in this context?

Thanks.

User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

Re: quirky-004 (single file)

#182 Post by mavrothal »

raffy wrote:We already have Barry's attention:

"Test single-file Quirky"
http://bkhome.org/blog/?viewDetailed=01337
..if you can get the kernel to start booting, that's it, you should get a desktop..

..the parameters are very simple, something like this to boot from a USB Flash drive:

kernel quir004.t00
append pmedia=usbflash
Excellent!
Now if you could convince Barry to stop compressing the kernel with LZMA we could even see if it actually works on the XO (the provided lzma-compressed kernel is not readable by the XO as I mentioned several times already in this thread).
See if I can recompile the thing to make it work.

User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

#183 Post by mavrothal »

Eddie that's impressive!
Can you be a bit more explicit about the changes you did?
Did you get out of the console at all?
Also you may want to try playdayz' uPup, Behaves much better on the XO than any other pup or pupplet I tried.

User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

#184 Post by mavrothal »

OK,
so I recompiled the kernel with BKs kernel_src_2.6.31.5-patched.sfs and the DOTconfig-K2.6.31.5-3DEC09-TICKLESS-SMP that was in the 2.6.31.5 pet. The only change was that kernel compression was with gzip.
It is now recognized by the XO but the OFW spits the "Invalid Opcode" and the story stops there :cry:

So I would guess that needs an OLPC configured kernel to boot or something between the two.

Barry if you are reading this (since I can not post comments in your blog-it always gives me an invalid authentication...) pls verify that these are the correct sources and configs and if possible point to the mandatory config options so I can try to make an OLPC/Quirky hybrid kernel.

(see ttuuxxx does not take a day... :lol: )

User avatar
BarryK
Puppy Master
Posts: 9392
Joined: Mon 09 May 2005, 09:23
Location: Perth, Western Australia
Contact:

#185 Post by BarryK »

Regarding the one-file Quirky, see my latest blog post. I uploaded the wrong iso file. Re-uploading now.
[url]https://bkhome.org/news/[/url]

User avatar
BarryK
Puppy Master
Posts: 9392
Joined: Mon 09 May 2005, 09:23
Location: Perth, Western Australia
Contact:

#186 Post by BarryK »

OFW accepts iso, fat, vfat, ext2 and ext3 boot files and compressed or uncompressed initrd and vmlinuz. However I believe it does _not_ decompress lzma. (So basically it can not open the vmlinuz you provide with the xo-1.iso).
As it was, stopped (as usual) in the OFW screen. This is because puppy kernels are compressed with lzma and OFW does not support it. DO NOT compress XO-destine vmlinuz with LZMA. Will never run.
Now if you could convince Barry to stop compressing the kernel with LZMA we could even see if it actually works on the XO (the provided lzma-compressed kernel is not readable by the XO as I mentioned several times already in this thread).
I scanned through this thread, counted only two prior posts about an lzma kernel.

Most puppies are NOT built with a lzma-compressed kernel. The standard and retro kernels used in Puppy 4.3.1 are just the normal bzip-compressed kernels.

Only the 2.6.31.5 kernel used in Quirky uses lzma compression.

Lzma compression of the kernel should not make any difference. It has nothing to do with the OLPC. The kernel has its own decompression code, it loads like any other Linux kernel, runs its inbuilt decompressor and decompresses the main part of the kernel.
The OLPC would have to be incredibly weird to object to that.

...nah, it is so incredibly unlikely that the OLPC would have any problem with the kernel being gzip, bzip2 or lzma compressed. It is purely a concern of the kernel.

My one-file Quirky should boot. I don't know about getting X to run though, especially as I read the video is not VESA-compatible. If a special Xorg driver is required, I will have to rebuild Quirky with that in it.

Then there's the question of the 'pupsave'. Some development will be required to get that to be recognised at bootup.
[url]https://bkhome.org/news/[/url]

User avatar
Aitch
Posts: 6518
Joined: Wed 04 Apr 2007, 15:57
Location: Chatham, Kent, UK

#187 Post by Aitch »

Barry/others

sadly religious spammers have despoiled Mitch Bradley's Fastboot page I linked to earlier....

googling has mixed results

perhaps yaboot?
Open Firmware is the hardware-independent firmware (computer software which loads the operating system) that the XO-1 runs.

It was developed by Mitch Bradley at Sun Microsystems, and used in post-NuBus PowerPC-based Apple Macintosh computers (though it has been dropped with Apple's transition to Intel processors), Sun Microsystems SPARC based workstations and servers, IBM POWER systems, and PegasosPPC systems, among others. On those computers, Open Firmware fulfills the same tasks as BIOS does on PC computers.

It is accessed by a user by a FORTH-based shell interface. FORTH is a powerful high level language.

For example Fedora and Debian use the YaBoot BootLoader for OpenFirmware.
http://wiki.laptop.org/go/Open_Firmware

http://penguinppc.org/bootloaders/yaboot/index.shtml

Similarity between OLPC & PPC maybe after all.....?

Aitch :)

User avatar
ttuuxxx
Posts: 11171
Joined: Sat 05 May 2007, 10:00
Location: Ontario Canada,Sydney Australia
Contact:

#188 Post by ttuuxxx »

Hi Barry I read that http://cgit.freedesktop.org/xorg/driver ... deo-geode/
driver is the best one for olpc, and a screen size of 1200x900, 200 dpi. 6x4 in (152.4x101.6 mm). 6 bit deep (262k colors). http://wiki.laptop.org/go/Display
also this page helps http://wiki.laptop.org/go/Hardware_Drivers
Thanks for helping Barry we all appreciate it :D
ttuuxxx
http://audio.online-convert.com/ <-- excellent site
http://samples.mplayerhq.hu/A-codecs/ <-- Codec Test Files
http://html5games.com/ <-- excellent HTML5 games :)

User avatar
BarryK
Puppy Master
Posts: 9392
Joined: Mon 09 May 2005, 09:23
Location: Perth, Western Australia
Contact:

#189 Post by BarryK »

Ok, correct iso uploaded, and follow-up blog post:

One-file Quirky:
http://bkhome.org/blog/?viewDetailed=01337

OLPC booting notes:
http://bkhome.org/blog/?viewDetailed=01338
[url]https://bkhome.org/news/[/url]

User avatar
BarryK
Puppy Master
Posts: 9392
Joined: Mon 09 May 2005, 09:23
Location: Perth, Western Australia
Contact:

#190 Post by BarryK »

ttuuxxx wrote:Hi Barry I read that http://cgit.freedesktop.org/xorg/driver ... deo-geode/
driver is the best one for olpc, and a screen size of 1200x900, 200 dpi. 6x4 in (152.4x101.6 mm). 6 bit deep (262k colors). http://wiki.laptop.org/go/Display
also this page helps http://wiki.laptop.org/go/Hardware_Drivers
Thanks for helping Barry we all appreciate it :D
ttuuxxx
Ah, good, Quirky has that driver.
[url]https://bkhome.org/news/[/url]

User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

#191 Post by mavrothal »

BarryK wrote:
I scanned through this thread, counted only two prior posts about an lzma kernel.

Most puppies are NOT built with a lzma-compressed kernel. The standard and retro kernels used in Puppy 4.3.1 are just the normal bzip-compressed kernels.

Only the 2.6.31.5 kernel used in Quirky uses lzma compression.

Lzma compression of the kernel should not make any difference. It has nothing to do with the OLPC. The kernel has its own decompression code, it loads like any other Linux kernel, runs its inbuilt decompressor and decompresses the main part of the kernel.
The OLPC would have to be incredibly weird to object to that.
First let me clarify that that when i say kernel I mean the vmlinuz. Second the vmlinuz in decompressed by the OFW in the XO-1. Third the OFW can decompress only zlib. Fourth, I tried and tested it. Fifth earlier Puppies did go through the loading of the kernel but stopped for other reasons in the initrd. Sixth XO is "weired" (in some sense :lol: )
PS: sorry for the style, I had to run and I must do it again now. Latter.

hailpuppy
Posts: 73
Joined: Wed 28 Oct 2009, 07:49

#192 Post by hailpuppy »

Thanks Barry...you being here means a lot.....Guys in his reply Mitch had said that even he would like to get involved in xopup effort. Raffy can you ask Mitch to join in if it helps in this. You seem to have got his attention last time. Why dont we all do a collaborative effort on this.Specially when we all know for a fact that if we get Puppy too run on RAM on XO ,OLPC would really become a practically benifitial project to all without it being limited to 5 year olds.

User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

Re: quirky-004 (single file)

#193 Post by mavrothal »

mavrothal wrote: Excellent!
Now if you could convince Barry to stop compressing the kernel with LZMA we could even see if it actually works on the XO (the provided lzma-compressed kernel is not readable by the XO as I mentioned several times already in this thread).
See if I can recompile the thing to make it work.
Apparently, I tested the iso the BK mistakenly had uploaded yesterday instead of the real quirky004 (present now in the same link) :o
That's the problem when you are too eager :lol: So all my previous comments do not apply in the real quirky.
Hopefully by the time I'm back home the good news will be out that the _real_ qurcky004 boots fine on the XO. :D

BTW what kind of file is quir004.t00 ? I was wondering how could I see its content from my work mac.


And an unrelated question. Is there a magic trick to post comments on Barry's blog or he just doesn't like me :lol: (PM answers are ok... :wink: )

User avatar
ttuuxxx
Posts: 11171
Joined: Sat 05 May 2007, 10:00
Location: Ontario Canada,Sydney Australia
Contact:

Re: quirky-004 (single file)

#194 Post by ttuuxxx »

mavrothal wrote:
mavrothal wrote:
And an unrelated question. Is there a magic trick to post comments on Barry's blog or he just doesn't like me :lol: (PM answers are ok... :wink: )
Do you have an account on his blog? Also when It comes to Barry responding, ummm well He's usually really busy and he only picks and chooses certain questions, he responds usually around 1 out 3 or so questions that I ask on his Blog, it can be frustrating, but at the end of the day it up to him, if he feels like it or not. But hey he does deliver very well, he also stated that his Xo has been dead since 2008 on his blog, hmmm maybe someone should organize him a new one?
ttuuxxx
http://audio.online-convert.com/ <-- excellent site
http://samples.mplayerhq.hu/A-codecs/ <-- Codec Test Files
http://html5games.com/ <-- excellent HTML5 games :)

User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

Re: quirky-004 (single file)

#195 Post by mavrothal »

ttuuxxx wrote: Do you have an account on his blog?
How do you do that :?: . It does not have any "register" or something in the site. Is it "cryptic"? or just an e-mail request?
he also stated that his Xo has been dead since 2008 on his blog, hmmm maybe someone should organize him a new one?
ttuuxxx
Yeh... this is a common problem with XOs (left dormant for a long time) related to RTC. He is in the right track though with the internal battery.
The next 2 links may also help
http://wiki.laptop.org/go/Fix_Clock
http://en.forum.laptop.org/viewtopic.ph ... 45#p533274 (and after)
Here is a more sophisticated solution.
But the first thing is to update the firmware to q2e41
Pls pass it along when you post in his blog :D
Regarding a new XO I'm sure they''l send him 4 if he asks :lol:

Any luck with quirky yet?

User avatar
ttuuxxx
Posts: 11171
Joined: Sat 05 May 2007, 10:00
Location: Ontario Canada,Sydney Australia
Contact:

#196 Post by ttuuxxx »

ok I tried like 30+ different combinations ,lol the closest I managed to get was that it loaded vmlinuz and then loaded ramdisk and I received a invalid Opcode. Really it was my last test that got me the furthest but probably shouldn't of worked that far.

it did say "Loading ramdisk from disk:\boot\vmlinuz"
which is good, still haven't seen 1 single puppy screen.

this is my olpc.fth, it was option 2, the usb which went the furthest, when I tried like 15 or so test on SD card, nothing really, other than loading vmlinuz.

Code: Select all

\ Menu bootscript for OLPC  Place in /boot as olpc.fth

cr
." 1 to boot from SD" cr
." 2 to boot from USB" cr
." 3 to boot from internal NAND" cr
." 4 to boot alternate image from NAND" cr
cr
key case
  [char] 1 of    \ SD boot info
    " ro root=mmcblk0p1 rootdelay=1 console=ttyS0,115200 console=tty0 fbcon=font:SUN12x22" to boot-file
    " sd:\boot\vmlinuz" to boot-device
  endof
  [char] 2 of    \ USB boot info
    " ro root=sda1 rootdelay=1 console=ttyS0,115200 console=tty0 fbcon=font:SUN12x22" to boot-file
    " disk:\boot\vmlinuz" to boot-device
    " disk:\boot\vmlinuz" to ramdisk
  endof
  [char] 4 of    \ Alternate boot image info
     " ro root=mtd0 rootfstype=jffs2 console=ttyS0,115200 console=tty0 fbcon=font:SUN12x22" to boot-file
     " nand:\boot-alt\vmlinuz" to boot-device
     " nand:\boot-alt\initrd.gz" to ramdisk
  endof
  ( default )    \ Default sugar boot image info
     " ro root=mtd0 rootfstype=jffs2 console=ttyS0,115200 console=tty0 fbcon=font:SUN12x22" to boot-file
     " nand:\boot\vmlinuz" to boot-device
     " nand:\boot\initrd.gz" to ramdisk
endcase
unfreeze
boot
ttuuxxx
http://audio.online-convert.com/ <-- excellent site
http://samples.mplayerhq.hu/A-codecs/ <-- Codec Test Files
http://html5games.com/ <-- excellent HTML5 games :)

User avatar
ttuuxxx
Posts: 11171
Joined: Sat 05 May 2007, 10:00
Location: Ontario Canada,Sydney Australia
Contact:

#197 Post by ttuuxxx »

another notes the isolinux.cfg states,
append pmedia=cd
ummm what CD? shouldn't that be somethings else like, pmedia=usbflash
ttuuxxx
http://audio.online-convert.com/ <-- excellent site
http://samples.mplayerhq.hu/A-codecs/ <-- Codec Test Files
http://html5games.com/ <-- excellent HTML5 games :)

User avatar
mavrothal
Posts: 3096
Joined: Mon 24 Aug 2009, 18:23

#198 Post by mavrothal »

I tried some scripts my self :D (with Mitch Bradley's suggestions-thanks)

Code: Select all

\ boot script
" ro root=/dev/sda1 rootfstype=fat console=tty0 fbcon=font:SUN12x22 video=fb:1200x900" to boot-file
" u:\vmlinuz pmedia=usbflash pdev=sda1" to boot file
setup-smbios 
unfreeze 
dcon-unfreeze 
visible 
boot
This one with and without pdev=1 gets me to "Invalid Opcode" Imediatelly :(
Commenting out (\) the " ro ..." line and transferring the root= to the vmlinuz line just stays on a blank screen.

Based on my yesterday's recompiling experiment (with the wrong quirky iso) that involved only the 2MB vmlinuz and gave me the same Opcode, I would that is something in the kernel.
XO's kernel requirments are really strange (to the extend that will not boot a normal PC or any emulation/virtualization thus the qumu kernel versions...).

Thus yesterday's question comes back.
Barry, what are the quirky minimal, mandatory kernel options :?:
With these an OLPC/quirky kernel could be build (assuming there is no conflict)

Of course there is always the init script with the patched olpc kernel, option... eowens2 any news/progress???

PS: I guess Opcode might be related to the Geode-spefic 3D-Now instructions. This is actually the complain you get when you try to boot OLPC kernels in other (virtual)machines. That "the processor does not support 3D-Now".

eowens2
Posts: 177
Joined: Wed 27 Aug 2008, 17:57

Modifying pup_412's initrd.gz init script

#199 Post by eowens2 »

Some of the more important changes I have made to Puppy 412's initrd.gz init include the following:

A limited set of modules (hardware, file systems, etc) that go with the newly compiled kernel of course have to be in init.

Line 52 - LAYERFS=unionfs (instead of = aufs; I never could get aufs to work)

Line 122 - this is the check status function, which would be evoked under certain error conditions, drop you to a shell, and report contents of some variables. I added a function,(modifying check status ())called dump (), which I could invoke by placing dump 0 at selected sites in init; at that point it would drop me to a shell and report pupmode, CREATEPUPXXXSFS, amount of free ram, .sfs file size, .sfs device location, .sfs device mount point as well as the last lines of /tmp/bootinit.log.

lines 211,212,215,216 commented because XO doesn't need modules for PCMCIA cards

line 266 commented out (modprobe nls_cp437) the module is unnecessary because XO kernel has this compiled into the body of the kernel

lines 921-25 commented out - this was a hack specifically for kernel 2.6.25.16 adding ssb modules

line 939 - adjusted [$RAMSIZE -gt 220000 -a "$PCOPY" = "yes"] downward a little, just to make sure I could get my bloated pup_412.sfs into RAM, then plan to clean up the mess later

line 991 - adjusted [ $RAMSIZE -gt 280000 ] downward - same reason as line 939

This init will proceed to a "dump 0" placed just before switch_root @ line 1350 ("exec switch_root /pup/new /sbin/init") without fatal error. The bootinit.log does list the problem "mount: mounting /dev/loop0 on /pup_ro2 failed, Invalid Argument" however.

When said "dump 0" is removed, we get the message "performing a switch root" and then kernel panic.

Is it crashing because it can't find the new OS on the (unmounted) /pup_ro2?

Anyone have any ideas?

Thanx.


P.S. I have been trying to look up some puppy source code and the site where I used to find them won't let me in. It now wants a user ID and password. Does anyone know where you get these?

User avatar
ttuuxxx
Posts: 11171
Joined: Sat 05 May 2007, 10:00
Location: Ontario Canada,Sydney Australia
Contact:

#200 Post by ttuuxxx »

hi username and passwords are just to stop spam
username:puppy
password:linux
http://audio.online-convert.com/ <-- excellent site
http://samples.mplayerhq.hu/A-codecs/ <-- Codec Test Files
http://html5games.com/ <-- excellent HTML5 games :)

Post Reply