I tried to compile the squashfs module but unfortunately the patch (for 2.4.20) doesn't work on the pdaXrom kernel (2.4.18) due to a missing do_mounts.c file. Hopefully I can either fix the patch (unlikely) or find one that works.
rgrep,
I patched this to the 2.4.18 kernel for the Cacko/Sharp ROM some time ago.
Just tried it with the 2.1r2 patch set and it works fine.
Steps. (backup the source tree first just in case !)
i. Apply the patch with -p1, hit return when the prompt about do_mounts.c is shown. - You don't need this (more later).
ii. Go to linux/fs and you will have a Makefile.rej containing the offending DIFF that didn't apply. Basically just adds the line...
subdir-$(CONFIG_SQUASHFS) + = squashfs
So edit the Makefile, find an appropriate spot and add the line manually.
iii. Create your .config file or edit an existing one and add CONFIG_SQUASHFS=m
iv. Run make oldconfig, make dep & make modules.
You should find squashfs.o in the linux/fs/squashfs directory.
v. Put the file in the /lib/modules/`uname -r`/fs directory on your Z (create the directory first).
vi. Run depmod and away you go.
mount file systems with...
mount -t squashfs <squash file> <mount point> -o loop
...Now all this works fine for Cacko/Sharp so I think this should work for PDAXROM but I don't have a build environment for the Kernel set up to try it.
do_mounts.c is part of the init code and as far as I can tell the patch is mainly aimed at adding some structures to init so that the file system can be used for initrd (load from a file then RAM drive specific stuff). You shouldn't need it for normal utility type use.
Let me know how you get on.
- Andy