All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd@kernel.org>
To: Viresh Kumar <viresh.kumar@linaro.org>
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
	Viresh Kumar <vireshk@kernel.org>,
	Linus Walleij <linus.walleij@linaro.org>,
	Cornelia Huck <cohuck@redhat.com>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	"open list:DRM DRIVER FOR QEMU'S CIRRUS DEVICE" 
	<virtualization@lists.linux-foundation.org>,
	Bartosz Golaszewski <bgolaszewski@baylibre.com>,
	Geert Uytterhoeven <geert@linux-m68k.org>,
	"open list:GPIO SUBSYSTEM" <linux-gpio@vger.kernel.org>,
	Marc Zyngier <maz@kernel.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	"Enrico Weigelt, metux IT consult" <info@metux.net>,
	Jason Wang <jasowang@redhat.com>,
	Stratos Mailing List <stratos-dev@op-lists.linaro.org>
Subject: Re: [Stratos-dev] [PATCH V4 2/2] gpio: virtio: Add IRQ support
Date: Fri, 6 Aug 2021 10:00:42 +0200	[thread overview]
Message-ID: <CAK8P3a2rrueXJHZxuiiShgVmLD916RaxW7xQHHjQXNFkM3Fpvg@mail.gmail.com> (raw)
In-Reply-To: <0100017b1a6c0a05-e41dc16c-b326-4017-a63d-a24a6c1fde70-000000@email.amazonses.com>

On Fri, Aug 6, 2021 at 9:44 AM Viresh Kumar via Stratos-dev
<stratos-dev@op-lists.linaro.org> wrote:
>
> On 05-08-21, 15:10, Arnd Bergmann wrote:
> > I hope this can still be simplified by working out better which state
> > transitions are needed exactly. In particular, I would expect that we
> > can get away with not sending a VIRTIO_GPIO_MSG_IRQ_TYPE
> > for 'mask' state changes at all, but use that only for forcing 'enabled'
> > state changes.
>
> Something like this ?

> static void virtio_gpio_irq_mask(struct irq_data *d)
> {
>         /* Nothing to do here */
> }

You'd have to do /something/ here I think, if only setting the flag
that we don't want to deliver the next interrupt.

> static void virtio_gpio_irq_unmask(struct irq_data *d)
> {
>         struct gpio_chip *gc = irq_data_get_irq_chip_data(d);
>         struct virtio_gpio *vgpio = gpiochip_get_data(gc);
>
>         /* Queue the buffer unconditionally on unmask */
>         virtio_gpio_irq_prepare(vgpio, d->hwirq);
> }

And check the flag here to not requeue it if it's masked.

Now, there is already a flag in the irq descriptor, so rather than
having double accounting, the easy way may be to
just use irqd_irq_masked()/irq_state_set_masked(), or
have the irq core take care of this.

     Arnd

  parent reply	other threads:[~2021-08-06  8:01 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-03 11:36 [PATCH V4 0/2] gpio: Add virtio based driver Viresh Kumar
2021-08-03 11:36 ` Viresh Kumar
2021-08-03 11:36 ` [PATCH V4 1/2] gpio: Add virtio-gpio driver Viresh Kumar
2021-08-03 11:36   ` Viresh Kumar
2021-08-04  0:14   ` kernel test robot
2021-08-04  4:07     ` Viresh Kumar
2021-08-03 11:36 ` [PATCH V4 2/2] gpio: virtio: Add IRQ support Viresh Kumar
2021-08-03 11:36   ` Viresh Kumar
2021-08-03 15:01   ` Arnd Bergmann
2021-08-04  7:05     ` Viresh Kumar
2021-08-04  7:05       ` Viresh Kumar
2021-08-04  8:27       ` Arnd Bergmann
2021-08-05  7:05         ` Viresh Kumar
2021-08-05  7:05           ` Viresh Kumar
2021-08-05 11:26     ` Viresh Kumar
2021-08-05 11:26       ` Viresh Kumar
     [not found]     ` <0100017b1610f711-c53c79f2-9e28-4c45-bb42-8db09688b18e-000000@email.amazonses.com>
2021-08-05 12:03       ` [Stratos-dev] " Arnd Bergmann
2021-08-05 12:49         ` Viresh Kumar
2021-08-05 12:49           ` Viresh Kumar
2021-08-05 13:10           ` Arnd Bergmann
2021-08-06  7:44             ` Viresh Kumar
2021-08-06  7:44               ` Viresh Kumar
     [not found]             ` <0100017b1a6c0a05-e41dc16c-b326-4017-a63d-a24a6c1fde70-000000@email.amazonses.com>
2021-08-06  8:00               ` Arnd Bergmann [this message]
2021-08-09  7:30                 ` Viresh Kumar
2021-08-09  7:30                   ` Viresh Kumar
2021-08-09  7:55                   ` Arnd Bergmann
2021-08-09 10:46                     ` Viresh Kumar
2021-08-09 10:46                       ` Viresh Kumar
     [not found]                     ` <0100017b2a85eaf8-08b905fc-89f7-43a4-857e-070ca9691ce1-000000@email.amazonses.com>
2021-08-09 11:19                       ` Arnd Bergmann
2021-08-10  7:35                         ` Viresh Kumar
2021-08-10  7:35                           ` Viresh Kumar
2021-08-04  6:29   ` 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=CAK8P3a2rrueXJHZxuiiShgVmLD916RaxW7xQHHjQXNFkM3Fpvg@mail.gmail.com \
    --to=arnd@kernel.org \
    --cc=bgolaszewski@baylibre.com \
    --cc=cohuck@redhat.com \
    --cc=geert@linux-m68k.org \
    --cc=info@metux.net \
    --cc=jasowang@redhat.com \
    --cc=linus.walleij@linaro.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=maz@kernel.org \
    --cc=mst@redhat.com \
    --cc=stratos-dev@op-lists.linaro.org \
    --cc=tglx@linutronix.de \
    --cc=viresh.kumar@linaro.org \
    --cc=vireshk@kernel.org \
    --cc=virtualization@lists.linux-foundation.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.