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>
lime2-spi
Peng Fan 6 years ago committed by Anatolij Gustschin
parent 4624faadff
commit 16f513ee78
  1. 9
      drivers/i2c/muxes/pca954x.c

@ -17,7 +17,8 @@ DECLARE_GLOBAL_DATA_PTR;
enum pca_type { enum pca_type {
PCA9544, PCA9544,
PCA9547, PCA9547,
PCA9548 PCA9548,
PCA9646
}; };
struct chip_desc { struct chip_desc {
@ -51,6 +52,11 @@ static const struct chip_desc chips[] = {
.muxtype = pca954x_isswi, .muxtype = pca954x_isswi,
.width = 8, .width = 8,
}, },
[PCA9646] = {
.enable = 0x0,
.muxtype = pca954x_isswi,
.width = 4,
},
}; };
static int pca954x_deselect(struct udevice *mux, struct udevice *bus, 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,pca9544", .data = PCA9544 },
{ .compatible = "nxp,pca9547", .data = PCA9547 }, { .compatible = "nxp,pca9547", .data = PCA9547 },
{ .compatible = "nxp,pca9548", .data = PCA9548 }, { .compatible = "nxp,pca9548", .data = PCA9548 },
{ .compatible = "nxp,pca9646", .data = PCA9646 },
{ } { }
}; };

Loading…
Cancel
Save