On Wed, 22 Apr 2015 14:21:36 +0200 Alexander Graf <ag...@suse.de> wrote:
> > > > Am 22.04.2015 um 13:40 schrieb Cornelia Huck <cornelia.h...@de.ibm.com>: > > > > On Wed, 22 Apr 2015 11:14:40 +0200 > > Alexander Graf <ag...@suse.de> wrote: > > > >>> On 04/22/2015 10:25 AM, Cornelia Huck wrote: > >>> On Tue, 21 Apr 2015 21:06:42 +0200 > >>> Alexander Graf <ag...@suse.de> wrote: > >>> > >>>>> On 04/17/2015 09:52 AM, Cornelia Huck wrote: > >>>>> From: Xu Wang <gesa...@linux.vnet.ibm.com> > >>>>> > >>>>> 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.?