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

mfd: cs47l85: 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 cs47l85 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-4-16dacae402a8@kernel.org
Signed-off-by: Lee Jones <lee@kernel.org>

authored by

Mark Brown and committed by
Lee Jones
fdcd10cd f38630fd

+4 -4
+4 -4
drivers/mfd/cs47l85-tables.c
··· 2836 2836 .readable_reg = cs47l85_16bit_readable_register, 2837 2837 .volatile_reg = cs47l85_16bit_volatile_register, 2838 2838 2839 - .cache_type = REGCACHE_RBTREE, 2839 + .cache_type = REGCACHE_MAPLE, 2840 2840 .reg_defaults = cs47l85_reg_default, 2841 2841 .num_reg_defaults = ARRAY_SIZE(cs47l85_reg_default), 2842 2842 }; ··· 2853 2853 .readable_reg = cs47l85_16bit_readable_register, 2854 2854 .volatile_reg = cs47l85_16bit_volatile_register, 2855 2855 2856 - .cache_type = REGCACHE_RBTREE, 2856 + .cache_type = REGCACHE_MAPLE, 2857 2857 .reg_defaults = cs47l85_reg_default, 2858 2858 .num_reg_defaults = ARRAY_SIZE(cs47l85_reg_default), 2859 2859 }; ··· 2872 2872 .readable_reg = cs47l85_32bit_readable_register, 2873 2873 .volatile_reg = cs47l85_32bit_volatile_register, 2874 2874 2875 - .cache_type = REGCACHE_RBTREE, 2875 + .cache_type = REGCACHE_MAPLE, 2876 2876 }; 2877 2877 EXPORT_SYMBOL_GPL(cs47l85_32bit_spi_regmap); 2878 2878 ··· 2888 2888 .readable_reg = cs47l85_32bit_readable_register, 2889 2889 .volatile_reg = cs47l85_32bit_volatile_register, 2890 2890 2891 - .cache_type = REGCACHE_RBTREE, 2891 + .cache_type = REGCACHE_MAPLE, 2892 2892 }; 2893 2893 EXPORT_SYMBOL_GPL(cs47l85_32bit_i2c_regmap);