On Fri, Jul 26, 2013 at 06:28:46PM -0500, Scott Wood wrote:
> On 07/04/2013 07:54:09 AM, Kevin Hao wrote:
> >This is based on the codes in the head_44x.S. Since we always align to
> >256M before mapping the PAGE_OFFSET for a relocatable kernel, we also
> >change the init tlb map to 256M size.
> >
> >Signed-off-by: Kevin Hao <haoke...@gmail.com>
> >---
> >v2: Move the code to set kernstart_addr and virt_phys_offset to a
> >c function.
> >    So we can expand it easily later.
> >
> >Hi Scott,
> >
> >I still use the 256M align for the init tlb as in v1 for the
> >following reasons:
> >  * This should be the most possible case in reality.
> 
> There is no "most possible case".  It's either possible (and
> supported) or not.  And having less than 256M is definitely
> possible.  The 8540 reference board has 64M.
> 
> AMP scenarios that start on a 64M-aligned but not 256M-aligned
> address are also something I've done.
> 
> >  * This is just for very early booting code and should not be a
> >big issue
> >    if the first tlb entry shrink to a less size later.
> 
> "We can probably get away with it most of the time" is not a very
> good justification.  What's wrong with the suggestion I made last
> time, of basing the size on the alignment of the address?

OK, I will use the 64M align.

> 
> >+    /*
> >+     * We have the runtime (virutal) address of our base.
> >+     * We calculate our shift of offset from a 256M page.
> >+     * We could map the 256M page we belong to at PAGE_OFFSET and
> >+     * get going from there.
> >+     */
> >+    lis     r4,KERNELBASE@h
> >+    ori     r4,r4,KERNELBASE@l
> >+    rlwinm  r6,r25,0,0xfffffff              /* r6 = PHYS_START % 256M */
> >+    rlwinm  r5,r4,0,0xfffffff               /* r5 = KERNELBASE % 256M */
> >+    subf    r3,r5,r6                        /* r3 = r6 - r5 */
> >+    add     r3,r4,r3                        /* Required Virutal Address */
> 
> s/Virutal/Virtual/

Fixed.

Thanks,
Kevin
> 
> -Scott

Attachment: pgphD5bME8MxB.pgp
Description: PGP signature

_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Reply via email to