We've got the ubuntu-mobile booting Hardy on the menlow platform with the -vesa driver, but our goal is to get -psb booted. Currently -psb is displaying a corrupt screen and locking up the system, which makes troubleshooting a bit of a challenge...
So in hopes of helping anyone else that's troubleshooting this issue, here's some tips I've gathered off the grapevine and/or from code mining. Beware that some of this may be incorrect, but I'll update this as new info comes to light.
I'm using one of Mithrandir's images, and the B0 development board from Intel. For brevity I'll skip all the gory details of troubleshooting the various non-X issues and get to the interesting bits.
1. Boot to single-user mode: UME is configured to automatically boot X, thus locking up the system. To avoid this and get to a console, add this kernel boot option:
init=/bin/bash
2. (Optional) After booting in to single user mode, I like to make the startup stuff a bit more developer friendly.
mount /dev/sda1 /boot
edit /boot/grub/menu.lst
- enable the menu
- change timeout from 3 to 15 sec
- set the failsafe kernel to init=/bin/bash
- remove 'quiet' and 'splash' options
3. While in single user mode, change the default xorg configuration to vesa instead of psb
cp /etc/X11/xorg-crownbeach.conf /etc/X11/xorg-orig.conf
chmod o+w /etc/X11/xorg*.conf
edit /etc/X11/xorg-crownbeach.conf
- change "psb" to "vesa"
4. Disable the X autostartup
mkdir /etc/event.d-old/
move /etc/event.d/session /etc/event.d-old
(I like to also set the root password at this point, but YMMV)
5. Restart. At this point, rather than starting X, it should leave you at a console without a login prompt. Switch to a different tty (ctrl-alt-F2) and login.
6. To stop/start X:
pkill -9 startx
su -l ume -c "/usr/bin/startx -- -config /etc/X11/xorg-crownbeach.conf"
7. To see what driver is loaded:
grep LoadModule -A 3 LoadModule /var/log/Xorg.0.log
8. To test -psb (and lock up the system):
cd /etc/X11
su -l ume -c "/usr/bin/startx -- -config xorg-new.conf"
Now for some thoughts on where to go for testing from here:
* The -psb package I posted earlier contains a hack to make it work on Gutsy, by copying libexa.so to /usr/lib/xorg/modules/. So a first question is, is the system using the libexa.so from -psb, or the one from xserver?
It should be possible to force reinstallation of the xorg-server via:
apt-get --reinstall install xserver-xorg-core=2:1.4.1~git20080105-1ubuntu1
And similarly for reinstalling xserver-xorg-video-psb. Check the libexa.so date and size in each case to see if there is any variance, and try booting X with "psb" enabled in each case. If this turns out to be the issue, we can roll a -psb without the libexa copy hack (see the FIXME in -psb).
(Unfortunately, amit says networking is broken in this image right now, so I've been unable to try this).
* Run the xserver under gdm while ssh'd into the box remotely, and try getting a backtrace. (Again, this requires a working network connection). See DebuggingXorg for details, particularly the "DRI/drm problems" section.
* fdo has some additional tips for getting debug output from the X server with no network connection.
* Vary xorg.conf parameters, on off chance we can either get more detailed error output, or bypass the issue. I'll focus on this first since it doesn't require networking.
* The -psb packages apparently work on a moblin kernel. It would be interesting to examine any differences between that set up, and one on a ubuntu-mobile kernel, particularly if, for instance, it's a libdrm incompatibility.

Thanks amit,
Sounds like something's fishy with that second lock. I disabled it in this patch, and lo and behold, up came X.
Looking at the Xorg.0.log, it is definitely running with the psb driver, and the log contains nothing unexpected. (There are some error and warning messages, but nothing we don't already know about.)
So, since this seems to solve the issue (at least for the present), I've uploaded the fixed -psb to Ubuntu Mobile PPA.
I played around with some apps, and everything seems to be working fine. 3D performance is poor, but that's expected since we don't have the 3D driver yet. However, glxgears runs, it's just slow (10.5 fps).
">
">