linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jonathan Cameron <jic23@kernel.org>
To: William Breathitt Gray <vilhelm.gray@gmail.com>
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
Subject: Re: [PATCH v12 00/17] Introduce the Counter character device interface
Date: Sun, 11 Jul 2021 14:48:28 +0100	[thread overview]
Message-ID: <20210711144828.795ca342@jic23-huawei> (raw)
In-Reply-To: <cover.1625471640.git.vilhelm.gray@gmail.com>

On Mon,  5 Jul 2021 17:18:48 +0900
William Breathitt Gray <vilhelm.gray@gmail.com> wrote:

> Changes in v12:
>  - Move unlock to after register set in quad8_count_ceiling_write()
>  - Add locking protection to counter_set_event_node()
>  - Fix sparse warning by using {} instead of {0}
>  - Clean up and organize comments for clarity
>  - Reduce boilerplate by utilizing devm_add_action_or_reset()
>  - Use switch statements in ti_eqep_action_read() to make possible cases
>    more obvious
> 
> I pulled out a lot of bits and pieces to their own patches; hopefully
> that makes reviewing this patchset much simpler than before. This
> patchset is also available on my personal git repo for convenience:
> https://gitlab.com/vilhelmgray/iio/-/tree/counter_chrdev_v12
> 
> The patches preceding "counter: Internalize sysfs interface code" are
> primarily cleanup and fixes that can be picked up and applied now to the
> IIO tree if so desired. The "counter: Internalize sysfs interface code"
> patch as well may be considered for pickup because it is relatively safe
> and makes no changes to the userspace interface.
> 
> To summarize the main points of this patchset: there are no changes to
> the existing Counter sysfs userspace interface; 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.
> 
> Something that should still be discussed: should the struct
> counter_event "status" member be 8 bits or 32 bits wide? This member
> will provide the return status (system error number) of an event
> operation.

Hi william,

I've looked through the lot and where I haven't commented, I had nothing
much to add to David's comments.

I'm not planning to go through the whole thing again unless major changes
occur. Fingers crossed for v13.

If it looks like there are still some unresolved issues after that, perhaps
applying up to patch 8 or so makes sense to reduced the volume of code you
are carrying.  Let me know if you'd like me to do that.

Thanks,

Jonathan

