ASoC: sta32x: Update to use maple tree register cache
authorMark Brown <broonie@kernel.org>
Wed, 12 Jul 2023 18:44:27 +0000 (19:44 +0100)
committerMark Brown <broonie@kernel.org>
Thu, 27 Jul 2023 19:32:08 +0000 (20:32 +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 sta32x driver to use the more modern data structure.

Signed-off-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20230712-asoc-st-maple-v1-1-46eab2c0ce23@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/sta32x.c

index 4a694d0bfd686e767934219605c220370dfe2cda..34ffd32ab9dca10e367aff1ef4c6079b49093ef5 100644 (file)
@@ -1022,7 +1022,7 @@ static const struct regmap_config sta32x_regmap = {
        .max_register =         STA32X_FDRC2,
        .reg_defaults =         sta32x_regs,
        .num_reg_defaults =     ARRAY_SIZE(sta32x_regs),
-       .cache_type =           REGCACHE_RBTREE,
+       .cache_type =           REGCACHE_MAPLE,
        .wr_table =             &sta32x_write_regs,
        .rd_table =             &sta32x_read_regs,
        .volatile_table =       &sta32x_volatile_regs,