Thread (27 messages) 27 messages, 6 authors, 2007-09-07

Re: [RFC] AmigaOne device tree source v2

From: Gerhard Pircher <hidden>
Date: 2007-09-04 11:49:47

-------- Original-Nachricht --------
Datum: Tue, 4 Sep 2007 00:32:57 +0200
Von: Segher Boessenkool [off-list ref]
An: "Gerhard Pircher" [off-list ref]
CC: linuxppc-dev@ozlabs.org, David Gibson <redacted>
Betreff: Re: [RFC] AmigaOne device tree source v2
PCI memory space sits on the PCI bus, not on the PCI host bridge,
so is not part of "reg" but is part of "ranges" here, since it is
direct mapped into the host's address space.
That's right, but what about this example here (from a Pegasos II):

/proc/device-tree/pci@80000000:
name             "pci"
linux,phandle    0fc59260 (264606304)
bus-range        00000000 00000000
pci-bridge-number 00000000
reg              80000000 40000000
8259-interrupt-acknowledge f1000cb4
ranges           01000000 00000000 00000000 fe000000 00000000 00010000
		 02000000 00000000 80000000 80000000 00000000 40000000
clock-frequency  01fca055 (33333333)
#size-cells      00000002
#address-cells   00000003
device_type      "pci"

AFAIU the reg property overlaps the ranges property for the PCI memory
space from 0x80000000 to 0xC0000000 or the CPU address space at the
same location!? Would be good to know, why it was defined like this.
PCI legacy I/O is not direct mapped: there is no legacy I/O on a
PowerPC system bus.  So, it can not be mentioned in the "ranges"
property, but the PHB registers used to access it should be shown
in the "reg" property.  It could be a simple linear window (it
sounds like it is here?), but it could for example also be implemented
via an address/data register pair.
Yes, it is a simple linear address window. I'll remove its address range
from the reg property.
The order of the "reg" entries depends on the exact model of PCI
bridge, so a device binding for it has to be written.
Only the Pegasos I and the AmigaOne use this PCI bridge. I guess it should
be enough to check for the board type, but a compatible property doesn't
hurt.

Thanks,

Gerhard

-- 
Psssst! Schon vom neuen GMX MultiMessenger gehört?
Der kanns mit allen: http://www.gmx.net/de/go/multimessenger
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help