[Top] [All Lists]


To: Jes Sorensen <>
Subject: Re: [PATCH]PCI on SWARM
From: "Maciej W. Rozycki" <>
Date: Mon, 18 Oct 2004 21:17:43 +0100 (BST)
Cc: Ralf Baechle <>, Manish Lachwani <>,
In-reply-to: <>
Original-recipient: rfc822;
References: <> <> <> <> <> <> <> <>
On Mon, 18 Oct 2004, Jes Sorensen wrote:

> Maciej>  Tough.  Both the PCI memory and the PCI I/O spaces are mapped
> Maciej> in several areas, depending on the byte lane swapping policy
> Maciej> needed and whether 64-bit addressing is feasible or not.  We'd
> Maciej> need two areas for I/O and four for memory (plus another one
> Maciej> for the 40-bit HT address space).
> Dual address cycles, ie. 64 bit addressing is fscked on the 1250 from
> what I remember. Correct way to work around this is to stick all
> physical memory outside the 32 bit space into ZONE_HIGHMEM - had a
> patch for 2.4, but I lost it ages ago ;-(

 The BCM1250A's PCI is obviously 32-bit only (the host bridge is
explicitly documented not to support DACs), but you need to use 64-bit
addressing to access the whole 4GB range -- the bus is decoded starting
from 0xf800000000 and 0xf900000000, with a different byte lane swapping
policy for each of these areas.  For limited access for 32-bit software,
you can use alternate mappings at 0x40000000 and 0x60000000, but they
provide only 512MB of space each.

 I don't think something like DACs exists for HT.


<Prev in Thread] Current Thread [Next in Thread>