static unsigned int iio_storage_bytes_for_timestamp(struct iio_dev *indio_dev)
 {
+       struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev);
+
        return iio_storage_bytes_for_si(indio_dev,
-                                       indio_dev->scan_index_timestamp);
+                                       iio_dev_opaque->scan_index_timestamp);
 }
 
 static int iio_compute_scan_bytes(struct iio_dev *indio_dev,
                                             struct iio_dev *indio_dev,
                                             int index)
 {
+       struct iio_dev_opaque *iio_dev_opaque = to_iio_dev_opaque(indio_dev);
        struct iio_dev_attr *p;
        struct attribute **attr;
        int ret, i, attrn, scan_el_attrcount, buffer_attrcount;
                                goto error_cleanup_dynamic;
                        scan_el_attrcount += ret;
                        if (channels[i].type == IIO_TIMESTAMP)
-                               indio_dev->scan_index_timestamp =
+                               iio_dev_opaque->scan_index_timestamp =
                                        channels[i].scan_index;
                }
                if (indio_dev->masklength && buffer->scan_mask == NULL) {
 
  * @groupcounter:              index of next attribute group
  * @legacy_scan_el_group:      attribute group for legacy scan elements attribute group
  * @legacy_buffer_group:       attribute group for legacy buffer attributes group
+ * @scan_index_timestamp:      cache of the index to the timestamp
  * @debugfs_dentry:            device specific debugfs dentry
  * @cached_reg_addr:           cached register address for debugfs reads
  * @read_buf:                  read buffer to be used for the initial reg read
        int                             groupcounter;
        struct attribute_group          legacy_scan_el_group;
        struct attribute_group          legacy_buffer_group;
+
+       unsigned int                    scan_index_timestamp;
+
 #if defined(CONFIG_DEBUG_FS)
        struct dentry                   *debugfs_dentry;
        unsigned                        cached_reg_addr;
 
  *                     channels
  * @active_scan_mask:  [INTERN] union of all scan masks requested by buffers
  * @scan_timestamp:    [INTERN] set if any buffers have requested timestamp
- * @scan_index_timestamp:[INTERN] cache of the index to the timestamp
  * @trig:              [INTERN] current device trigger (buffer modes)
  * @pollfunc:          [DRIVER] function run on trigger being received
  * @pollfunc_event:    [DRIVER] function run on events trigger being received
        unsigned                        masklength;
        const unsigned long             *active_scan_mask;
        bool                            scan_timestamp;
-       unsigned                        scan_index_timestamp;
        struct iio_trigger              *trig;
        struct iio_poll_func            *pollfunc;
        struct iio_poll_func            *pollfunc_event;