cti_write_all_hw_regs(drvdata);
 
        config->hw_enabled = true;
-       atomic_inc(&drvdata->config.enable_req_count);
+       drvdata->config.enable_req_count++;
        spin_unlock_irqrestore(&drvdata->spinlock, flags);
        return rc;
 
 cti_state_unchanged:
-       atomic_inc(&drvdata->config.enable_req_count);
+       drvdata->config.enable_req_count++;
 
        /* cannot enable due to error */
 cti_err_not_enabled:
        config->hw_powered = true;
 
        /* no need to do anything if no enable request */
-       if (!atomic_read(&drvdata->config.enable_req_count))
+       if (!drvdata->config.enable_req_count)
                goto cti_hp_not_enabled;
 
        /* try to claim the device */
        spin_lock(&drvdata->spinlock);
 
        /* don't allow negative refcounts, return an error */
-       if (!atomic_read(&drvdata->config.enable_req_count)) {
+       if (!drvdata->config.enable_req_count) {
                ret = -EINVAL;
                goto cti_not_disabled;
        }
 
        /* check refcount - disable on 0 */
-       if (atomic_dec_return(&drvdata->config.enable_req_count) > 0)
+       if (--drvdata->config.enable_req_count > 0)
                goto cti_not_disabled;
 
        /* no need to do anything if disabled or cpu unpowered */
        /* Most regs default to 0 as zalloc'ed except...*/
        config->trig_filter_enable = true;
        config->ctigate = GENMASK(config->nr_ctm_channels - 1, 0);
-       atomic_set(&config->enable_req_count, 0);
+       config->enable_req_count = 0;
 }
 
 /*
                drvdata->config.hw_enabled = false;
 
                /* check enable reference count to enable HW */
-               if (atomic_read(&drvdata->config.enable_req_count)) {
+               if (drvdata->config.enable_req_count) {
                        /* check we can claim the device as we re-power */
                        if (coresight_claim_device(csdev))
                                goto cti_notify_exit;
 
        bool enabled, powered;
        struct cti_drvdata *drvdata = dev_get_drvdata(dev->parent);
 
-       enable_req = atomic_read(&drvdata->config.enable_req_count);
        spin_lock(&drvdata->spinlock);
+       enable_req = drvdata->config.enable_req_count;
        powered = drvdata->config.hw_powered;
        enabled = drvdata->config.hw_enabled;
        spin_unlock(&drvdata->spinlock);