From: William Breathitt Gray <vilhelm.gray@gmail.com>
To: jic23@kernel.org
Cc: linux-stm32@st-md-mailman.stormreply.com, kernel@pengutronix.de,
a.fatoum@pengutronix.de, kamel.bouhara@bootlin.com,
gwendal@chromium.org, alexandre.belloni@bootlin.com,
david@lechnology.com, linux-iio@vger.kernel.org,
linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org, syednwaris@gmail.com,
patrick.havelange@essensium.com, fabrice.gasnier@st.com,
mcoquelin.stm32@gmail.com, alexandre.torgue@st.com,
o.rempel@pengutronix.de, jarkko.nikula@linux.intel.com,
William Breathitt Gray <vilhelm.gray@gmail.com>
Subject: [PATCH v17 0/9] Introduce the Counter character device interface
Date: Wed, 29 Sep 2021 12:15:57 +0900 [thread overview]
Message-ID: <cover.1632884256.git.vilhelm.gray@gmail.com> (raw)
Changes in v17:
- A couple minor improvements to documentation from review suggestions
- chrdev_lock redeclared as atomic_t; BITMAP was not necessary because
chrdev_lock is a single flag
- test_and_set_bit_lock(), clear_bit_unlock(), and clear_bit(),
replaced respectively with atomic_add_unless(), atomic_dec(), and
atomic_set()
- counter_comp_read_is_equal() and counter_comp_read_is_set() macros
implemented in order to properly test counter_comp structures' read
callback states
- counter_sysfs_add() call performed before counter_chrdev_add() call
in counter_register() in order to match unwinding sequence
- for-loop utilized in counter-example.c in order to simplify code
- counter-example.c returns 1 on error instead of -errno; errno may be
modified after a subsequent library call so we can't depend on it
For convenience, this patchset is also available on my personal git
repo: https://gitlab.com/vilhelmgray/iio/-/tree/counter_chrdev_v17
A Counter character device interface is introduced that allows Counter
events and associated data to be read() by userspace; the
events_configure() and watch_validate() driver callbacks are introduced
to support Counter events; and IRQ support is added to the
104-QUAD-8 driver, serving as an example of how to support the new
Counter events functionality.
William Breathitt Gray (9):
counter: Move counter enums to uapi header
counter: Add character device interface
docs: counter: Document character device interface
tools/counter: Create Counter tools
counter: Implement signalZ_action_component_id sysfs attribute
counter: Implement *_component_id sysfs attributes
counter: Implement events_queue_size sysfs attribute
counter: 104-quad-8: Replace mutex with spinlock
counter: 104-quad-8: Add IRQ support for the ACCES 104-QUAD-8
Documentation/ABI/testing/sysfs-bus-counter | 29 +
Documentation/driver-api/generic-counter.rst | 177 ++++--
.../userspace-api/ioctl/ioctl-number.rst | 1 +
MAINTAINERS | 2 +
drivers/counter/104-quad-8.c | 256 ++++++--
drivers/counter/Kconfig | 6 +-
drivers/counter/Makefile | 2 +-
drivers/counter/counter-chrdev.c | 578 ++++++++++++++++++
drivers/counter/counter-chrdev.h | 14 +
drivers/counter/counter-core.c | 56 +-
drivers/counter/counter-sysfs.c | 123 +++-
include/linux/counter.h | 98 +--
include/uapi/linux/counter.h | 154 +++++
tools/Makefile | 13 +-
tools/counter/Build | 1 +
tools/counter/Makefile | 53 ++
tools/counter/counter_example.c | 92 +++
17 files changed, 1509 insertions(+), 146 deletions(-)
create mode 100644 drivers/counter/counter-chrdev.c
create mode 100644 drivers/counter/counter-chrdev.h
create mode 100644 include/uapi/linux/counter.h
create mode 100644 tools/counter/Build
create mode 100644 tools/counter/Makefile
create mode 100644 tools/counter/counter_example.c
base-commit: a5ae0cfd53aaf031c2e9ba048281776fa67047c2
--
2.33.0
next reply other threads:[~2021-09-29 3:16 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-29 3:15 William Breathitt Gray [this message]
2021-09-29 3:15 ` [PATCH v17 1/9] counter: Move counter enums to uapi header William Breathitt Gray
2021-09-29 3:15 ` [PATCH v17 2/9] counter: Add character device interface William Breathitt Gray
2021-10-17 13:50 ` Greg KH
2021-10-17 14:02 ` Alexandre Belloni
2021-10-17 14:40 ` Greg KH
2021-10-17 15:35 ` Alexandre Belloni
2021-09-29 3:16 ` [PATCH v17 3/9] docs: counter: Document " William Breathitt Gray
2021-09-29 3:16 ` [PATCH v17 4/9] tools/counter: Create Counter tools William Breathitt Gray
2021-09-29 3:16 ` [PATCH v17 5/9] counter: Implement signalZ_action_component_id sysfs attribute William Breathitt Gray
2021-10-17 13:51 ` Greg KH
2021-09-29 3:16 ` [PATCH v17 6/9] counter: Implement *_component_id sysfs attributes William Breathitt Gray
2021-09-29 3:16 ` [PATCH v17 7/9] counter: Implement events_queue_size sysfs attribute William Breathitt Gray
2021-09-29 3:16 ` [PATCH v17 8/9] counter: 104-quad-8: Replace mutex with spinlock William Breathitt Gray
2021-09-29 3:16 ` [PATCH v17 9/9] counter: 104-quad-8: Add IRQ support for the ACCES 104-QUAD-8 William Breathitt Gray
2021-09-30 17:21 ` [PATCH v17 0/9] Introduce the Counter character device interface Jonathan Cameron
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=cover.1632884256.git.vilhelm.gray@gmail.com \
--to=vilhelm.gray@gmail.com \
--cc=a.fatoum@pengutronix.de \
--cc=alexandre.belloni@bootlin.com \
--cc=alexandre.torgue@st.com \
--cc=david@lechnology.com \
--cc=fabrice.gasnier@st.com \
--cc=gwendal@chromium.org \
--cc=jarkko.nikula@linux.intel.com \
--cc=jic23@kernel.org \
--cc=kamel.bouhara@bootlin.com \
--cc=kernel@pengutronix.de \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-iio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-stm32@st-md-mailman.stormreply.com \
--cc=mcoquelin.stm32@gmail.com \
--cc=o.rempel@pengutronix.de \
--cc=patrick.havelange@essensium.com \
--cc=syednwaris@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).