ASoC: wsa881x: Update to use maple tree register cache
authorMark Brown <broonie@kernel.org>
Wed, 12 Jul 2023 18:29:34 +0000 (19:29 +0100)
committerMark Brown <broonie@kernel.org>
Mon, 17 Jul 2023 05:15:22 +0000 (06:15 +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 wsa881x driver to use the more modern data structure.

Signed-off-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20230712-asoc-qcom-maple-v1-3-15f8089664b9@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/wsa881x.c

index 97f6873a0a8c7a0eacdbddebd9eb34266878fcec..3c025dabaf7a47f180b6f5bdaf6d6f67d128956d 100644 (file)
@@ -637,7 +637,7 @@ static bool wsa881x_volatile_register(struct device *dev, unsigned int reg)
 static struct regmap_config wsa881x_regmap_config = {
        .reg_bits = 32,
        .val_bits = 8,
-       .cache_type = REGCACHE_RBTREE,
+       .cache_type = REGCACHE_MAPLE,
        .reg_defaults = wsa881x_defaults,
        .max_register = WSA881X_SPKR_STATUS3,
        .num_reg_defaults = ARRAY_SIZE(wsa881x_defaults),