diff options
author | Matt Ranostay <mranostay@gmail.com> | 2016-08-22 15:19:37 -0700 |
---|---|---|
committer | Jonathan Cameron <jic23@kernel.org> | 2016-08-29 16:26:41 +0100 |
commit | 6356f1b9b7e3ccd24bec93c7ed4e226464f44774 (patch) | |
tree | 2a1fbb1065c74096182a4810ad962aaadb328690 | |
parent | 9d47964bfd471f0dd4c89f28556aec68bffa0020 (diff) | |
download | linux-exynos-6356f1b9b7e3ccd24bec93c7ed4e226464f44774.tar.gz linux-exynos-6356f1b9b7e3ccd24bec93c7ed4e226464f44774.tar.bz2 linux-exynos-6356f1b9b7e3ccd24bec93c7ed4e226464f44774.zip |
iio: iio-utils: use channel modifier scaling if it exists
Now there are channel modifiers with their own scaling those should be
used when possible over the generic channel type scaling.
Examples are of IIO_TEMP channel having a generic scaling value, and
another having IIO_MOD_TEMP_AMBIENT modifier with another scaling value.
Previously the first scaling value for a channel type would be applied
to all channels of like type in iio_generic_buffer
Signed-off-by: Matt Ranostay <mranostay@gmail.com>
Signed-off-by: Jonathan Cameron <jic23@kernel.org>
-rw-r--r-- | tools/iio/iio_utils.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/tools/iio/iio_utils.c b/tools/iio/iio_utils.c index 5eb6793f3972..7a6d61c6c012 100644 --- a/tools/iio/iio_utils.c +++ b/tools/iio/iio_utils.c @@ -121,10 +121,6 @@ int iioutils_get_type(unsigned *is_signed, unsigned *bytes, unsigned *bits_used, ret = -ENOENT; while (ent = readdir(dp), ent) - /* - * Do we allow devices to override a generic name with - * a specific one? - */ if ((strcmp(builtname, ent->d_name) == 0) || (strcmp(builtname_generic, ent->d_name) == 0)) { ret = asprintf(&filename, @@ -178,6 +174,13 @@ int iioutils_get_type(unsigned *is_signed, unsigned *bytes, unsigned *bits_used, sysfsfp = 0; free(filename); filename = 0; + + /* + * Avoid having a more generic entry overwriting + * the settings. + */ + if (strcmp(builtname, ent->d_name) == 0) + break; } error_close_sysfsfp: |