layerscape: add patches-5.4
[openwrt/staging/wigyori.git] / target / linux / layerscape / patches-5.4 / 808-i2c-0001-MLK-16095-01-i2c-mux-pca954x-add-i2c-bus-switch-PCA9.patch
diff --git a/target/linux/layerscape/patches-5.4/808-i2c-0001-MLK-16095-01-i2c-mux-pca954x-add-i2c-bus-switch-PCA9.patch b/target/linux/layerscape/patches-5.4/808-i2c-0001-MLK-16095-01-i2c-mux-pca954x-add-i2c-bus-switch-PCA9.patch
new file mode 100644 (file)
index 0000000..26a02ce
--- /dev/null
@@ -0,0 +1,52 @@
+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] },