qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] Re: [PATCHv8 00/16] boot order specification


From: Benjamin Herrenschmidt
Subject: Re: [Qemu-devel] Re: [PATCHv8 00/16] boot order specification
Date: Sun, 12 Dec 2010 10:22:03 +1100

On Sat, 2010-12-11 at 18:06 +0200, Gleb Natapov wrote:
> http://playground.sun.com/pub/p1275/bindings/pci/pci2_1.pdf has table
> on
> page 10 that defines how pci class code should be translated into OF
> name. This is what my patch is using. pci-ata does not look spec
> compliant (or is there more up-to-date spec?)
> 
> >                                                 What should we do
> with
> > address@hidden vs address@hidden
> There is no available IDE OF binding spec, so I when with the way
> OpenBIOS reports ata on qemu-x86. I have no idea what 600 in address@hidden
> may mean, but looking at g3_beige_300.html there is no such node there
> and looking at any other device tree in
> http://penguinppc.org/historical/dev-trees-html/

Those are old and I wouldn't look too closely at what Apple does.

ATA doesn't really need anything complex, mostly the ata controller,
generally named "ata" nowadays with a #address-cells of 1 and a
#size-cells of 0. Children are then typically disk, cdrom, ... (ie block
devices) with a unit address of 0 for master and 1 for slave.

In the case of controllers with multiple ports, typically you have one
such "ata" node per bus. "pci-ata" is a liberal use by Apple here
representing the actual host controller PCI device.

In any case, what matters is the "compatible" property. This is what
defines the programming interface of a device.

> I haven't found one that use this kind of addressing for pci-ata. 
> http://penguinppc.org/historical/dev-trees-html/g3bw_400.html for
> instance has address@hidden/address@hidden/address@hidden/ata-4. 
> address@hidden kind
> of
> addressing is used by devices on mac-io bus which I do not think we
> emulate in qemu. So it looks like OpneBIOS is wrong here. 

Well, it's possible that the @600 represents a register offset within
pci-ata, this is entirely up to pci-ata to do as it wishes there to
define it's own internal binding. Is there a "ranges" property defining
translation accross "pci-ata" ?

Cheers,
Ben.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]