Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

mfd: cs47l35: Update to use maple tree register cache

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 cs47l35 driver to use the more modern data structure.

Signed-off-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20230713-mfd-cirrus-maple-v1-3-16dacae402a8@kernel.org
Signed-off-by: Lee Jones <lee@kernel.org>

authored by

Mark Brown and committed by
Lee Jones
f38630fd 01f71e73

+4 -4
+4 -4
drivers/mfd/cs47l35-tables.c
··· 1498 1498 .readable_reg = cs47l35_16bit_readable_register, 1499 1499 .volatile_reg = cs47l35_16bit_volatile_register, 1500 1500 1501 - .cache_type = REGCACHE_RBTREE, 1501 + .cache_type = REGCACHE_MAPLE, 1502 1502 .reg_defaults = cs47l35_reg_default, 1503 1503 .num_reg_defaults = ARRAY_SIZE(cs47l35_reg_default), 1504 1504 }; ··· 1515 1515 .readable_reg = cs47l35_16bit_readable_register, 1516 1516 .volatile_reg = cs47l35_16bit_volatile_register, 1517 1517 1518 - .cache_type = REGCACHE_RBTREE, 1518 + .cache_type = REGCACHE_MAPLE, 1519 1519 .reg_defaults = cs47l35_reg_default, 1520 1520 .num_reg_defaults = ARRAY_SIZE(cs47l35_reg_default), 1521 1521 }; ··· 1534 1534 .readable_reg = cs47l35_32bit_readable_register, 1535 1535 .volatile_reg = cs47l35_32bit_volatile_register, 1536 1536 1537 - .cache_type = REGCACHE_RBTREE, 1537 + .cache_type = REGCACHE_MAPLE, 1538 1538 }; 1539 1539 EXPORT_SYMBOL_GPL(cs47l35_32bit_spi_regmap); 1540 1540 ··· 1550 1550 .readable_reg = cs47l35_32bit_readable_register, 1551 1551 .volatile_reg = cs47l35_32bit_volatile_register, 1552 1552 1553 - .cache_type = REGCACHE_RBTREE, 1553 + .cache_type = REGCACHE_MAPLE, 1554 1554 }; 1555 1555 EXPORT_SYMBOL_GPL(cs47l35_32bit_i2c_regmap);