>   in the host PC.  Since virt_to_bus and friends are
>   referenced many times, I feel that it is not desirable
>   to slow down the kernel (possibly considerably) by having
>   to calculate non-constant offsets for the virtual to PCI
>   mapping.

What do you estimate the slowdown would be from introducing a variable into 
these calculations?

>Host and add-in mode are two completely separate beasts.

But, fundamentally, they are not.  The only difference is that you have one 
PCI agent (let's call it the "host", or "central function") which sets up the 
configuration space.  Other than that, all devices are equal in a PCI sense.  
Obviously in a particular implementation there might be issues like interrupts 
that prevent everything from working in quite the way you might hope, but not 
all the world is a PC.

It did use to be the case that you would run into trouble because drivers read 
the PCI configuration space directly to get I/O addresses, interrupt numbers 
and the like.  But now that these come from the PCI database which can be 
massaged in advance, you can remap them in any way you choose for a "plugin" 
card.

If you know that the kernel will be running as a host implementation, you can 
take some shortcuts like hardwiring the offsets in virt_to_bus, and having a 
configuration option for that is just fine.  But I see no reason to consider 
the two modes as completely separate.

>>> With a plugin card you will stand more of a chance.
>
>No.  With a host card you stand more of a chance of getting
>the interrupts.

I think you misunderstood what I wrote there.

p.


unsubscribe: body of `unsubscribe linux-arm' to [EMAIL PROTECTED]

Reply via email to