mfd: axp20x: Add address extension registers for AXP806 regmap
authorChen-Yu Tsai <wens@csie.org>
Fri, 11 Nov 2016 03:29:52 +0000 (11:29 +0800)
committerLee Jones <lee.jones@linaro.org>
Tue, 29 Nov 2016 08:21:35 +0000 (08:21 +0000)
commit34d9030b5d06ec0072796b3ab6a3fa24e53ece3d
tree26ab97081b61d0031d3a2dc0d1b3da6a6e8e937b
parentf57576e73cc4808af3b097b1fdedfa7d0f6378a4
mfd: axp20x: Add address extension registers for AXP806 regmap

The AXP806 supports either master/standalone or slave mode.
Slave mode allows sharing the serial bus, even with multiple
AXP806 which all have the same hardware address.

This is done with extra "serial interface address extension",
or AXP806_BUS_ADDR_EXT, and "register address extension", or
AXP806_REG_ADDR_EXT, registers. The former is read-only, with
1 bit customizable at the factory, and 1 bit depending on the
state of an external pin. The latter is writable. Only when
the these device addressing bits (in the upper 4 bits of the
registers) match, will the device respond to operations on
its other registers.

Add these 2 registers to the regmap so we can access them.

Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
drivers/mfd/axp20x.c
include/linux/mfd/axp20x.h