All of lore.kernel.org
 help / color / mirror / Atom feed
From: Markus Armbruster <armbru@redhat.com>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: "Thomas Huth" <thuth@redhat.com>,
	zhanghailiang <zhang.zhanghailiang@huawei.com>,
	"QEMU Trivial" <qemu-trivial@nongnu.org>,
	"Philippe Mathieu-Daudé" <f4bug@amsat.org>,
	"QEMU Developers" <qemu-devel@nongnu.org>,
	"Gan Qixin" <ganqixin@huawei.com>,
	"Chenqun (kuhn)" <kuhn.chenqun@huawei.com>
Subject: Re: [PATCH 13/13] bcm2835_cprman: put some peripherals of bcm2835 cprman into the 'misc' category
Date: Tue, 17 Nov 2020 06:41:16 +0100	[thread overview]
Message-ID: <873618czgj.fsf@dusky.pond.sub.org> (raw)
In-Reply-To: <CAFEAcA-u3jZT2bU6snRL7BWXHUzXuVr9gByssOjoicGZ2-MLXQ@mail.gmail.com> (Peter Maydell's message of "Mon, 16 Nov 2020 17:15:25 +0000")

Peter Maydell <peter.maydell@linaro.org> writes:

> On Mon, 16 Nov 2020 at 17:09, Markus Armbruster <armbru@redhat.com> wrote:
>> But TYPE_CPRMAN_PLL is *not* a descendant of TYPE_SYS_BUS_DEVICE, it's a
>> bus-less device:
>>
>>     static const TypeInfo cprman_pll_info = {
>>         .name = TYPE_CPRMAN_PLL,
>> --->    .parent = TYPE_DEVICE,
>>         .instance_size = sizeof(CprmanPllState),
>>         .class_init = pll_class_init,
>>         .instance_init = pll_init,
>>     };
>
> I'm really dubious of devices that directly inherit from
> TYPE_DEVICE, because their reset method won't be automatically
> called. In this case it looks like the TYPE_BCM2835_CPRMAN
> device's reset method manually calls reset on these devices,
> though, so it isn't actually buggy, just confusing.

I guess this is a trap for unwary implementers, aggravated by our usual
dearth of qdev documentation.  I can see ~100 .parent = TYPE_DEVICE
lines.  Checking them all manually won't be fun.  Any automation ideas?

The concept "bus-less device" is sane.  We used not to have it, and the
resulting need for pseudo-busses was annoying enough to make us add
bus-less devices.



  reply	other threads:[~2020-11-17  5:42 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-11-15 18:48 [PATCH 00/13] Categorize some uncategorized devices Gan Qixin
2020-11-15 18:48 ` [PATCH 01/13] pc-dimm: put it into the 'storage' category Gan Qixin
2020-11-15 18:48 ` [PATCH 02/13] virtio-pmem: " Gan Qixin
2020-11-19 14:12   ` Pankaj Gupta
2020-12-04  7:24   ` Pankaj Gupta
2020-11-15 18:48 ` [PATCH 03/13] vmmouse: put it into the 'input' category Gan Qixin
2020-11-16 14:05   ` Philippe Mathieu-Daudé
2020-11-15 18:48 ` [PATCH 04/13] nvdimm: put it into the 'storage' category Gan Qixin
2020-11-15 18:48 ` [PATCH 05/13] mc146818rtc: put it into the 'misc' category Gan Qixin
2020-11-15 18:48 ` [PATCH 06/13] ipmi: put some ipmi devices into the correct category Gan Qixin
2020-11-15 18:48 ` [PATCH 07/13] tpm: put some tpm " Gan Qixin
2020-11-15 18:48 ` [PATCH 08/13] AMDVI-PCI: put it into the 'misc' category Gan Qixin
2020-11-15 18:48 ` [PATCH 09/13] u2f-passthru: put it into the 'usb' category Gan Qixin
2020-11-16 14:04   ` Philippe Mathieu-Daudé
2020-11-17  6:58     ` Gerd Hoffmann
2020-11-17 13:40       ` ganqixin
2020-11-17 13:37     ` ganqixin
2020-12-04 13:50       ` Philippe Mathieu-Daudé
2020-12-07  8:05         ` ganqixin
2020-12-07  8:52           ` Thomas Huth
2020-11-15 18:49 ` [PATCH 10/13] tosa-ssp: put it into the 'misc' category Gan Qixin
2020-11-15 18:49 ` [PATCH 11/13] spitz: put some Spitz-family devices into the correct category Gan Qixin
2020-11-15 18:49 ` [PATCH 12/13] SPI flash devices: put them into the 'storage' category Gan Qixin
2020-11-16 13:59   ` Philippe Mathieu-Daudé
2020-11-16 16:19   ` Alistair Francis
2020-11-15 18:49 ` [PATCH 13/13] bcm2835_cprman: put some peripherals of bcm2835 cprman into the 'misc' category Gan Qixin
2020-11-16 13:25   ` Philippe Mathieu-Daudé
2020-11-16 13:31     ` Peter Maydell
2020-11-16 14:33       ` Thomas Huth
2020-11-16 14:30     ` Thomas Huth
2020-11-16 17:00       ` Markus Armbruster
2020-11-16 17:15         ` Peter Maydell
2020-11-17  5:41           ` Markus Armbruster [this message]
2020-11-17 11:08             ` Peter Maydell
2020-11-17 20:12         ` Thomas Huth
2020-11-18  8:41           ` Markus Armbruster
2020-11-18  8:50         ` Should bus-less devices default to .user_creatable = false? (was: [PATCH 13/13] bcm2835_cprman: put some peripherals of bcm2835 cprman into the 'misc' category) Markus Armbruster
2020-11-18  9:08           ` Thomas Huth
2020-11-17 14:02       ` [PATCH 13/13] bcm2835_cprman: put some peripherals of bcm2835 cprman into the 'misc' category ganqixin

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=873618czgj.fsf@dusky.pond.sub.org \
    --to=armbru@redhat.com \
    --cc=f4bug@amsat.org \
    --cc=ganqixin@huawei.com \
    --cc=kuhn.chenqun@huawei.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-trivial@nongnu.org \
    --cc=thuth@redhat.com \
    --cc=zhang.zhanghailiang@huawei.com \
    /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.