Subject: Re: -pmap initlialization
To: None <kamalp@acm.org>
From: Richard Earnshaw <rearnsha@netbsd.org>
List: port-arm
Date: 01/05/2005 23:36:25
On Tue, 04 Jan 2005 00:21:01 PST, "Kamal R. Prasad" wrote:
> Hello,
>
> I found out that as soon as tlb is invalidated, the
> system goes for a toss. Does the configuration below
> look OK? The kernel is loaded at 0xa0200000 and the L1
> page table is at 0xa01fc000.
> Other than an incorrect base addr for the page table,
> what else could cause the system to go for a toss? Why
> wouldn't the system generate an exception in such an
> event? Appreciate any answers.
One more thought.
Your PC is set to the correct kernel VA by the time you enter initarm()
isn't it? That is, you have set up a preliminary page table mapping in
your bootstrap code and done an appropriate jump (not pc-relative) to VA
addresses. One way to tell would be to pass __builtin_return_address(0)
to printf. The value must be in KVA space not physical space. If it
isn't then you'll die when you switch to the real page tables.
R.