Wu Zhangjin <wuzhangjin@xxxxxxxxx> wrote: > > This patch will help to generate smaller kernel images for linux-MIPS, > /me gets giddy and wets himself with excitement This has made my AR7[1] based Linksys WAG54Gv2 (16MB RAM and 4MB flash, limited to a 768kB kernel) useful, finally...thanks! > $ wc -c vmlinux > 7465416 vmlinux > $ wc -c vmlinuz > 2059691 vmlinuz > > Have tested the 32bit kernel on Qemu/Malta and 64bit kernel on FuLoong > Mini PC. both of them works well. > I got it working (LZMA kernel) however you have hardcoded a lot of bits in there. It looks to my uneducated eye most of the issues lie in that getting a suitable PORT(x), KERNEL_START, KERNEL_SIZE, FREE_MEM_START and FREE_MEM_END is non-trivial on the MIPS platform currently; probably because of the lack of a generic lzma/gzip/bzip2 framework to be used with. For me I used: #define FREE_MEM_START CKSEG0ADDR(0x94a00000) #define FREE_MEM_END CKSEG0ADDR(0x94f00000) I had to replace (you probably should move this from dbg.c to dbg.h): #define PORT(offset) (CKSEG1ADDR(AR7_REGS_UART0) + (4 * offset)) The load address is awkward, but I replaced your 0x8100000 in the Makefile with 0x94400000. Now, the big question is how to work this all out at compile time. :) As a side note, I would personally leave the DEBUG non-optional and turned on as it all disappears at runtime anyway, but I'm no kernel developer :) Again, thanks for this, it truely is great stuff. Cheers [1] http://www.linux-mips.org/wiki/AR7 -- Alexander Clouter .sigmonster says: I will always love the false image I had of you.