The ret returned from ad7280_chain_setup() is needed to initialize the
slave_num. Don't overwrite it with call to devm_add_action_or_reset().
Fixes: cc9c58ef6e06 ("staging: iio: adc: ad7280a: use devm_* APIs")
Signed-off-by: Slawomir Stepien <sst@poczta.fm>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
        if (ret < 0)
                return ret;
 
-       ret = devm_add_action_or_reset(&spi->dev, ad7280_sw_power_down, st);
-       if (ret)
-               return ret;
-
        st->slave_num = ret;
        st->scan_cnt = (st->slave_num + 1) * AD7280A_NUM_CH;
        st->cell_threshhigh = 0xFF;
        st->aux_threshhigh = 0xFF;
 
+       ret = devm_add_action_or_reset(&spi->dev, ad7280_sw_power_down, st);
+       if (ret)
+               return ret;
+
        /*
         * Total Conversion Time = ((tACQ + tCONV) *
         *                         (Number of Conversions per Part)) −