<div><font color="#996633">Hi vladimir</font></div>
<div><font color="#996633">&gt;I think this kind of behaviour could be configurable. In case you have<br>&gt;described bootloader can protect its code. Actually, kernel does not<br>&gt;know itself how much RAM is presented. Bootloader must provide kernel<br>
&gt;with memory configuration through ATAGs (see mem boot option).<br>&gt;Therefore, bootloader can reserve some RAM for itself and does not say<br>&gt;kernel about it. As you have already get kernel use all memory which<br>
&gt;is provided with bootloader and it is not always an entry RAM.</font></div>
<div> </div>
<div>In our bootloader, it seems they arent sending any ATAG_MEM as such,</div>
<div>but the are calling start_kernel() function, in which start_kernel is a &#39;type casted function pointer&#39;</div>
<div>of the &quot;kernel starting address&quot;.</div>
<div> </div>
<div>if ATAG_MEM is not sent..how wil the kernel treat the available memory.</div>
<div> </div>
<div>By the way ATAG_MEM has only start memory address.</div>
<div>How to specify that &quot;this much memory need to be reserved&quot; for bootloader?<br><br></div>
<div class="gmail_quote">On Mon, Jul 25, 2011 at 10:49 AM, Vladimir Murzin <span dir="ltr">&lt;<a href="mailto:murzin.v@gmail.com">murzin.v@gmail.com</a>&gt;</span> wrote:<br>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">Hi sandeep!<br>
<div class="im"><br>On 7/25/11, sandeep kumar &lt;<a href="mailto:coolsandyforyou@gmail.com">coolsandyforyou@gmail.com</a>&gt; wrote:<br>&gt; Hi all,<br>&gt; In Android target mobiles there is a facility called &quot;Ramdump&quot;, where the<br>
&gt; entire Ram image is copied to a file<br>&gt; as the kernel goes to panic.<br>&gt;<br>&gt; Ramdump is implemented like this<br>&gt; 1) As the panic() function is called target will be reset.<br>&gt; 2) Bootloader boots up in specific mode, where it enables the USB driver in<br>
&gt; uploading mode.<br>&gt; 3) Through USB entire RAM content is copied to a file in the host computer.<br>&gt; 4) This file is parsed through different tools and we can get the logs info<br>&gt; wat exactly happened just before kernel panic happend.<br>
&gt;<br>&gt;<br>&gt; Now here is the interesting part,<br>&gt; While the mobile&#39;s RAM image is being uploaded to host computer, our<br>&gt; bootloader is still running in the mobile&#39;s RAM.<br>&gt; How can it copy its own running region.<br>
&gt;<br>&gt; This triggered me the following questions,<br>&gt;<br>&gt; 1) When bootloader runs, will it run in a specific reserved region of RAM or<br>&gt; it takes entire RAM?<br><br></div>AFAIK, it runs in specific region. For instance, for Das U-boot<br>
bootloader you can get this with<br>$file ./uImage<br>uImage: u-boot legacy uImage, Linux-2.6.35-g6d019da-dirty, Linux/ARM,<br>OS Kernel Image (Not compressed), 2733288 bytes, Thu Sep  2 01:11:09<br>2010, Load Address: 0x80008000, Entry Point: 0x80008000, Header CRC:<br>
0xEA95BF09, Data CRC: 0xF652AF6B<br>
<div class="im"><br>&gt; 2) When it hands over the control to kernel, will it relinquish the entire<br>&gt; RAM or certain part of RAM is reserved for it?<br>&gt; 3) Does kernel use the entire RAM while running?<br><br></div>
I think this kind of behaviour could be configurable. In case you have<br>described bootloader can protect its code. Actually, kernel does not<br>know itself how much RAM is presented. Bootloader must provide kernel<br>with memory configuration through ATAGs (see mem boot option).<br>
Therefore, bootloader can reserve some RAM for itself and does not say<br>kernel about it. As you have already get kernel use all memory which<br>is provided with bootloader and it is not always an entry RAM.<br>
<div>
<div></div>
<div class="h5"><br>&gt; 4) When the kernel is running, is ther any chance that, control again be<br>&gt; taken back to bootloader?(coz i saw in bootloader code kernel is being<br>&gt; called,<br>&gt;<br>&gt; after that code also some code is there,some printks and error handling<br>
&gt; stuff)<br>&gt;<br>&gt; Pls help me out here..<br>&gt;<br>&gt;<br>&gt;<br>&gt; --<br>&gt; With regards,<br>&gt; Sandeep Kumar Anantapalli,<br>&gt;<br></div></div></blockquote></div><br><br clear="all"><br>-- <br>With regards,<br>
Sandeep Kumar Anantapalli,<br><br>