All of lore.kernel.org
 help / color / mirror / Atom feed
* LOADADDR and low physical addresses?
@ 2002-09-06 20:04 Matthew Dharm
  2002-09-06 20:53 ` Jun Sun
  0 siblings, 1 reply; 6+ messages in thread
From: Matthew Dharm @ 2002-09-06 20:04 UTC (permalink / raw)
  To: Linux-MIPS

So, I've got an interesting problem... which has forced me to look at
the use of the LOADADDR variable in the Makefile, and try (quickly) to
brush up on my linker scripting...

Basically I've got a processor with on-chip registers that need to be
located in the first 512MByte of _physical_ address.  To make things
difficult, they cannot be re-located once placed (configuration is
done by a hardware config stream at reset).  It's only 16KBytes of
address, but since I recall that linux on mips can't (well, probably
can't) handle discontiguous memory maps (we discussed this about a
year ago, I think), I was looking for a good place to put them.

Now, I think my problems are solved if the LOADADDR variable works the
way I think it does -- that the kernel loads at that address, and only
uses memory from that point upwards.  So, if my LOADADDR is
0x80100000, then the first 0x100000 won't get used.  Of course, the
exception vectors are there, but that doesn't take up that much space.
So there should be a chunk of address space I can use for other
things, like this register bank.

Yes? No?  Is my understanding even close?

Matt

P.S. Of course, if this is right, then I need to figure out the
proper/best way to use the add_memory_region() function....

--
Matthew D. Dharm                            Senior Software Designer
Momentum Computer Inc.                      1815 Aston Ave.  Suite 107
(760) 431-8663 X-115                        Carlsbad, CA 92008-7310
Momentum Works For You                      www.momenco.com

^ permalink raw reply	[flat|nested] 6+ messages in thread
* RE: LOADADDR and low physical addresses?
@ 2002-09-06 22:35 Manoj Ekbote
  0 siblings, 0 replies; 6+ messages in thread
From: Manoj Ekbote @ 2002-09-06 22:35 UTC (permalink / raw)
  To: 'Matthew Dharm'; +Cc: Linux-MIPS


-----Original Message-----
From: Matthew Dharm [mailto:mdharm@momenco.com]
Sent: Friday, September 06, 2002 2:13 PM
To: Jun Sun
Cc: Linux-MIPS
Subject: RE: LOADADDR and low physical addresses?


Yes, the having two devices at the same physical address might be a
problem, but one I _might_ be able to work around.  Not only do I have
a large bank of SDRAM, but I also have a small bank of on-chip SRAM.

So I'm thinking that the map will go (starting from 0) like this:
on-chip SRAM, control registers, main memory

And this is where I think the add_memory_region() magic might need to
happen.  Do I need to add the on-chip SRAM and control registers using
add_memory_region()?  


--I am pretty sure you don't have to do that.You just need to tell Linux 
--where the main memory starts at.

Manoj

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2002-09-09 18:17 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-09-06 20:04 LOADADDR and low physical addresses? Matthew Dharm
2002-09-06 20:53 ` Jun Sun
2002-09-06 21:13   ` Matthew Dharm
2002-09-06 21:42     ` Jun Sun
2002-09-09 18:17       ` Maciej W. Rozycki
  -- strict thread matches above, loose matches on Subject: below --
2002-09-06 22:35 Manoj Ekbote

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.