The region registers comes in abolute value so read the registers before
applying the rx fifo offset.
Signed-off-by: Shahar S Matityahu <shahar.s.matityahu@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
        if (!iwl_trans_grab_nic_access(fwrt->trans, &flags))
                return -EBUSY;
 
-       offs += rxf_data.offset;
-
        range->fifo_num = cpu_to_le32(rxf_data.fifo_num);
        range->num_of_registers = reg->fifos.num_of_registers;
        range->range_data_size = cpu_to_le32(rxf_data.size + registers_size);
                goto out;
        }
 
+       /*
+        * region register have absolute value so apply rxf offset after
+        * reading the registers
+        */
+       offs += rxf_data.offset;
+
        /* Lock fence */
        iwl_write_prph_no_grab(fwrt->trans, RXF_SET_FENCE_MODE + offs, 0x1);
        /* Set fence pointer to the same place like WR pointer */