All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 5/9] board: freescale: ls1088a: Update I2C mux config
@ 2021-07-14 20:48 Stephen Carlson
  0 siblings, 0 replies; only message in thread
From: Stephen Carlson @ 2021-07-14 20:48 UTC (permalink / raw)
  To: U-Boot Mailing List; +Cc: Priyanka Jain

Updates the board configuration to enable use of the PCA9547 I2C mux.

Signed-off-by: Stephen Carlson <stcarlso@linux.microsoft.com>
---
  board/freescale/ls1088a/ls1088a.c             | 32 ++++---------------
  configs/ls1088aqds_defconfig                  |  1 +
  configs/ls1088aqds_qspi_SECURE_BOOT_defconfig |  1 +
  configs/ls1088aqds_qspi_defconfig             |  1 +
  configs/ls1088aqds_sdcard_ifc_defconfig       |  1 +
  configs/ls1088aqds_sdcard_qspi_defconfig      |  1 +
  configs/ls1088aqds_tfa_defconfig              |  1 +
  configs/ls1088ardb_qspi_SECURE_BOOT_defconfig |  1 +
  configs/ls1088ardb_qspi_defconfig             |  1 +
  ...1088ardb_sdcard_qspi_SECURE_BOOT_defconfig |  1 +
  configs/ls1088ardb_sdcard_qspi_defconfig      |  1 +
  configs/ls1088ardb_tfa_SECURE_BOOT_defconfig  |  1 +
  configs/ls1088ardb_tfa_defconfig              |  1 +
  13 files changed, 18 insertions(+), 26 deletions(-)

diff --git a/board/freescale/ls1088a/ls1088a.c b/board/freescale/ls1088a/ls1088a.c
index f5dc449d89..2f422634d5 100644
--- a/board/freescale/ls1088a/ls1088a.c
+++ b/board/freescale/ls1088a/ls1088a.c
@@ -26,6 +26,7 @@
  #include <asm/arch/fsl_serdes.h>
  #include <asm/arch/soc.h>
  #include <asm/arch-fsl-layerscape/fsl_icid.h>
+#include "../common/i2c_mux.h"

  #include "../common/qixis.h"
  #include "ls1088a_qixis.h"
@@ -415,34 +416,13 @@ unsigned long get_board_ddr_clk(void)
  	return 66666666;
  }

-int select_i2c_ch_pca9547(u8 ch)
-{
-	int ret;
-
-#if !CONFIG_IS_ENABLED(DM_I2C)
-	ret = i2c_write(I2C_MUX_PCA_ADDR_PRI, 0, 1, &ch, 1);
-#else
-	struct udevice *dev;
-
-	ret = i2c_get_chip_for_busnum(0, I2C_MUX_PCA_ADDR_PRI, 1, &dev);
-	if (!ret)
-		ret = dm_i2c_write(dev, 0, &ch, 1);
-#endif
-	if (ret) {
-		puts("PCA: failed to select proper channel\n");
-		return ret;
-	}
-
-	return 0;
-}
-
  #if !defined(CONFIG_SPL_BUILD)
  void board_retimer_init(void)
  {
  	u8 reg;

  	/* Retimer is connected to I2C1_CH5 */
-	select_i2c_ch_pca9547(I2C_MUX_CH5);
+	select_i2c_ch_pca9547(I2C_MUX_CH5, 0);

  	/* Access to Control/Shared register */
  	reg = 0x0;
@@ -532,7 +512,7 @@ void board_retimer_init(void)

  #ifdef	CONFIG_TARGET_LS1088AQDS
  	/* Retimer is connected to I2C1_CH5 */
-	select_i2c_ch_pca9547(I2C_MUX_CH5);
+	select_i2c_ch_pca9547(I2C_MUX_CH5, 0);

  	/* Access to Control/Shared register */
  	reg = 0x0;
@@ -620,7 +600,7 @@ void board_retimer_init(void)

  #endif
  	/*return the default channel*/
-	select_i2c_ch_pca9547(I2C_MUX_CH_DEFAULT);
+	select_i2c_ch_pca9547(I2C_MUX_CH_DEFAULT, 0);
  }

  #ifdef CONFIG_MISC_INIT_R
