public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] [PATCH 0/6] i.MX6Q: Add SPL_OF_CONTROL support
@ 2017-09-19 18:37 Jagan Teki
  2017-09-19 18:37 ` [U-Boot] [PATCH 1/6] i.MX6: engicam: Fix MAINTAINERS/README Jagan Teki
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: Jagan Teki @ 2017-09-19 18:37 UTC (permalink / raw)
  To: u-boot

From: Jagan Teki <jagan@amarulasolutions.com>

This series add OF_CONTROL support for SPL on Engicam i.MX6QDL
boards, along with proper code optimzation changes.


Jagan Teki (6):
  i.MX6: engicam: Fix MAINTAINERS/README
  imx6ul: geam6ul/isiot: Fix to MMC devices
  i.MX6: engicam: Move set_fdt_file to common
  i.MX6Q: icorem6: Move spl load fit to common/spl
  i.MX6Q: icore: Add SPL_OF_CONTROL support
  i.MX6Q: icore: Add imx6q board for icore/icore_rqs

 arch/arm/dts/imx6qdl-icore-rqs.dtsi                |   2 +
 arch/arm/dts/imx6qdl-icore.dtsi                    |   2 +
 arch/arm/dts/imx6qdl.dtsi                          |   5 +
 arch/arm/mach-imx/mx6/Kconfig                      |  24 +--
 board/engicam/common/board.c                       |  24 +++
 board/engicam/common/board.h                       |   1 -
 board/engicam/common/spl.c                         |  16 ++
 board/engicam/geam6ul/MAINTAINERS                  |   2 +-
 board/engicam/geam6ul/geam6ul.c                    |   6 -
 board/engicam/icorem6/README                       |  33 ----
 board/engicam/icorem6_rqs/Kconfig                  |  12 --
 board/engicam/icorem6_rqs/MAINTAINERS              |   9 --
 board/engicam/icorem6_rqs/Makefile                 |   6 -
 board/engicam/icorem6_rqs/icorem6_rqs.c            | 171 ---------------------
 board/engicam/{icorem6 => imx6q}/Kconfig           |   2 +-
 board/engicam/{icorem6 => imx6q}/MAINTAINERS       |  10 +-
 board/engicam/{icorem6 => imx6q}/Makefile          |   2 +-
 board/engicam/{icorem6_rqs => imx6q}/README        |  12 +-
 board/engicam/{icorem6/icorem6.c => imx6q/imx6q.c} | 108 +++----------
 board/engicam/isiotmx6ul/MAINTAINERS               |   2 +-
 board/engicam/isiotmx6ul/isiotmx6ul.c              |  11 --
 configs/imx6qdl_icore_mmc_defconfig                |   1 +
 configs/imx6qdl_icore_rqs_defconfig                |   3 +-
 configs/imx6ul_geam_mmc_defconfig                  |   1 -
 configs/imx6ul_isiot_emmc_defconfig                |   1 -
 configs/imx6ul_isiot_mmc_defconfig                 |   1 -
 include/configs/imx6-engicam.h                     |  22 +--
 27 files changed, 112 insertions(+), 377 deletions(-)
 delete mode 100644 board/engicam/icorem6/README
 delete mode 100644 board/engicam/icorem6_rqs/Kconfig
 delete mode 100644 board/engicam/icorem6_rqs/MAINTAINERS
 delete mode 100644 board/engicam/icorem6_rqs/Makefile
 delete mode 100644 board/engicam/icorem6_rqs/icorem6_rqs.c
 rename board/engicam/{icorem6 => imx6q}/Kconfig (87%)
 rename board/engicam/{icorem6 => imx6q}/MAINTAINERS (51%)
 rename board/engicam/{icorem6 => imx6q}/Makefile (80%)
 rename board/engicam/{icorem6_rqs => imx6q}/README (68%)
 rename board/engicam/{icorem6/icorem6.c => imx6q/imx6q.c} (73%)

-- 
2.7.4

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [U-Boot] [PATCH 1/6] i.MX6: engicam: Fix MAINTAINERS/README
  2017-09-19 18:37 [U-Boot] [PATCH 0/6] i.MX6Q: Add SPL_OF_CONTROL support Jagan Teki
@ 2017-09-19 18:37 ` Jagan Teki
  2017-09-19 18:37 ` [U-Boot] [PATCH 2/6] imx6ul: geam6ul/isiot: Fix to MMC devices Jagan Teki
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Jagan Teki @ 2017-09-19 18:37 UTC (permalink / raw)
  To: u-boot

From: Jagan Teki <jagan@amarulasolutions.com>

- Update newly added include/configs file in MAINTAINERS
- Update newly added defconfig file in README

Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
---
 board/engicam/geam6ul/MAINTAINERS     | 2 +-
 board/engicam/icorem6/MAINTAINERS     | 2 +-
 board/engicam/icorem6/README          | 7 ++-----
 board/engicam/icorem6_rqs/MAINTAINERS | 2 +-
 board/engicam/icorem6_rqs/README      | 7 ++-----
 board/engicam/isiotmx6ul/MAINTAINERS  | 2 +-
 6 files changed, 8 insertions(+), 14 deletions(-)

diff --git a/board/engicam/geam6ul/MAINTAINERS b/board/engicam/geam6ul/MAINTAINERS
index 1c31375..2b882d2 100644
--- a/board/engicam/geam6ul/MAINTAINERS
+++ b/board/engicam/geam6ul/MAINTAINERS
@@ -2,7 +2,7 @@ GEAM6UL BOARD
 M:	Jagan Teki <jagan@amarulasolutions.com>
 S:	Maintained
 F:	board/engicam/geam6ul
-F:	include/configs/imx6ul_geam.h
+F:	include/configs/imx6-engicam.h
 F:	configs/imx6ul_geam_mmc_defconfig
 F:	configs/imx6ul_geam_nand_defconfig
 F:	arch/arm/dts/imx6ul-geam-kit.dts
diff --git a/board/engicam/icorem6/MAINTAINERS b/board/engicam/icorem6/MAINTAINERS
index 26b4b56..a348bdd 100644
--- a/board/engicam/icorem6/MAINTAINERS
+++ b/board/engicam/icorem6/MAINTAINERS
@@ -2,7 +2,7 @@ ICOREM6QDL BOARD
 M:	Jagan Teki <jagan@amarulasolutions.com>
 S:	Maintained
 F:	board/engicam/icorem6
-F:	include/configs/imx6qdl_icore.h
+F:	include/configs/imx6-engicam.h
 F:	configs/imx6qdl_icore_mmc_defconfig
 F:	configs/imx6qdl_icore_nand_defconfig
 F:	arch/arm/dts/imx6qdl-icore.dtsi
diff --git a/board/engicam/icorem6/README b/board/engicam/icorem6/README
index 6461c0a..3779e96 100644
--- a/board/engicam/icorem6/README
+++ b/board/engicam/icorem6/README
@@ -3,11 +3,8 @@ How to use U-Boot on Engicam i.CoreM6 Solo/DualLite and Quad/Dual Starter Kit:
 
 $ make mrproper
 
-- Configure U-Boot for Engicam i.CoreM6 Quad/Dual:
-$ make imx6q_icore_mmc_defconfig
-
-- Configure U-Boot for Engicam i.CoreM6 Solo/DualLite:
-$ make imx6dl_icore_mmc_defconfig
+- Configure U-Boot for Engicam i.CoreM6 Quad/Dual/Solo/DualLite:
+$ make imx6qdl_icore_mmc_defconfig
 
 - Build U-Boot
 $ make
diff --git a/board/engicam/icorem6_rqs/MAINTAINERS b/board/engicam/icorem6_rqs/MAINTAINERS
index 6205acb..9a74265 100644
--- a/board/engicam/icorem6_rqs/MAINTAINERS
+++ b/board/engicam/icorem6_rqs/MAINTAINERS
@@ -2,7 +2,7 @@ ICOREM6QDL_RQS BOARD
 M:	Jagan Teki <jagan@amarulasolutions.com>
 S:	Maintained
 F:	board/engicam/icorem6_rqs
-F:	include/configs/imx6qdl_icore_rqs.h
+F:	include/configs/imx6-engicam.h
 F:	configs/imx6qdl_icore_rqs_defconfig
 F:	arch/arm/dts/imx6qdl-icore-rqs.dtsi
 F:	arch/arm/dts/imx6q-icore-rqs.dts
diff --git a/board/engicam/icorem6_rqs/README b/board/engicam/icorem6_rqs/README
index ccce622..97e978c 100644
--- a/board/engicam/icorem6_rqs/README
+++ b/board/engicam/icorem6_rqs/README
@@ -3,11 +3,8 @@ How to use U-Boot on Engicam i.CoreM6 RQS Solo/DualLite and Quad/Dual Starter Ki
 
 $ make mrproper
 
-- Configure U-Boot for Engicam i.CoreM6 RQS Quad/Dual:
-$ make imx6q_icore_rqs_mmc_defconfig
-
-- Configure U-Boot for Engicam i.CoreM6 RQS Solo/DualLite:
-$ make imx6dl_icore_rqs_mmc_defconfig
+- Configure U-Boot for Engicam i.CoreM6 RQS Quad/Dual/Solo/DualLite:
+$ make imx6qdl_icore_rqs_defconfig
 
 - Build U-Boot
 $ make
diff --git a/board/engicam/isiotmx6ul/MAINTAINERS b/board/engicam/isiotmx6ul/MAINTAINERS
index c30cfe7..9b66c8d 100644
--- a/board/engicam/isiotmx6ul/MAINTAINERS
+++ b/board/engicam/isiotmx6ul/MAINTAINERS
@@ -2,7 +2,7 @@ ISIOTMX6UL BOARD
 M:	Jagan Teki <jagan@amarulasolutions.com>
 S:	Maintained
 F:	board/engicam/isiotmx6ul
-F:	include/configs/imx6ul_isiot.h
+F:	include/configs/imx6-engicam.h
 F:	configs/imx6ul_isiot_mmc_defconfig
 F:	configs/imx6ul_isiot_emmc_defconfig
 F:	configs/imx6ul_isiot_nand_defconfig
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [U-Boot] [PATCH 2/6] imx6ul: geam6ul/isiot: Fix to MMC devices
  2017-09-19 18:37 [U-Boot] [PATCH 0/6] i.MX6Q: Add SPL_OF_CONTROL support Jagan Teki
  2017-09-19 18:37 ` [U-Boot] [PATCH 1/6] i.MX6: engicam: Fix MAINTAINERS/README Jagan Teki
