On May 14, 2009, at 12:38 PM, Fredrik Arnerup wrote: > The MAXSIZE field in the TLB1CFG register is 4 bits, not 8 bits. > This made setup_ddr_tlbs() try to set up a TLB larger than the e500 > maximum > (256 MB) > which made u-boot hang in board_init_f() when trying to create a new > stack > in RAM. > I have an mpc8540 with one 1GB dimm. > > Signed-off-by: Fredrik Arnerup <fredrik.arne...@edgeware.tv> > > --- ../tmp/u-boot-2009.03/cpu/mpc85xx/tlb.c 2009-03-21 > 22:04:41.000000000 +0100 > +++ cpu/mpc85xx/tlb.c 2009-05-14 19:26:17.000000000 +0200 > @@ -134,7 +134,7 @@ > unsigned int tlb_size; > unsigned int ram_tlb_index = CONFIG_SYS_DDR_TLB_START; > unsigned int ram_tlb_address = (unsigned > int)CONFIG_SYS_DDR_SDRAM_BASE; > - unsigned int max_cam = (mfspr(SPRN_TLB1CFG) >> 16) & 0xff; > + unsigned int max_cam = (mfspr(SPRN_TLB1CFG) >> 16) & 0xf; > u64 size, memsize = (u64)memsize_in_meg << 20; > > size = min(memsize, CONFIG_MAX_MEM_MAPPED);
Ack. This should get picked up for v2009.06 - k _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot