From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
To: Elliot Berman <quic_eberman@quicinc.com>, Rob Herring <robh@kernel.org>
Cc: Bjorn Andersson <quic_bjorande@quicinc.com>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
Murali Nalajala <quic_mnalajal@quicinc.com>,
Trilok Soni <quic_tsoni@quicinc.com>,
Srivatsa Vaddagiri <quic_svaddagi@quicinc.com>,
Carl van Schaik <quic_cvanscha@quicinc.com>,
Prakruthi Deepak Heragu <quic_pheragu@quicinc.com>,
Andy Gross <agross@kernel.org>,
Dmitry Baryshkov <dmitry.baryshkov@linaro.org>,
Jassi Brar <jassisinghbrar@gmail.com>,
linux-arm-kernel@lists.infradead.org,
Mark Rutland <mark.rutland@arm.com>,
Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>,
Sudeep Holla <sudeep.holla@arm.com>,
Marc Zyngier <maz@kernel.org>, Jonathan Corbet <corbet@lwn.net>,
Will Deacon <will@kernel.org>,
Catalin Marinas <catalin.marinas@arm.com>,
Arnd Bergmann <arnd@arndb.de>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
devicetree@vger.kernel.org, linux-doc@vger.kernel.org,
linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v5 02/13] dt-bindings: Add binding for gunyah hypervisor
Date: Wed, 2 Nov 2022 14:47:09 -0400 [thread overview]
Message-ID: <c9c3bffc-0d2a-ef67-ccab-ee040608405a@linaro.org> (raw)
In-Reply-To: <df09560d-803b-33f6-69ed-6d377d05d336@quicinc.com>
On 31/10/2022 23:19, Elliot Berman wrote:
>
>
> On 10/27/2022 12:55 PM, Krzysztof Kozlowski wrote:
>> On 27/10/2022 12:17, Elliot Berman wrote:
>>> Hi Rob,
>>>
>>> On 10/26/2022 2:16 PM, Rob Herring wrote:
>>>> On Thu, Oct 13, 2022 at 6:59 PM Elliot Berman <quic_eberman@quicinc.com> wrote:
>>>>>
>>>>>
>>>>> On 10/12/2022 8:56 AM, Rob Herring wrote:
>>>>>> On Mon, Oct 10, 2022 at 05:08:29PM -0700, Elliot Berman wrote:
>>>>>>> When Linux is booted as a guest under the Gunyah hypervisor, the Gunyah
>>>>>>> Resource Manager applies a devicetree overlay describing the virtual
>>>>>>> platform configuration of the guest VM, such as the message queue
>>>>>>> capability IDs for communicating with the Resource Manager. This
>>>>>>> information is not otherwise discoverable by a VM: the Gunyah hypervisor
>>>>>>> core does not provide a direct interface to discover capability IDs nor
>>>>>>> a way to communicate with RM without having already known the
>>>>>>> corresponding message queue capability ID. Add the DT bindings that
>>>>>>> Gunyah adheres for the hypervisor node and message queues.
>>>>>>>
>>>>>>> Signed-off-by: Elliot Berman <quic_eberman@quicinc.com>
>>>>>>> ---
>>>>>>> .../bindings/firmware/gunyah-hypervisor.yaml | 87 +++++++++++++++++++
>>>>>>> MAINTAINERS | 1 +
>>>>>>> 2 files changed, 88 insertions(+)
>>>>>>> create mode 100644 Documentation/devicetree/bindings/firmware/gunyah-hypervisor.yaml
>>>>>>>
>>>>>>> diff --git a/Documentation/devicetree/bindings/firmware/gunyah-hypervisor.yaml b/Documentation/devicetree/bindings/firmware/gunyah-hypervisor.yaml
>>>>>>> new file mode 100644
>>>>>>> index 000000000000..f0a14101e2fd
>>>>>>> --- /dev/null
>>>>>>> +++ b/Documentation/devicetree/bindings/firmware/gunyah-hypervisor.yaml
>>>>>>> @@ -0,0 +1,87 @@
>>>>>>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>>>>>>> +%YAML 1.2
>>>>>>> +---
>>>>>>> +$id: http://devicetree.org/schemas/firmware/gunyah-hypervisor.yaml#
>>>>>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>>>>>>> +
>>>>>>> +title: Gunyah Hypervisor
>>>>>>> +
>>>>>>> +maintainers:
>>>>>>> + - Murali Nalajala <quic_mnalajal@quicinc.com>
>>>>>>> + - Elliot Berman <quic_eberman@quicinc.com>
>>>>>>> +
>>>>>>> +description: |+
>>>>>>> + On systems which support devicetree, Gunyah generates and overlays a deviceetree overlay which
>>>>>>
>>>>>> How you end up with the node (applying an overlay) is not relavent to
>>>>>> the binding.
>>>>>>
>>>>>>> + describes the basic configuration of the hypervisor. Virtual machines use this information to determine
>>>>>>> + the capability IDs of the message queues used to communicate with the Gunyah Resource Manager.
>>>>>>
>>>>>> Wrap at 80. That is the coding standard still though 100 is deemed
>>>>>> allowed. And yamllint only complains at 110 because I didn't care to fix
>>>>>> everyones lines over 100.
>>>>>>
>>>>>>> + See also: https://github.com/quic/gunyah-resource-manager/blob/develop/src/vm_creation/dto_construct.c
>>>>>>> +
>>>>>>> +properties:
>>>>>>> + compatible:
>>>>>>> + items:
>>>>>>> + - const: gunyah-hypervisor-1.0
>>>>>>> + - const: gunyah-hypervisor
>>>>>>
>>>>>> 2 compatibles implies a difference between the 2. What's the difference?
>>>>>> Where does '1.0' come from?
>>>>>>
>>>>>
>>>>> There's no difference. I thought the convention was to have
>>>>> device-specific compatible and the generic compatible. "device-specific"
>>>>> here would be specific to version of Gunyah since it's software.
>>>>
>>>> No, that's just what people do because "vendor,new-soc",
>>>> "vendor,old-soc" seems to bother them for some reason. At the end of
>>>> the day, it's just a string identifier that means something. If
>>>> there's no difference in that 'something', then there is no point in
>>>> having more than one string.
>>>>
>>>> You only need something specific enough to discover the rest from the
>>>> firmware. When that changes, then you add a new compatible. Of course,
>>>> if you want existing OSs to work, then better not change the
>>>> compatible.
>>>>
>>>
>>> Thanks for the info, I'll drop the "-1.0" suffix.
>>
>> You still did not answer from where does 1.0 come from... Compatibles
>> are usually expected to be specific.
>>
>
> The 1.0 comes from the Gunyah version. This is the same version returned
> by "hyp_identify" hypercall.
Then dropping 1.0 makes sense - your SW provides auto-detection.
Best regards,
Krzysztof
next prev parent reply other threads:[~2022-11-02 18:47 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-10-11 0:08 [PATCH v5 00/13] Drivers for gunyah hypervisor Elliot Berman
2022-10-11 0:08 ` [PATCH v5 01/13] docs: gunyah: Introduce Gunyah Hypervisor Elliot Berman
2022-10-11 9:36 ` Bagas Sanjaya
2022-10-11 0:08 ` [PATCH v5 02/13] dt-bindings: Add binding for gunyah hypervisor Elliot Berman
2022-10-12 15:56 ` Rob Herring
2022-10-13 23:58 ` Elliot Berman
2022-10-26 21:16 ` Rob Herring
2022-10-27 16:17 ` Elliot Berman
2022-10-27 19:55 ` Krzysztof Kozlowski
2022-11-01 3:19 ` Elliot Berman
2022-11-02 18:47 ` Krzysztof Kozlowski [this message]
2022-10-11 0:08 ` [PATCH v5 03/13] gunyah: Common types and error codes for Gunyah hypercalls Elliot Berman
2022-10-11 7:21 ` Greg Kroah-Hartman
2022-10-11 18:21 ` Elliot Berman
2022-10-11 18:48 ` Greg Kroah-Hartman
2022-10-11 18:50 ` Trilok Soni
2022-10-11 19:01 ` Greg Kroah-Hartman
2022-10-11 0:08 ` [PATCH v5 04/13] arm64: smccc: Include alternative-macros.h Elliot Berman
2022-10-11 7:22 ` Greg Kroah-Hartman
2022-10-11 22:45 ` Elliot Berman
2022-10-11 0:08 ` [PATCH v5 05/13] virt: gunyah: Add hypercalls to identify Gunyah Elliot Berman
2022-10-11 6:22 ` [PATCH v5 5/13] " Jiri Slaby
2022-10-12 21:31 ` [PATCH v5 05/13] " Dmitry Baryshkov
2022-10-11 0:08 ` [PATCH v5 06/13] virt: gunyah: Identify hypervisor version Elliot Berman
2022-10-11 6:13 ` Greg Kroah-Hartman
2022-10-13 23:00 ` Elliot Berman
2022-10-14 7:36 ` Greg Kroah-Hartman
2022-10-12 22:45 ` kernel test robot
2022-10-11 0:08 ` [PATCH v5 07/13] mailbox: Allow direct registration to a channel Elliot Berman
2022-10-11 0:08 ` [PATCH v5 08/13] virt: gunyah: msgq: Add hypercalls to send and receive messages Elliot Berman
2022-10-11 0:08 ` [PATCH v5 09/13] mailbox: Add Gunyah message queue mailbox Elliot Berman
2022-10-12 21:47 ` Dmitry Baryshkov
2022-10-13 22:32 ` Elliot Berman
2022-10-17 8:43 ` Dmitry Baryshkov
2022-10-11 0:08 ` [PATCH v5 10/13] gunyah: rsc_mgr: Add resource manager RPC core Elliot Berman
2022-10-12 22:52 ` Dmitry Baryshkov
2022-10-13 22:32 ` Elliot Berman
2022-10-17 8:37 ` Dmitry Baryshkov
2022-10-11 0:08 ` [PATCH v5 11/13] gunyah: rsc_mgr: Add RPC for console services Elliot Berman
2022-10-11 0:08 ` [PATCH v5 12/13] gunyah: rsc_mgr: Add subdevices bus Elliot Berman
2022-10-11 0:08 ` [PATCH v5 13/13] tty: gunyah: Add tty console driver for RM Console Services Elliot Berman
2022-10-11 6:02 ` Jiri Slaby
2022-10-11 11:09 ` Arnd Bergmann
2022-10-11 22:04 ` Elliot Berman
2022-10-12 6:55 ` Greg Kroah-Hartman
2022-10-13 20:54 ` Elliot Berman
2022-10-14 7:38 ` Greg Kroah-Hartman
2022-10-11 18:22 ` Elliot Berman
2022-10-11 22:04 ` Elliot Berman
2022-10-11 17:55 ` kernel test robot
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=c9c3bffc-0d2a-ef67-ccab-ee040608405a@linaro.org \
--to=krzysztof.kozlowski@linaro.org \
--cc=agross@kernel.org \
--cc=arnd@arndb.de \
--cc=catalin.marinas@arm.com \
--cc=corbet@lwn.net \
--cc=devicetree@vger.kernel.org \
--cc=dmitry.baryshkov@linaro.org \
--cc=gregkh@linuxfoundation.org \
--cc=jassisinghbrar@gmail.com \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lorenzo.pieralisi@arm.com \
--cc=mark.rutland@arm.com \
--cc=maz@kernel.org \
--cc=quic_bjorande@quicinc.com \
--cc=quic_cvanscha@quicinc.com \
--cc=quic_eberman@quicinc.com \
--cc=quic_mnalajal@quicinc.com \
--cc=quic_pheragu@quicinc.com \
--cc=quic_svaddagi@quicinc.com \
--cc=quic_tsoni@quicinc.com \
--cc=robh@kernel.org \
--cc=sudeep.holla@arm.com \
--cc=will@kernel.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).