void cw1200_unregister_bh(struct cw1200_common *priv)
 {
-       atomic_add(1, &priv->bh_term);
+       atomic_inc(&priv->bh_term);
        wake_up(&priv->bh_wq);
 
        flush_workqueue(priv->bh_workqueue);
        if (/* WARN_ON */(priv->bh_error))
                return;
 
-       if (atomic_add_return(1, &priv->bh_rx) == 1)
+       if (atomic_inc_return(&priv->bh_rx) == 1)
                wake_up(&priv->bh_wq);
 }
 EXPORT_SYMBOL_GPL(cw1200_irq_handler);
                return;
        }
 
-       if (atomic_add_return(1, &priv->bh_tx) == 1)
+       if (atomic_inc_return(&priv->bh_tx) == 1)
                wake_up(&priv->bh_wq);
 }
 
        BUG_ON(tx_len < sizeof(*wsm));
        BUG_ON(__le16_to_cpu(wsm->len) != tx_len);
 
-       atomic_add(1, &priv->bh_tx);
+       atomic_inc(&priv->bh_tx);
 
        tx_len = priv->hwbus_ops->align_size(
                priv->hwbus_priv, tx_len);
                        pr_debug("[BH] Device resume.\n");
                        atomic_set(&priv->bh_suspend, CW1200_BH_RESUMED);
                        wake_up(&priv->bh_evt_wq);
-                       atomic_add(1, &priv->bh_rx);
+                       atomic_inc(&priv->bh_rx);
                        goto done;
                }
 
 
                        pr_err("Outstanding outgoing frames:  %d\n", priv->hw_bufs_used);
 
                        /* Kill BH thread to report the error to the top layer. */
-                       atomic_add(1, &priv->bh_term);
+                       atomic_inc(&priv->bh_term);
                        wake_up(&priv->bh_wq);
                        ret = -ETIMEDOUT;
                }
 void wsm_lock_tx(struct cw1200_common *priv)
 {
        wsm_cmd_lock(priv);
-       if (atomic_add_return(1, &priv->tx_lock) == 1) {
+       if (atomic_inc_return(&priv->tx_lock) == 1) {
                if (wsm_flush_tx(priv))
                        pr_debug("[WSM] TX is locked.\n");
        }
 
 void wsm_lock_tx_async(struct cw1200_common *priv)
 {
-       if (atomic_add_return(1, &priv->tx_lock) == 1)
+       if (atomic_inc_return(&priv->tx_lock) == 1)
                pr_debug("[WSM] TX is locked (async).\n");
 }
 
 void wsm_unlock_tx(struct cw1200_common *priv)
 {
        int tx_lock;
-       tx_lock = atomic_sub_return(1, &priv->tx_lock);
+       tx_lock = atomic_dec_return(&priv->tx_lock);
        BUG_ON(tx_lock < 0);
 
        if (tx_lock == 0) {