All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>
Cc: Demi Marie Obenour <demiobenour@gmail.com>,
	Cornelia Huck <cohuck@redhat.com>,
	Peter Hilber <peter.hilber@oss.qualcomm.com>,
	virtio-comment@lists.linux.dev,
	Jan Kiszka <jan.kiszka@siemens.com>,
	Stefan Hajnoczi <stefanha@redhat.com>,
	Trilok Soni <trilok.soni@oss.qualcomm.com>
Subject: Re: [PATCH v2] content: Reserve ID 52 for QPSFI device
Date: Thu, 22 Oct 2026 09:19:16 -0400	[thread overview]
Message-ID: <20261022091645-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <CAAjaMXZgKGWL0dJJSh74Pf20EezY8zPOsSg1aNkp_ssvXuP7BQ@mail.gmail.com>

On Thu, Oct 22, 2026 at 11:41:17AM +0300, Manos Pitsidianakis wrote:
> On Thu, Oct 22, 2026 at 10:24 AM Michael S. Tsirkin <mst@redhat.com> wrote:
> >
> > On Thu, Oct 22, 2026 at 03:07:41AM -0400, Demi Marie Obenour wrote:
> > > On 10/22/26 00:35, Cornelia Huck wrote:
> > > > On Wed, Oct 21 2026, "Michael S. Tsirkin" <mst@redhat.com> wrote:
> > > >
> > > >> On Wed, Oct 21, 2026 at 03:25:31PM -0400, Demi Marie Obenour wrote:
> > > >>> On 10/21/26 14:00, Peter Hilber wrote:
> > > >>>> Reserve a device ID for QPSFI devices (Qualcomm Platform Subsystem
> > > >>>> Firmware Interface). QPSFI devices expose functionality across SoC
> > > >>>> subsystems through a common Virtio-based protocol. There are no plans to
> > > >>>> standardize the devices.
> > > >>>>
> > > >>>> The Linux DCP display driver series is planned as the first user of this
> > > >>>> device ID:
> > > >>>>
> > > >>>> https://lore.kernel.org/all/20261015-jshekhar-drm-msm-dcp-v1-v1-10-48aad0fe4f72@oss.qualcomm.com/
> > > >>>>
> > > >>>> Device ID 51 is already reserved for the Virtio HAB device:
> > > >>>>
> > > >>>> https://lore.kernel.org/virtio-comment/20260702140939.3535968-1-zeloren@qti.qualcomm.com/
> > > >>>>
> > > >>>> Signed-off-by: Peter Hilber <peter.hilber@oss.qualcomm.com>
> > > >>>> ---
> > > >>>>
> > > >>>>     v2:
> > > >>>>
> > > >>>>     - Rename the device from "Snapdragon device" to "QPSFI device".
> > > >>>>
> > > >>>>     - Refer to DCP Linux driver patch as planned first QPSFI user.
> > > >>>>
> > > >>>>     v1:
> > > >>>>
> > > >>>>     - Was posted as "content: Reserve ID 52 for Snapdragon device":
> > > >>>>
> > > >>>>       https://lore.kernel.org/virtio-comment/20260826115504.1955-1-peter.hilber@oss.qualcomm.com/
> > > >>>>
> > > >>>>  content.tex | 2 ++
> > > >>>>  1 file changed, 2 insertions(+)
> > > >>>>
> > > >>>> diff --git a/content.tex b/content.tex
> > > >>>> index 243ce2dde36b..7416939e67d3 100644
> > > >>>> --- a/content.tex
> > > >>>> +++ b/content.tex
> > > >>>> @@ -805,6 +805,8 @@ \chapter{Device Types}\label{sec:Device Types}
> > > >>>>  \hline
> > > >>>>  50         &   Video encoder/decoder device \\
> > > >>>>  \hline
> > > >>>> +52         &   QPSFI device \\
> > > >>>> +\hline
> > > >>>>  \end{longtable}
> > > >>>>
> > > >>>>  Some of the devices above are unspecified by this document,
> > > >>>
> > > >>> I think it would be best to have a single ID for vendor-specific devices.
> > > >>> I believe most of the ID space has already been used, at least for virtio-PCI.
> > > >>> --
> > > >>> Sincerely,
> > > >>> Demi Marie Obenour (she/her/hers)
> > > >>
> > > >> Sounds like a good idea to me. And then qualcomm can do what they
> > > >> want, like check subsystem id for pci or whatever?
> > > >> Only issue is there is no way to distinguish for mmio/ccw.
> > > >> Maybe, add vendor specific id as first e.g. 8 bytes ro in the config space?
> > > >> Peter?
> > > >
> > > > Using some information in the config space looks like the most flexible
> > > > way to me. Are we still happy with how the device ids are organized in
> > > > general (i.e. when do we want a new one, and when do we want to extend
> > > > an existing device?)
> > >
> > > For a platform device like this, I'd prefer to pass the information out
> > > of band.  After all, this device will only ever be found on Qualcomm
> > > SoCs, and presumably the kernel knows exactly which PCI device is
> > > supposed to be the QPSFI device.  This means that the kernel can just
> > > special-case it.
> >
> > Yes but we are discussing making this id a general "vendor specific
> > device", as opposed to a "qualcomm device".
> 
> Is there a reason why a generic VIRTIO_ID_VENDOR wouldn't work?
> 
> Instead of adding more and more IDs for different devices that will
> never been upstreamed.
> 
> Then, a kernel can discover all vendor devices when enumerating the
> transport, ignore them unless it knows specifically about them through
> ACPI or device tree.
> 
> It doesn't make sense to me that HAB/QPSFI need an ID when they are
> unusable to anyone except for qualcomm kernel drivers so maybe we
> should require that an ID allocation always needs an explicit
> justification (i.e. "the spec will be upstreamed", or "we cannot use
> VIRTIO_ID_VENDOR because X/Y/Z").

Right so let's just reserve ID 52 as VIRTIO_ID_VENDOR for now.
And document precisely what you are saying.

And let's add a chapter for it please:

"A driver is not automatically loaded based on VIRTIO_ID_VENDOR alone,
 instead, the platform probes the device, verifies it is the
 correct vendor specific driver and loads it, all in
 a platform specific way".

and conformance clauses stating the same.

-- 
MST


  reply	other threads:[~2026-10-22 13:19 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-21 18:00 [PATCH v2] content: Reserve ID 52 for QPSFI device Peter Hilber
2026-10-21 19:25 ` Demi Marie Obenour
2026-10-21 19:50   ` Michael S. Tsirkin
2026-10-22  4:35     ` Cornelia Huck
2026-10-22  7:07       ` Demi Marie Obenour
2026-10-22  7:24         ` Michael S. Tsirkin
2026-10-22  8:41           ` Manos Pitsidianakis
2026-10-22 13:19             ` Michael S. Tsirkin [this message]
2026-10-22 14:07               ` Dmitry Baryshkov
2026-10-22 15:05                 ` Cornelia Huck
2026-10-22 15:35                   ` Parav Pandit
2026-10-22 15:41                     ` Michael S. Tsirkin
2026-10-22 15:49                       ` Parav Pandit
2026-10-22 16:02                         ` Michael S. Tsirkin
2026-10-22 16:20                           ` Parav Pandit
2026-10-22 16:29                             ` Michael S. Tsirkin
2026-10-22 22:39                               ` Peter Hilber
2026-10-22 23:28                                 ` Michael S. Tsirkin
2026-10-23  3:32                                 ` Parav Pandit
2026-10-23  5:37                                 ` Manos Pitsidianakis
2026-10-23  5:40                                   ` Demi Marie Obenour
2026-10-23 20:56                                     ` Peter Hilber
2026-10-23 23:47                                       ` Michael S. Tsirkin
2026-10-26 14:31                                       ` Cornelia Huck
2026-10-28 14:22                                         ` Peter Hilber
2026-10-22 15:44                 ` Michael S. Tsirkin
2026-10-22 14:50               ` Zelong Ren
2026-10-21 19:41 ` Michael S. Tsirkin
2026-10-22 13:56 ` Dmitry Baryshkov

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=20261022091645-mutt-send-email-mst@kernel.org \
    --to=mst@redhat.com \
    --cc=cohuck@redhat.com \
    --cc=demiobenour@gmail.com \
    --cc=jan.kiszka@siemens.com \
    --cc=manos.pitsidianakis@linaro.org \
    --cc=peter.hilber@oss.qualcomm.com \
    --cc=stefanha@redhat.com \
    --cc=trilok.soni@oss.qualcomm.com \
    --cc=virtio-comment@lists.linux.dev \
    /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.