linux/drivers/base/regmap
Nikesh Oswal 6399aea629 regmap: rbtree: When adding a reg do a bsearch for target node
A binary search is much more efficient rather than iterating
over the rbtree in ascending order which the current code is
doing.

During initialisation the reg defaults are written to the
cache in a large chunk and these are always sorted in the
ascending order so for this situation ideally we should have
iterated the rbtree in descending order.

But at runtime the drivers may write into the cache in any
random order so this patch selects to use a bsearch to give
an optimal runtime performance and also at initialisation
time when reg defaults are written the performance of binary
search would be much better than iterating in ascending order
which the current code was doing.

Signed-off-by: Nikesh Oswal <Nikesh.Oswal@wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2015-11-16 09:44:59 +00:00
..
internal.h driver core update for 4.4-rc1 2015-11-04 21:50:37 -08:00
Kconfig regmap: ac97: Add generic AC'97 callbacks 2014-11-19 10:28:14 +00:00
Makefile regmap: Move tracing header into drivers/base/regmap 2015-03-19 22:22:45 +00:00
regcache-flat.c regmap: cache: Sort include headers alphabetically 2014-10-20 12:25:06 +01:00
regcache-lzo.c debugfs: Pass bool pointer to debugfs_create_bool() 2015-10-04 11:36:07 +01:00
regcache-rbtree.c regmap: rbtree: When adding a reg do a bsearch for target node 2015-11-16 09:44:59 +00:00
regcache.c debugfs: Pass bool pointer to debugfs_create_bool() 2015-10-04 11:36:07 +01:00
regmap-ac97.c regmap: Move documentation to regmap.h 2015-08-11 17:21:44 +01:00
regmap-debugfs.c regmap: debugfs: simplify regmap_reg_ranges_read_file() slightly 2015-09-30 20:31:16 +01:00
regmap-i2c.c Merge remote-tracking branches 'regmap/topic/lockdep' and 'regmap/topic/seq-delay' into regmap-next 2015-09-04 17:22:10 +01:00
regmap-irq.c regmap: irq: add ack_invert flag for chips using cleared bits as ack 2015-09-17 11:46:10 +01:00
regmap-mmio.c regmap: Move documentation to regmap.h 2015-08-11 17:21:44 +01:00
regmap-spi.c regmap: Move documentation to regmap.h 2015-08-11 17:21:44 +01:00
regmap-spmi.c regmap: Move documentation to regmap.h 2015-08-11 17:21:44 +01:00
regmap.c Merge remote-tracking branches 'regmap/topic/atomic', 'regmap/topic/debugfs' and 'regmap/topic/irq-hdr' into regmap-next 2015-10-12 19:25:07 +01:00
trace.h regmap: Move tracing header into drivers/base/regmap 2015-03-19 22:22:45 +00:00