Subject: Re: ARM PCI init.
To: Snorlax <snorlax_vs_topcat@hotmail.com>
From: Richard Earnshaw <rearnsha@arm.com>
List: port-arm
Date: 01/22/2004 13:55:41
> > On Wed, Jan 21, 2004 at 07:38:29PM +0100, Snorlax wrote:
> > >    How much does NetBSD scan into the PCI config of the target platform?
> >
> > That depends on the specific platform.  A number of ports (re)configure
> > the PCI bus.  Some ports have firmware that takes care of all of the
> > configuration and NetBSD just inherits it.
> >
> > >    "Some  bits  are critical to PCI Controller's operation and should
> not
> > >    be controlled by illegal software."
> >
> > What's your definition of "illegal software" in this context?
> >
> > -allen
> 
> The platform uses an ARM920T processor. The same one as used on the evbarm
> port.
> I'm just asking to know how much I have to modify the modify the sample
> bootloader that Samsung provides to make it fit my system and load NetBSD.
> That bootloader sets up the PCI memory mappings, but I also know it is
> possible for the OS to reassign PCI memory space as you mention. 

If the bootloader has configured the PCI bus, then you probably don't need 
to do it again (unless it's done it incorrectly).

> This system
> just doesn't have loads of memory to fiddle around with, let alone virtual
> memory at all.
> I would like the system to be able to fit into a 16MB memory footprint, but
> I'm a little worried about that the 3 PCI memory address bars can be
> reallocated pretty much everywhere within 2 x 32Mbytes depending on the
> configuration type : )
> 

I think you are confusing virtual and physical memory here.  The 920T 
supports virtual memory (and NetBSD requires such support).  You don't map 
the PCI onto physical RAM, you map it into the virtual address space 
wherever is appropriate, using as much virtual address space as you feel 
is necessary (normally this will be determined by the size of the relevant 
'windows' provided by the PCI bridge chip).

R.