]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blobdiff - drivers/iio/inkern.c
staging:iio:in kernel users: Add a data field for channel specific info.
[mirror_ubuntu-bionic-kernel.git] / drivers / iio / inkern.c
index f2b78d4fe45778d01f05a97eb1e3a9b1bc8164e4..d55e98fb300ec18cfd96b37830dfd7b6bbedb326 100644 (file)
@@ -78,7 +78,7 @@ int iio_map_array_unregister(struct iio_dev *indio_dev,
                                found_it = true;
                                break;
                        }
-               if (found_it == false) {
+               if (!found_it) {
                        ret = -ENODEV;
                        goto error_ret;
                }
@@ -203,6 +203,7 @@ struct iio_channel *iio_channel_get_all(const char *name)
                if (name && strcmp(name, c->map->consumer_dev_name) != 0)
                        continue;
                chans[mapind].indio_dev = c->indio_dev;
+               chans[mapind].data = c->map->consumer_data;
                chans[mapind].channel =
                        iio_chan_spec_from_name(chans[mapind].indio_dev,
                                                c->map->adc_channel_label);
@@ -314,6 +315,9 @@ static int iio_convert_raw_to_processed_unlocked(struct iio_channel *chan,
                *processed = div_s64(raw64 * (s64)scale_val * scale,
                                     scale_val2);
                break;
+       case IIO_VAL_FRACTIONAL_LOG2:
+               *processed = (raw64 * (s64)scale_val * scale) >> scale_val2;
+               break;
        default:
                return -EINVAL;
        }