From 16f513ee78e54d71ffcd92248caea0b1360c0ed7 Mon Sep 17 00:00:00 2001 From: Peng Fan Date: Tue, 17 Jul 2018 20:38:32 +0800 Subject: [PATCH] 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 Reviewed-by: Anatolij Gustschin --- drivers/i2c/muxes/pca954x.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) 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 }, { } };