> 'reg' and 'ranges' should not typically overlap. 'reg' should only
> encode control registers for the bridge, not the whole PCI space (not
> that I'm even entirely sure what you mean by that).
>
> > ranges = <01000000 0 00000000 fe000000 0 00c00000 // PCI
> > I/O
> > 02000000 0 80000000 80000000 0 7d000000 // PCI
> > memory
> > 02000000 0 fd000000 fd000000 0 01000000>; // PCI
> > alias memory
> > 8259-interrupt-acknowledge = <fef00000>;
> > #address-cells = <3>;
> > #size-cells = <2>;
> >
> > [EMAIL PROTECTED] {
>
> The unit address (after the @) should be derived from the first range
> listed in the 'reg' property. It's a bus address, not a slot number.
Actually... on PCI, the unit address is often the slot number, or
rather, "slot,function" with the second part ommited for non
multifunction devices.
> All these devices should have unit addresses.
... which for ISA are generally in the form iPORT ([EMAIL PROTECTED] for
example) though I've seen the "i" ommited. Not terribly important I
would say but better to follow the spec.
> > [EMAIL PROTECTED],1 {
>
> This will need a compatible property, at least.
Actually, it's a PCI device, it can have a compatible property based on
the generic PCI device compatible property generation as defined in the
OF PCI binding. Since that's just derived from other fields, I suppose
it can be omitted in a flat DT. It would be -nice- to have a more
explicit cpmpatible property but in that case, not absolutely necessary
since that device will be probed as PCI anyway.
Ben.
_______________________________________________
Linuxppc-dev mailing list
[email protected]
https://ozlabs.org/mailman/listinfo/linuxppc-dev