> Since nobody else is replying I am giving it a shot.
> Hope it helps.
yes it helps, thanks for replying !
> Setting WIRED to zero is just part of kernel
> start-up initialization.
> I think
> this needs to be fixed. A couple of boards should
> be broken because of this.
yes and anyway the default value for WIRED is zero
after a reset.
> > Why this assumption ?
> >
>
> Because all other boards have phys memory starting
> from 0? It simplies code for sure.
Well, a part of the kernel seems to support this
feature but not all, specially mips specific code...
That make me think that it would not so hard to change
it...
I look at arm-arch code, and at the definition of
"page_to_pfn" and it does what I need:
(((page) - mem_map) + PHYS_PFN_OFFSET)
I can't believe that I'm the first one on mips
architecture who is trying to run kernel code located
at a physicall address different from 0 !
> > Are these pages going be used when the Linux is
> > running ?
>
> Not much in MIPS case I suppose.
If these pages are not used during kernel life, it
could save space to not map kernel code in "mem_map".
PFN 0 could be the first page that map kernel data.
This is specialy true if code starts at 0x20000000.
>
> > I noticed CPHYSADDR macro. This macro only works
> if
> > PAGE_OFFSET is equal to 0x80000000. Why does this
> > macro exist ? Why not using __pa macro ?
>
> Don't know much about this one.
>
It is a typically mips specific code that prevents
kernel code to start at address different from 0.
> BTW, once there was a board whose memory starts from
> 0x90000000. It had
> similar problems as yours, but I think it ran in the
> end. Try to search
> the mailing list.
I can't find it in mailing list archive :(
Francis
Découvrez le nouveau Yahoo! Mail : 250 Mo d'espace de stockage pour vos mails !
Créez votre Yahoo! Mail sur http://fr.mail.yahoo.com/
|