From: Jonathan Cameron <jic23@kernel.org>
To: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Cc: linux-iio@vger.kernel.org, Lars-Peter Clausen <lars@metafoo.de>,
Peter Meerwald <pmeerw@pmeerw.net>
Subject: Re: [PATCH v2 8/9] iio: Add channel modifiers for Quaternion Rotations
Date: Thu, 24 Oct 2013 12:18:33 +0100 [thread overview]
Message-ID: <52690209.8020604@kernel.org> (raw)
In-Reply-To: <1382555476-15826-8-git-send-email-srinivas.pandruvada@linux.intel.com>
On 10/23/13 20:11, Srinivas Pandruvada wrote:
> A quaternion is composed of four components: a vector with x, y, z
> coordinates and a w rotation. Added channel modifiers for exporting
> these four components via user space.
>
> Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Quaternions are one of the 'interesting' cases that make me wonder if we need
a slightly more generic form of read_raw. The quaternion only has meaning
with an associated scale. Hence you really have to guarantee that you can grab all
4 components together.
Do we need to rethink how the read callback works?
Mind you, if we do that then we need to extend the description of the buffer element
in the scan_mask. We could define a compound description for a channel, but that is 'interesting'.
I also don't like this being defined as type IIO_ROT - the units (such as exist are different).
See next patch for what I'm referring to here.
I've cc'd a few people who might have views on this.
> ---
> drivers/iio/industrialio-core.c | 4 ++++
> include/linux/iio/types.h | 4 ++++
> 2 files changed, 8 insertions(+)
>
> diff --git a/drivers/iio/industrialio-core.c b/drivers/iio/industrialio-core.c
> index f95c697..4ffaead 100644
> --- a/drivers/iio/industrialio-core.c
> +++ b/drivers/iio/industrialio-core.c
> @@ -80,6 +80,10 @@ static const char * const iio_modifier_names[] = {
> [IIO_MOD_LIGHT_RED] = "red",
> [IIO_MOD_LIGHT_GREEN] = "green",
> [IIO_MOD_LIGHT_BLUE] = "blue",
> + [IIO_MOD_QUATERNION_X] = "quat_x",
> + [IIO_MOD_QUATERNION_Y] = "quat_y",
> + [IIO_MOD_QUATERNION_Z] = "quat_z",
> + [IIO_MOD_QUATERNION_W] = "quat_w",
> };
>
> /* relies on pairs of these shared then separate */
> diff --git a/include/linux/iio/types.h b/include/linux/iio/types.h
> index 88bf0f0..ac2345c 100644
> --- a/include/linux/iio/types.h
> +++ b/include/linux/iio/types.h
> @@ -52,6 +52,10 @@ enum iio_modifier {
> IIO_MOD_LIGHT_RED,
> IIO_MOD_LIGHT_GREEN,
> IIO_MOD_LIGHT_BLUE,
> + IIO_MOD_QUATERNION_X,
> + IIO_MOD_QUATERNION_Y,
> + IIO_MOD_QUATERNION_Z,
> + IIO_MOD_QUATERNION_W,
> };
>
> #define IIO_VAL_INT 1
>
next prev parent reply other threads:[~2013-10-24 10:17 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-23 19:11 [PATCH v2 1/9] iio: hid_Sensors: fix crash during trigger unregister Srinivas Pandruvada
2013-10-23 19:11 ` [PATCH v2 2/9] iio: hid-sensors: Add connection type Srinivas Pandruvada
2013-10-23 19:11 ` [PATCH v2 3/9] iio: hid-sensors: accelerometer: Add sensitivity Srinivas Pandruvada
2013-10-23 19:11 ` [PATCH v2 4/9] iio: hid-sensors: gyro : " Srinivas Pandruvada
2013-10-23 19:11 ` [PATCH v2 5/9] iio: hid-sensors: light/als " Srinivas Pandruvada
2013-10-23 19:11 ` [PATCH v2 6/9] iio: hid-sensors: magnetometer " Srinivas Pandruvada
2013-10-23 19:11 ` [PATCH v2 7/9] iio: hid-sensors: Added Inclinometer 3D Srinivas Pandruvada
2013-10-24 11:06 ` Jonathan Cameron
2013-10-24 11:11 ` Jonathan Cameron
2013-10-23 19:11 ` [PATCH v2 8/9] iio: Add channel modifiers for Quaternion Rotations Srinivas Pandruvada
2013-10-24 11:18 ` Jonathan Cameron [this message]
2013-10-24 15:17 ` Srinivas Pandruvada
2013-10-24 16:20 ` Jonathan Cameron
2013-10-28 23:44 ` Srinivas Pandruvada
2013-10-29 6:54 ` Jonathan Cameron
2013-10-23 19:11 ` [PATCH v2 9/9] iio: hid-sensors: Added device rotation support Srinivas Pandruvada
2013-10-24 10:42 ` [PATCH v2 1/9] iio: hid_Sensors: fix crash during trigger unregister Jonathan Cameron
2013-10-24 15:21 ` Lars-Peter Clausen
2013-10-24 15:40 ` Srinivas Pandruvada
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=52690209.8020604@kernel.org \
--to=jic23@kernel.org \
--cc=lars@metafoo.de \
--cc=linux-iio@vger.kernel.org \
--cc=pmeerw@pmeerw.net \
--cc=srinivas.pandruvada@linux.intel.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).