All of lore.kernel.org
 help / color / mirror / Atom feed
From: Shannon Zhao <shannon.zhao@linaro.org>
To: Wei Huang <wei@redhat.com>
Cc: "qemu-trivial@nongnu.org" <qemu-trivial@nongnu.org>,
	"peter.maydell@linaro.org" <peter.maydell@linaro.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
	"zhaoshenglong@huawei.com" <zhaoshenglong@huawei.com>
Subject: Re: [Qemu-devel] [PATCH 1/1] arm: virt: change GPIO trigger interrupt to pulse
Date: Fri, 29 Jan 2016 23:22:35 +0800	[thread overview]
Message-ID: <56AB83BB.8040504@linaro.org> (raw)
In-Reply-To: <56AB7C3A.2080806@redhat.com>



On 2016/1/29 22:50, Wei Huang wrote:
>
> On 01/29/2016 08:46 AM, Shannon Zhao wrote:
>> >
>> >
>> >On 2016/1/29 22:35, Wei Huang wrote:
>>> >>
>>> >>
>>> >>On 01/29/2016 04:10 AM, Shannon Zhao wrote:
>>>> >>>Hi,
>>>> >>>
>>>> >>>This makes ACPI work well but makes DT not work. The reason is
>>>> >>>systemd or
>>>> >>>acpid open /dev/input/event0 failed. So the interrupt could be
>>>> >>>injected and
>>>> >>>could see under /proc/interrupts but guest doesn't have any action. I'll
>>>> >>>investigate why it opens failed later.
>>> >>
>>> >>That is interesting. Could you try it with the following? This reverses
>>> >>the order to down-up and worked on ACPI case.
>>> >>
>> >Yeah, that's very weird.
>> >
>>> >>qemu_set_irq(qdev_get_gpio_in(pl061_dev, 3), 0);
>>> >>qemu_set_irq(qdev_get_gpio_in(pl061_dev, 3), 1);
>>> >>
>> >I'll try this tomorrow. But even if this works, it's still weird.
> To reproduce this case, do the following steps using current upstream
> qemu: create vm => reboot vm (succeed) => reboot or shutdown vm (fail).
> Apparently the last interrupt wasn't received correctly.

Yes, I reproduce this today. Let's clarify current state.
Firstly, for ACPI it should use qemu_irq_pulse since we make the GPIO 
pin edge-triggered. And for DT, it uses gpio-key which is also 
edge-triggered that we could get from output of guest /proc/interrupts.

Secondly, current upstream qemu with your patch makes second reboot 
works when using ACPI. But first shutdown/reboot doesn't works when 
using DT since the systemd or acpid open /dev/input/event0 failed. This 
is what I'm surprised.

Wei, what userspace program your guest uses? systemd or acpid? Could you 
please try to use DT to test your patch? And see if there is a same 
result with me.(I know Redhat kernel uses ACPI by default, so you could 
append acpi=off to switch to DT)

Thanks,
-- 
Shannon

  reply	other threads:[~2016-01-29 15:22 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-28 18:22 [Qemu-devel] [PATCH 1/1] arm: virt: change GPIO trigger interrupt to pulse Wei Huang
2016-01-29 10:10 ` Shannon Zhao
2016-01-29 14:35   ` Wei Huang
2016-01-29 14:46     ` Shannon Zhao
2016-01-29 14:50       ` Wei Huang
2016-01-29 15:22         ` Shannon Zhao [this message]
2016-01-29 14:50       ` Peter Maydell
2016-01-29 15:13         ` Wei Huang
2016-01-29 15:29           ` Peter Maydell
2016-02-01 10:17           ` Igor Mammedov
2016-02-01 17:24             ` Wei Huang
2016-01-30  8:18     ` Shannon Zhao
2016-02-03  7:15 ` Michael Tokarev
2016-02-03 10:46   ` Peter Maydell
2016-02-03 16:01     ` Wei Huang
2016-02-04  1:44       ` Shannon Zhao
2016-02-04  6:10         ` Wei Huang
2016-02-04  6:51           ` Shannon Zhao
2016-02-09 22:59             ` Wei Huang
2016-02-20 10:53               ` Shannon Zhao
2016-02-24 22:22                 ` Wei Huang
2016-02-26 12:31                   ` Shannon Zhao
2016-02-26 12:53                     ` Peter Maydell
2016-02-26 14:54                       ` Shannon Zhao
2016-02-26 15:06                         ` Peter Maydell
2016-02-26 15:28                           ` Wei Huang
2016-02-26 15:42                             ` Peter Maydell
2016-02-27  1:55                               ` Shannon Zhao

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=56AB83BB.8040504@linaro.org \
    --to=shannon.zhao@linaro.org \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-trivial@nongnu.org \
    --cc=wei@redhat.com \
    --cc=zhaoshenglong@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.