@ 2017-09-19 18:37 ` Jagan Teki
  2017-09-19 18:37 ` [U-Boot] [PATCH 3/6] i.MX6: engicam: Move set_fdt_file to common Jagan Teki
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Jagan Teki @ 2017-09-19 18:37 UTC (permalink / raw)
  To: u-boot

From: Jagan Teki <jagan@amarulasolutions.com>

U-Boot proper is using DM_MMC so, enable CONFIG_BLK otherwise
find_mmc_device failed to detect MMC device.

Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
---
 configs/imx6ul_geam_mmc_defconfig   | 1 -
 configs/imx6ul_isiot_emmc_defconfig | 1 -
 configs/imx6ul_isiot_mmc_defconfig  | 1 -
 3 files changed, 3 deletions(-)

diff --git a/configs/imx6ul_geam_mmc_defconfig b/configs/imx6ul_geam_mmc_defconfig
index d329127..f663190 100644
--- a/configs/imx6ul_geam_mmc_defconfig
+++ b/configs/imx6ul_geam_mmc_defconfig
@@ -33,7 +33,6 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_ENV_IS_IN_MMC=y
-# CONFIG_BLK is not set
 CONFIG_SYS_I2C_MXC=y
 CONFIG_PHYLIB=y
 CONFIG_PHY_SMSC=y
diff --git a/configs/imx6ul_isiot_emmc_defconfig b/configs/imx6ul_isiot_emmc_defconfig
index be1f23d..7de9662 100644
--- a/configs/imx6ul_isiot_emmc_defconfig
+++ b/configs/imx6ul_isiot_emmc_defconfig
@@ -32,7 +32,6 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_ENV_IS_IN_MMC=y
-# CONFIG_BLK is not set
 CONFIG_PHYLIB=y
 CONFIG_PHY_SMSC=y
 CONFIG_FEC_MXC=y
diff --git a/configs/imx6ul_isiot_mmc_defconfig b/configs/imx6ul_isiot_mmc_defconfig
index 760bb2e..7e48f6a 100644
--- a/configs/imx6ul_isiot_mmc_defconfig
+++ b/configs/imx6ul_isiot_mmc_defconfig
@@ -33,7 +33,6 @@ CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
 CONFIG_ENV_IS_IN_MMC=y
-# CONFIG_BLK is not set
 CONFIG_SYS_I2C_MXC=y
 CONFIG_PHYLIB=y
 CONFIG_PHY_SMSC=y
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [U-Boot] [PATCH 3/6] i.MX6: engicam: Move set_fdt_file to common
  2017-09-19 18:37 [U-Boot] [PATCH 0/6] i.MX6Q: Add SPL_OF_CONTROL support Jagan Teki
  2017-09-19 18:37 ` [U-Boot] [PATCH 1/6] i.MX6: engicam: Fix MAINTAINERS/README Jagan Teki
  2017-09-19 18:37 ` [U-Boot] [PATCH 2/6] imx6ul: geam6ul/isiot: Fix to MMC devices Jagan Teki
@ 2017-09-19 18:37 ` Jagan Teki
  2017-09-19 18:37 ` [U-Boot] [PATCH 4/6] i.MX6Q: icorem6: Move spl load fit to common/spl Jagan Teki
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Jagan Teki @ 2017-09-19 18:37 UTC (permalink / raw)
  To: u-boot

From: Jagan Teki <jagan@amarulasolutions.com>

setenv_fdt_file to common code and set dtb based on
CONFIG_DEFAULT_DEVICE_TREE and cpu_type.

Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
---
 board/engicam/common/board.c            | 24 ++++++++++++++++++++++++
 board/engicam/common/board.h            |  1 -
 board/engicam/geam6ul/geam6ul.c         |  6 ------
 board/engicam/icorem6/icorem6.c         |  8 --------
 board/engicam/icorem6_rqs/icorem6_rqs.c |  8 --------
 board/engicam/isiotmx6ul/isiotmx6ul.c   | 11 -----------
 6 files changed, 24 insertions(+), 34 deletions(-)

diff --git a/board/engicam/common/board.c b/board/engicam/common/board.c
index c7ec55f..f86fb2b 100644
--- a/board/engicam/common/board.c
+++ b/board/engicam/common/board.c
@@ -32,6 +32,30 @@ static void mmc_late_init(void)
 }
 #endif
 
+static void setenv_fdt_file(void)
+{
+	const char *cmp_dtb = CONFIG_DEFAULT_DEVICE_TREE;
+
+	if (!strcmp(cmp_dtb, "imx6q-icore")) {
+		if (is_mx6dq())
+			env_set("fdt_file", "imx6q-icore.dtb");
+		else if(is_mx6dl() || is_mx6solo())
+			env_set("fdt_file", "imx6dl-icore.dtb");
+	} else if (!strcmp(cmp_dtb, "imx6q-icore-rqs")) {
+		if (is_mx6dq())
+			env_set("fdt_file", "imx6q-icore-rqs.dtb");
+		else if(is_mx6dl() || is_mx6solo())
+			env_set("fdt_file", "imx6dl-icore-rqs.dtb");
+	} else if (!strcmp(cmp_dtb, "imx6ul-geam-kit"))
+		env_set("fdt_file", "imx6ul-geam-kit.dtb");
+	else if (!strcmp(cmp_dtb, "imx6ul-isiot-mmc"))
+		env_set("fdt_file", "imx6ul-isiot-mmc.dtb");
+	else if (!strcmp(cmp_dtb, "imx6ul-isiot-emmc"))
+		env_set("fdt_file", "imx6ul-isiot-emmc.dtb");
+	else if (!strcmp(cmp_dtb, "imx6ul-isiot-nand"))
+		env_set("fdt_file", "imx6ul-isiot-nand.dtb");
+}
+
 int board_late_init(void)
 {
 	switch ((imx6_src_get_boot_mode() & IMX6_BMODE_MASK) >>
diff --git a/board/engicam/common/board.h b/board/engicam/common/board.h
index f364a23..c720b0b 100644
--- a/board/engicam/common/board.h
+++ b/board/engicam/common/board.h
@@ -6,7 +6,6 @@
 
 #ifndef _BOARD_H_
 #define _BOARD_H_
-void setenv_fdt_file(void);
 void setup_gpmi_nand(void);
 void setup_display(void);
 #endif /* _BOARD_H_ */
diff --git a/board/engicam/geam6ul/geam6ul.c b/board/engicam/geam6ul/geam6ul.c
index ffd383a..15bd8b2 100644
--- a/board/engicam/geam6ul/geam6ul.c
+++ b/board/engicam/geam6ul/geam6ul.c
@@ -90,12 +90,6 @@ void setup_gpmi_nand(void)
 }
 #endif /* CONFIG_NAND_MXS */
 
-void setenv_fdt_file(void)
-{
-	if (is_mx6ul())
-		env_set("fdt_file", "imx6ul-geam-kit.dtb");
-}
-
 #ifdef CONFIG_SPL_BUILD
 /* MMC board initialization is needed till adding DM support in SPL */
 #if defined(CONFIG_FSL_ESDHC) && !defined(CONFIG_DM_MMC)
diff --git a/board/engicam/icorem6/icorem6.c b/board/engicam/icorem6/icorem6.c
index 3d4f713..59c085b 100644
--- a/board/engicam/icorem6/icorem6.c
+++ b/board/engicam/icorem6/icorem6.c
@@ -192,14 +192,6 @@ void setup_display(void)
 }
 #endif /* CONFIG_VIDEO_IPUV3 */
 
