All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gleb Natapov <gleb@redhat.com>
To: "Kevin O'Connor" <kevin@koconnor.net>
Cc: qemu-devel@nongnu.org, kvm@vger.kernel.org
Subject: Re: [PATCHv2 0/8 RFC] boot order specification
Date: Mon, 1 Nov 2010 09:53:51 +0200	[thread overview]
Message-ID: <20101101075351.GX26191@redhat.com> (raw)
In-Reply-To: <20101031222553.GA16443@morn.localdomain>

On Sun, Oct 31, 2010 at 06:25:53PM -0400, Kevin O'Connor wrote:
> On Sun, Oct 31, 2010 at 01:40:01PM +0200, Gleb Natapov wrote:
> > This is current sate of the patch series for people to comment on.
> > I tried to use open firmware naming scheme to specify device path names.
> > 
> > The patch series produce names like these:
> > for pci machine:
> > /pci@i0cf8/pci-isa-bridge@1/fdc@03f1/floppy@0
> > /pci@i0cf8/pci-isa-bridge@1/fdc@03f1/floppy@1
> > /pci@i0cf8/ata@1,1/ata-disk@1:0
> > /pci@i0cf8/ata@1,1/ata-disk@1:1
> > /pci@i0cf8/virtio-blk@3/virtio-disk@0
> > /pci@i0cf8/ethernet@4/ethernet-phy@0
> > /pci@i0cf8/ethernet@5/ethernet-phy@0
> > 
> > for isa machine:
> > adding '/isa/fdc@03f1/floppy@0' at index 2
> > adding '/isa/fdc@03f1/floppy@1' at index 1
> > adding '/isa/ata@0170/ata-disk@0:0' at index 0
> > adding '/isa/ata@0170/ata-disk@0:1' at index 3
> 
> Hi Gleb,
> 
> How will USB drives be identified?
> 
USB bus has Open Firmware binding. I haven't look at the spec yet, but it
should be easy.

> I'm not sure how SeaBIOS will be able to line up something like
> "/pci@i0cf8/ethernet@4/ethernet-phy@0" to an optionrom BEV.  Also, if
> there is an optionrom with BCVs (eg, a scsi card), I'm not sure how
> that would that would be identified.

The way to parse  "/pci@i0cf8/ethernet@4/ethernet-phy@0" is this: each
element (between /.../) consist of node-name@unit-address. node-name
describes device/bus. unit-address is a device address on preceding node.
So pci@i0cf8 tells us that this is pci bus accessible through io
register 0x0cf8, ethernet@4 tells us that this is ethernet device in pci
slot 4 function 0, (ata@1,1 means ata device in slot 1 function 1).
ethernet-phy@0 means first phy on this ethernet device (usually there is
only one anyway). So if the pci card in slot 4 device 0 has optionrom
with BCV Seabios can associate bootindex with it easily given the 
device path above.

--
			Gleb.

WARNING: multiple messages have this Message-ID (diff)
From: Gleb Natapov <gleb@redhat.com>
To: Kevin O'Connor <kevin@koconnor.net>
Cc: qemu-devel@nongnu.org, kvm@vger.kernel.org
Subject: [Qemu-devel] Re: [PATCHv2 0/8 RFC] boot order specification
Date: Mon, 1 Nov 2010 09:53:51 +0200	[thread overview]
Message-ID: <20101101075351.GX26191@redhat.com> (raw)
In-Reply-To: <20101031222553.GA16443@morn.localdomain>

On Sun, Oct 31, 2010 at 06:25:53PM -0400, Kevin O'Connor wrote:
> On Sun, Oct 31, 2010 at 01:40:01PM +0200, Gleb Natapov wrote:
> > This is current sate of the patch series for people to comment on.
> > I tried to use open firmware naming scheme to specify device path names.
> > 
> > The patch series produce names like these:
> > for pci machine:
> > /pci@i0cf8/pci-isa-bridge@1/fdc@03f1/floppy@0
> > /pci@i0cf8/pci-isa-bridge@1/fdc@03f1/floppy@1
> > /pci@i0cf8/ata@1,1/ata-disk@1:0
> > /pci@i0cf8/ata@1,1/ata-disk@1:1
> > /pci@i0cf8/virtio-blk@3/virtio-disk@0
> > /pci@i0cf8/ethernet@4/ethernet-phy@0
> > /pci@i0cf8/ethernet@5/ethernet-phy@0
> > 
> > for isa machine:
> > adding '/isa/fdc@03f1/floppy@0' at index 2
> > adding '/isa/fdc@03f1/floppy@1' at index 1
> > adding '/isa/ata@0170/ata-disk@0:0' at index 0
> > adding '/isa/ata@0170/ata-disk@0:1' at index 3
> 
> Hi Gleb,
> 
> How will USB drives be identified?
> 
USB bus has Open Firmware binding. I haven't look at the spec yet, but it
should be easy.

> I'm not sure how SeaBIOS will be able to line up something like
> "/pci@i0cf8/ethernet@4/ethernet-phy@0" to an optionrom BEV.  Also, if
> there is an optionrom with BCVs (eg, a scsi card), I'm not sure how
> that would that would be identified.

The way to parse  "/pci@i0cf8/ethernet@4/ethernet-phy@0" is this: each
element (between /.../) consist of node-name@unit-address. node-name
describes device/bus. unit-address is a device address on preceding node.
So pci@i0cf8 tells us that this is pci bus accessible through io
register 0x0cf8, ethernet@4 tells us that this is ethernet device in pci
slot 4 function 0, (ata@1,1 means ata device in slot 1 function 1).
ethernet-phy@0 means first phy on this ethernet device (usually there is
only one anyway). So if the pci card in slot 4 device 0 has optionrom
with BCV Seabios can associate bootindex with it easily given the 
device path above.

