On Thu, 4 Apr 2002, Terry Lambert wrote:

> Andrew Gallatin wrote:
> > Me too.  I was about to just change it for alpha, but then I wondered
> > if there was a reason for having BUS_SPACE_MAXSIZE < MAXPHYS.
> From what I understand, the Alpha is limited to doing transfers
> in the first 2G of memory.  I'm not sure if the ISA 16M memory
> limit is in there anywhere, either.
> The problem is that a DMA initiated by a bus mastering device
> can only access as many bis of address space as are passed
> through the bus, end-to-end.
> For ISA, this ends up being a 16M limit; I think the 2G limit
> on Alpha is because the limit is 32 bits, but there is some
> signed math that should be unsigned.

Neither is really applicable here. The actual limits for alpha depend on the
platforma and how you implement it. Typically, the bigger alphas have been
implemented with a 2GB direct mapped window, and then, if they have it, a S/G
map setup for the rest (if any) of memory, which also can include ISA mapping.

The current Alpha 2.4.18 Linux implementation is quite happy to DMA to > 4GB
on quite a few alphas.

BUS_SPACE_MAXSIZE seems to be related to the 'largest xfer you will be allowed
to do at one time'- which is wrong because MAXPHYS is larger.

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to