-void setenv_fdt_file(void)
-{
-	if (is_mx6dq())
-		env_set("fdt_file", "imx6q-icore.dtb");
-	else if(is_mx6dl() || is_mx6solo())
-		env_set("fdt_file", "imx6dl-icore.dtb");
-}
-
 #ifdef CONFIG_SPL_BUILD
 /* MMC board initialization is needed till adding DM support in SPL */
 #if defined(CONFIG_FSL_ESDHC) && !defined(CONFIG_DM_MMC)
diff --git a/board/engicam/icorem6_rqs/icorem6_rqs.c b/board/engicam/icorem6_rqs/icorem6_rqs.c
index 2a321dc..edf9d086 100644
--- a/board/engicam/icorem6_rqs/icorem6_rqs.c
+++ b/board/engicam/icorem6_rqs/icorem6_rqs.c
@@ -32,14 +32,6 @@ int board_mmc_get_env_dev(int devno)
 }
 #endif
 
-void setenv_fdt_file(void)
-{
-	if (is_mx6dq())
-		env_set("fdt_file", "imx6q-icore-rqs.dtb");
-	else if(is_mx6dl() || is_mx6solo())
-		env_set("fdt_file", "imx6dl-icore-rqs.dtb");
-}
-
 #ifdef CONFIG_SPL_BUILD
 #include <spl.h>
 
diff --git a/board/engicam/isiotmx6ul/isiotmx6ul.c b/board/engicam/isiotmx6ul/isiotmx6ul.c
index fbf1724..9afa8e4 100644
--- a/board/engicam/isiotmx6ul/isiotmx6ul.c
+++ b/board/engicam/isiotmx6ul/isiotmx6ul.c
@@ -98,17 +98,6 @@ int board_mmc_get_env_dev(int devno)
 }
 #endif
 
-void setenv_fdt_file(void)
-{
-	if (is_mx6ul()) {
-#ifdef CONFIG_ENV_IS_IN_MMC
-		env_set("fdt_file", "imx6ul-isiot-emmc.dtb");
-#else
-		env_set("fdt_file", "imx6ul-isiot-nand.dtb");
-#endif
-	}
-}
-
 #ifdef CONFIG_SPL_BUILD
 #include <spl.h>
 
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [U-Boot] [PATCH 4/6] i.MX6Q: icorem6: Move spl load fit to common/spl
  2017-09-19 18:37 [U-Boot] [PATCH 0/6] i.MX6Q: Add SPL_OF_CONTROL support Jagan Teki
                   ` (2 preceding siblings ...)
  2017-09-19 18:37 ` [U-Boot] [PATCH 3/6] i.MX6: engicam: Move set_fdt_file to common Jagan Teki
@ 2017-09-19 18:37 ` Jagan Teki
  2017-09-19 18:38 ` [U-Boot] [PATCH 5/6] i.MX6Q: icore: Add SPL_OF_CONTROL support Jagan Teki
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: Jagan Teki @ 2017-09-19 18:37 UTC (permalink / raw)
  To: u-boot

From: Jagan Teki <jagan@amarulasolutions.com>

Move spl load fit code into common/spl

Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
---
 board/engicam/common/spl.c              | 16 ++++++++++++++++
 board/engicam/icorem6/icorem6.c         | 12 ------------
 board/engicam/icorem6_rqs/icorem6_rqs.c | 12 ------------
 3 files changed, 16 insertions(+), 24 deletions(-)

diff --git a/board/engicam/common/spl.c b/board/engicam/common/spl.c
index 6964c13..0a79ffd 100644
--- a/board/engicam/common/spl.c
+++ b/board/engicam/common/spl.c
@@ -39,6 +39,22 @@ static iomux_v3_cfg_t const uart_pads[] = {
 #endif
 };
 
+#ifdef CONFIG_SPL_LOAD_FIT
+int board_fit_config_name_match(const char *name)
+{
+        if (is_mx6dq() && !strcmp(name, "imx6q-icore"))
+                return 0;
+        else if (is_mx6dq() && !strcmp(name, "imx6q-icore-rqs"))
+                return 0;
+        else if ((is_mx6dl() || is_mx6solo()) && !strcmp(name, "imx6dl-icore"))
+                return 0;
+        else if ((is_mx6dl() || is_mx6solo()) && !strcmp(name, "imx6dl-icore-rqs"))
+                return 0;
+        else
+                return -1;
+}
+#endif
+
 #ifdef CONFIG_SPL_OS_BOOT
 int spl_start_uboot(void)
 {
diff --git a/board/engicam/icorem6/icorem6.c b/board/engicam/icorem6/icorem6.c
index 59c085b..e173124 100644
--- a/board/engicam/icorem6/icorem6.c
+++ b/board/engicam/icorem6/icorem6.c
@@ -264,16 +264,4 @@ int board_mmc_init(bd_t *bis)
 	return 0;
 }
 #endif
-
-#ifdef CONFIG_SPL_LOAD_FIT
-int board_fit_config_name_match(const char *name)
-{
-	if (is_mx6dq() && !strcmp(name, "imx6q-icore"))
-		return 0;
-	else if ((is_mx6dl() || is_mx6solo()) && !strcmp(name, "imx6dl-icore"))
-		return 0;
-	else
-		return -1;
-}
-#endif
 #endif /* CONFIG_SPL_BUILD */
diff --git a/board/engicam/icorem6_rqs/icorem6_rqs.c b/board/engicam/icorem6_rqs/icorem6_rqs.c
index edf9d086..599cea3 100644
--- a/board/engicam/icorem6_rqs/icorem6_rqs.c
+++ b/board/engicam/icorem6_rqs/icorem6_rqs.c
@@ -148,16 +148,4 @@ void board_boot_order(u32 *spl_boot_list)
 }
 #endif
 #endif
-
-#ifdef CONFIG_SPL_LOAD_FIT
-int board_fit_config_name_match(const char *name)
-{
-	if (is_mx6dq() && !strcmp(name, "imx6q-icore-rqs"))
-		return 0;
-	else if ((is_mx6dl() || is_mx6solo()) && !strcmp(name, "imx6dl-icore-rqs"))
-		return 0;
-	else
-		return -1;
-}
-#endif
 #endif /* CONFIG_SPL_BUILD */
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [U-Boot] [PATCH 5/6] i.MX6Q: icore: Add SPL_OF_CONTROL support
  2017-09-19 18:37 [U-Boot] [PATCH 0/6] i.MX6Q: Add SPL_OF_CONTROL support Jagan Teki
                   ` (3 preceding siblings ...)
  2017-09-19 18:37 ` [U-Boot] [PATCH 4/6] i.MX6Q: icorem6: Move spl load fit to common/spl Jagan Teki
