Linux 2.6 on ml403 board
Filippo Capurso - DAVE srl
filippo.capurso at dave-tech.it
Fri Jun 16 00:46:19 EST 2006
Hi,
I'm trying to get running linux 2.6.17-rc6 (taken from
linux-2.6-denx.git repository) on a Xilinx ml403 board.
I have a custom design in the Virtex-4 (not the reference design) with
U-Boot starting from flash without problems. I'm also able to download
the kernel image via tftp and store it in the flash memory.
U-Boot boots the image correctly:
=> bootm 0xffe00000
## Booting image at ffe00000 ...
Image Name: Linux-2.6.17-rc5-g75429ea3-dirty
Image Type: PowerPC Linux Kernel Image (gzip compressed)
Data Size: 831805 Bytes = 812.3 kB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
Uncompressing Kernel Image ... OK
Using T32 with the JTAG ICD I've noticed that the kernel code starts its
execution correctly (from 0x00000000), but whet it reaches the MMU
initialization code, it gets into a loop from which it never goes out:
*** 4xx_mmu.c, line 109 ***
while (s <= (total_lowmem - LARGE_PAGE_SIZE_16M)) {
pmd_t *pmdp;
unsigned long val = p | _PMD_SIZE_16M | _PAGE_HWEXEC | _PAGE_HWWRITE;
pmdp = pmd_offset(pgd_offset_k(v), v);
pmd_val(*pmdp++) = val;
pmd_val(*pmdp++) = val;
pmd_val(*pmdp++) = val;
pmd_val(*pmdp++) = val;
v += LARGE_PAGE_SIZE_16M;
p += LARGE_PAGE_SIZE_16M;
s += LARGE_PAGE_SIZE_16M;
}
It is difficult to understand what is really happening with the T32
because all variables in there are cpu registers, so I can't watch them.
Any suggestion will be appreciated.
Thanks in advance
Filippo Capurso
--
DAVE Srl - Electronics System House
via Forniz 2/1
33080 Porcia (PN) - Italy
Telephone: +39.0434.921215
Telefax: +39.0434.1994030
Freefax: +39.02.700520062
web: www.dave-tech.it
e-mail: filippo.capurso at dave-tech.it
how to reach us: http://mail.map24.com/dave
More information about the Linuxppc-embedded
mailing list