qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Paul Brook <paul@codesourcery.com>
To: Gerd Hoffmann <kraxel@redhat.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 04/13] qdev: add generic qdev_device_add()
Date: Fri, 10 Jul 2009 21:51:03 +0100	[thread overview]
Message-ID: <200907102151.04322.paul@codesourcery.com> (raw)
In-Reply-To: <4A57A449.5000907@redhat.com>

On Friday 10 July 2009, Gerd Hoffmann wrote:
> On 07/10/09 19:23, Paul Brook wrote:
> > On Friday 10 July 2009, Gerd Hoffmann wrote:
> >> Will be used for -device command line.
> >
> > I think this is going in the wrong direction. The device tree provides us
> > with a standard way of identifying which bus to add a device to. We
> > should be removing uses of pci_create, not adding new ones.
>
> Why?
>
> Let me guess: Because pci bus numbers are guest-changeable and thus not
> stable?

Because I don't think this code need to be bus specific.

> How about using user-specified ids to specify busses then?
>
>PCI example:
>   instead of  -device $name,addr=$bus:$slot.$fn
>   use         -device $name,bus=root,addr=$slot.$fn
>
>SCSI example:
>   host adapter:  -device lsi,id=foo
>   scsi disk:     -device scsi-disk,bus=foo,addr=$lun

I was thinking something a bit more like

  -device lsi,bus=/i440fx/pci
  -device scsi-disk,bus=/i440fx/pci/lsi/scsi

This example is maybe slightly unclear because the i440fx and lsi child busses 
happen to be called "pci" and "scsi". For devices with multiple child busses 
they may have different names.

Adding some form of aliases may be convenient. For example the pci machine 
could alias "pci0" to "/i440fx/pci", which would give 
  -device lsi,bus=pci0
  -device scsi-disk,bus=pci0/lsi/scsi

We also need to figure out the naming of multiple similar devices on the same 
bus. Possibly your "device id" could be used to identify devices on a bus. 
e.g. if we wanted two scsi adapters:

 -device lsi,bus=pci0,id=foo
 -device lsi,bus=pci0,id=bar
 -device scsi-disk,bus=pci0/foo/scsi
 -device scsi-disk,bus=pci0/bar/scsi

Paul

  reply	other threads:[~2009-07-10 20:51 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-07-10 11:26 [Qemu-devel] [PATCH v2 0/13] qdev patches: properties, -device switch, id=<tag> & more Gerd Hoffmann
2009-07-10 11:26 ` [Qemu-devel] [PATCH 01/13] qdev: rework device properties Gerd Hoffmann
2009-07-10 17:13   ` Paul Brook
2009-07-10 19:28     ` Gerd Hoffmann
2009-07-10 19:42       ` Paul Brook
2009-07-10 20:10         ` Gerd Hoffmann
2009-07-10 11:26 ` [Qemu-devel] [PATCH 02/13] qdev: factor out driver search to qdev_find_info() Gerd Hoffmann
2009-07-10 11:26 ` [Qemu-devel] [PATCH 03/13] qdev/pci: make pci_create return DeviceState instead of PCIDevice Gerd Hoffmann
2009-07-10 11:26 ` [Qemu-devel] [PATCH 04/13] qdev: add generic qdev_device_add() Gerd Hoffmann
2009-07-10 17:23   ` Paul Brook
2009-07-10 20:27     ` Gerd Hoffmann
2009-07-10 20:51       ` Paul Brook [this message]
2009-07-14  7:40         ` Gerd Hoffmann
2009-07-14 23:43           ` Markus Armbruster
2009-07-15  1:28             ` Markus Armbruster
2009-07-15  6:26             ` Gerd Hoffmann
2009-07-10 11:26 ` [Qemu-devel] [PATCH 05/13] qdev: add -device command line option Gerd Hoffmann
2009-07-10 11:26 ` [Qemu-devel] [PATCH 06/13] qdev: add no_user, alias and desc Gerd Hoffmann
2009-07-10 11:26 ` [Qemu-devel] [PATCH 07/13] qdev: es1370 description Gerd Hoffmann
2009-07-10 11:26 ` [Qemu-devel] [PATCH 08/13] qdev: convert all vga Gerd Hoffmann
2009-07-10 11:26 ` [Qemu-devel] [PATCH 09/13] qdev/pci: hook up i440fx Gerd Hoffmann
2009-07-10 11:26 ` [Qemu-devel] [PATCH 10/13] qdev: add user-specified identifier to devices Gerd Hoffmann
2009-07-10 17:31   ` Paul Brook
2009-07-10 19:03     ` Gerd Hoffmann
2009-07-10 11:26 ` [Qemu-devel] [PATCH 11/13] switch balloon initialization to -device Gerd Hoffmann
2009-07-10 11:26 ` [Qemu-devel] [PATCH 12/13] qdev: add id= support for pci nics Gerd Hoffmann
2009-07-10 11:26 ` [Qemu-devel] [PATCH 13/13] qdev: print device id in "info pci" Gerd Hoffmann
  -- strict thread matches above, loose matches on Subject: below --
2009-07-03 10:22 [Qemu-devel] [PATCH 0/13] qdev patches: properties, -device switch, id=<tag> & more Gerd Hoffmann
2009-07-03 10:22 ` [Qemu-devel] [PATCH 04/13] qdev: add generic qdev_device_add() Gerd Hoffmann

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=200907102151.04322.paul@codesourcery.com \
    --to=paul@codesourcery.com \
    --cc=kraxel@redhat.com \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).