All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jonathan Cameron <jic23@kernel.org>
To: Saravanan Sekar <saravanan@linumiz.com>
Cc: robh+dt@kernel.org, knaack.h@gmx.de, lars@metafoo.de,
	pmeerw@pmeerw.net, broonie@kernel.org, lgirdwood@gmail.com,
	devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-iio@vger.kernel.org
Subject: Re: [PATCH v2 3/4] iio: accel: wsen-itds accel documentation
Date: Sun, 3 May 2020 13:01:03 +0100	[thread overview]
Message-ID: <20200503130103.16a92131@archlinux> (raw)
In-Reply-To: <20200429133943.18298-4-saravanan@linumiz.com>

On Wed, 29 Apr 2020 15:39:42 +0200
Saravanan Sekar <saravanan@linumiz.com> wrote:

> Add documentation about device operating mode and output data range
> supported according to operating mode
> 
> Signed-off-by: Saravanan Sekar <saravanan@linumiz.com>
> ---
>  .../ABI/testing/sysfs-bus-iio-wsen-itds       | 23 +++++++++++++++++++
>  1 file changed, 23 insertions(+)
>  create mode 100644 Documentation/ABI/testing/sysfs-bus-iio-wsen-itds
> 
> diff --git a/Documentation/ABI/testing/sysfs-bus-iio-wsen-itds b/Documentation/ABI/testing/sysfs-bus-iio-wsen-itds
> new file mode 100644
> index 000000000000..5979f2b8aa1a
> --- /dev/null
> +++ b/Documentation/ABI/testing/sysfs-bus-iio-wsen-itds
> @@ -0,0 +1,23 @@
> +What:		/sys/bus/iio/devices/iio\:device0/in_accel_samp_freq_available
> +KernelVersion:	5.7
> +Contact:	linux-iio@vger.kernel.org
> +Description:
> +		Reading gives range of sample frequencies available for current operating mode
> +		after one data has generated.

This is standard ABI so should be the main docs, not here.
It also takes absolute precedence over the power modes (as mentioned below, no
standard userspace will be able to use those).  So if the frequency is
only available in high perf mode, then we change to high perf mode.

> +
> +		Access: Read
> +		Valid values: represented in Hz
> +		- range [12.5, 1600] for high permormance mode
> +		- range [1.6, 200] for normal/low power mode
> +
> +What:		/sys/bus/iio/devices/iio\:device0/operating_mode
> +KernelVersion:	5.7
> +Contact:	linux-iio@vger.kernel.org
> +Description:
> +		Represents the device operating mode. High performance mode gives high output
> +		data rate and low noise compared to normal mode. Normal mode consumes less
> +		current.  In single shot device enters to lowpower after one data has
> +		generated.
> +
> +		Access: Read, Write
> +		Valid values: "lowpower", "normal", "high_perf", "single_shot"

The issue with these sort of 'mode' interface is almost no userspace will ever use them.
They are too unpredictable across different types of devices.

Some of these should also not be exposed to userspace anyway as they are about 'how'
you are using the driver.  For example, if you aren't doing triggered capture then
single_shot is almost always the correct option. Annoyingly I see high performance
mode gives lower noise...

So no need to expose single_shot to userspace.

For the others we are just looking at different power vs speed and accuracy trade offs.
Those are better exposed by what they effect.  Here the big control for that is
sampling frequency.

So if we assume the user is never going to touch this control (if it's even there)
then we probably want to assume they want the best possible accuracy for whatever
frequency they are running at.  So transition across the modes to provide that.

Should we ever support low power mode?  It sounds nice on paper, but in reality
userspace won't use so I suspect we should just drop it - certainly in an initial
patch submission (as it will hold up acceptance).  Even if we did support
it, as mentioned above ABI controls will take precedence so we are looking
at a 'hint' not a control of mode.

ABI is a pain, and we will put a lot of effort into not expanding it unless
there is a good usecase plus no way of mapping to existing ABI.

Jonathan



  reply	other threads:[~2020-05-03 12:01 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-29 13:39 [PATCH v2 0/4] Add driver for wsen-itds accelerometer sensor Saravanan Sekar
2020-04-29 13:39 ` [PATCH v2 1/4] dt-bindings: iio: add document bindings for wsen-itds accel sensor Saravanan Sekar
2020-05-12 14:45   ` Rob Herring
2020-04-29 13:39 ` [PATCH v2 2/4] iio: accel: Add driver for wsen-itds accelerometer sensor Saravanan Sekar
2020-05-03 12:42   ` Jonathan Cameron
2020-04-29 13:39 ` [PATCH v2 3/4] iio: accel: wsen-itds accel documentation Saravanan Sekar
2020-05-03 12:01   ` Jonathan Cameron [this message]
2020-05-10 18:11     ` Saravanan Sekar
2020-05-11 17:30       ` Jonathan Cameron
2020-04-29 13:39 ` [PATCH v2 4/4] MAINTAINERS: Add entry for wsen-itds accelerometer sensor Saravanan Sekar

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=20200503130103.16a92131@archlinux \
    --to=jic23@kernel.org \
    --cc=broonie@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=knaack.h@gmx.de \
    --cc=lars@metafoo.de \
    --cc=lgirdwood@gmail.com \
    --cc=linux-iio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pmeerw@pmeerw.net \
    --cc=robh+dt@kernel.org \
    --cc=saravanan@linumiz.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.