From: Mark Brown broonie@linaro.org
Try to speed up patch application a little using async I/O.
Signed-off-by: Mark Brown broonie@linaro.org --- drivers/base/regmap/regmap.c | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/drivers/base/regmap/regmap.c b/drivers/base/regmap/regmap.c index ccdac61..437f7f6 100644 --- a/drivers/base/regmap/regmap.c +++ b/drivers/base/regmap/regmap.c @@ -2132,6 +2132,7 @@ int regmap_register_patch(struct regmap *map, const struct reg_default *regs, bypass = map->cache_bypass;
map->cache_bypass = true; + map->async = true;
/* Write out first; it's useful to apply even if we fail later. */ for (i = 0; i < num_regs; i++) { @@ -2155,10 +2156,13 @@ int regmap_register_patch(struct regmap *map, const struct reg_default *regs, }
out: + map->async = false; map->cache_bypass = bypass;
map->unlock(map->lock_arg);
+ regmap_async_complete(map); + return ret; } EXPORT_SYMBOL_GPL(regmap_register_patch);