From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:36367) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YlZaZ-0002Nd-6F for qemu-devel@nongnu.org; Fri, 24 Apr 2015 05:08:00 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YlZaV-0008Vq-67 for qemu-devel@nongnu.org; Fri, 24 Apr 2015 05:07:59 -0400 Received: from e06smtp15.uk.ibm.com ([195.75.94.111]:43028) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YlZaU-0008Vg-TU for qemu-devel@nongnu.org; Fri, 24 Apr 2015 05:07:55 -0400 Received: from /spool/local by e06smtp15.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Fri, 24 Apr 2015 10:07:53 +0100 Received: from b06cxnps3075.portsmouth.uk.ibm.com (d06relay10.portsmouth.uk.ibm.com [9.149.109.195]) by d06dlp01.portsmouth.uk.ibm.com (Postfix) with ESMTP id EDCB617D8042 for ; Fri, 24 Apr 2015 10:08:29 +0100 (BST) Received: from d06av02.portsmouth.uk.ibm.com (d06av02.portsmouth.uk.ibm.com [9.149.37.228]) by b06cxnps3075.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id t3O97oGC11534758 for ; Fri, 24 Apr 2015 09:07:50 GMT Received: from d06av02.portsmouth.uk.ibm.com (localhost [127.0.0.1]) by d06av02.portsmouth.uk.ibm.com (8.14.4/8.14.4/NCO v10.0 AVout) with ESMTP id t3O97cqG016811 for ; Fri, 24 Apr 2015 03:07:47 -0600 Date: Fri, 24 Apr 2015 11:07:30 +0200 From: Cornelia Huck Message-ID: <20150424110730.1e9bcc77.cornelia.huck@de.ibm.com> In-Reply-To: <0B8264E8-159A-4DCB-AEE2-28EBC4504B80@suse.de> References: <1429257161-29597-1-git-send-email-cornelia.huck@de.ibm.com> <1429257161-29597-2-git-send-email-cornelia.huck@de.ibm.com> <55369FC2.1090508@suse.de> <20150422102501.406fc113.cornelia.huck@de.ibm.com> <55376680.3070601@suse.de> <20150422134053.262405e2.cornelia.huck@de.ibm.com> <0B8264E8-159A-4DCB-AEE2-28EBC4504B80@suse.de> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 1/6] s390x/virtio-ccw: enable has_dynamic_sysbus List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Alexander Graf Cc: "armbru@redhat.com" , "mdroth@linux.vnet.ibm.com" , "qemu-devel@nongnu.org" , "borntraeger@de.ibm.com" , "jfrei@linux.vnet.ibm.com" , Xu Wang , "lcapitulino@redhat.com" On Wed, 22 Apr 2015 14:21:36 +0200 Alexander Graf wrote: > > > > Am 22.04.2015 um 13:40 schrieb Cornelia Huck : > > > > On Wed, 22 Apr 2015 11:14:40 +0200 > > Alexander Graf wrote: > > > >>> On 04/22/2015 10:25 AM, Cornelia Huck wrote: > >>> On Tue, 21 Apr 2015 21:06:42 +0200 > >>> Alexander Graf wrote: > >>> > >>>>> On 04/17/2015 09:52 AM, Cornelia Huck wrote: > >>>>> From: Xu Wang > >>>>> > >>>>> We have to enable this flag to support dynamically adding devices to the > >>>>> sysbus. This change is needed for the the upcoming diag288 watchdog. > >>>> s390 doesn't have a "sysbus" per se. Please create a new bus type. > >>> So what's wrong with the sysbus? I don't see why we should be different > >>> than everyone else. > >> > >> The idea behind sysbus is that you have MMIO, PIO and IRQ pins > >> connecting to a PIC. It provides a lot of infrastructure for those > >> interfaces. S390 doesn't use any of them and instead wants registration > >> on "diag" interfaces for example which I'd put on the same layer as PIO > >> or MMIO registration. > > > > I don't think a "diag" bus makes sense. > > You don't need a bus necessarily, just a parent class. > > > The individual diagnoses are > > way too heterogenous beyond the fact that they use the same base > > instruction. > > > > So where's the proper place for "misc" devices? My impression was that > > they can go on the sysbus. > > > > If you really don't want to create your own class, how about you inherit from the DeviceState class? I tried that for the watchdog, and it certainly works, but some things end up odd: - in 'info qtree', the watchdog device does not show up at all - in the list of devices printed by "-device help", diag288 is now the only device without any bus I would have thought that any device not attached to a specialized bus should end up on the main system bus, which brings me back to adding it as a sysbus device ;) Does sysbus instead need to get more generic? The platform stuff seems to be a better fit for MMIO, PIO et al.?