> 
> William Breathitt Gray (17):
>   counter: 104-quad-8: Return error when invalid mode during
>     ceiling_write
>   counter: Return error code on invalid modes
>   counter: Standardize to ERANGE for limit exceeded errors
>   counter: Rename counter_signal_value to counter_signal_level
>   counter: Rename counter_count_function to counter_function
>   counter: Internalize sysfs interface code
>   counter: Update counter.h comments to reflect sysfs internalization
>   docs: counter: Update to reflect sysfs internalization
>   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   |   38 +-
>  Documentation/driver-api/generic-counter.rst  |  366 +++-
>  .../userspace-api/ioctl/ioctl-number.rst      |    1 +
>  MAINTAINERS                                   |    3 +-
>  drivers/counter/104-quad-8.c                  |  728 ++++----
>  drivers/counter/Kconfig                       |    6 +-
>  drivers/counter/Makefile                      |    1 +
>  drivers/counter/counter-chrdev.c              |  498 ++++++
>  drivers/counter/counter-chrdev.h              |   14 +
>  drivers/counter/counter-core.c                |  182 ++
>  drivers/counter/counter-sysfs.c               |  953 +++++++++++
>  drivers/counter/counter-sysfs.h               |   13 +
>  drivers/counter/counter.c                     | 1496 -----------------
>  drivers/counter/ftm-quaddec.c                 |   59 +-
>  drivers/counter/intel-qep.c                   |  150 +-
>  drivers/counter/interrupt-cnt.c               |   73 +-
>  drivers/counter/microchip-tcb-capture.c       |  103 +-
>  drivers/counter/stm32-lptimer-cnt.c           |  176 +-
>  drivers/counter/stm32-timer-cnt.c             |  147 +-
>  drivers/counter/ti-eqep.c                     |  205 ++-
>  include/linux/counter.h                       |  716 ++++----
>  include/linux/counter_enum.h                  |   45 -
>  include/uapi/linux/counter.h                  |  133 ++
>  tools/Makefile                                |   13 +-
>  tools/counter/Build                           |    1 +
>  tools/counter/Makefile                        |   53 +
>  tools/counter/counter_example.c               |   95 ++
>  27 files changed, 3501 insertions(+), 2767 deletions(-)
>  create mode 100644 drivers/counter/counter-chrdev.c
>  create mode 100644 drivers/counter/counter-chrdev.h
>  create mode 100644 drivers/counter/counter-core.c
>  create mode 100644 drivers/counter/counter-sysfs.c
>  create mode 100644 drivers/counter/counter-sysfs.h
>  delete mode 100644 drivers/counter/counter.c
>  delete mode 100644 include/linux/counter_enum.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: 6cbb3aa0f9d5d23221df787cf36f74d3866fdb78


  parent reply	other threads:[~2021-07-11 13:46 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-05  8:18 [PATCH v12 00/17] Introduce the Counter character device interface William Breathitt Gray
2021-07-05  8:18 ` [PATCH v12 01/17] counter: 104-quad-8: Return error when invalid mode during ceiling_write William Breathitt Gray
2021-07-05  8:18 ` [PATCH v12 02/17] counter: Return error code on invalid modes William Breathitt Gray
2021-07-09 17:40   ` David Lechner
2021-07-05  8:18 ` [PATCH v12 03/17] counter: Standardize to ERANGE for limit exceeded errors William Breathitt Gray
2021-07-05  8:18 ` [PATCH v12 04/17] counter: Rename counter_signal_value to counter_signal_level William Breathitt Gray
2021-07-05  8:18 ` [PATCH v12 05/17] counter: Rename counter_count_function to counter_function William Breathitt Gray
2021-07-05  8:18 ` [PATCH v12 06/17] counter: Internalize sysfs interface code William Breathitt Gray
2021-07-11  9:49   ` Syed Nayyar Waris
2021-07-11 11:42   ` Jonathan Cameron
2021-07-05  8:18 ` [PATCH v12 07/17] counter: Update counter.h comments to reflect sysfs internalization William Breathitt Gray
2021-07-09 17:49   ` David Lechner
2021-07-10  9:41     ` William Breathitt Gray
2021-07-05  8:18 ` [PATCH v12 08/17] docs: counter: Update " William Breathitt Gray
2021-07-09 17:56   ` David Lechner
2021-07-05  8:18 ` [PATCH v12 09/17] counter: Move counter enums to uapi header William Breathitt Gray
2021-07-05  8:18 ` [PATCH v12 10/17] counter: Add character device interface William Breathitt Gray
2021-07-10 19:37   ` David Lechner
2021-07-11 12:20   ` Jonathan Cameron
2021-07-12 10:28     ` William Breathitt Gray
2021-07-05  8:18 ` [PATCH v12 11/17] docs: counter: Document " William Breathitt Gray
2021-07-10 20:15   ` David Lechner
2021-07-11 10:41     ` William Breathitt Gray
2021-07-05  8:19 ` [PATCH v12 12/17] tools/counter: Create Counter tools William Breathitt Gray
2021-07-10 16:53   ` David Lechner
2021-07-11 11:28     ` William Breathitt Gray
2021-07-11 14:05       ` David Lechner
2021-07-11 13:22   ` Jonathan Cameron
2021-07-05  8:19 ` [PATCH v12 13/17] counter: Implement signalZ_action_component_id sysfs attribute William Breathitt Gray
2021-07-10 16:20   ` David Lechner
2021-07-05  8:19 ` [PATCH v12 14/17] counter: Implement *_component_id sysfs attributes William Breathitt Gray
2021-07-10 17:06   ` David Lechner
2021-07-11 13:28     ` Jonathan Cameron
2021-07-11 14:08       ` David Lechner
2021-07-12 10:19         ` Jonathan Cameron
2021-07-05  8:19 ` [PATCH v12 15/17] counter: Implement events_queue_size sysfs attribute William Breathitt Gray
2021-07-06  7:48   ` Dan Carpenter
2021-07-06 11:40   ` Jarkko Nikula
2021-07-10 10:25     ` William Breathitt Gray
2021-07-10 15:43       ` David Lechner
2021-07-10 16:08         ` David Lechner
2021-07-10 17:53           ` David Lechner
2021-07-11  9:12         ` William Breathitt Gray
2021-07-05  8:19 ` [PATCH v12 16/17] counter: 104-quad-8: Replace mutex with spinlock William Breathitt Gray
2021-07-05  8:19 ` [PATCH v12 17/17] counter: 104-quad-8: Add IRQ support for the ACCES 104-QUAD-8 William Breathitt Gray
2021-07-11 13:44   ` Jonathan Cameron
2021-07-12 10:59     ` William Breathitt Gray
2021-07-06 11:40 ` [PATCH v12 00/17] Introduce the Counter character device interface Jarkko Nikula
2021-07-07  0:28   ` William Breathitt Gray
2021-07-11 13:48 ` Jonathan Cameron [this message]
2021-07-12 10:48   ` William Breathitt Gray

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=20210711144828.795ca342@jic23-huawei \
    --to=jic23@kernel.org \
    --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=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 \
    --cc=vilhelm.gray@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).