How do I patch a generic Linux kernel tree to work with Linux/m68k?

This is basically the same as patching a Linux/m68k kernel tree. At sunsite.auc.dk, Jes maintains two sets of diffs for each kernel version: they are named X.Y.Z.diff.gz and X.Y.Z-native.gz, where X, Y and Z are the components of the kernel version number.

Most users will simply use the standard patches to patch a previous version of Linux/m68k's tree to the current version (this is the procedure outlined above). If you already have a standard Linux source tree, however, it is easier to use the -native patches.

To do this you must have the exact, pristine kernel tree released by Linus for that version; i.e. to make Linux/m68k 2.1.127 you need Linux 2.1.127. You may need to patch your standard Linux source tree using Linus's patches to get it to a version that corresponds with a Linux/m68k release (not every kernel released by Linus is released by Jes).

Once you have identical version numbers, you should cd into your kernel source tree and type the following two commands:

rm -rf include/asm
zcat (path of linux-X.Y.Z-native.diff.gz) | patch -p1 -s

Any errors will be reported on your screen. There may be errors patching the Makefile for some versions (because the SMP setting used to be in there), but these can usually be ignored safely (check the contents of the reject files). You should also make sure that the ARCH setting in the Makefile has not been overridden.