Just an FYI, if you have the Blue iPAQ and you want to
enable Ethernet, you'll need to build a new 2.4.18
kernel. Grab the latest kernel off of ftp.kernel.org
in pub/linux/kernel/v2.4, the file is linux-2.4.18.tar.gz.
From there, extract it (it'll make a linux directory),
and copy the midori_3/kernel/config file to linux/.config.
Next, you'll need to apply the following patches from
the linux-2.4.6 patch set in the midori beta3 image:
addpart.patch
mkdep.patch
idedisk.patch
ttyio.patch
noscroll.patch
loop.patch
cmdline.patch
If you've built a kernel from the midori image before, you've
probably already done this. Use 'patch -p1 < <patchfile>',
where <patchfile> is one of the patches above.
Next, run 'make oldconfig'. This will set the configuration
based on the midori_3/kernel/config file copied in. Be sure
to just say 'N' to the questions asked.
Next, I run 'make menuconfig'. Go into
Network device support -->
Ethernet (10 or 100Mbit) -->
Turn on "EISA, VLB, PCI and on board controllers", and then
turn on "AMD PCnet32 PCI support". Be sure there is a '*'
next to each of these two items.
Then Exit back up to the point where it asks if you want to
save this kernel configuration, say "Yes", and it will exit.
Next, edit drivers/net/pcnet32.o, and change the code around
line 580 to be something like the following:
/* switch to home wiring mode */
media = a->read_bcr (ioaddr, 49);
if (pcnet32_debug > 2)
printk(KERN_DEBUG "pcnet32: pcnet32 media value %#x.
", media);
/* yakker -- set media = 0x8000 for 10BASE_T PHY mode */
media &= ~0xfff;
#if 0
media &= ~3;
media |= 1;
#endif
if (pcnet32_debug > 2)
printk(KERN_DEBUG "pcnet32: pcnet32 media reset to %#x.
", media);
a->write_bcr (ioaddr, 49, media);
break;
Note the only real change here is making sure media &= ~0xfff;,
as this sets the media bit to 0x8000, which according to the
AMD 79C978 documentation is 10BASE_T PHY mode. The rest should
be pretty much the same.
Finally, run 'make dep' followed by 'make bzImage'. YMMV as
far as how this completes. If the build is complete, next run
'vidmode arch/i386/boot/bzImage 771', to set the right video
mode for the kernel image. Finally, copy the bzImage file to
your midori_3/kernel directory, overwriting the one that is
already there.
Re-build your midori image, copy it to your IA-1, reboot, and
you're as good as gold.
Note that you can <Ctrl>-<Alt>-<ShoppingCart> to get to a
shell prompt, and from there you can:
ifconfig eth0 inet <youripaddress> netmask 0x<yourhexnetmask>
route add default gw <yourdefaultgateway>
ping <someipaddress>
And everything should work! It did for me, just fine, and I've
got standard network connectivity right out of the box.
If someone needs the kernel, or my digital picture frame image,
I'm waiting to hear back from qDot as to whether he wants to
host them.
Thanks, all.
--Matt