summaryrefslogtreecommitdiffstats
path: root/drivers/base/regmap/internal.h
diff options
context:
space:
mode:
authorMark Brown <broonie@linaro.org>2013-10-07 23:00:24 +0100
committerMark Brown <broonie@linaro.org>2013-10-07 23:04:41 +0100
commit7e09a979404ed07b8f05d09a0e87a87c7891f472 (patch)
tree3222b86dc2cc2b3649758633cfb17207d2a0e35c /drivers/base/regmap/internal.h
parentd0e639c9e06d44e713170031fe05fb60ebe680af (diff)
regmap: Cache async work structures
Rather than allocating and deallocating the structures used to manage async transfers each time we do one keep the structures around as long as the regmap is around. This should provide a small performance improvement. Signed-off-by: Mark Brown <broonie@linaro.org>
Diffstat (limited to 'drivers/base/regmap/internal.h')
-rw-r--r--drivers/base/regmap/internal.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/base/regmap/internal.h b/drivers/base/regmap/internal.h
index 57f777835d97..793ebe207c8a 100644
--- a/drivers/base/regmap/internal.h
+++ b/drivers/base/regmap/internal.h
@@ -44,7 +44,6 @@ struct regmap_format {
struct regmap_async {
struct list_head list;
- struct work_struct cleanup;
struct regmap *map;
void *work_buf;
};
@@ -67,6 +66,7 @@ struct regmap {
spinlock_t async_lock;
wait_queue_head_t async_waitq;
struct list_head async_list;
+ struct list_head async_free;
int async_ret;
#ifdef CONFIG_DEBUG_FS