aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/iio/iio.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/include/linux/iio/iio.h b/include/linux/iio/iio.h
index da8c776ba0bd..76976509d628 100644
--- a/include/linux/iio/iio.h
+++ b/include/linux/iio/iio.h
@@ -218,6 +218,10 @@ ssize_t iio_enum_write(struct iio_dev *indio_dev,
218 * endianness: little or big endian 218 * endianness: little or big endian
219 * @info_mask: What information is to be exported about this channel. 219 * @info_mask: What information is to be exported about this channel.
220 * This includes calibbias, scale etc. 220 * This includes calibbias, scale etc.
221 * @info_mask_separate: What information is to be exported that is specific to
222 * this channel.
223 * @info_mask_shared_by_type: What information is to be exported that is shared
224* by all channels of the same type.
221 * @event_mask: What events can this channel produce. 225 * @event_mask: What events can this channel produce.
222 * @ext_info: Array of extended info attributes for this channel. 226 * @ext_info: Array of extended info attributes for this channel.
223 * The array is NULL terminated, the last element should 227 * The array is NULL terminated, the last element should
@@ -253,6 +257,8 @@ struct iio_chan_spec {
253 enum iio_endian endianness; 257 enum iio_endian endianness;
254 } scan_type; 258 } scan_type;
255 long info_mask; 259 long info_mask;
260 long info_mask_separate;
261 long info_mask_shared_by_type;
256 long event_mask; 262 long event_mask;
257 const struct iio_chan_spec_ext_info *ext_info; 263 const struct iio_chan_spec_ext_info *ext_info;
258 const char *extend_name; 264 const char *extend_name;
@@ -275,7 +281,9 @@ struct iio_chan_spec {
275static inline bool iio_channel_has_info(const struct iio_chan_spec *chan, 281static inline bool iio_channel_has_info(const struct iio_chan_spec *chan,
276 enum iio_chan_info_enum type) 282 enum iio_chan_info_enum type)
277{ 283{
278 return chan->info_mask & IIO_CHAN_INFO_BITS(type); 284 return (chan->info_mask & IIO_CHAN_INFO_BITS(type)) |
285 (chan->info_mask_separate & type) |
286 (chan->info_mask_shared_by_type & type);
279} 287}
280 288
281#define IIO_ST(si, rb, sb, sh) \ 289#define IIO_ST(si, rb, sb, sh) \