aboutsummaryrefslogtreecommitdiff
path: root/drivers/i2c/muxes/pca954x.c
diff options
context:
space:
mode:
authorPeng Fan <peng.fan@nxp.com>2018-07-17 20:38:32 +0800
committerAnatolij Gustschin <agust@denx.de>2018-08-06 14:28:20 +0200
commit16f513ee78e54d71ffcd92248caea0b1360c0ed7 (patch)
tree06133f9977882a5b6a7eec9948541abd01ef84d4 /drivers/i2c/muxes/pca954x.c
parent4624faadffdb1cad65ad0c77d5a302ccbfaf4eae (diff)
downloadu-boot-16f513ee78e54d71ffcd92248caea0b1360c0ed7.zip
u-boot-16f513ee78e54d71ffcd92248caea0b1360c0ed7.tar.gz
u-boot-16f513ee78e54d71ffcd92248caea0b1360c0ed7.tar.bz2
i2c-mux: pca954x: support pca9646 i2c switch
Add the PCA9646 support, which is 2-wire bus switch and buffered 4-channel. Signed-off-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Anatolij Gustschin <agust@denx.de>
Diffstat (limited to 'drivers/i2c/muxes/pca954x.c')
-rw-r--r--drivers/i2c/muxes/pca954x.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/i2c/muxes/pca954x.c b/drivers/i2c/muxes/pca954x.c
index 4debc03..ab8b400 100644
--- a/drivers/i2c/muxes/pca954x.c
+++ b/drivers/i2c/muxes/pca954x.c
@@ -17,7 +17,8 @@ DECLARE_GLOBAL_DATA_PTR;
enum pca_type {
PCA9544,
PCA9547,
- PCA9548
+ PCA9548,
+ PCA9646
};
struct chip_desc {
@@ -51,6 +52,11 @@ static const struct chip_desc chips[] = {
.muxtype = pca954x_isswi,
.width = 8,
},
+ [PCA9646] = {
+ .enable = 0x0,
+ .muxtype = pca954x_isswi,
+ .width = 4,
+ },
};
static int pca954x_deselect(struct udevice *mux, struct udevice *bus,
@@ -86,6 +92,7 @@ static const struct udevice_id pca954x_ids[] = {
{ .compatible = "nxp,pca9544", .data = PCA9544 },
{ .compatible = "nxp,pca9547", .data = PCA9547 },
{ .compatible = "nxp,pca9548", .data = PCA9548 },
+ { .compatible = "nxp,pca9646", .data = PCA9646 },
{ }
};