diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2015-11-04 21:40:53 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-11-04 21:40:53 -0800 |
commit | 118c216e16c5ccb028cd03a0dcd56d17a07ff8d7 (patch) | |
tree | 94769cd9af230aec964d95f380b1119bb8d8edf0 /drivers/iio/industrialio-core.c | |
parent | fd0d351de7bbd718bc2b34d5846854831aa2b88c (diff) | |
parent | e3cc3136df33de1aa26d606f2a42cac3fd30cf54 (diff) |
Merge tag 'staging-4.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging
Pull staging driver updates from Greg KH:
"Here's the big staging driver update for 4.4-rc1. If you were
disappointed for 4.3-rc1 that we didn't contribute enough changesets,
you should be happy with this pull request of over 2400 patches.
But overall we removed more lines of code than we added, which is nice
to see. Full details in the shortlog.
All of these have been in linux-next for a while"
Greg, I've never been disappointed in how few commits Staging
contributes to the kernel.. Never.
* tag 'staging-4.4-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (2431 commits)
Staging: rtl8192u: ieee80211: added missing blank lines
Staging: rtl8192u: ieee80211: removed unnecessary braces
Staging: rtl8192u: ieee80211: corrected block comments
Staging: rtl8192u: ieee80211: corrected indent
Staging: rtl8192u: ieee80211: added missing spaces after if
Staging: rtl8192u: ieee80211: added missing space around '='
Staging: rtl8192u: ieee80211: fixed position of else statements
Staging: rtl8192u: ieee80211: fixed open brace positions
staging: rdma: ipath: Remove unneeded vairable.
staging: rtl8188eu: pwrGrpCnt variable removed in store_pwrindex_offset function
staging: rtl8188eu: new variable for hal_data->MCSTxPowerLevelOriginalOffset[pwrGrpCnt] in store_pwrindex_offset function
staging: rtl8188eu: checkpatch fixes: 'Avoid CamelCase' in hal/bb_cfg.c
staging: rtl8188eu: checkpatch fixes: line over 80 characters splited into two parts
staging: rtl8188eu: checkpatch fixes: alignment should match open parenthesis
staging: rtl8188eu: checkpatch fixes: unnecessary parentheses removed in hal/bb_cfg.c
staging: rtl8188eu: checkpatch fixes: spaces preferred around that '|' in hal/bb_cfg.c
staging: rtl8188eu: operator = replaced by += in loop increment
staging: rtl8188eu: occurrence of the 5 GHz code marked
staging: rtl8188eu: increment placed into for loop header
staging: rtl8188eu: while loop replaced by for loop in rtw_restruct_wmm_ie
...
Diffstat (limited to 'drivers/iio/industrialio-core.c')
-rw-r--r-- | drivers/iio/industrialio-core.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/iio/industrialio-core.c b/drivers/iio/industrialio-core.c index b3fcc2c449d8..208358f9e7e3 100644 --- a/drivers/iio/industrialio-core.c +++ b/drivers/iio/industrialio-core.c @@ -75,6 +75,8 @@ static const char * const iio_chan_type_name_spec[] = { [IIO_ENERGY] = "energy", [IIO_DISTANCE] = "distance", [IIO_VELOCITY] = "velocity", + [IIO_CONCENTRATION] = "concentration", + [IIO_RESISTANCE] = "resistance", }; static const char * const iio_modifier_names[] = { @@ -111,6 +113,8 @@ static const char * const iio_modifier_names[] = { [IIO_MOD_ROOT_SUM_SQUARED_X_Y_Z] = "sqrt(x^2+y^2+z^2)", [IIO_MOD_I] = "i", [IIO_MOD_Q] = "q", + [IIO_MOD_CO2] = "co2", + [IIO_MOD_VOC] = "voc", }; /* relies on pairs of these shared then separate */ @@ -962,7 +966,7 @@ static void iio_device_unregister_sysfs(struct iio_dev *indio_dev) static void iio_dev_release(struct device *device) { struct iio_dev *indio_dev = dev_to_iio_dev(device); - if (indio_dev->modes & INDIO_BUFFER_TRIGGERED) + if (indio_dev->modes & (INDIO_BUFFER_TRIGGERED | INDIO_EVENT_TRIGGERED)) iio_device_unregister_trigger_consumer(indio_dev); iio_device_unregister_eventset(indio_dev); iio_device_unregister_sysfs(indio_dev); @@ -1153,6 +1157,8 @@ static long iio_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) if (cmd == IIO_GET_EVENT_FD_IOCTL) { fd = iio_event_getfd(indio_dev); + if (fd < 0) + return fd; if (copy_to_user(ip, &fd, sizeof(fd))) return -EFAULT; return 0; @@ -1241,7 +1247,7 @@ int iio_device_register(struct iio_dev *indio_dev) "Failed to register event set\n"); goto error_free_sysfs; } - if (indio_dev->modes & INDIO_BUFFER_TRIGGERED) + if (indio_dev->modes & (INDIO_BUFFER_TRIGGERED | INDIO_EVENT_TRIGGERED)) iio_device_register_trigger_consumer(indio_dev); if ((indio_dev->modes & INDIO_ALL_BUFFER_MODES) && |