PHYSADDR

Tim Kientzle tim at kientzle.com
Sun Mar 3 06:22:14 UTC 2013


On Mar 2, 2013, at 5:18 PM, Ian Lepore wrote:

> On Sat, 2013-03-02 at 10:10 -0800, Tim Kientzle wrote:
>> On Mar 2, 2013, at 9:50 AM, Ian Lepore wrote:
>> 
>>> [...]
>> 
>>> I'm not sure its safe to assume that (entry-pc & 0xfffff000) is the
>>> beginning of the kernel; it's true now but need not be so.  But that's
>>> no big deal, we can tweak the linker script to give us the offset of the
>>> _start symbol so it'll work no matter what.
>> 
>> Patches?  ;-)
> 
> This turned out to be a bit trickier than I first thought it would be,
> but it worked out.
> 
> This gets rids of any reference to PHYSADDR and similar constants in the
> main path through the code.  I didn't address the "running from flash"
> case or anything under #ifdef SMP, yet.  The only constant left is
> KERNBASE which is 0xC0000000 for all arm systems.
> 
> For now I've got #undef PHYSADDR at the top of the code; this is just
> for testing without having to remove it yet from anywhere else.

I see you computing kern_physaddr here.  I presume
we should be using that in machdep.c to initialize the
page tables instead of KERNPHYSADDR?

Tim




More information about the freebsd-arm mailing list