mirror of https://gitee.com/openkylin/linux.git
i2c: mv64xxx: Add Allwinner sun4i compatible
Add the compatible string for the Allwinner A10 i2c controller and the associated register layout. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Tested-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com> Tested-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
This commit is contained in:
parent
004e8ed7cc
commit
3d66ac7d81
|
@ -497,10 +497,11 @@ config I2C_MPC
|
|||
|
||||
config I2C_MV64XXX
|
||||
tristate "Marvell mv64xxx I2C Controller"
|
||||
depends on (MV64X60 || PLAT_ORION)
|
||||
depends on (MV64X60 || PLAT_ORION || ARCH_SUNXI)
|
||||
help
|
||||
If you say yes to this option, support will be included for the
|
||||
built-in I2C interface on the Marvell 64xxx line of host bridges.
|
||||
This driver is also used for Allwinner SoCs I2C controllers.
|
||||
|
||||
This driver can also be built as a module. If so, the module
|
||||
will be called i2c-mv64xxx.
|
||||
|
|
|
@ -129,6 +129,16 @@ static struct mv64xxx_i2c_regs mv64xxx_i2c_regs_mv64xxx = {
|
|||
.soft_reset = 0x1c,
|
||||
};
|
||||
|
||||
static struct mv64xxx_i2c_regs mv64xxx_i2c_regs_sun4i = {
|
||||
.addr = 0x00,
|
||||
.ext_addr = 0x04,
|
||||
.data = 0x08,
|
||||
.control = 0x0c,
|
||||
.status = 0x10,
|
||||
.clock = 0x14,
|
||||
.soft_reset = 0x18,
|
||||
};
|
||||
|
||||
static void
|
||||
mv64xxx_i2c_prepare_for_io(struct mv64xxx_i2c_data *drv_data,
|
||||
struct i2c_msg *msg)
|
||||
|
@ -509,6 +519,7 @@ static const struct i2c_algorithm mv64xxx_i2c_algo = {
|
|||
*****************************************************************************
|
||||
*/
|
||||
static const struct of_device_id mv64xxx_i2c_of_match_table[] = {
|
||||
{ .compatible = "allwinner,sun4i-i2c", .data = &mv64xxx_i2c_regs_sun4i},
|
||||
{ .compatible = "marvell,mv64xxx-i2c", .data = &mv64xxx_i2c_regs_mv64xxx},
|
||||
{}
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue