Didj Explorer Kernel
This is a work in progress Explains what to change in order to build the 2.6.31 LF Explorer kernel for Didj. Use your DJHI to boot the zImage from uSD.
1. make lf1000_ts_defconfig
2. edit .config. (we are enabling jffs2 and giving the right bootargs):
CONFIG_CMDLINE="mem=18M mlc_fb=0x01200000,0x01200000 init=/sbin/init console=ttyS0,115200 root=31:06 ro rootflags=noatime rootfstype=jffs2 ubi.mtd=Brio ubi.mtd=prg_Brio ubi.mtd=Cartridge"
3. edit line 184 of linux2.6/Makefile to point to your cross compiler (or comment it out if you know the varaible is set elsewhere).
4. edit include/asm/mach-types.h (the number has changed to 2028 - but the boot loader only knows about 1235)
(you may need to 'make' once and ctrl-c to get the mach-types file generated the first time.)
//define MACH_TYPE_ZIR2412 1235
define MACH_TYPE_DIDJ 1235
//define MACH_TYPE_DIDJ 2028
4.1 instead of editig mach-types.h you can edit the file that it is generated from, mach-types (no.h!) in /linux-2.6/arch/arm/tools, edit the file and look for 2028, copy everything on the line upto 2028:
didj MACH_DIDJ DIDJ
comment out the 2028 line and now search for 1235 and replace the line with the above, make sure you add 1235 to the end:
didj MACH_DIDJ DIDJ 1235
This allows you to do 'make clean' without having to re-edit mach-types.h each time, if you also own an explorer you might not want to do this.
5. edit drivers/mtd/nand/lf1000.c (using didj's 9 partition scheme)
6. Edit arch\arm\mach-lf1000\include\mach\mlc.h
- define MLC_MAJOR 251
- define MLC_LAYER_MAJOR 250
This will enable the mlc driver to work with /dev/mlc
zImage is found in arch/arm/boot
To mount /Didj:
mount -t vfat -o async,noatime /dev/mtdblock9 /Didj
For framebuffer configuration see Leapster_Explorer_Framebuffer_Driver
For MMC Card configuration see Didj_and_Explorer_MMC_Patch