ASoC: ad1980: Update to use maple tree register cache
authorMark Brown <broonie@kernel.org>
Wed, 12 Jul 2023 23:13:51 +0000 (00:13 +0100)
committerMark Brown <broonie@kernel.org>
Thu, 13 Jul 2023 15:20:11 +0000 (16:20 +0100)
The maple tree register cache is based on a much more modern data structure
than the rbtree cache and makes optimisation choices which are probably
more appropriate for modern systems than those made by the rbtree cache. In
v6.5 it has also acquired the ability to generate multi-register writes in
sync operations, bringing performance up to parity with the rbtree cache
there.

Update the ad1980 driver to use the more modern data structure.

Reviewed-by: Nuno Sa <nuno.sa@analog.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20230713-asoc-ad-maple-v1-2-7d2f35d42b5f@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/ad1980.c

index 5e777d7fd5d91e6eec7d5ddd5c97511dcb2573d9..3c1ae13c1aaeccf95c5df2b8ab9ba95b7407638b 100644 (file)
@@ -92,7 +92,7 @@ static const struct regmap_config ad1980_regmap_config = {
        .reg_stride = 2,
        .val_bits = 16,
        .max_register = 0x7e,
-       .cache_type = REGCACHE_RBTREE,
+       .cache_type = REGCACHE_MAPLE,
 
        .volatile_reg = regmap_ac97_default_volatile,
        .readable_reg = ad1980_readable_reg,