|
I have ipaq 1940 and i succeeded booting linux console on it which communicates with my Linux host through SSH,(Using haret.exe,compiling my own kernel),Unfortunately ,There is no vitual keybord available,so you have to get kind of GUI environment ,I have googled it and find available informations on handhelds.org,I followed the step one by one,choosing GPE for my gui environment.GPE is based on X window and GTK2. I used haret.exe to load the kernel which had loop device support and making a ramdisk to initialize it.When i run haret.exe in windows CE,ipaq box got rebooting,you could see a penguin,then the executable "linuxrc " in my initrd began to execute,linuxrc was following:
#!/bin/sh
export PATH="/bin:/sbin:/usr/sbin"
echo "Booting Linux" > /dev/tty1
sleep 3
echo "Using kernel `uname -r`" > /dev/tty1
echo "Configuring usb0 to 192.168.6.2..." > /dev/tty1
ifconfig usb0 192.168.6.2
echo "Mounting /dev/mmcblk0p1 to /mnt/sdcard..." > /dev/tty1
mount /dev/mmcblk0p1 /mnt/sdcard
echo "Setting up loop device..." > /dev/tty1
losetup /dev/loop0 /mnt/sdcard/gpe
echo "Mounting rootfs to /mnt/temproot..." > /dev/tty1
mount -t ext2 -o rw /dev/loop0 /mnt/temproot
echo "Executing pivot_root..." > /dev/tty1
cd /mnt/temproot
if [ ! -d initrd ]; then
mkdir initrd
fi
pivot_root . initrd
echo "Executing init..." > /dev/tty1
exec chroot . /sbin/init <dev/tty1 >dev/tty1 2>&1
echo "Unmounting ramdisk..." > /dev/tty1
umount /initrd
gpe is the GPE image file on my SD card, which is like a common initrd but includs X lib,GTK lib,and gpe stuffs. The booting coud step to "pivot_root",then when it began execute "exec chroot . /sbin/init......", the screen in my handheld was locked at "Executing init...", after several secs,my 1940 got hard reset,and booted to winCE again. i tryed lots of test,finding out this problem had nothing to do with the binary "/sbin/init".There was no debug info available, any one could help. |
|