@@ -669,7 +649,7 @@ int misc_init_r(void)

  int i2c_multiplexer_select_vid_channel(u8 channel)
  {
-	return select_i2c_ch_pca9547(channel);
+	return select_i2c_ch_pca9547(channel, 0);
  }

  #ifdef CONFIG_TARGET_LS1088AQDS
@@ -827,7 +807,7 @@ int board_init(void)
  	u32 __iomem *irq_ccsr = (u32 __iomem *)ISC_BASE;
  #endif

-	select_i2c_ch_pca9547(I2C_MUX_CH_DEFAULT);
+	select_i2c_ch_pca9547(I2C_MUX_CH_DEFAULT, 0);
  	board_retimer_init();

  #ifdef CONFIG_ENV_IS_NOWHERE
diff --git a/configs/ls1088aqds_defconfig b/configs/ls1088aqds_defconfig
index 55e52c8770..c36f37d5d1 100644
--- a/configs/ls1088aqds_defconfig
+++ b/configs/ls1088aqds_defconfig
@@ -74,3 +74,4 @@ CONFIG_USB_XHCI_DWC3=y
  CONFIG_USB_DWC3=y
  CONFIG_USB_STORAGE=y
  CONFIG_USB_GADGET=y
+CONFIG_FSL_USE_PCA9547_MUX=y
diff --git a/configs/ls1088aqds_qspi_SECURE_BOOT_defconfig b/configs/ls1088aqds_qspi_SECURE_BOOT_defconfig
index 9dc5f8dbb2..d401b91c40 100644
--- a/configs/ls1088aqds_qspi_SECURE_BOOT_defconfig
+++ b/configs/ls1088aqds_qspi_SECURE_BOOT_defconfig
@@ -75,3 +75,4 @@ CONFIG_USB_GADGET=y
  CONFIG_RSA=y
  CONFIG_RSA_SOFTWARE_EXP=y
  CONFIG_EFI_LOADER_BOUNCE_BUFFER=y
+CONFIG_FSL_USE_PCA9547_MUX=y
diff --git a/configs/ls1088aqds_qspi_defconfig b/configs/ls1088aqds_qspi_defconfig
index 91903bd110..5711464e77 100644
--- a/configs/ls1088aqds_qspi_defconfig
+++ b/configs/ls1088aqds_qspi_defconfig
@@ -76,3 +76,4 @@ CONFIG_USB_XHCI_DWC3=y
  CONFIG_USB_DWC3=y
  CONFIG_USB_GADGET=y
  CONFIG_EFI_LOADER_BOUNCE_BUFFER=y
+CONFIG_FSL_USE_PCA9547_MUX=y
diff --git a/configs/ls1088aqds_sdcard_ifc_defconfig b/configs/ls1088aqds_sdcard_ifc_defconfig
index fcb48741e3..fdeddaef44 100644
--- a/configs/ls1088aqds_sdcard_ifc_defconfig
+++ b/configs/ls1088aqds_sdcard_ifc_defconfig
@@ -82,3 +82,4 @@ CONFIG_USB_XHCI_DWC3=y
  CONFIG_USB_DWC3=y
  CONFIG_USB_STORAGE=y
  CONFIG_USB_GADGET=y
+CONFIG_FSL_USE_PCA9547_MUX=y
diff --git a/configs/ls1088aqds_sdcard_qspi_defconfig b/configs/ls1088aqds_sdcard_qspi_defconfig
index 3e8c269add..6f30c6a284 100644
--- a/configs/ls1088aqds_sdcard_qspi_defconfig
+++ b/configs/ls1088aqds_sdcard_qspi_defconfig
@@ -85,3 +85,4 @@ CONFIG_USB_XHCI_HCD=y
  CONFIG_USB_XHCI_DWC3=y
  CONFIG_USB_DWC3=y
  CONFIG_USB_GADGET=y
+CONFIG_FSL_USE_PCA9547_MUX=y
diff --git a/configs/ls1088aqds_tfa_defconfig b/configs/ls1088aqds_tfa_defconfig
index a0bd0cb23d..0df21ccd21 100644
--- a/configs/ls1088aqds_tfa_defconfig
+++ b/configs/ls1088aqds_tfa_defconfig
@@ -100,3 +100,4 @@ CONFIG_USB_XHCI_DWC3=y
  CONFIG_USB_DWC3=y
  CONFIG_USB_GADGET=y
  CONFIG_EFI_LOADER_BOUNCE_BUFFER=y
