Kernel CPU87 and CU824
Last Kernel with support for the CPU87/CU824 ppc architecture is 2.6.25. After that Linux switched the all PowerPC boards to a more generic form that uses an instanciation file to initialize the hardware. There is no such file for CPU87/CU824.
Both boards use a similiar CPU but need different kernels as the device initialization is part of the kernel for ppc. CPU87 network is a lxt, CU824 is e100pro.
Preparation
Sources are in Subversion
https://www-acc.gsi.de/svn/bel/embedded/trunk/kernel/cpu87
The vanilla Kernel sources have been modified by Denx (original upstream was at
http://git.denx.de/?p=linux-2.6-denx.git;a=commit;h=23e5e7341e83d8c755c9e7cf20f2b45d9047c01a linux-2.6-denx-23e5e7341e83d8c755c9e7cf20f2b45d9047c01a but is no longer available). Patches and sources in
https://www-acc.gsi.de/viewvc/svn/embedded/trunk/kernel/cpu87/
The following patches are necessary
- linux-2.6.25.5-01_microsys.patch
- linux-2.6.25.5-02_vme.patch
- linux-2.6.25.5-03_phy-support.patch
- linux-2.6.25.5-04_tx-collision.patch
- linux-2.6.25.5-05_vme_write.patch
- linux-2.6.25.5-06_msr_i.patch
It is
not necessary to patch ec-irpts. ec-irpts is maintained as an out of tree module in
https://www-acc.gsi.de/viewvc/view/bel/frontend/trunk/cpu87/ subversion.
Initialize ELDK environment (ARCH and CROSS_COMPILER)
EL6
. /opt/eldk/init.sh
export ARCH=ppc
export CROSS_COMPILE=powerpc-linux-
export -n LDFLAGS
Config
make mrproper
make cpu87_defconfig
# or make cu824_defconfig
edit .config and set the following settings to "y"
CONFIG_PHYLIB=y
CONFIG_LXT_PHY=y
CONFIG_TMPFS=y
CONFIG_NFS_V3=y
CONFIG_PRINTK_TIME=y
CONFIG_DEBUG_BUGVERBOSE=y
CONFIG_EEPRO100=y
update the config so all depencies of the above options are also set
yes "" | make config
build
make uImage
Result is
arch/ppc/boot/images/uImage
ec_irpts
checkout from
https://www-acc.gsi.de/viewvc/view/bel/frontend/trunk/cpu87/ subversion.
KMOD=/path/to/the/kernel/you/just/build make modules
Module ec_irpts will be loaded with a script and insmod. On the blades that is
/common/usr/eldk/ppc_6xx/home/vme/interrupt/ec_irpts-$kver.ko