All of lore.kernel.org
 help / color / mirror / Atom feed
From: Julien Grall <julien.grall@arm.com>
To: Hunyue Yau z <hy-gsoc@hy-research.com>,
	Stefano Stabellini <sstabellini@kernel.org>
Cc: "xen-devel@lists.xenproject.org" <xen-devel@lists.xenproject.org>,
	Iain Hunter <drhunter95@gmail.com>,
	Denis Obrezkov <denisobrezkov@gmail.com>
Subject: Re: [Xen-devel] [GSoC-2019] About the crossbar and xen
Date: Mon, 15 Jul 2019 12:36:18 +0100	[thread overview]
Message-ID: <5ac6a07f-d3de-5063-c5bb-edab714df248@arm.com> (raw)
In-Reply-To: <2537214.YZPW3Q6nNT@acer0>

Hi,

On 12/07/2019 19:32, Hunyue Yau z wrote:
> On Friday, July 12, 2019 16:13:32 Julien Grall wrote:
>> Hi,
>>
>> On 7/11/19 7:29 PM, Hunyue Yau wrote:
>>> [This mail incorporates comments raised on IRC. I have made some of this
>>> mHi,ore verbose to provide context to people that haven't seen the IRC
>>> comments.]
>> Thank you for the summary!
>>
>>> This will be a bunch of facts on the am5. Someone else will have relate it
>>> back to Xen.
>>>
>>> 1 - The WUGen is a hardware block on the MPU block that can turn
>>> interrupts
>>> into wake up events if the MPU is in certain deeper sleep states. This
>>> applies only to certain interrupts. We can confirm this by looking at the
>>> DT's register address. Per the TRM, they are registers for the MPU's PRCM
>>> (Power/Reset/Clock Management). In short, this block makes interrupts a
>>> possible wake up source.
>>>
>>> 2 - Earlier kernels did not expose that HW block. See this patch that
>>> introduced the WUGen -
>>> https://github.com/torvalds/linux/commit/7136d457f365ecc93ddffcdd42ab49a84
>>> 73f260b I suspect looking at the before part of the patch should provide
>>> clues on how to handle the WUGen.
>>>
>>>
>>> 3 - This may be redundant but more definitions (in the human sense) here:
>>> https://www.mjmwired.net/kernel/Documentation/devicetree/bindings/interrup
>>> t-controller/ti,omap4-wugen-mpu
>>>
>>> 4 - For the UART case, I suspect the flow Dennis pointed out is about
>>> right. However, that may be different depending on the interrupt source.
>>>
>>> Unknowns from my point of view -
>>>
>>> a - Does Xen virtualize power management? If so, this may have have an
>>> impact. I would not recommend adding PM virtualization in GSoC. It is
>>> tugging on a very long string.
>>
>> Xen does not virtualize power management at the moment. I agree that
>> this is too big for the scope of the GSoC.
>>
>>> b - If Xen does not virtualize that, someone needs to decide how much to
>>> leave to the guess.
>>>
>>> c - I wonder if we can do a half way hack where the kernel sets up the PM
>>> but Xen hooks to get the interrupt. The HW will do its PM thing and Xen
>>> can process the interrupt.
>>
>> Hmmm, the question here is whether the UART would be usuable before Dom0
>> is setting up the PM? If not, then, we would need to deal with it in Xen.
>>
>>> Guesses/possible hacks -
>>> - For the interrupts we care about, the cross bar can route things to the
>>> MPU unconditionally. This would break the other HW blocks but most of
>>> them aren't needed for boot.
>>
>> Sorry for my ignorance, which HW blocks are you talking about?
> 
> The HW blocks I am referring to are stuff like EVE, IPU, and DSP. Initially, we
> can even ignore the PRUSS. This should leave just sending interrupts to the
> MPU. As I understand it, there is no current support for those right now
> anyways. I think EVE/IPU/DSP require a working cmem driver which is not fully
> upstreamed. BBAI does use them but that requires a specific kernel.
> 
> PRUSS would be nice (aka the PRU stuff) eventually as the bits are upstream but
> not critical for now.

Thank you for the clarification. My knowledge on the board is limited, so I will 
take yours comments as granted :).

Cheers,

> 
>>
>> Cheers,
> 

-- 
Julien Grall

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

  reply	other threads:[~2019-07-15 11:36 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-10 18:54 [Xen-devel] [GSoC-2019] About the crossbar and xen Denis Obrezkov
2019-07-10 19:49 ` Stefano Stabellini
2019-07-10 19:54   ` Denis Obrezkov
2019-07-10 20:17     ` Stefano Stabellini
2019-07-10 20:43       ` Denis Obrezkov
2019-07-10 23:20         ` Hunyue Yau
2019-07-11 12:50           ` Denis Obrezkov
2019-07-11 17:32             ` Julien Grall
2019-07-11 18:29               ` Hunyue Yau
2019-07-12 15:13                 ` Julien Grall
2019-07-12 18:32                   ` Hunyue Yau z
2019-07-15 11:36                     ` Julien Grall [this message]
2019-07-11 18:29               ` Denis Obrezkov
2019-07-12 15:00                 ` Julien Grall

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=5ac6a07f-d3de-5063-c5bb-edab714df248@arm.com \
    --to=julien.grall@arm.com \
    --cc=denisobrezkov@gmail.com \
    --cc=drhunter95@gmail.com \
    --cc=hy-gsoc@hy-research.com \
    --cc=sstabellini@kernel.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.