Merge tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
[muen/linux.git] / drivers / soc / ti / knav_qmss.h
index 56866ba4cfc4ae67fbe3fb78a8925de2f90dc574..3efc47e82973b43ff7431bdacad428aea757bffc 100644 (file)
@@ -19,6 +19,8 @@
 #ifndef __KNAV_QMSS_H__
 #define __KNAV_QMSS_H__
 
+#include <linux/percpu.h>
+
 #define THRESH_GTE     BIT(7)
 #define THRESH_LT      0
 
@@ -162,11 +164,11 @@ struct knav_qmgr_info {
  * notifies:                   notifier counts
  */
 struct knav_queue_stats {
-       atomic_t         pushes;
-       atomic_t         pops;
-       atomic_t         push_errors;
-       atomic_t         pop_errors;
-       atomic_t         notifies;
+       unsigned int pushes;
+       unsigned int pops;
+       unsigned int push_errors;
+       unsigned int pop_errors;
+       unsigned int notifies;
 };
 
 /**
@@ -283,7 +285,7 @@ struct knav_queue_inst {
 struct knav_queue {
        struct knav_reg_queue __iomem   *reg_push, *reg_pop, *reg_peek;
        struct knav_queue_inst          *inst;
-       struct knav_queue_stats stats;
+       struct knav_queue_stats __percpu        *stats;
        knav_queue_notify_fn            notifier_fn;
        void                            *notifier_fn_arg;
        atomic_t                        notifier_enabled;