mfd: axp20x: Split the driver into core and i2c bits
authorChen-Yu Tsai <wens@csie.org>
Fri, 12 Feb 2016 02:02:42 +0000 (10:02 +0800)
committerLee Jones <lee.jones@linaro.org>
Fri, 12 Feb 2016 08:53:03 +0000 (08:53 +0000)
commit4fd411514291ae75053003e33a6a4a56f97467d0
treecb34bfd26f40f976fc941131cb3669f1cd11e825
parente740235ddd84f4fe993af982b873578f3299b7d6
mfd: axp20x: Split the driver into core and i2c bits

The axp20x driver assumes the device is i2c based. This is not the
case with later chips, which use a proprietary 2 wire serial bus
by Allwinner called "Reduced Serial Bus".

This patch follows the example of mfd/wm831x and splits it into
an interface independent core, and an i2c specific glue layer.
MFD_AXP20X and the new MFD_AXP20X_I2C are changed to tristate
symbols, allowing the driver to be built as modules.

Whitespace and other style errors in the moved i2c specific code
have been fixed. Included but unused header files are removed as
well.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
drivers/mfd/Kconfig
drivers/mfd/Makefile
drivers/mfd/axp20x-i2c.c [new file with mode: 0644]
drivers/mfd/axp20x.c
include/linux/mfd/axp20x.h