Subject: Re: evbppc reserved-tlb cleanup
To: Jachym Holecek <firstname.lastname@example.org>
From: Jachym Holecek <email@example.com>
Date: 09/24/2006 15:59:11
# Juergen Hannken-Illjes 2006-09-24:
> On Sun, Sep 24, 2006 at 03:33:27PM +0200, Jachym Holecek wrote:
> > Hmm, interesting it worked before (pckbc was never reserve-mapped ;-).
> > I guess we can uncondionally map 0x7400'0000 -- 0x7500'0000 like below
> > (patch against -current, see the very end).
> > -- Jachym
> The current set_tlb() aligns its address as 'addr &= ~(TLB_PG_SIZE-1);'
> This converts BASE_COM == 0x740005f0 to 0x74000000 and so maps the complete
> ISA bus.
Yes, ppc4xx_tlb_reserve() does the same. This however happened only
in COM_IS_CONSOLE case. From the panic() message I assume tsutsui@
is testing the other case?
> Best way is to add a '#define BASE_ISA 0x74000000' to evbppc/include/explora.h
> and use it here like
> ppc4xx_tlb_reserve(BASE_ISA, BASE_ISA, TLB_PG_SIZE, TLB_I | TLB_G);
> #ifndef COM_IS_CONSOLE
> ppc4xx_tlb_reserve(BASE_FB, BASE_FB, TLB_PG_SIZE, TLB_I | TLB_G);
> ppc4xx_tlb_reserve(BASE_FB2, BASE_FB2, TLB_PG_SIZE, TLB_I | TLB_G);
Agreed, I'll make it so (if my second explora patch works).