lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5470718B.90608@kernel.org>
Date:	Sat, 22 Nov 2014 11:20:43 +0000
From:	Jonathan Cameron <jic23@...nel.org>
To:	Daniel Baluta <daniel.baluta@...el.com>, knaack.h@....de
CC:	linux-iio@...r.kernel.org, linux-kernel@...r.kernel.org,
	irina.tirdea@...el.com, daniel.baluta@...e.com
Subject: Re: [PATCH v4 7/7] iio: event_monitor: Add support for new channel
 types

On 10/11/14 12:45, Daniel Baluta wrote:
> We have the following testing scenario:
> 
> $ insmod iio_dummy_evgen.ko
> $ insmod iio_dummy.ko
> 
> ./iio_event_monitor /dev/iio:device0
> Event: time: 1412786467971335337, type: activity(running), channel: 0,
> evtype: thresh, direction: rising
> Event: time: 1412786530792974091, type: activity(walking), channel: 0,
> evtype: thresh, direction: falling
> Event: time: 1412764319184761765, type: steps, channel: 0, evtype: instance
> 
> $ echo 1 > /sys/bus/iio/devices/iio_evgen/poke_ev0
> $ echo 2 > /sys/bus/iio/devices/iio_evgen/poke_ev0
> $ echo 3 > /sys/bus/iio/devices/iio_evgen/poke_ev0
> 
> Signed-off-by: Irina Tirdea <irina.tirdea@...el.com>
> Signed-off-by: Daniel Baluta <daniel.baluta@...el.com>
Good description and a good patch.  Nice series all in all - I like
the approach of adding ABI with dummy driver and tool support before
the hardware driver comes along.  Not quite the same from working out
how things will be used in anger, but still a clean way to work.

All applied to the togreg branch of iio.git - pushed out as testing - in
this case for the autobuilders to completely ignore the patch...

Thanks,

Jonathan
> ---
>  .../staging/iio/Documentation/iio_event_monitor.c  | 23 +++++++++++++++++++---
>  1 file changed, 20 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/staging/iio/Documentation/iio_event_monitor.c b/drivers/staging/iio/Documentation/iio_event_monitor.c
> index 940ed23..def236a 100644
> --- a/drivers/staging/iio/Documentation/iio_event_monitor.c
> +++ b/drivers/staging/iio/Documentation/iio_event_monitor.c
> @@ -49,6 +49,8 @@ static const char * const iio_chan_type_name_spec[] = {
>  	[IIO_CCT] = "cct",
>  	[IIO_PRESSURE] = "pressure",
>  	[IIO_HUMIDITYRELATIVE] = "humidityrelative",
> +	[IIO_ACTIVITY] = "activity",
> +	[IIO_STEPS] = "steps",
>  };
>  
>  static const char * const iio_ev_type_text[] = {
> @@ -57,6 +59,7 @@ static const char * const iio_ev_type_text[] = {
>  	[IIO_EV_TYPE_ROC] = "roc",
>  	[IIO_EV_TYPE_THRESH_ADAPTIVE] = "thresh_adaptive",
>  	[IIO_EV_TYPE_MAG_ADAPTIVE] = "mag_adaptive",
> +	[IIO_EV_TYPE_INSTANCE] = "instance",
>  };
>  
>  static const char * const iio_ev_dir_text[] = {
> @@ -92,6 +95,10 @@ static const char * const iio_modifier_names[] = {
>  	[IIO_MOD_NORTH_TRUE] = "from_north_true",
>  	[IIO_MOD_NORTH_MAGN_TILT_COMP] = "from_north_magnetic_tilt_comp",
>  	[IIO_MOD_NORTH_TRUE_TILT_COMP] = "from_north_true_tilt_comp",
> +	[IIO_MOD_RUNNING] = "running",
> +	[IIO_MOD_JOGGING] = "jogging",
> +	[IIO_MOD_WALKING] = "walking",
> +	[IIO_MOD_STILL] = "still",
>  };
>  
>  static bool event_is_known(struct iio_event_data *event)
> @@ -121,6 +128,8 @@ static bool event_is_known(struct iio_event_data *event)
>  	case IIO_CCT:
>  	case IIO_PRESSURE:
>  	case IIO_HUMIDITYRELATIVE:
> +	case IIO_ACTIVITY:
> +	case IIO_STEPS:
>  		break;
>  	default:
>  		return false;
> @@ -154,6 +163,10 @@ static bool event_is_known(struct iio_event_data *event)
>  	case IIO_MOD_NORTH_TRUE:
>  	case IIO_MOD_NORTH_MAGN_TILT_COMP:
>  	case IIO_MOD_NORTH_TRUE_TILT_COMP:
> +	case IIO_MOD_RUNNING:
> +	case IIO_MOD_JOGGING:
> +	case IIO_MOD_WALKING:
> +	case IIO_MOD_STILL:
>  		break;
>  	default:
>  		return false;
> @@ -165,6 +178,7 @@ static bool event_is_known(struct iio_event_data *event)
>  	case IIO_EV_TYPE_ROC:
>  	case IIO_EV_TYPE_THRESH_ADAPTIVE:
>  	case IIO_EV_TYPE_MAG_ADAPTIVE:
> +	case IIO_EV_TYPE_INSTANCE:
>  		break;
>  	default:
>  		return false;
> @@ -174,6 +188,7 @@ static bool event_is_known(struct iio_event_data *event)
>  	case IIO_EV_DIR_EITHER:
>  	case IIO_EV_DIR_RISING:
>  	case IIO_EV_DIR_FALLING:
> +	case IIO_EV_DIR_NONE:
>  		break;
>  	default:
>  		return false;
> @@ -214,9 +229,11 @@ static void print_event(struct iio_event_data *event)
>  	else if (chan >= 0)
>  		printf("channel: %d, ", chan);
>  
> -	printf("evtype: %s, direction: %s\n",
> -		iio_ev_type_text[ev_type],
> -		iio_ev_dir_text[dir]);
> +	printf("evtype: %s", iio_ev_type_text[ev_type]);
> +
> +	if (dir != IIO_EV_DIR_NONE)
> +		printf(", direction: %s", iio_ev_dir_text[dir]);
> +	printf("\n");
>  }
>  
>  int main(int argc, char **argv)
> 

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