@ 2017-09-19 18:38 ` Jagan Teki
  2017-09-19 18:38 ` [U-Boot] [PATCH 6/6] i.MX6Q: icore: Add imx6q board for icore/icore_rqs Jagan Teki
  2017-10-02 13:29 ` [U-Boot] [PATCH 0/6] i.MX6Q: Add SPL_OF_CONTROL support Stefano Babic
  6 siblings, 0 replies; 8+ messages in thread
From: Jagan Teki @ 2017-09-19 18:38 UTC (permalink / raw)
  To: u-boot

From: Jagan Teki <jagan@amarulasolutions.com>

Add OF_CONTROL support for SPL code.

Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
---
 arch/arm/dts/imx6qdl-icore-rqs.dtsi     |   2 +
 arch/arm/dts/imx6qdl-icore.dtsi         |   2 +
 arch/arm/dts/imx6qdl.dtsi               |   5 ++
 arch/arm/mach-imx/mx6/Kconfig           |   8 +++
 board/engicam/icorem6/icorem6.c         |  75 -----------------------
 board/engicam/icorem6_rqs/icorem6_rqs.c | 102 --------------------------------
 configs/imx6qdl_icore_mmc_defconfig     |   1 +
 configs/imx6qdl_icore_rqs_defconfig     |   1 +
 include/configs/imx6-engicam.h          |  22 +++----
 9 files changed, 31 insertions(+), 187 deletions(-)

diff --git a/arch/arm/dts/imx6qdl-icore-rqs.dtsi b/arch/arm/dts/imx6qdl-icore-rqs.dtsi
index 8b9d5b4..65cbf5a 100644
--- a/arch/arm/dts/imx6qdl-icore-rqs.dtsi
+++ b/arch/arm/dts/imx6qdl-icore-rqs.dtsi
@@ -100,6 +100,7 @@
 };
 
 &usdhc3 {
+	u-boot,dm-spl;
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_usdhc3>;
 	cd-gpios = <&gpio1 1 GPIO_ACTIVE_LOW>;
@@ -165,6 +166,7 @@
 	};
 
 	pinctrl_usdhc3: usdhc3grp {
+		u-boot,dm-spl;
 		fsl,pins = <
 			MX6QDL_PAD_SD3_CMD__SD3_CMD    0x17070
 			MX6QDL_PAD_SD3_CLK__SD3_CLK    0x10070
diff --git a/arch/arm/dts/imx6qdl-icore.dtsi b/arch/arm/dts/imx6qdl-icore.dtsi
index a485c3e..06d9bc3 100644
--- a/arch/arm/dts/imx6qdl-icore.dtsi
+++ b/arch/arm/dts/imx6qdl-icore.dtsi
@@ -118,6 +118,7 @@
 };
 
 &usdhc1 {
+	u-boot,dm-spl;
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_usdhc1>;
 	cd-gpios = <&gpio1 1 GPIO_ACTIVE_LOW>;
@@ -208,6 +209,7 @@
 	};
 
 	pinctrl_usdhc1: usdhc1grp {
+		u-boot,dm-spl;
 		fsl,pins = <
 			MX6QDL_PAD_SD1_CMD__SD1_CMD    0x17070
 			MX6QDL_PAD_SD1_CLK__SD1_CLK    0x10070
diff --git a/arch/arm/dts/imx6qdl.dtsi b/arch/arm/dts/imx6qdl.dtsi
index b13b0b2..e04b570 100644
--- a/arch/arm/dts/imx6qdl.dtsi
+++ b/arch/arm/dts/imx6qdl.dtsi
@@ -77,6 +77,7 @@
 		compatible = "simple-bus";
 		interrupt-parent = <&gpc>;
 		ranges;
+		u-boot,dm-spl;
 
 		dma_apbh: dma-apbh at 00110000 {
 			compatible = "fsl,imx6q-dma-apbh", "fsl,imx28-dma-apbh";
@@ -225,6 +226,7 @@
 			#size-cells = <1>;
 			reg = <0x02000000 0x100000>;
 			ranges;
+			u-boot,dm-spl;
 
 			spba-bus at 02000000 {
 				compatible = "fsl,spba-bus", "simple-bus";
@@ -516,6 +518,7 @@
 				#gpio-cells = <2>;
 				interrupt-controller;
 				#interrupt-cells = <2>;
+				u-boot,dm-spl;
 			};
 
 			gpio2: gpio at 020a0000 {
@@ -805,6 +808,7 @@
 			iomuxc: iomuxc at 020e0000 {
 				compatible = "fsl,imx6dl-iomuxc", "fsl,imx6q-iomuxc";
 				reg = <0x020e0000 0x4000>;
+				u-boot,dm-spl;
 			};
 
 			ldb: ldb at 020e0008 {
@@ -889,6 +893,7 @@
 			#size-cells = <1>;
 			reg = <0x02100000 0x100000>;
 			ranges;
+			u-boot,dm-spl;
 
 			crypto: caam at 2100000 {
 				compatible = "fsl,sec-v4.0";
diff --git a/arch/arm/mach-imx/mx6/Kconfig b/arch/arm/mach-imx/mx6/Kconfig
index 540f2b2..9f2b30c 100644
--- a/arch/arm/mach-imx/mx6/Kconfig
+++ b/arch/arm/mach-imx/mx6/Kconfig
@@ -198,6 +198,10 @@ config TARGET_MX6Q_ICORE
 	select DM_THERMAL
 	select SUPPORT_SPL
 	select SPL_LOAD_FIT
+	select SPL_DM if SPL
+	select SPL_OF_CONTROL if SPL
+	select SPL_SEPARATE_BSS if SPL
+	select SPL_PINCTRL if SPL
 
 config TARGET_MX6Q_ICORE_RQS
 	bool "Support Engicam i.Core RQS"
@@ -213,6 +217,10 @@ config TARGET_MX6Q_ICORE_RQS
 	select DM_THERMAL
 	select SUPPORT_SPL
 	select SPL_LOAD_FIT
+	select SPL_DM if SPL
+	select SPL_OF_CONTROL if SPL
+	select SPL_SEPARATE_BSS if SPL
+	select SPL_PINCTRL if SPL
 
 config TARGET_MX6SABREAUTO
 	bool "mx6sabreauto"
diff --git a/board/engicam/icorem6/icorem6.c b/board/engicam/icorem6/icorem6.c
index e173124..a967ccd 100644
--- a/board/engicam/icorem6/icorem6.c
+++ b/board/engicam/icorem6/icorem6.c
@@ -7,7 +7,6 @@
  */
 
 #include <common.h>
-#include <mmc.h>
 
 #include <asm/io.h>
 #include <asm/gpio.h>
@@ -191,77 +190,3 @@ void setup_display(void)
 	writel(reg, &iomux->gpr[3]);
 }
 #endif /* CONFIG_VIDEO_IPUV3 */
-
-#ifdef CONFIG_SPL_BUILD
-/* MMC board initialization is needed till adding DM support in SPL */
-#if defined(CONFIG_FSL_ESDHC) && !defined(CONFIG_DM_MMC)
-#include <mmc.h>
-#include <fsl_esdhc.h>
-
-#define USDHC_PAD_CTRL (PAD_CTL_PKE | PAD_CTL_PUE |             \
-	PAD_CTL_PUS_22K_UP  | PAD_CTL_SPEED_LOW |               \
-	PAD_CTL_DSE_80ohm   | PAD_CTL_SRE_FAST  | PAD_CTL_HYS)
-
-static iomux_v3_cfg_t const usdhc1_pads[] = {
-	IOMUX_PADS(PAD_SD1_CLK__SD1_CLK	| MUX_PAD_CTRL(USDHC_PAD_CTRL)),
-	IOMUX_PADS(PAD_SD1_CMD__SD1_CMD	| MUX_PAD_CTRL(USDHC_PAD_CTRL)),
-	IOMUX_PADS(PAD_SD1_DAT0__SD1_DATA0 | MUX_PAD_CTRL(USDHC_PAD_CTRL)),
-	IOMUX_PADS(PAD_SD1_DAT1__SD1_DATA1 | MUX_PAD_CTRL(USDHC_PAD_CTRL)),
-	IOMUX_PADS(PAD_SD1_DAT2__SD1_DATA2 | MUX_PAD_CTRL(USDHC_PAD_CTRL)),
-	IOMUX_PADS(PAD_SD1_DAT3__SD1_DATA3 | MUX_PAD_CTRL(USDHC_PAD_CTRL)),
-	IOMUX_PADS(PAD_GPIO_1__GPIO1_IO01 | MUX_PAD_CTRL(NO_PAD_CTRL)),/* CD */
-};
-
-#define USDHC1_CD_GPIO	IMX_GPIO_NR(1, 1)
-
-struct fsl_esdhc_cfg usdhc_cfg[1] = {
-	{USDHC1_BASE_ADDR, 0, 4},
-};
-
-int board_mmc_getcd(struct mmc *mmc)
-{
-	struct fsl_esdhc_cfg *cfg = (struct fsl_esdhc_cfg *)mmc->priv;
-	int ret = 0;
-
-	switch (cfg->esdhc_base) {
-	case USDHC1_BASE_ADDR:
-		ret = !gpio_get_value(USDHC1_CD_GPIO);
-		break;
-	}
-
-	return ret;
-}
-
-int board_mmc_init(bd_t *bis)
-{
-	int i, ret;
-
-	/*
-	* According to the board_mmc_init() the following map is done:
-	* (U-boot device node)    (Physical Port)
-	* mmc0				USDHC1
-	*/
-	for (i = 0; i < CONFIG_SYS_FSL_USDHC_NUM; i++) {
-		switch (i) {
-		case 0:
-			SETUP_IOMUX_PADS(usdhc1_pads);
-			gpio_direction_input(USDHC1_CD_GPIO);
-			usdhc_cfg[0].sdhc_clk = mxc_get_clock(MXC_ESDHC_CLK);
-			break;
-		default:
-			printf("Warning - USDHC%d controller not supporting\n",
-			       i + 1);
-			return 0;
-		}
-
-		ret = fsl_esdhc_initialize(bis, &usdhc_cfg[i]);
-		if (ret) {
-			printf("Warning: failed to initialize mmc dev %d\n", i);
-			return ret;
-		}
-	}
-
-	return 0;
-}
-#endif
-#endif /* CONFIG_SPL_BUILD */
diff --git a/board/engicam/icorem6_rqs/icorem6_rqs.c b/board/engicam/icorem6_rqs/icorem6_rqs.c
index 599cea3..c0a6d4f 100644
--- a/board/engicam/icorem6_rqs/icorem6_rqs.c
+++ b/board/engicam/icorem6_rqs/icorem6_rqs.c
@@ -6,21 +6,7 @@
  * SPDX-License-Identifier:	GPL-2.0+
  */
 
-#include <common.h>
-#include <mmc.h>
-
-#include <asm/io.h>
-#include <asm/gpio.h>
-#include <linux/sizes.h>
-
-#include <asm/arch/clock.h>
-#include <asm/arch/crm_regs.h>
-#include <asm/arch/iomux.h>
-#include <asm/arch/mx6-pins.h>
 #include <asm/arch/sys_proto.h>
-#include <asm/mach-imx/iomux-v3.h>
-
-#include "../common/board.h"
 
 DECLARE_GLOBAL_DATA_PTR;
 
@@ -35,93 +21,6 @@ int board_mmc_get_env_dev(int devno)
 #ifdef CONFIG_SPL_BUILD
 #include <spl.h>
 
-/* MMC board initialization is needed till adding DM support in SPL */
-#if defined(CONFIG_FSL_ESDHC) && !defined(CONFIG_DM_MMC)
-#include <mmc.h>
-#include <fsl_esdhc.h>
-
-#define USDHC_PAD_CTRL (PAD_CTL_PKE | PAD_CTL_PUE |             \
-	PAD_CTL_PUS_47K_UP  | PAD_CTL_SPEED_HIGH |               \
-	PAD_CTL_DSE_40ohm   | PAD_CTL_SRE_FAST  | PAD_CTL_HYS)
-
-static iomux_v3_cfg_t const usdhc3_pads[] = {
-	IOMUX_PADS(PAD_SD3_CLK__SD3_CLK	| MUX_PAD_CTRL(USDHC_PAD_CTRL)),
-	IOMUX_PADS(PAD_SD3_CMD__SD3_CMD	| MUX_PAD_CTRL(USDHC_PAD_CTRL)),
-	IOMUX_PADS(PAD_SD3_DAT0__SD3_DATA0 | MUX_PAD_CTRL(USDHC_PAD_CTRL)),
-	IOMUX_PADS(PAD_SD3_DAT1__SD3_DATA1 | MUX_PAD_CTRL(USDHC_PAD_CTRL)),
-	IOMUX_PADS(PAD_SD3_DAT2__SD3_DATA2 | MUX_PAD_CTRL(USDHC_PAD_CTRL)),
-	IOMUX_PADS(PAD_SD3_DAT3__SD3_DATA3 | MUX_PAD_CTRL(USDHC_PAD_CTRL)),
-};
-
-static iomux_v3_cfg_t const usdhc4_pads[] = {
-	IOMUX_PADS(PAD_SD4_CLK__SD4_CLK | MUX_PAD_CTRL(USDHC_PAD_CTRL)),
-	IOMUX_PADS(PAD_SD4_CMD__SD4_CMD | MUX_PAD_CTRL(USDHC_PAD_CTRL)),
-	IOMUX_PADS(PAD_SD4_DAT0__SD4_DATA0 | MUX_PAD_CTRL(USDHC_PAD_CTRL)),
-	IOMUX_PADS(PAD_SD4_DAT1__SD4_DATA1 | MUX_PAD_CTRL(USDHC_PAD_CTRL)),
-	IOMUX_PADS(PAD_SD4_DAT2__SD4_DATA2 | MUX_PAD_CTRL(USDHC_PAD_CTRL)),
-	IOMUX_PADS(PAD_SD4_DAT3__SD4_DATA3 | MUX_PAD_CTRL(USDHC_PAD_CTRL)),
-	IOMUX_PADS(PAD_SD4_DAT4__SD4_DATA4 | MUX_PAD_CTRL(USDHC_PAD_CTRL)),
-	IOMUX_PADS(PAD_SD4_DAT5__SD4_DATA5 | MUX_PAD_CTRL(USDHC_PAD_CTRL)),
-	IOMUX_PADS(PAD_SD4_DAT6__SD4_DATA6 | MUX_PAD_CTRL(USDHC_PAD_CTRL)),
-	IOMUX_PADS(PAD_SD4_DAT7__SD4_DATA7 | MUX_PAD_CTRL(USDHC_PAD_CTRL)),
-};
-
-struct fsl_esdhc_cfg usdhc_cfg[2] = {
-	{USDHC3_BASE_ADDR, 1, 4},
-	{USDHC4_BASE_ADDR, 1, 8},
-};
-
-int board_mmc_getcd(struct mmc *mmc)
-{
-	struct fsl_esdhc_cfg *cfg = (struct fsl_esdhc_cfg *)mmc->priv;
-	int ret = 0;
-
-	switch (cfg->esdhc_base) {
-	case USDHC3_BASE_ADDR:
-	case USDHC4_BASE_ADDR:
-		ret = 1;
-		break;
-	}
-
-	return ret;
-}
-
-int board_mmc_init(bd_t *bis)
-{
-	int i, ret;
-
-	/*
-	* According to the board_mmc_init() the following map is done:
-	* (U-boot device node)    (Physical Port)
-	* mmc0			USDHC3
-	* mmc1			USDHC4
-	*/
-	for (i = 0; i < CONFIG_SYS_FSL_USDHC_NUM; i++) {
-		switch (i) {
-		case 0:
-			SETUP_IOMUX_PADS(usdhc3_pads);
-			usdhc_cfg[i].sdhc_clk = mxc_get_clock(MXC_ESDHC3_CLK);
-			break;
-		case 1:
-			SETUP_IOMUX_PADS(usdhc4_pads);
-			usdhc_cfg[i].sdhc_clk = mxc_get_clock(MXC_ESDHC4_CLK);
-			break;
-		default:
-			printf("Warning - USDHC%d controller not supporting\n",
-			       i + 1);
-			return 0;
-		}
-
-		ret = fsl_esdhc_initialize(bis, &usdhc_cfg[i]);
-		if (ret) {
-			printf("Warning: failed to initialize mmc dev %d\n", i);
-			return ret;
-		}
-	}
-
-	return 0;
-}
-
 #ifdef CONFIG_ENV_IS_IN_MMC
 void board_boot_order(u32 *spl_boot_list)
 {
@@ -147,5 +46,4 @@ void board_boot_order(u32 *spl_boot_list)
 	spl_boot_list[0] = boot_dev;
 }
 #endif
-#endif
 #endif /* CONFIG_SPL_BUILD */
diff --git a/configs/imx6qdl_icore_mmc_defconfig b/configs/imx6qdl_icore_mmc_defconfig
index 1b001df..221866a 100644
--- a/configs/imx6qdl_icore_mmc_defconfig
+++ b/configs/imx6qdl_icore_mmc_defconfig
@@ -49,3 +49,4 @@ CONFIG_DEBUG_UART_CLOCK=24000000
 CONFIG_MXC_UART=y
 CONFIG_IMX_THERMAL=y
 CONFIG_VIDEO_IPUV3=y
+CONFIG_SYS_MALLOC_F_LEN=0x2000
diff --git a/configs/imx6qdl_icore_rqs_defconfig b/configs/imx6qdl_icore_rqs_defconfig
index a57a992..e6b4dff 100644
--- a/configs/imx6qdl_icore_rqs_defconfig
+++ b/configs/imx6qdl_icore_rqs_defconfig
@@ -41,3 +41,4 @@ CONFIG_FEC_MXC=y
 CONFIG_PINCTRL=y
 CONFIG_PINCTRL_IMX6=y
 CONFIG_MXC_UART=y
+CONFIG_SYS_MALLOC_F_LEN=0x2000
diff --git a/include/configs/imx6-engicam.h b/include/configs/imx6-engicam.h
index c34dc30..ddbd6dd 100644
--- a/include/configs/imx6-engicam.h
+++ b/include/configs/imx6-engicam.h
@@ -219,16 +219,18 @@
 
 # include "imx6_spl.h"
 # ifdef CONFIG_SPL_BUILD
-#  if defined(CONFIG_TARGET_MX6Q_ICORE_RQS) || defined(CONFIG_TARGET_MX6UL_ISIOT)
-#   define CONFIG_SYS_FSL_USDHC_NUM	2
-#  else
-#   define CONFIG_SYS_FSL_USDHC_NUM	1
-#  endif
-
-#  define CONFIG_SYS_FSL_ESDHC_ADDR	0
-#  undef CONFIG_DM_GPIO
-#  undef CONFIG_DM_MMC
-# endif
+#  if defined(CONFIG_IMX6UL)
+#   if defined(CONFIG_TARGET_MX6UL_ISIOT)
+#    define CONFIG_SYS_FSL_USDHC_NUM	2
+#   else
+#    define CONFIG_SYS_FSL_USDHC_NUM	1
+#   endif
+
+#   define CONFIG_SYS_FSL_ESDHC_ADDR	0
+#   undef CONFIG_DM_GPIO
+#   undef CONFIG_DM_MMC
+#  endif /* CONFIG_IMX6UL */
+# endif /* CONFIG_SPL_BUILD */
 #endif
 
 #endif /* __IMX6_ENGICAM_CONFIG_H */
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [U-Boot] [PATCH 6/6] i.MX6Q: icore: Add imx6q board for icore/icore_rqs
  2017-09-19 18:37 [U-Boot] [PATCH 0/6] i.MX6Q: Add SPL_OF_CONTROL support Jagan Teki
                   ` (4 preceding siblings ...)
  2017-09-19 18:38 ` [U-Boot] [PATCH 5/6] i.MX6Q: icore: Add SPL_OF_CONTROL support Jagan Teki
@ 2017-09-19 18:38 ` Jagan Teki
  2017-10-02 13:29 ` [U-Boot] [PATCH 0/6] i.MX6Q: Add SPL_OF_CONTROL support Stefano Babic
  6 siblings, 0 replies; 8+ messages in thread
From: Jagan Teki @ 2017-09-19 18:38 UTC (permalink / raw)
  To: u-boot

From: Jagan Teki <jagan@amarulasolutions.com>

icore and icore_rqs boards are i.MX6QDL SOC type, so
create them as imx6q board and place the code as optimum
as possible.

Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
---
 arch/arm/mach-imx/mx6/Kconfig                      | 24 +----------
 board/engicam/icorem6_rqs/Kconfig                  | 12 ------
 board/engicam/icorem6_rqs/MAINTAINERS              |  9 ----
 board/engicam/icorem6_rqs/Makefile                 |  6 ---
 board/engicam/icorem6_rqs/README                   | 30 -------------
 board/engicam/icorem6_rqs/icorem6_rqs.c            | 49 ----------------------
 board/engicam/{icorem6 => imx6q}/Kconfig           |  2 +-
 board/engicam/{icorem6 => imx6q}/MAINTAINERS       |  8 +++-
 board/engicam/{icorem6 => imx6q}/Makefile          |  2 +-
 board/engicam/{icorem6 => imx6q}/README            |  9 ++--
 board/engicam/{icorem6/icorem6.c => imx6q/imx6q.c} | 41 +++++++++++++++++-
 configs/imx6qdl_icore_rqs_defconfig                |  2 +-
 12 files changed, 56 insertions(+), 138 deletions(-)
 delete mode 100644 board/engicam/icorem6_rqs/Kconfig
 delete mode 100644 board/engicam/icorem6_rqs/MAINTAINERS
 delete mode 100644 board/engicam/icorem6_rqs/Makefile
 delete mode 100644 board/engicam/icorem6_rqs/README
 delete mode 100644 board/engicam/icorem6_rqs/icorem6_rqs.c
 rename board/engicam/{icorem6 => imx6q}/Kconfig (87%)
 rename board/engicam/{icorem6 => imx6q}/MAINTAINERS (58%)
 rename board/engicam/{icorem6 => imx6q}/Makefile (80%)
 rename board/engicam/{icorem6 => imx6q}/README (71%)
 rename board/engicam/{icorem6/icorem6.c => imx6q/imx6q.c} (88%)

diff --git a/arch/arm/mach-imx/mx6/Kconfig b/arch/arm/mach-imx/mx6/Kconfig
index 9f2b30c..412bac7 100644
--- a/arch/arm/mach-imx/mx6/Kconfig
+++ b/arch/arm/mach-imx/mx6/Kconfig
@@ -185,26 +185,7 @@ config TARGET_MX6QARM2
 	bool "mx6qarm2"
 
 config TARGET_MX6Q_ICORE
-	bool "Support Engicam i.Core"
-	select BOARD_LATE_INIT
-	select MX6QDL
-	select OF_CONTROL
-	select SPL_OF_LIBFDT
-	select DM
-	select DM_ETH
-	select DM_GPIO
-	select DM_I2C
-	select DM_MMC
-	select DM_THERMAL
-	select SUPPORT_SPL
-	select SPL_LOAD_FIT
-	select SPL_DM if SPL
-	select SPL_OF_CONTROL if SPL
-	select SPL_SEPARATE_BSS if SPL
-	select SPL_PINCTRL if SPL
-
-config TARGET_MX6Q_ICORE_RQS
-	bool "Support Engicam i.Core RQS"
+	bool "Support Engicam i.Core(RQS)"
 	select BOARD_LATE_INIT
 	select MX6QDL
 	select OF_CONTROL
@@ -439,8 +420,7 @@ source "board/congatec/cgtqmx6eval/Kconfig"
 source "board/el/el6x/Kconfig"
 source "board/embest/mx6boards/Kconfig"
 source "board/engicam/geam6ul/Kconfig"
-source "board/engicam/icorem6/Kconfig"
-source "board/engicam/icorem6_rqs/Kconfig"
+source "board/engicam/imx6q/Kconfig"
 source "board/engicam/isiotmx6ul/Kconfig"
 source "board/freescale/mx6qarm2/Kconfig"
 source "board/freescale/mx6sabreauto/Kconfig"
diff --git a/board/engicam/icorem6_rqs/Kconfig b/board/engicam/icorem6_rqs/Kconfig
deleted file mode 100644
index 6dc3a07..0000000
--- a/board/engicam/icorem6_rqs/Kconfig
+++ /dev/null
@@ -1,12 +0,0 @@
-if TARGET_MX6Q_ICORE_RQS
-
-config SYS_BOARD
-	default "icorem6_rqs"
-
-config SYS_VENDOR
-	default "engicam"
-
-config SYS_CONFIG_NAME
-	default "imx6-engicam"
-
-endif
diff --git a/board/engicam/icorem6_rqs/MAINTAINERS b/board/engicam/icorem6_rqs/MAINTAINERS
deleted file mode 100644
index 9a74265..0000000
--- a/board/engicam/icorem6_rqs/MAINTAINERS
+++ /dev/null
@@ -1,9 +0,0 @@
-ICOREM6QDL_RQS BOARD
-M:	Jagan Teki <jagan@amarulasolutions.com>
-S:	Maintained
-F:	board/engicam/icorem6_rqs
-F:	include/configs/imx6-engicam.h
-F:	configs/imx6qdl_icore_rqs_defconfig
-F:	arch/arm/dts/imx6qdl-icore-rqs.dtsi
-F:	arch/arm/dts/imx6q-icore-rqs.dts
-F:	arch/arm/dts/imx6dl-icore-rqs.dts
diff --git a/board/engicam/icorem6_rqs/Makefile b/board/engicam/icorem6_rqs/Makefile
deleted file mode 100644
index 2e3933c..0000000
--- a/board/engicam/icorem6_rqs/Makefile
+++ /dev/null
@@ -1,6 +0,0 @@
-# Copyright (C) 2016 Amarula Solutions B.V.
-#
-# SPDX-License-Identifier:	GPL-2.0+
-#
-
-obj-y  := icorem6_rqs.o
diff --git a/board/engicam/icorem6_rqs/README b/board/engicam/icorem6_rqs/README
deleted file mode 100644
index 97e978c..0000000
--- a/board/engicam/icorem6_rqs/README
+++ /dev/null
@@ -1,30 +0,0 @@
-How to use U-Boot on Engicam i.CoreM6 RQS Solo/DualLite and Quad/Dual Starter Kit:
-----------------------------------------------------------------------------------
-
-$ make mrproper
-
-- Configure U-Boot for Engicam i.CoreM6 RQS Quad/Dual/Solo/DualLite:
-$ make imx6qdl_icore_rqs_defconfig
-
-- Build U-Boot
-$ make
-
-This will generate the SPL image called SPL and the u-boot-dtb.img.
-
-- Flash the SPL image into the micro SD card:
-
-sudo dd if=SPL of=/dev/mmcblk0 bs=1k seek=1; sync
-
-- Flash the u-boot-dtb.img image into the micro SD card:
-
-sudo dd if=u-boot-dtb.img of=/dev/mmcblk0 bs=1k seek=69; sync
-
-- Jumper settings:
-
-MMC Boot: JM3 Closed
-
-- Connect the Serial cable between the Starter Kit and the PC for the console.
-(J28 is the Linux Serial console connector)
-
-- Insert the micro SD card in the board, power it up and U-Boot messages should
-come up.
diff --git a/board/engicam/icorem6_rqs/icorem6_rqs.c b/board/engicam/icorem6_rqs/icorem6_rqs.c
deleted file mode 100644
index c0a6d4f..0000000
--- a/board/engicam/icorem6_rqs/icorem6_rqs.c
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Copyright (C) 2016 Amarula Solutions B.V.
- * Copyright (C) 2016 Engicam S.r.l.
- * Author: Jagan Teki <jagan@amarulasolutions.com>
- *
- * SPDX-License-Identifier:	GPL-2.0+
- */
-
-#include <asm/arch/sys_proto.h>
-
-DECLARE_GLOBAL_DATA_PTR;
-
-#ifdef CONFIG_ENV_IS_IN_MMC
-int board_mmc_get_env_dev(int devno)
-{
-	/* dev 0 for SD/eSD, dev 1 for MMC/eMMC */
-	return (devno == 3) ? 1 : 0;
-}
-#endif
-
-#ifdef CONFIG_SPL_BUILD
-#include <spl.h>
-
-#ifdef CONFIG_ENV_IS_IN_MMC
-void board_boot_order(u32 *spl_boot_list)
-{
-	u32 bmode = imx6_src_get_boot_mode();
-	u8 boot_dev = BOOT_DEVICE_MMC1;
-
-	switch ((bmode & IMX6_BMODE_MASK) >> IMX6_BMODE_SHIFT) {
-	case IMX6_BMODE_SD:
-	case IMX6_BMODE_ESD:
-		/* SD/eSD - BOOT_DEVICE_MMC1 */
-		break;
-	case IMX6_BMODE_MMC:
-	case IMX6_BMODE_EMMC:
-		/* MMC/eMMC */
-		boot_dev = BOOT_DEVICE_MMC2;
-		break;
-	default:
-		/* Default - BOOT_DEVICE_MMC1 */
-		printf("Wrong board boot order\n");
-		break;
-	}
-
-	spl_boot_list[0] = boot_dev;
-}
-#endif
-#endif /* CONFIG_SPL_BUILD */
diff --git a/board/engicam/icorem6/Kconfig b/board/engicam/imx6q/Kconfig
similarity index 87%
rename from board/engicam/icorem6/Kconfig
rename to board/engicam/imx6q/Kconfig
index 4a1c9ac..bb36425 100644
--- a/board/engicam/icorem6/Kconfig
+++ b/board/engicam/imx6q/Kconfig
@@ -1,7 +1,7 @@
 if TARGET_MX6Q_ICORE
 
 config SYS_BOARD
-	default "icorem6"
+	default "imx6q"
 
 config SYS_VENDOR
 	default "engicam"
diff --git a/board/engicam/icorem6/MAINTAINERS b/board/engicam/imx6q/MAINTAINERS
similarity index 58%
rename from board/engicam/icorem6/MAINTAINERS
rename to board/engicam/imx6q/MAINTAINERS
index a348bdd..18aeb47 100644
--- a/board/engicam/icorem6/MAINTAINERS
+++ b/board/engicam/imx6q/MAINTAINERS
@@ -1,10 +1,14 @@
-ICOREM6QDL BOARD
+IMX6Q ICORE BOARD
 M:	Jagan Teki <jagan@amarulasolutions.com>
 S:	Maintained
-F:	board/engicam/icorem6
+F:	board/engicam/imx6q
 F:	include/configs/imx6-engicam.h
 F:	configs/imx6qdl_icore_mmc_defconfig
 F:	configs/imx6qdl_icore_nand_defconfig
+F:	configs/imx6qdl_icore_rqs_defconfig
 F:	arch/arm/dts/imx6qdl-icore.dtsi
 F:	arch/arm/dts/imx6q-icore.dts
 F:	arch/arm/dts/imx6dl-icore.dts
+F:	arch/arm/dts/imx6qdl-icore-rqs.dtsi
+F:	arch/arm/dts/imx6q-icore-rqs.dts
+F:	arch/arm/dts/imx6dl-icore-rqs.dts
diff --git a/board/engicam/icorem6/Makefile b/board/engicam/imx6q/Makefile
similarity index 80%
rename from board/engicam/icorem6/Makefile
rename to board/engicam/imx6q/Makefile
index 9ec9ecd..ef2fb6a 100644
--- a/board/engicam/icorem6/Makefile
+++ b/board/engicam/imx6q/Makefile
@@ -3,4 +3,4 @@
 # SPDX-License-Identifier:	GPL-2.0+
 #
 
-obj-y  := icorem6.o
+obj-y  := imx6q.o
diff --git a/board/engicam/icorem6/README b/board/engicam/imx6q/README
similarity index 71%
rename from board/engicam/icorem6/README
rename to board/engicam/imx6q/README
index 3779e96..3f3478c 100644
--- a/board/engicam/icorem6/README
+++ b/board/engicam/imx6q/README
@@ -1,11 +1,14 @@
-How to use U-Boot on Engicam i.CoreM6 Solo/DualLite and Quad/Dual Starter Kit:
------------------------------------------------------------------------------
+Hsow to use U-Boot on Engicam i.CoreM6 (RQS) Solo/DualLite/Quad/Dual Starter Kit:
+--------------------------------------------------------------------------------
 
 $ make mrproper
 
-- Configure U-Boot for Engicam i.CoreM6 Quad/Dual/Solo/DualLite:
+- Configure U-Boot for Engicam i.CoreM6 Quad/Duali/Solo/DualLite:
 $ make imx6qdl_icore_mmc_defconfig
 
+- Configure U-Boot for Engicam i.CoreM6 RQS Quad/Duali/Solo/DualLite:
+$ make imx6qdl_icore_rqs_defconfig
+
 - Build U-Boot
 $ make
 
diff --git a/board/engicam/icorem6/icorem6.c b/board/engicam/imx6q/imx6q.c
similarity index 88%
rename from board/engicam/icorem6/icorem6.c
rename to board/engicam/imx6q/imx6q.c
index a967ccd..0600547 100644
--- a/board/engicam/icorem6/icorem6.c
+++ b/board/engicam/imx6q/imx6q.c
@@ -25,13 +25,12 @@
 DECLARE_GLOBAL_DATA_PTR;
 
 #ifdef CONFIG_NAND_MXS
-
 #define GPMI_PAD_CTRL0	(PAD_CTL_PKE | PAD_CTL_PUE | PAD_CTL_PUS_100K_UP)
 #define GPMI_PAD_CTRL1	(PAD_CTL_DSE_40ohm | PAD_CTL_SPEED_MED | \
 			PAD_CTL_SRE_FAST)
 #define GPMI_PAD_CTRL2	(GPMI_PAD_CTRL0 | GPMI_PAD_CTRL1)
 
-iomux_v3_cfg_t gpmi_pads[] = {
+static iomux_v3_cfg_t gpmi_pads[] = {
 	IOMUX_PADS(PAD_NANDF_CLE__NAND_CLE	| MUX_PAD_CTRL(GPMI_PAD_CTRL2)),
 	IOMUX_PADS(PAD_NANDF_ALE__NAND_ALE	| MUX_PAD_CTRL(GPMI_PAD_CTRL2)),
 	IOMUX_PADS(PAD_NANDF_WP_B__NAND_WP_B	| MUX_PAD_CTRL(GPMI_PAD_CTRL2)),
@@ -190,3 +189,41 @@ void setup_display(void)
 	writel(reg, &iomux->gpr[3]);
 }
 #endif /* CONFIG_VIDEO_IPUV3 */
+
+#ifdef CONFIG_ENV_IS_IN_MMC
+int board_mmc_get_env_dev(int devno)
+{
+	/* dev 0 for SD/eSD, dev 1 for MMC/eMMC */
+	return (devno == 3) ? 1 : 0;
+}
+#endif
+
+#ifdef CONFIG_SPL_BUILD
+#include <spl.h>
+
+#ifdef CONFIG_ENV_IS_IN_MMC
+void board_boot_order(u32 *spl_boot_list)
+{
+	u32 bmode = imx6_src_get_boot_mode();
+	u8 boot_dev = BOOT_DEVICE_MMC1;
+
+	switch ((bmode & IMX6_BMODE_MASK) >> IMX6_BMODE_SHIFT) {
+	case IMX6_BMODE_SD:
+	case IMX6_BMODE_ESD:
+		/* SD/eSD - BOOT_DEVICE_MMC1 */
+		break;
+	case IMX6_BMODE_MMC:
+	case IMX6_BMODE_EMMC:
+		/* MMC/eMMC */
+		boot_dev = BOOT_DEVICE_MMC2;
+		break;
+	default:
+		/* Default - BOOT_DEVICE_MMC1 */
+		printf("Wrong board boot order\n");
+		break;
+	}
+
+	spl_boot_list[0] = boot_dev;
+}
+#endif
+#endif /* CONFIG_SPL_BUILD */
diff --git a/configs/imx6qdl_icore_rqs_defconfig b/configs/imx6qdl_icore_rqs_defconfig
index e6b4dff..813201f 100644
--- a/configs/imx6qdl_icore_rqs_defconfig
+++ b/configs/imx6qdl_icore_rqs_defconfig
@@ -3,7 +3,7 @@ CONFIG_ARCH_MX6=y
 CONFIG_SPL_GPIO_SUPPORT=y
 CONFIG_SPL_LIBCOMMON_SUPPORT=y
 CONFIG_SPL_LIBGENERIC_SUPPORT=y
-CONFIG_TARGET_MX6Q_ICORE_RQS=y
+CONFIG_TARGET_MX6Q_ICORE=y
 CONFIG_SPL_SERIAL_SUPPORT=y
 CONFIG_SPL_LIBDISK_SUPPORT=y
 CONFIG_SPL_WATCHDOG_SUPPORT=y
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [U-Boot] [PATCH 0/6] i.MX6Q: Add SPL_OF_CONTROL support
  2017-09-19 18:37 [U-Boot] [PATCH 0/6] i.MX6Q: Add SPL_OF_CONTROL support Jagan Teki
                   ` (5 preceding siblings ...)
  2017-09-19 18:38 ` [U-Boot] [PATCH 6/6] i.MX6Q: icore: Add imx6q board for icore/icore_rqs Jagan Teki
@ 2017-10-02 13:29 ` Stefano Babic
  6 siblings, 0 replies; 8+ messages in thread
