From: Jesper S. <js...@re...> - 2000-08-26 06:59:17
|
[please write proper English. I'm getting too old to find the short'n'cute form cool anymore - now it's just annoying] >>>>> "Manoj" == Manoj Kumar <man...@so...> writes: Manoj> Hello Jesper, Thanx for ur response regarding the XIP patch for Manoj> SH-3 on the mailing list. Manoj> I have a few doubts. Manoj> 1. My understanding of XIP is that the kernel image (which Manoj> includes the text + data) sits in the ROM and executes from Manoj> there. Can u plz explain this scheme a bit more in detail? That is correct. Worth noting is that there is no MMU mapping (page-wise) of that area: we rely on the direct mapping available in kernel space. Manoj> 2. From ur explanation in the mail,i see that 2Megs of RAM is Manoj> used for kernel text+initrd and 5Megs for mapping. The kernel Manoj> text starts at CONFIG_XIP_ROM_START=0c100000,which is a RAM Manoj> address. Since in the XIP scheme,the kernel sits in the Manoj> ROM,why r u placing it in the RAM area? I could be wrong in my For debugging purpose. Setting breakpoints in ROM is hard :) For a proper XIP configuration, you'd select CONFIG_XIP_ROM_START=00100000 (which is in ROM) and CONFIG_MEMORY_START=0x0c100000. Build the image and program it into the ROM at that address (or rather, at 0x00101000). Start it by jumping to 0x80102000. It will copy the data to 0x0c100000 and start executing... Manoj> interpretation of the entire thing. What is the Manoj> CONFIG_MEMORY_START for?Is it the starting address of the area Manoj> which will be used by the Linux kernel. CONFIG_MEMORY_START defines RAM start - as in: the area where the paged mapping of memory begins. Jesper |