linux-iio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/1] iio: cros_ec: add 'id' sysfs entry
@ 2019-04-26 11:39 Fabien Lahoudere
  2019-04-27 13:14 ` Jonathan Cameron
  0 siblings, 1 reply; 2+ messages in thread
From: Fabien Lahoudere @ 2019-04-26 11:39 UTC (permalink / raw)
  Cc: Gwendal Grignou, Fabien Lahoudere, Jonathan Cameron,
	Hartmut Knaack, Lars-Peter Clausen, Peter Meerwald-Stadler,
	Benson Leung, Enric Balletbo i Serra, Guenter Roeck,
	Wolfram Sang, linux-iio, linux-kernel

From: Gwendal Grignou <gwendal@chromium.org>

This new sysfs entry is used to interpret ring buffer information,
mainly by Android sensor HAL.
It expand to all sensors, the documentation about 'id' we can found
in Documentation/ABI/testing/sysfs-bus-iio-cros-ec.

Also fix typo in docs, I replace 'Septembre' by 'September'.

Signed-off-by: Gwendal Grignou <gwendal@chromium.org>
Signed-off-by: Fabien Lahoudere <fabien.lahoudere@collabora.com>
---
 Documentation/ABI/testing/sysfs-bus-iio-cros-ec    | 10 +++++-----
 .../common/cros_ec_sensors/cros_ec_sensors_core.c  | 14 ++++++++++++++
 2 files changed, 19 insertions(+), 5 deletions(-)

diff --git a/Documentation/ABI/testing/sysfs-bus-iio-cros-ec b/Documentation/ABI/testing/sysfs-bus-iio-cros-ec
index 0e95c2ca105c..6158f831c761 100644
--- a/Documentation/ABI/testing/sysfs-bus-iio-cros-ec
+++ b/Documentation/ABI/testing/sysfs-bus-iio-cros-ec
@@ -18,11 +18,11 @@ Description:
 		values are 'base' and 'lid'.
 
 What:		/sys/bus/iio/devices/iio:deviceX/id
-Date:		Septembre 2017
+Date:		September 2017
 KernelVersion:	4.14
 Contact:	linux-iio@vger.kernel.org
 Description:
-		This attribute is exposed by the CrOS EC legacy accelerometer
-		driver and represents the sensor ID as exposed by the EC. This
-		ID is used by the Android sensor service hardware abstraction
-		layer (sensor HAL) through the Android container on ChromeOS.
+		This attribute is exposed by the CrOS EC sensors driver and
+		represents the sensor ID as exposed by the EC. This ID is used
+		by the Android sensor service hardware abstraction layer (sensor
+		HAL) through the Android container on ChromeOS.
diff --git a/drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core.c b/drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core.c
index 719a0df5aeeb..130362ca421b 100644
--- a/drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core.c
+++ b/drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core.c
@@ -125,6 +125,15 @@ static ssize_t cros_ec_sensors_calibrate(struct iio_dev *indio_dev,
 	return ret ? ret : len;
 }
 
+static ssize_t cros_ec_sensors_id(struct iio_dev *indio_dev,
+				  uintptr_t private,
+				  const struct iio_chan_spec *chan, char *buf)
+{
+	struct cros_ec_sensors_core_state *st = iio_priv(indio_dev);
+
+	return snprintf(buf, PAGE_SIZE, "%d\n", st->param.info.sensor_num);
+}
+
 static ssize_t cros_ec_sensors_loc(struct iio_dev *indio_dev,
 		uintptr_t private, const struct iio_chan_spec *chan,
 		char *buf)
@@ -140,6 +149,11 @@ const struct iio_chan_spec_ext_info cros_ec_sensors_ext_info[] = {
 		.shared = IIO_SHARED_BY_ALL,
 		.write = cros_ec_sensors_calibrate
 	},
+	{
+		.name = "id",
+		.shared = IIO_SHARED_BY_ALL,
+		.read = cros_ec_sensors_id
+	},
 	{
 		.name = "location",
 		.shared = IIO_SHARED_BY_ALL,
-- 
2.19.2


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH 1/1] iio: cros_ec: add 'id' sysfs entry
  2019-04-26 11:39 [PATCH 1/1] iio: cros_ec: add 'id' sysfs entry Fabien Lahoudere
@ 2019-04-27 13:14 ` Jonathan Cameron
  0 siblings, 0 replies; 2+ messages in thread