From: Stefano Babic @ 2017-10-02 13:29 UTC (permalink / raw)
  To: u-boot

Hi Jagan,

On 19/09/2017 20:37, Jagan Teki wrote:
> From: Jagan Teki <jagan@amarulasolutions.com>
> 
> This series add OF_CONTROL support for SPL on Engicam i.MX6QDL
> boards, along with proper code optimzation changes.
> 
> 
> Jagan Teki (6):
>   i.MX6: engicam: Fix MAINTAINERS/README
>   imx6ul: geam6ul/isiot: Fix to MMC devices
>   i.MX6: engicam: Move set_fdt_file to common
>   i.MX6Q: icorem6: Move spl load fit to common/spl
>   i.MX6Q: icore: Add SPL_OF_CONTROL support
>   i.MX6Q: icore: Add imx6q board for icore/icore_rqs
> 
>  arch/arm/dts/imx6qdl-icore-rqs.dtsi                |   2 +
>  arch/arm/dts/imx6qdl-icore.dtsi                    |   2 +
>  arch/arm/dts/imx6qdl.dtsi                          |   5 +
>  arch/arm/mach-imx/mx6/Kconfig                      |  24 +--
>  board/engicam/common/board.c                       |  24 +++
>  board/engicam/common/board.h                       |   1 -
>  board/engicam/common/spl.c                         |  16 ++
>  board/engicam/geam6ul/MAINTAINERS                  |   2 +-
>  board/engicam/geam6ul/geam6ul.c                    |   6 -
>  board/engicam/icorem6/README                       |  33 ----
>  board/engicam/icorem6_rqs/Kconfig                  |  12 --
>  board/engicam/icorem6_rqs/MAINTAINERS              |   9 --
>  board/engicam/icorem6_rqs/Makefile                 |   6 -
>  board/engicam/icorem6_rqs/icorem6_rqs.c            | 171 ---------------------
>  board/engicam/{icorem6 => imx6q}/Kconfig           |   2 +-
>  board/engicam/{icorem6 => imx6q}/MAINTAINERS       |  10 +-
>  board/engicam/{icorem6 => imx6q}/Makefile          |   2 +-
>  board/engicam/{icorem6_rqs => imx6q}/README        |  12 +-
>  board/engicam/{icorem6/icorem6.c => imx6q/imx6q.c} | 108 +++----------
>  board/engicam/isiotmx6ul/MAINTAINERS               |   2 +-
>  board/engicam/isiotmx6ul/isiotmx6ul.c              |  11 --
>  configs/imx6qdl_icore_mmc_defconfig                |   1 +
>  configs/imx6qdl_icore_rqs_defconfig                |   3 +-
>  configs/imx6ul_geam_mmc_defconfig                  |   1 -
>  configs/imx6ul_isiot_emmc_defconfig                |   1 -
>  configs/imx6ul_isiot_mmc_defconfig                 |   1 -
>  include/configs/imx6-engicam.h                     |  22 +--
>  27 files changed, 112 insertions(+), 377 deletions(-)
>  delete mode 100644 board/engicam/icorem6/README
>  delete mode 100644 board/engicam/icorem6_rqs/Kconfig
>  delete mode 100644 board/engicam/icorem6_rqs/MAINTAINERS
>  delete mode 100644 board/engicam/icorem6_rqs/Makefile
>  delete mode 100644 board/engicam/icorem6_rqs/icorem6_rqs.c
>  rename board/engicam/{icorem6 => imx6q}/Kconfig (87%)
>  rename board/engicam/{icorem6 => imx6q}/MAINTAINERS (51%)
>  rename board/engicam/{icorem6 => imx6q}/Makefile (80%)
>  rename board/engicam/{icorem6_rqs => imx6q}/README (68%)
>  rename board/engicam/{icorem6/icorem6.c => imx6q/imx6q.c} (73%)
> 

