From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:56388) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W2ioL-0000Lc-2b for qemu-devel@nongnu.org; Mon, 13 Jan 2014 09:48:23 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1W2ioE-0000cW-K4 for qemu-devel@nongnu.org; Mon, 13 Jan 2014 09:48:17 -0500 Received: from mx1.redhat.com ([209.132.183.28]:20051) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W2ioE-0000be-Cs for qemu-devel@nongnu.org; Mon, 13 Jan 2014 09:48:10 -0500 Date: Mon, 13 Jan 2014 16:48:03 +0200 From: "Michael S. Tsirkin" Message-ID: <20140113144803.GA30636@redhat.com> References: <1388934290-27700-1-git-send-email-mmishael@redhat.com> <52CC1310.7070406@redhat.com> <52CD78C4.8070403@redhat.com> <1389607987.9142.48.camel@nilsson.home.kraxel.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1389607987.9142.48.camel@nilsson.home.kraxel.org> Subject: Re: [Qemu-devel] [PATCH] Docs: Introduce multiport serial support in qemupciserial.inf List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Gerd Hoffmann Cc: Yan Vugenfirer , qemu-devel list , Ronen Hod , Anthony Liguori , Paolo Bonzini , Dmitry Fleytman , Miki Mishael On Mon, Jan 13, 2014 at 11:13:07AM +0100, Gerd Hoffmann wrote: > On Mi, 2014-01-08 at 17:11 +0100, Paolo Bonzini wrote: > > Il 08/01/2014 16:07, Yan Vugenfirer ha scritto: > > >>> > > >>> +%QEMU-PCI_SERIAL_1_PORT%=ComPort_inst1, > > >>> PCI\VEN_1B36&DEV_0002&SUBSYS_11001AF4&REV_01 > > >>> +%QEMU-PCI_SERIAL_2_PORT%=ComPort_inst2, > > >>> PCI\VEN_1B36&DEV_0003&SUBSYS_11001AF4&REV_01 > > >>> +%QEMU-PCI_SERIAL_4_PORT%=ComPort_inst4, > > >>> PCI\VEN_1B36&DEV_0004&SUBSYS_11001AF4&REV_01 > > >> > > >> I think checking the subsystem is not necessary (and I think downstreams > > >> could legitimately change it). Can you check CC and REV but not SUBSYS? > > > > > > PNP ID can be reduced to vendor and device ID only, for example: > > > PCI\VEN_1B36&DEV_0002 . But in this case we cannot check revision. > > > > Gerd, Michael, what do you think is better? Not check revision, or > > enforcing subsystem? > > No need to check the revision. There is only one, I doubt this will > ever change, and should we do a rev2 virtual hardware it is supposed to > be backward-compatible to rev1 (otherwise we should hand out a new pci > id to the device). > > [ drivers which depend on few features of the hypothetical rev2 hardware > and don't work with rev1 would need a revision check ] > > cheers, > Gerd > Well linux checks revision: if (pci_dev->revision != VIRTIO_PCI_ABI_VERSION) { printk(KERN_ERR "virtio_pci: expected ABI version %d, got %d\n", VIRTIO_PCI_ABI_VERSION, pci_dev->revision); return -ENODEV; } so it seems better to be consistent. in any case, we must check subsystem ids, the spec is very explicit on this point. -- MST