regmap: introduce fast_io busses, and use a spinlock for them
authorStephen Warren <swarren@nvidia.com>
Wed, 4 Apr 2012 21:48:28 +0000 (15:48 -0600)
committerSimone Willett <swillett@nvidia.com>
Sun, 15 Apr 2012 21:18:17 +0000 (14:18 -0700)
commit77a38d8012fd6603e25eb3aa7a012856ab0a6ae8
treeab042f988b2955ce947e758b158aa060aeda0ba1
parentd5a70b9a3304ef71b0a0ba97a9933c579b1fa6b0
regmap: introduce fast_io busses, and use a spinlock for them

Some bus types have very fast IO. For these, acquiring a mutex for every
IO operation is a significant overhead. Allow busses to indicate their IO
is fast, and enhance regmap to use a spinlock for those busses.

[Currently limited to native endian registers -- broonie]

Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
(cherry picked from commit bacdbe077342ecc9e7b3e374cc5a41995116706a)

Change-Id: I337f27a09f2b176b46e8f6d05401957a1abc0609
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: http://git-master/r/96503
Reviewed-by: Simone Willett <swillett@nvidia.com>
Tested-by: Simone Willett <swillett@nvidia.com>
drivers/base/regmap/internal.h
drivers/base/regmap/regcache-rbtree.c
drivers/base/regmap/regcache.c
drivers/base/regmap/regmap.c
include/linux/regmap.h