Hello Magnus, your patch solved the problem. Thank you. Manu
Magnus Hjorth a écrit : > Hello Manu, > > Could you try the attached patch to arch/ppc/mm/4xx_mmu.c and see if > it solves your problem? > > Best regards, > Magnus > > > manu wrote: >> Hello, >> I work on a custom board based on a virtex 2 pro FPGA and 8Mbytes of >> SDRAM. >> Untill now I used a 2.4.31 linux ppc kernel with John Williams patches >> and uclinux distribution and everything worked perfectly. >> I've decided to move to the latest 2.6 version from kernel.org >> (2.6.23.1) with an initramfs containing a busybox. >> My complete zImage including the initramfs has a size of 900Kbytes. >> I made some tests with a ML300 board and I managed to get a shell >> easily. >> When I migrated to the custom board, I had the "Now booting the kernel" >> message and then nothing. >> When I trace the code running on the ppc with the debugger, execution >> seems to be stuck in some early initialization code. >> I managed to reproduce the problem on the ML300 using "mem=8m" parameter >> on the bootline. >> With "mem=16m" the kernel boots correctly. >> I'm really surprised by the amount of RAM required to boot the kernel. >> Is there a way to make it boot with only 8Mbytes of RAM ? >> Thanks for your help. >> >> Manu >> _______________________________________________ >> Linuxppc-embedded mailing list >> Linuxppc-embedded@ozlabs.org >> https://ozlabs.org/mailman/listinfo/linuxppc-embedded >> > > > ------------------------------------------------------------------------ > > --- 4xx_mmu_old.c 2007-10-25 08:54:46.000000000 +0200 > +++ 4xx_mmu.c 2007-10-25 08:55:57.000000000 +0200 > @@ -105,7 +105,7 @@ > return s; > } > > - while (s <= (total_lowmem - LARGE_PAGE_SIZE_16M)) { > + while (s + LARGE_PAGE_SIZE_16M <= total_lowmem) { > pmd_t *pmdp; > unsigned long val = p | _PMD_SIZE_16M | _PAGE_HWEXEC | > _PAGE_HWWRITE; > > @@ -120,7 +120,7 @@ > s += LARGE_PAGE_SIZE_16M; > } > > - while (s <= (total_lowmem - LARGE_PAGE_SIZE_4M)) { > + while (s + LARGE_PAGE_SIZE_4M <= total_lowmem) { > pmd_t *pmdp; > unsigned long val = p | _PMD_SIZE_4M | _PAGE_HWEXEC | > _PAGE_HWWRITE; > > _______________________________________________ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded