mfd: wm831x: Use maple tree register cache
authorMark Brown <broonie@kernel.org>
Tue, 25 Apr 2023 18:03:33 +0000 (19:03 +0100)
committerLee Jones <lee@kernel.org>
Thu, 15 Jun 2023 08:19:36 +0000 (09:19 +0100)
commit7ef47a12a62e8fcf1b66a401cd6f3fc055581da0
tree1e3c404c71d0f260fabedcb2cbebf6e187dcbab5
parent867cae44f8ae150d0e303cfd62a01d0d7cd7f7a5
mfd: wm831x: Use maple tree register cache

regmap has introduced a maple tree based register cache which makes use of
this more advanced data structure which has been added to the kernel
recently. Maple trees are much flatter than rbtrees, meaning that they do
not grow to such depths when the register map is sparse which makes access
a bit more efficient. The maple tree cache type is still a bit of a work
in progress but should be effective for some devices already.

The wm831x devices have a pretty sparse register map and being always on
devices never do cache syncs so don't hit the major current disadvantage
so they should be good candiates for using the maple tree cache.  Update
to do so, there should be little if any visible difference at runtime.

Signed-off-by: Mark Brown <broonie@kernel.org>
Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Signed-off-by: Lee Jones <lee@kernel.org>
Link: https://lore.kernel.org/r/20230419-mfd-wm831x-maple-v1-1-e03e39d7bb0b@kernel.org
drivers/mfd/wm831x-core.c