I cannot build your boards when I apply the patchset
(CONFIG_SYS_FSL_ESDHC_ADDR is away now):


Building current source for 8 boards (8 threads, 1 job per thread)
       arm:  +   imx6ul_isiot_emmc
+drivers/mmc/fsl_esdhc.c: In function 'fsl_esdhc_mmc_init':
+drivers/mmc/fsl_esdhc.c:934:20: error: 'CONFIG_SYS_FSL_ESDHC_ADDR'
undeclared (first use in this function)
+  cfg->esdhc_base = CONFIG_SYS_FSL_ESDHC_ADDR;
+                    ^
+drivers/mmc/fsl_esdhc.c:934:20: note: each undeclared identifier is
reported only once for each function it appears in
+make[4]: *** [spl/drivers/mmc/fsl_esdhc.o] Error 1
+make[3]: *** [spl/drivers/mmc] Error 2
+make[2]: *** [spl/drivers] Error 2
+make[1]: *** [spl/u-boot-spl] Error 2
+make: *** [sub-make] Error 2
       arm:  +   imx6ul_geam_mmc
+drivers/mmc/fsl_esdhc.c: In function 'fsl_esdhc_mmc_init':
+drivers/mmc/fsl_esdhc.c:934:20: error: 'CONFIG_SYS_FSL_ESDHC_ADDR'
undeclared (first use in this function)
+  cfg->esdhc_base = CONFIG_SYS_FSL_ESDHC_ADDR;
+                    ^
+drivers/mmc/fsl_esdhc.c:934:20: note: each undeclared identifier is
reported only once for each function it appears in
+make[4]: *** [spl/drivers/mmc/fsl_esdhc.o] Error 1
+make[3]: *** [spl/drivers/mmc] Error 2
+make[2]: *** [spl/drivers] Error 2
+make[1]: *** [spl/u-boot-spl] Error 2
+make: *** [sub-make] Error 2
       arm:  +   imx6ul_isiot_mmc
