[PATCH 0/6][RFC] cleanup regmap write functions

From: Kuninori Morimoto
Date: Tue Feb 09 2016 - 21:43:30 EST



Hi Mark

Current regmap has many similar functions
regmap_update_bits()
regmap_update_bits_async()
regmap_update_bits_check()
regmap_update_bits_check_async()
But difference is very few.
And I would like to have _force_ feature on it.
So, these patches add new regmap_raw_update_bits()
which has _check, _async, _force option.
Above functions are now defined as macro.
4), 5) adds _force_ feature. We can easily add _check, _async.

I used [RFC], because regmap has many effect.

BTW, I noticed #if - #else - #endif on ${LINUX}/include/linux/regmap.h are strange.
Many functions/struct/macro are defined under #ifdef CONFIG_REGMAP,
but few are defined under #else. It can be trouble ?
Do we really need this #if ?

Kuninori Morimoto (7):
1) regmap: add regmap_raw_update_bits() and merge all regmap_update_bits_xxx()
2) regmap: regmap_field_xxx() uses regmap_raw_update_bits()
3) regmap: regmap_fields_xxx() uses regmap_raw_update_bits()
4) regmap: add regmap_field_force_xxx() functions
5) regmap: add regmap_fields_force_xxx() functions
6) regmpa: remove regmap_write_bits()
7) ASoC: rsnd: rsnd_write() / rsnd_bset() uses regmap _force_ function

drivers/base/regmap/regmap.c | 191 +++++++++++++++++++++++++++++------------------------------------------------------------------------------------------------------
include/linux/regmap.h | 102 ++++++++++++++++++++++++++++++----------------------------------------
sound/soc/sh/rcar/gen.c | 21 ++-------------
sound/soc/sh/rcar/rsnd.h | 2 --
4 files changed, 88 insertions(+), 228 deletions(-)


Best regards
---
Kuninori Morimoto