--
			Gleb.

  reply	other threads:[~2010-11-01  7:53 UTC|newest]

Thread overview: 70+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-10-31 11:40 [PATCHv2 0/8 RFC] boot order specification Gleb Natapov
2010-10-31 11:40 ` [Qemu-devel] " Gleb Natapov
2010-10-31 11:40 ` [PATCHv2 1/8] Introduce deriver_name field to DeviceInfo structure Gleb Natapov
2010-10-31 11:40   ` [Qemu-devel] " Gleb Natapov
2010-11-04  9:20   ` Markus Armbruster
2010-11-04  9:20     ` Markus Armbruster
2010-11-04  9:42     ` Gleb Natapov
2010-11-04  9:42       ` Gleb Natapov
2010-11-04 14:58       ` Markus Armbruster
2010-11-04 15:44         ` Gleb Natapov
2010-11-05 14:14           ` Markus Armbruster
2010-11-05 15:41             ` Gleb Natapov
2010-11-05 16:24               ` Markus Armbruster
2010-11-05 18:31                 ` Gleb Natapov
2010-11-06  9:01                   ` Markus Armbruster
2010-11-06 11:53                     ` Gleb Natapov
2010-11-06 12:55                       ` Markus Armbruster
2010-10-31 11:40 ` [PATCHv2 2/8] Keep track of ISA ports ISA device is using in qdev Gleb Natapov
2010-10-31 11:40   ` [Qemu-devel] " Gleb Natapov
2010-10-31 11:40 ` [PATCHv2 3/8] Add get_dev_path callback to ISA bus " Gleb Natapov
2010-10-31 11:40   ` [Qemu-devel] " Gleb Natapov
2010-10-31 11:40 ` [PATCHv2 4/8] Store IDE bus id in IDEBus structure for easy access Gleb Natapov
2010-10-31 11:40   ` [Qemu-devel] " Gleb Natapov
2010-11-03 13:39   ` Markus Armbruster
2010-11-03 13:39     ` Markus Armbruster
2010-11-03 13:47     ` Gleb Natapov
2010-11-03 13:47       ` Gleb Natapov
2010-11-03 15:18       ` Markus Armbruster
2010-11-03 16:43         ` Gleb Natapov
2010-11-03 17:22           ` Markus Armbruster
2010-11-04  8:07             ` Gleb Natapov
2010-11-04  8:46               ` Markus Armbruster
2010-11-04  9:23                 ` Gleb Natapov
2010-11-04 14:22                   ` Markus Armbruster
2010-11-04 15:26                     ` Gleb Natapov
2010-11-05 14:04                       ` Markus Armbruster
2010-11-05 15:54                         ` Gleb Natapov
2010-11-05 16:31                           ` Markus Armbruster
2010-11-05 18:44                             ` Gleb Natapov
2010-11-06  9:25                               ` Markus Armbruster
2010-11-06 11:37                                 ` Gleb Natapov
2010-11-06 12:46                                   ` Markus Armbruster
2010-10-31 11:40 ` [PATCHv2 5/8] Add get_dev_path callback to IDE bus Gleb Natapov
2010-10-31 11:40   ` [Qemu-devel] " Gleb Natapov
2010-10-31 11:40 ` [PATCHv2 6/8] Add get_dev_path callback for system bus Gleb Natapov
2010-10-31 11:40   ` [Qemu-devel] " Gleb Natapov
2010-10-31 11:40 ` [PATCHv2 7/8] Change pci bus get_dev_path callback to print only slot and func Gleb Natapov
2010-10-31 11:40   ` [Qemu-devel] " Gleb Natapov
2010-11-08 17:17   ` Michael S. Tsirkin
2010-11-08 17:17     ` [Qemu-devel] " Michael S. Tsirkin
2010-11-08 17:29     ` Gleb Natapov
2010-11-08 17:29       ` [Qemu-devel] " Gleb Natapov
2010-11-08 18:12       ` Michael S. Tsirkin
2010-11-08 18:12         ` [Qemu-devel] " Michael S. Tsirkin
2010-11-08 18:22         ` Gleb Natapov
2010-11-08 18:22           ` [Qemu-devel] " Gleb Natapov
2010-11-08 21:00       ` Michael S. Tsirkin
2010-11-08 21:00         ` [Qemu-devel] " Michael S. Tsirkin
2010-11-08 21:12         ` Gleb Natapov
2010-11-08 21:12           ` [Qemu-devel] " Gleb Natapov
2010-11-08 17:26   ` Michael S. Tsirkin
2010-11-08 17:26     ` [Qemu-devel] " Michael S. Tsirkin
2010-10-31 11:40 ` [PATCHv2 8/8] Add bootindex parameter to net/block/fd device Gleb Natapov
2010-10-31 11:40   ` [Qemu-devel] " Gleb Natapov
2010-10-31 22:25 ` [PATCHv2 0/8 RFC] boot order specification Kevin O'Connor
2010-10-31 22:25   ` [Qemu-devel] " Kevin O'Connor
2010-11-01  7:53   ` Gleb Natapov [this message]
2010-11-01  7:53     ` Gleb Natapov
2010-11-04  9:24     ` Markus Armbruster
2010-11-04  9:45       ` Gleb Natapov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20101101075351.GX26191@redhat.com \
    --to=gleb@redhat.com \
    --cc=kevin@koconnor.net \
    --cc=kvm@vger.kernel.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.