From: Kent Gibson <warthog618@gmail.com>
To: Bartosz Golaszewski <brgl@bgdev.pl>
Cc: Linus Walleij <linus.walleij@linaro.org>,
linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org,
Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Subject: Re: [PATCH v4 8/8] gpiolib: notify user-space about in-kernel line state changes
Date: Thu, 17 Oct 2024 20:53:49 +0800 [thread overview]
Message-ID: <20241017125349.GB221864@rigel> (raw)
In-Reply-To: <20241017-gpio-notify-in-kernel-events-v4-8-64bc05f3be0c@linaro.org>
On Thu, Oct 17, 2024 at 10:14:16AM +0200, Bartosz Golaszewski wrote:
> From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
>
> @@ -1447,8 +1450,6 @@ static long linereq_set_config(struct linereq *lr, void __user *ip)
> }
>
> WRITE_ONCE(line->edflags, edflags);
> -
> - gpiod_line_state_notify(desc, GPIO_V2_LINE_CHANGED_CONFIG);
> }
> return 0;
> }
I still get errors from this when reconfiguring lines with debounce.
You should leave this notify in place and use _nonotify when setting the
direction.
i.e.
@@ -1436,11 +1432,11 @@ static long linereq_set_config(struct linereq *lr, void __user *ip)
int val = gpio_v2_line_config_output_value(&lc, i);
edge_detector_stop(line);
- ret = gpiod_direction_output(desc, val);
+ ret = gpiod_direction_output_nonotify(desc, val);
if (ret)
return ret;
} else {
- ret = gpiod_direction_input(desc);
+ ret = gpiod_direction_input_nonotify(desc);
if (ret)
return ret;
@@ -1450,6 +1446,8 @@ static long linereq_set_config(struct linereq *lr, void __user *ip)
}
WRITE_ONCE(line->edflags, edflags);
+
+ gpiod_line_state_notify(desc, GPIO_V2_LINE_CHANGED_CONFIG);
}
return 0;
}
Given that, all my current tests are passing.
Cheers,
Kent.
next prev parent reply other threads:[~2024-10-17 12:53 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-17 8:14 [PATCH v4 0/8] gpio: notify user-space about config changes in the kernel Bartosz Golaszewski
2024-10-17 8:14 ` [PATCH v4 1/8] gpiolib: notify user-space when a driver requests its own desc Bartosz Golaszewski
2024-10-17 8:14 ` [PATCH v4 2/8] gpiolib: unduplicate chip guard in set_config path Bartosz Golaszewski
2024-10-17 8:14 ` [PATCH v4 3/8] gpio: cdev: go back to storing debounce period in the GPIO descriptor Bartosz Golaszewski
2024-10-17 12:44 ` Kent Gibson
2024-10-17 14:13 ` Bartosz Golaszewski
2024-10-17 14:16 ` Kent Gibson
2024-10-17 14:43 ` Bartosz Golaszewski
2024-10-17 8:14 ` [PATCH v4 4/8] gpio: cdev: prepare gpio_desc_to_lineinfo() for being called from atomic Bartosz Golaszewski
2024-10-17 8:14 ` [PATCH v4 5/8] gpiolib: add a per-gpio_device line state notification workqueue Bartosz Golaszewski
2024-10-17 8:14 ` [PATCH v4 6/8] gpio: cdev: put emitting the line state events on a workqueue Bartosz Golaszewski
2024-10-17 8:14 ` [PATCH v4 7/8] gpiolib: switch the line state notifier to atomic Bartosz Golaszewski
2024-10-17 8:14 ` [PATCH v4 8/8] gpiolib: notify user-space about in-kernel line state changes Bartosz Golaszewski
2024-10-17 12:53 ` Kent Gibson [this message]
2024-10-17 14:14 ` Bartosz Golaszewski
2024-10-17 14:20 ` Kent Gibson
2024-10-17 14:25 ` Kent Gibson
2024-10-17 14:59 ` Bartosz Golaszewski
2024-10-17 15:02 ` Kent Gibson
2024-10-17 15:04 ` Bartosz Golaszewski
2024-10-17 15:12 ` Kent Gibson
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=20241017125349.GB221864@rigel \
--to=warthog618@gmail.com \
--cc=bartosz.golaszewski@linaro.org \
--cc=brgl@bgdev.pl \
--cc=linus.walleij@linaro.org \
--cc=linux-gpio@vger.kernel.org \
--cc=linux-kernel@vger.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 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.