You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
openwrt/target/linux/layerscape/patches-5.4/808-i2c-0001-MLK-16095-01-i...

53 lines
1.7 KiB
Diff

From 80720c83833c6009b68958fff4e1cca712808395 Mon Sep 17 00:00:00 2001
From: Richard Zhu <hongxing.zhu@nxp.com>
Date: Thu, 24 Jan 2019 15:07:32 +0800
Subject: [PATCH] MLK-16095-01 i2c: mux: pca954x: add i2c bus switch PCA9646
chip support
Add i2c bus switch PCA9646 chip support, which 2-wire bus switch
and buffered 4-channel.
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
---
drivers/i2c/muxes/i2c-mux-pca954x.c | 8 ++++++++
1 file changed, 8 insertions(+)
--- a/drivers/i2c/muxes/i2c-mux-pca954x.c
+++ b/drivers/i2c/muxes/i2c-mux-pca954x.c
@@ -64,6 +64,7 @@ enum pca_type {
pca_9546,
pca_9547,
pca_9548,
+ pca_9646,
pca_9846,
pca_9847,
pca_9848,
@@ -145,6 +146,11 @@ static const struct chip_desc chips[] =
.muxtype = pca954x_isswi,
.id = { .manufacturer_id = I2C_DEVICE_ID_NONE },
},
+ [pca_9646] = {
+ .nchans = 4,
+ .muxtype = pca954x_isswi,
+ .id = { .manufacturer_id = I2C_DEVICE_ID_NONE },
+ },
[pca_9846] = {
.nchans = 4,
.muxtype = pca954x_isswi,
@@ -190,6 +196,7 @@ static const struct i2c_device_id pca954
{ "pca9546", pca_9546 },
{ "pca9547", pca_9547 },
{ "pca9548", pca_9548 },
+ { "pca9646", pca_9646 },
{ "pca9846", pca_9846 },
{ "pca9847", pca_9847 },
{ "pca9848", pca_9848 },
@@ -208,6 +215,7 @@ static const struct of_device_id pca954x
{ .compatible = "nxp,pca9546", .data = &chips[pca_9546] },
{ .compatible = "nxp,pca9547", .data = &chips[pca_9547] },
{ .compatible = "nxp,pca9548", .data = &chips[pca_9548] },
+ { .compatible = "nxp,pca9646", .data = &chips[pca_9646] },
{ .compatible = "nxp,pca9846", .data = &chips[pca_9846] },
{ .compatible = "nxp,pca9847", .data = &chips[pca_9847] },
{ .compatible = "nxp,pca9848", .data = &chips[pca_9848] },