+CONFIG_FSL_USE_PCA9547_MUX=y
diff --git a/configs/ls1088ardb_qspi_SECURE_BOOT_defconfig b/configs/ls1088ardb_qspi_SECURE_BOOT_defconfig
index 6cd0251dd0..981da5f9af 100644
--- a/configs/ls1088ardb_qspi_SECURE_BOOT_defconfig
+++ b/configs/ls1088ardb_qspi_SECURE_BOOT_defconfig
@@ -76,3 +76,4 @@ CONFIG_USB_GADGET=y
  CONFIG_RSA=y
  CONFIG_RSA_SOFTWARE_EXP=y
  CONFIG_EFI_LOADER_BOUNCE_BUFFER=y
+CONFIG_FSL_USE_PCA9547_MUX=y
diff --git a/configs/ls1088ardb_qspi_defconfig b/configs/ls1088ardb_qspi_defconfig
index b71e60983f..1b3affc86a 100644
--- a/configs/ls1088ardb_qspi_defconfig
+++ b/configs/ls1088ardb_qspi_defconfig
@@ -77,3 +77,4 @@ CONFIG_USB_XHCI_DWC3=y
  CONFIG_USB_DWC3=y
  CONFIG_USB_GADGET=y
  CONFIG_EFI_LOADER_BOUNCE_BUFFER=y
+CONFIG_FSL_USE_PCA9547_MUX=y
diff --git a/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig b/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig
index 997f505778..a351ae48c5 100644
--- a/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig
+++ b/configs/ls1088ardb_sdcard_qspi_SECURE_BOOT_defconfig
@@ -87,3 +87,4 @@ CONFIG_USB_XHCI_DWC3=y
  CONFIG_USB_DWC3=y
  CONFIG_RSA=y
  CONFIG_SPL_RSA=y
+CONFIG_FSL_USE_PCA9547_MUX=y
diff --git a/configs/ls1088ardb_sdcard_qspi_defconfig b/configs/ls1088ardb_sdcard_qspi_defconfig
index 64b3136a3e..790ccbdb51 100644
--- a/configs/ls1088ardb_sdcard_qspi_defconfig
+++ b/configs/ls1088ardb_sdcard_qspi_defconfig
@@ -86,3 +86,4 @@ CONFIG_USB_XHCI_HCD=y
  CONFIG_USB_XHCI_DWC3=y
  CONFIG_USB_DWC3=y
  CONFIG_USB_GADGET=y
+CONFIG_FSL_USE_PCA9547_MUX=y
diff --git a/configs/ls1088ardb_tfa_SECURE_BOOT_defconfig b/configs/ls1088ardb_tfa_SECURE_BOOT_defconfig
index 473dd08ba8..344fa73a99 100644
--- a/configs/ls1088ardb_tfa_SECURE_BOOT_defconfig
+++ b/configs/ls1088ardb_tfa_SECURE_BOOT_defconfig
@@ -85,3 +85,4 @@ CONFIG_RSA=y
  CONFIG_SPL_RSA=y
  CONFIG_RSA_SOFTWARE_EXP=y
  CONFIG_EFI_LOADER_BOUNCE_BUFFER=y
+CONFIG_FSL_USE_PCA9547_MUX=y
diff --git a/configs/ls1088ardb_tfa_defconfig b/configs/ls1088ardb_tfa_defconfig
index a3c7953303..082578d16b 100644
--- a/configs/ls1088ardb_tfa_defconfig
+++ b/configs/ls1088ardb_tfa_defconfig
@@ -92,3 +92,4 @@ CONFIG_USB_ETHER_ASIX=y
  CONFIG_USB_ETHER_ASIX88179=y
  CONFIG_USB_ETHER_RTL8152=y
  CONFIG_EFI_LOADER_BOUNCE_BUFFER=y
+CONFIG_FSL_USE_PCA9547_MUX=y
-- 
2.17.1


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2021-07-14 20:48 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-14 20:48 [PATCH v3 5/9] board: freescale: ls1088a: Update I2C mux config Stephen Carlson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.