From: Jonathan Cameron @ 2019-04-27 13:14 UTC (permalink / raw)
  To: Fabien Lahoudere
  Cc: Gwendal Grignou, Hartmut Knaack, Lars-Peter Clausen,
	Peter Meerwald-Stadler, Benson Leung, Enric Balletbo i Serra,
	Guenter Roeck, Wolfram Sang, linux-iio, linux-kernel

On Fri, 26 Apr 2019 13:39:16 +0200
Fabien Lahoudere <fabien.lahoudere@collabora.com> wrote:

> From: Gwendal Grignou <gwendal@chromium.org>
> 
> This new sysfs entry is used to interpret ring buffer information,
> mainly by Android sensor HAL.
> It expand to all sensors, the documentation about 'id' we can found
> in Documentation/ABI/testing/sysfs-bus-iio-cros-ec.
> 
> Also fix typo in docs, I replace 'Septembre' by 'September'.
> 
> Signed-off-by: Gwendal Grignou <gwendal@chromium.org>
> Signed-off-by: Fabien Lahoudere <fabien.lahoudere@collabora.com>
Hmm. I'm not 100% keen on non standard ABI like this, but given
we already have it for one type of cros_ec, I guess the other one can
have it as well.

Applied to the togreg branch of iio.git and pushed out as testing for
the autobuilders to play with it.

Note this has probably just missed the coming merge window unless that
is delayed for some reason.

Thanks,


Jonathan

> ---
>  Documentation/ABI/testing/sysfs-bus-iio-cros-ec    | 10 +++++-----
>  .../common/cros_ec_sensors/cros_ec_sensors_core.c  | 14 ++++++++++++++
>  2 files changed, 19 insertions(+), 5 deletions(-)
> 
> diff --git a/Documentation/ABI/testing/sysfs-bus-iio-cros-ec b/Documentation/ABI/testing/sysfs-bus-iio-cros-ec
> index 0e95c2ca105c..6158f831c761 100644
> --- a/Documentation/ABI/testing/sysfs-bus-iio-cros-ec
> +++ b/Documentation/ABI/testing/sysfs-bus-iio-cros-ec
> @@ -18,11 +18,11 @@ Description:
>  		values are 'base' and 'lid'.
>  
>  What:		/sys/bus/iio/devices/iio:deviceX/id
> -Date:		Septembre 2017
> +Date:		September 2017
>  KernelVersion:	4.14
>  Contact:	linux-iio@vger.kernel.org
>  Description:
> -		This attribute is exposed by the CrOS EC legacy accelerometer
> -		driver and represents the sensor ID as exposed by the EC. This
> -		ID is used by the Android sensor service hardware abstraction
> -		layer (sensor HAL) through the Android container on ChromeOS.
> +		This attribute is exposed by the CrOS EC sensors driver and
> +		represents the sensor ID as exposed by the EC. This ID is used
> +		by the Android sensor service hardware abstraction layer (sensor
> +		HAL) through the Android container on ChromeOS.
> diff --git a/drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core.c b/drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core.c
> index 719a0df5aeeb..130362ca421b 100644
> --- a/drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core.c
> +++ b/drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core.c
> @@ -125,6 +125,15 @@ static ssize_t cros_ec_sensors_calibrate(struct iio_dev *indio_dev,
>  	return ret ? ret : len;
>  }
>  
> +static ssize_t cros_ec_sensors_id(struct iio_dev *indio_dev,
> +				  uintptr_t private,
> +				  const struct iio_chan_spec *chan, char *buf)
> +{
> +	struct cros_ec_sensors_core_state *st = iio_priv(indio_dev);
> +
> +	return snprintf(buf, PAGE_SIZE, "%d\n", st->param.info.sensor_num);
> +}
> +
>  static ssize_t cros_ec_sensors_loc(struct iio_dev *indio_dev,
>  		uintptr_t private, const struct iio_chan_spec *chan,
>  		char *buf)
> @@ -140,6 +149,11 @@ const struct iio_chan_spec_ext_info cros_ec_sensors_ext_info[] = {
>  		.shared = IIO_SHARED_BY_ALL,
>  		.write = cros_ec_sensors_calibrate
>  	},
> +	{
> +		.name = "id",
> +		.shared = IIO_SHARED_BY_ALL,
> +		.read = cros_ec_sensors_id
> +	},
>  	{
>  		.name = "location",
>  		.shared = IIO_SHARED_BY_ALL,


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2019-04-27 13:14 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-04-26 11:39 [PATCH 1/1] iio: cros_ec: add 'id' sysfs entry Fabien Lahoudere
2019-04-27 13:14 ` Jonathan Cameron

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).