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
WARNING: multiple messages have this Message-ID (diff)
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
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next reply other threads:[~2021-09-29 3:16 UTC|newest]
Thread overview: 32+ 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 0/9] Introduce the Counter character device interface William Breathitt Gray
2021-09-29 3:15 ` [PATCH v17 1/9] counter: Move counter enums to uapi header William Breathitt Gray
2021-09-29 3:15 ` William Breathitt Gray
2021-09-29 3:15 ` [PATCH v17 2/9] counter: Add character device interface William Breathitt Gray
2021-09-29 3:15 ` William Breathitt Gray
2021-10-17 13:50 ` Greg KH
2021-10-17 13:50 ` Greg KH
2021-10-17 14:02 ` Alexandre Belloni
2021-10-17 14:02 ` Alexandre Belloni
2021-10-17 14:40 ` Greg KH
2021-10-17 14:40 ` Greg KH
2021-10-17 15:35 ` Alexandre Belloni
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 ` 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 ` William Breathitt Gray
2021-09-29 3:16 ` [PATCH v17 5/9] counter: Implement signalZ_action_component_id sysfs attribute William Breathitt Gray
2021-09-29 3:16 ` William Breathitt Gray
2021-10-17 13:51 ` Greg KH
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 ` 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 ` 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 ` 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-29 3:16 ` William Breathitt Gray
2021-09-30 17:21 ` [PATCH v17 0/9] Introduce the Counter character device interface Jonathan Cameron
2021-09-30 17:21 ` 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 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.