This patch series introduces the new caching API. The idea behind this caching interface is that we can provide different means of organizing and accessing the register cache. This is useful for large and sparse register maps, where one can use some kind of compression algorithm to reduce the memory footprint. The caching API is designed in such way to eliminate the need for modifying any existing drivers.
Things that still need to be done.
- Memory usage statistics, to make it easier to select the proper caching technique. - Support for bulk reads/writes.
Dimitris Papastamos (4): ASoC: soc.h: Add new caching API prototypes and hooks ASoC: soc-cache: Add support for flat register caching ASoC: soc-cache: Add support for LZO register caching ASoC: soc-cache: Add support for rbtree based register caching
include/sound/soc.h | 28 ++ sound/soc/Kconfig | 2 + sound/soc/soc-cache.c | 988 +++++++++++++++++++++++++++++++++++++++++++++++-- sound/soc/soc-core.c | 38 +-- 4 files changed, 1002 insertions(+), 54 deletions(-)