Talk:Ubuntu Lucid on OLPC XO: Difference between revisions
No edit summary |
(Some tips on preparing the disk image) |
||
Line 101: | Line 101: | ||
: I noticed that your module is loaded very early in the boot process, around time "3" according to your dmesg, as compared to around 26 for me. It definitely seems like your system loads the module in the initrd, while my system loads it later. I'll change the instructions to include the symlink in the initrd for now. |
: I noticed that your module is loaded very early in the boot process, around time "3" according to your dmesg, as compared to around 26 for me. It definitely seems like your system loads the module in the initrd, while my system loads it later. I'll change the instructions to include the symlink in the initrd for now. |
||
: -- [[User:Maxxflow|Maxxflow]] 23:36, 24 April 2010 (UTC) |
: -- [[User:Maxxflow|Maxxflow]] 23:36, 24 April 2010 (UTC) |
||
Some tips as I worked: |
|||
- You may do |
|||
sudo apt-get install xserver-xorg-video-geode xserver-xorg-video-vesa |
|||
before installing the desktop environment (no matter ubuntu-netbook, or lubuntu-desktop which I used), so you don't need to install all other display card drivers you don't need, except the Geode and VESA drivers, for starting X in XO-1 and the virtual machine respectively. |
|||
- In addition to create /boot/olpc.fth by hand, you may find the boot script as used on [[DebXO]] useful, that you don't need to hard-code the device (u:\ or sd:\) you will boot Ubuntu from. |
|||
- Techniques as used by some eeePC users to reduce unnecessary flash writes, e.g. mounting /tmp as tmpfs, specifying noatime option on mounting the root partition, may also be useful to us. |
|||
This is how my /etc/fstab looks like (I used lucid as my volume label): |
|||
LABEL=lucid / ext3 defaults,noatime 1 1 |
|||
tmpfs /tmp tmpfs defaults 0 0 |
|||
tmpfs /var/log tmpfs defaults 0 0 |
|||
none /ofw promfs defaults 0 0 |
|||
It is safe to skip mounting /ofw unless you need to, and safe to skip mounting /var/log if you want to keep the logs. |
|||
--[[User:~airwave209gt|airwave209gt]] 08:13, 26 April 2010 (UTC) |
Revision as of 08:13, 26 April 2010
It works!! Just following the instructions, more or less, gave me a running system.
A few details:
There need to be a few more "sudo" commands. I am not sure if it is needed for depmod, but it is certainly needed for the following "ln".
depmod 2.6.31_xo1-xxxxxxx
ln -s /lib/firmware/libertas/usb8388_v9.bin /lib/firmware/usb8388.bin
I used qemu, using the USB device as HDA, and with additional memory -- when I tried to install everything using 256MB of RAM, the install would always crash. Here are my two qemu commands, the first one for booting from the cdrom (to be done initially), the second for booting from the hard disk. Pay attention to the stuff in parentheses -- you really do need to check which device your usb drive is on (I did it with
ls -l /dev/disk/by-id/
you may have other methods), and the tftp option was needed to load the develop.sig, which I had on a different device:
sudo qemu -hda /dev/sdc (check) -cdrom ubuntu-10.04-beta2-desktop-i386.iso -m 512 -boot d -net nic -net user sudo qemu -hda /dev/sdc (check) -m 512 -boot c -net nic -net user(,tftp=/home/user/olpc)
to use these, remove the "(check)" (only after checking! :-), and, if you need to transfer files from the host, remove the parentheses around the tftp option, e.g. -net user,tftp=/home/foo/xyz, where the path indicates the root of the tree accessible with the tftp command. Once you have booted ubuntu, you also need to
sudo apt-get install tftp
for this to work.
Finally, make sure your device really does have a label OLPCRoot. I don't think that is emphasized enough in the instructions.
With these considerations, the install actually went very smoothly. I am just afraid my 256MB OLPC may be too small for ubuntu lucid.
Two things that don't work: the wireless network and the battery icon. Battery is not such a big deal. For the wireless network, I may need a new driver, because no wireless networks are detected.
I hope this helps others!
Edo 19:05, 24 April 2010 (UTC)
- Thanks for your input! I added the missing sudos, and tried to emphasize the disk label issue a little more.
- As for the wireless, I had the same problem until i figured out the firmware issue. The driver should already be there. What does "dmesg | grep 8388" say?
- I'm aware that the battery indicator doesn't work; I'm not sure that the XO provides this information by ACPI. In my previous Ubuntu system, I wrote a shellscript that dug out the battery percentage from somewhere in /proc, and displayed it in a custom text-based taskbar widget. Other similar things, such as screen brightness and mapping of the directional/game buttons also need some work.
- I'll look into this when I revise the instructions for the stable 10.04 version, which will be released soon.
- -- Maxxflow 19:53, 24 April 2010 (UTC)
Thank you for your quick response!
"dmesg | grep 8388":
[ 3.029396] usb 1-1: firmware: requesting usb8388.bin [ 3.072286] usb8xxx: firmware usb8388.bin not found
The link in /lib/firmware seems to be correct. There is nothing under /lib/modules that matches 8388 (I used "find"). FYI, here is a list of loaded modules (from lsmod):
Module Size Used by sg 18184 0 usb_storage 21392 1 usb_libusual 7228 1 usb_storage mousedev 6600 0 usb8xxx 10468 0 libertas 116232 1 usb8xxx lib80211 2272 1 libertas ohci_hcd 14992 0 psmouse 16448 0 serio_raw 2520 0 ehci_hcd 23556 0 usbcore 83740 6 usb_storage,usb_libusual,usb8xxx,ohci_hcd,ehci_h cd cs5535_gpio 1552 0 cafe_ccic 12272 0 ecb 1012 0 aes_i586 6568 0 aes_generic 25428 1 aes_i586
uname -a gives 2.6.31_xo1-20100422.1905.olpc.351d67a #1 PREEMPT (hand-typed, so may have errors).
Does this give enough clues? I even tried rebooting under qemu and "sudo apt-get install libertas-firmware", and that did not fix it.
Edo 21:25, 24 April 2010 (UTC)
- Hmm. Try "sudo ln -s /lib/firmware/libertas/usb8388_v9.bin /lib/firmware/libertas/usb8388.bin". If that doesn't work, try doing the symlinking in the initrd's firmware directory as well. Use the instructions on how to unpack and re-pack the initrd from my installation guide. Tell me if you need more instructions on this!
- -- Maxxflow 21:36, 24 April 2010 (UTC)
I repacked the initrd, adding the command
cp -r /lib/firmware/libertas lib/firmware/
after copying the modules but before constructing /boot/initrd.img-xo.
Still no success. Same dmesg, no device.
Edo 22:39, 24 April 2010 (UTC)
Eureka! (meaning "I found it!")
the usb8388.bin has to be under lib/firmware in the initrd, not (just?) under lib/firmware/libertas/
now the wireless is working!
Edo 23:06, 24 April 2010 (UTC)
- That's odd. I just repacked my initrd *without* any of those symlinks to confirm this issue. I now only have /lib/firmware/usb8388.bin in my root. But it still works. When I delete this one symlink that I now have, I get the symptoms. I'm doing a system upgrade now, we'll see what happens after that. What kernel version are you using? (date, id and everything)
- I noticed that your module is loaded very early in the boot process, around time "3" according to your dmesg, as compared to around 26 for me. It definitely seems like your system loads the module in the initrd, while my system loads it later. I'll change the instructions to include the symlink in the initrd for now.
- -- Maxxflow 23:36, 24 April 2010 (UTC)
Some tips as I worked:
- You may do
sudo apt-get install xserver-xorg-video-geode xserver-xorg-video-vesa
before installing the desktop environment (no matter ubuntu-netbook, or lubuntu-desktop which I used), so you don't need to install all other display card drivers you don't need, except the Geode and VESA drivers, for starting X in XO-1 and the virtual machine respectively.
- In addition to create /boot/olpc.fth by hand, you may find the boot script as used on DebXO useful, that you don't need to hard-code the device (u:\ or sd:\) you will boot Ubuntu from.
- Techniques as used by some eeePC users to reduce unnecessary flash writes, e.g. mounting /tmp as tmpfs, specifying noatime option on mounting the root partition, may also be useful to us.
This is how my /etc/fstab looks like (I used lucid as my volume label):
LABEL=lucid / ext3 defaults,noatime 1 1 tmpfs /tmp tmpfs defaults 0 0 tmpfs /var/log tmpfs defaults 0 0 none /ofw promfs defaults 0 0
It is safe to skip mounting /ofw unless you need to, and safe to skip mounting /var/log if you want to keep the logs.
--airwave209gt 08:13, 26 April 2010 (UTC)