+drivers/mmc/fsl_esdhc.c: In function 'fsl_esdhc_mmc_init':
+drivers/mmc/fsl_esdhc.c:934:20: error: 'CONFIG_SYS_FSL_ESDHC_ADDR'
undeclared (first use in this function)
+  cfg->esdhc_base = CONFIG_SYS_FSL_ESDHC_ADDR;

Could you take a look, please ?

Thanks,
Stefano

-- 
=====================================================================
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2017-10-02 13:29 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-09-19 18:37 [U-Boot] [PATCH 0/6] i.MX6Q: Add SPL_OF_CONTROL support Jagan Teki
2017-09-19 18:37 ` [U-Boot] [PATCH 1/6] i.MX6: engicam: Fix MAINTAINERS/README Jagan Teki
2017-09-19 18:37 ` [U-Boot] [PATCH 2/6] imx6ul: geam6ul/isiot: Fix to MMC devices Jagan Teki
2017-09-19 18:37 ` [U-Boot] [PATCH 3/6] i.MX6: engicam: Move set_fdt_file to common Jagan Teki
2017-09-19 18:37 ` [U-Boot] [PATCH 4/6] i.MX6Q: icorem6: Move spl load fit to common/spl Jagan Teki
2017-09-19 18:38 ` [U-Boot] [PATCH 5/6] i.MX6Q: icore: Add SPL_OF_CONTROL support Jagan Teki
2017-09-19 18:38 ` [U-Boot] [PATCH 6/6] i.MX6Q: icore: Add imx6q board for icore/icore_rqs Jagan Teki
2017-10-02 13:29 ` [U-Boot] [PATCH 0/6] i.MX6Q: Add SPL_OF_CONTROL support Stefano Babic

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox