All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rahul Singh <Rahul.Singh@arm.com>
To: Julien Grall <julien@xen.org>
Cc: xen-devel <xen-devel@lists.xenproject.org>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH v2] xen/evtchn: Add design for static event channel signaling
Date: Thu, 12 May 2022 14:31:15 +0000	[thread overview]
Message-ID: <B82F2F0B-9C83-4180-A0A7-E05A1C85A2C1@arm.com> (raw)
In-Reply-To: <c072bd96-eede-5c8b-49f4-302600829862@xen.org>

Hi Julien,

> On 12 May 2022, at 9:56 am, Julien Grall <julien@xen.org> wrote:
> 
> Hi Rahul,
> 
> On 11/05/2022 15:32, Rahul Singh wrote:
>>> On 10 May 2022, at 1:32 pm, Julien Grall <julien@xen.org> wrote:
>>>> +domain may toggle masked bits in the masked bit field and should clear the
>>>> +pending bit when an event has been processed
>>>> +
>>>> +Events are received by a domain via an interrupt from Xen to the domain,
>>>> +indicating when an event arrives (setting the bit). Further notifications are
>>>> +blocked until the bit is cleared again. Events are delivered asynchronously to
>>>> +a domain and are enqueued when the domain is not running.
>>>> +More information about FIFO based event channel can be found at:
>>> 
>>> I think the explanation is fine for a design proposal. If you want to use it as documentation, then I would suggest to clarify there are two different ABI for event channel: FIFO and 2L.
>>> 
>>> 2L is the easiest one to implement and for embedded we may want to steer the users towards it.
>> I will rephrase the sentence as below:
>> Xen supports two different ABI for event channel FIFO and 2L. More information about FIFO based event channel can be found at:
> 
> I think it is a bit strange to point to the FIFO doc but not the 2L (the explanantion above is not really for 2L). If there are no doc for the latter, then I would possibly drop the link.

Ack.

> 
>>>> +The event channel sub-node has the following properties:
>>>> +
>>>> +- compatible
>>>> +
>>>> + "xen,evtchn"
>>>> +
>>>> +- xen,evtchn
>>>> +
>>>> + The property is tuples of two numbers
>>>> + (local-evtchn link-to-foreign-evtchn) where:
>>>> +
>>>> + local-evtchn is an integer value that will be used to allocate local port
>>>> + for a domain to send and receive event notifications to/from the remote
>>>> + domain.
>>> Port 0 is reserved and both FIFO/2L have limit on the port numbers.
>>> 
>>> I think we should let know the users about those limitations but I am not sure whether the binding is the right place for that.
>> If you are okay I can add this limitation in this design doc.
> 
> Design docs are generally for developper of Xen rather than the end users. I am OK if you want to add the limitations in this design doc so long we have another easy way for the user to find out the limits.
> 
> This could be end users documentation and/or message in Xen. Note that 2L has a lower limit and we don't know in advance what the guest will use. So we may have to assume the lower limit (4096) which should be plenty for embedded :)

I am planning to explain the static event-channel subnode in "docs/misc/arm/device-tree/booting.txt” [1]. I will include the limitation also at the same time.

@Stefano:  I need confirmation from you also, is that okay to add new property value  "xen,enhanced = evtchn” to only 
enable event-channel interface for dom0less domUs. make_hypervisor_node() will set the evtchn PPI interrupts  property only if "xen,enhanced = evtchn” is set.

If "xen,enhanced" with an empty string (or with the value "enabled”) is set make_hypervisor_node() will set the grant table, extended region and PPI interrupt property.
 
[1] http://xenbits.xen.org/gitweb/?p=xen.git;a=blob;f=docs/misc/arm/device-tree/booting.txt;h=7b4a29a2c293d16e9280a24789bc3b5262a367f6;hb=HEAD#l238

Regards,
Rahul

  reply	other threads:[~2022-05-12 14:31 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-04 17:34 [PATCH v2] xen/evtchn: Add design for static event channel signaling Rahul Singh
2022-05-09 20:50 ` Stefano Stabellini
2022-05-10 12:03   ` Bertrand Marquis
2022-05-10 12:32 ` Julien Grall
2022-05-11 14:32   ` Rahul Singh
2022-05-12  8:56     ` Julien Grall
2022-05-12 14:31       ` Rahul Singh [this message]
2022-05-12 23:16         ` Stefano Stabellini

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=B82F2F0B-9C83-4180-A0A7-E05A1C85A2C1@arm.com \
    --to=rahul.singh@arm.com \
    --cc=Bertrand.Marquis@arm.com \
    --cc=andrew.cooper3@citrix.com \
    --cc=george.dunlap@citrix.com \
    --cc=jbeulich@suse.com \
    --cc=julien@xen.org \
    --cc=sstabellini@kernel.org \
    --cc=wl@xen.org \
    --cc=xen-devel@lists.xenproject.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 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.