[PATCH v2 01/14] board: freescale: Refactor NXP common mux code

Priyanka Jain priyanka.jain at nxp.com
Mon Jul 12 09:50:13 CEST 2021



>-----Original Message-----
>From: Stephen Carlson <stcarlso at linux.microsoft.com>
>Sent: Friday, June 25, 2021 1:02 AM
>To: U-Boot Mailing List <u-boot at lists.denx.de>
>Cc: Priyanka Jain <priyanka.jain at nxp.com>
>Subject: [PATCH v2 01/14] board: freescale: Refactor NXP common mux code
>
>Refactors similar mux code from multiple NXP boards into a common location,
>and allows it to be disabled in config.
>
>New config: CONFIG_FSL_USE_PCA9547_MUX to enable PCA9547 mux
>functionality.
>
>Signed-off-by: Stephen Carlson <stcarlso at linux.microsoft.com>
>---
>  board/freescale/common/Kconfig      |  6 +++
>  board/freescale/common/Makefile     | 11 ++++++
>  board/freescale/common/i2c_common.c | 34 +++++++++++++++++
>  board/freescale/common/i2c_common.h | 30 +++++++++++++++
>  board/freescale/common/i2c_mux.c    | 40 ++++++++++++++++++++
>  board/freescale/common/i2c_mux.h    | 15 ++++++++
>  board/freescale/common/vid.c        | 58 ++++++-----------------------
>  7 files changed, 148 insertions(+), 46 deletions(-)
>  create mode 100644 board/freescale/common/i2c_common.c
>  create mode 100644 board/freescale/common/i2c_common.h
>  create mode 100644 board/freescale/common/i2c_mux.c
>  create mode 100644 board/freescale/common/i2c_mux.h
>
>diff --git a/board/freescale/common/Kconfig
>b/board/freescale/common/Kconfig index 17db755951..ab9c14ae88 100644
>--- a/board/freescale/common/Kconfig
>+++ b/board/freescale/common/Kconfig
>@@ -21,6 +21,12 @@ config CMD_ESBC_VALIDATE
>  	    esbc_validate - validate signature using RSA verification
>  	    esbc_halt - put the core in spin loop (Secure Boot Only)
>
>+config FSL_USE_PCA9547_MUX
>+	bool "Enable PCA9547 I2C Mux on Freescale boards"
>+	default n
>+	help
>+	 This option enables the PCA9547 I2C mux on Freescale boards.
>+
>  config VID
>  	depends on DM_I2C
>  	bool "Enable Freescale VID"
>diff --git a/board/freescale/common/Makefile
>b/board/freescale/common/Makefile index 114b7ba8f9..45aaa16ca4 100644
>--- a/board/freescale/common/Makefile
>+++ b/board/freescale/common/Makefile
>@@ -15,6 +15,15 @@ ifdef MINIMAL
>  # necessary to create built-in.o
>  obj- := __dummy__.o
>  else
>+# include i2c_common.o once if either VID or FSL_USE_PCA9547_MUX
>+I2C_COMMON= ifdef CONFIG_VID I2C_COMMON=y endif ifdef
>+CONFIG_FSL_USE_PCA9547_MUX I2C_COMMON=y endif
>+
>  obj-$(CONFIG_FSL_CADMUS)	+= cadmus.o
>  obj-$(CONFIG_FSL_VIA)		+= cds_via.o
>  obj-$(CONFIG_FMAN_ENET)	+= fman.o
>@@ -22,6 +31,8 @@ obj-$(CONFIG_FSL_PIXIS)	+= pixis.o
>  ifndef CONFIG_SPL_BUILD
>  obj-$(CONFIG_FSL_NGPIXIS)	+= ngpixis.o
>  endif
>+obj-$(I2C_COMMON)		+= i2c_common.o
>+obj-$(CONFIG_FSL_USE_PCA9547_MUX)		+= i2c_mux.o
>  obj-$(CONFIG_VID)		+= vid.o
>  obj-$(CONFIG_FSL_QIXIS)	+= qixis.o
>  obj-$(CONFIG_PQ_MDS_PIB)	+= pq-mds-pib.o
>diff --git a/board/freescale/common/i2c_common.c
>b/board/freescale/common/i2c_common.c
>new file mode 100644
>index 0000000000..0f09ed7d34
>--- /dev/null
>+++ b/board/freescale/common/i2c_common.c
>@@ -0,0 +1,34 @@
>+// SPDX-License-Identifier: GPL-2.0+
>+/*
>+ * Copyright 2014 Freescale Semiconductor, Inc.
>+ * Copyright 2020-21 NXP
>+ * Copyright 2021 Microsoft Corporation  */
>+
>+#include <common.h>
>+#include <i2c.h>
>+#include "i2c_common.h"
>+
>+#ifdef CONFIG_DM_I2C
>+
>+/* If DM is in use, retrieve the chip for the specified bus number */
>+int fsl_i2c_get_device(int address, int bus, DEVICE_HANDLE_T *dev) {
>+	int ret = i2c_get_chip_for_busnum(bus, address, 1, dev);
>+
>+	if (ret)
>+		printf("I2C: Bus %d has no device with address 0x%02X\n",
>+		       bus, address);
>+	return ret;
>+}
>+
>+#else
>+
>+/* Handle is passed directly */
>+int fsl_i2c_get_device(int address, int bus, DEVICE_HANDLE_T *dev) {
>+	*dev = address;
>+	return 0;
>+}
>+
>+#endif
>
<snip>
Stephen,

All patches in the series has one extra space character in start on each line due to which patch does not apply with git am.
Please re-send the series after removing the extra character. Do ensure git am <patch> run successfully.

Also there are some changes in vid.c on master branch, please rebase to top.

Regards
Priyanka



More information about the U-Boot mailing list