All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/5] wandboard: Fix detection for mx6q/mx6dl revD1 revariants
@ 2020-04-17  0:10 Fabio Estevam
  2020-04-17  0:10 ` [PATCH 2/5] pmic: pfuze100: Change error message level to debug Fabio Estevam
                   ` (4 more replies)
  0 siblings, 5 replies; 7+ messages in thread
From: Fabio Estevam @ 2020-04-17  0:10 UTC (permalink / raw)
  To: u-boot

The detection of the revD1 version is based on the presence of the PMIC.

Currently revb1 device trees are used for mx6q/mx6dl variants, which
do not have the PMIC nodes.

This causes revD1 boards to be incorrectly be detected as revB1.

Use the revd1 device trees, so that the PMIC node can be found and
then the PMIC can be detected by reading its register ID.

Reported-by: Heiko Schocher <hs@denx.de>
Reported-by: Derek Atkins <derek@ihtfp.com>
Signed-off-by: Fabio Estevam <festevam@gmail.com>
---
Hi Heiko,

Could you please try this on your mx6dl wandboard revD1 board?

I recall you reported this issue sometime ago.

Derek tested this on his mx6q wandboard revD1 board and it worked
fine.

I have also tested it on a revB1 and the version is properly
detected.

Thanks

 arch/arm/dts/Makefile                                         | 4 ++--
 ...{imx6dl-wandboard-revb1.dts => imx6dl-wandboard-revd1.dts} | 4 ++--
 .../{imx6q-wandboard-revb1.dts => imx6q-wandboard-revd1.dts}  | 4 ++--
 configs/wandboard_defconfig                                   | 4 ++--
 4 files changed, 8 insertions(+), 8 deletions(-)
 rename arch/arm/dts/{imx6dl-wandboard-revb1.dts => imx6dl-wandboard-revd1.dts} (78%)
 rename arch/arm/dts/{imx6q-wandboard-revb1.dts => imx6q-wandboard-revd1.dts} (80%)

diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
index 820ee9733a..2a71917c92 100644
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
@@ -622,7 +622,7 @@ dtb-y += \
 	imx6dl-pico.dtb \
 	imx6dl-sabreauto.dtb \
 	imx6dl-sabresd.dtb \
-	imx6dl-wandboard-revb1.dtb \
+	imx6dl-wandboard-revd1.dtb \
 
 endif
 
@@ -654,7 +654,7 @@ dtb-y += \
 	imx6q-sabrelite.dtb \
 	imx6q-sabresd.dtb \
 	imx6q-tbs2910.dtb \
-	imx6q-wandboard-revb1.dtb \
+	imx6q-wandboard-revd1.dtb \
 	imx6qp-sabreauto.dtb \
 	imx6qp-sabresd.dtb \
 	imx6qp-wandboard-revd1.dtb \
diff --git a/arch/arm/dts/imx6dl-wandboard-revb1.dts b/arch/arm/dts/imx6dl-wandboard-revd1.dts
similarity index 78%
rename from arch/arm/dts/imx6dl-wandboard-revb1.dts
rename to arch/arm/dts/imx6dl-wandboard-revd1.dts
index c2946fbaa0..6d1d863c2e 100644
--- a/arch/arm/dts/imx6dl-wandboard-revb1.dts
+++ b/arch/arm/dts/imx6dl-wandboard-revd1.dts
@@ -6,10 +6,10 @@
  */
 /dts-v1/;
 #include "imx6dl.dtsi"
-#include "imx6qdl-wandboard-revb1.dtsi"
+#include "imx6qdl-wandboard-revd1.dtsi"
 
 / {
-	model = "Wandboard i.MX6 Dual Lite Board rev B1";
+	model = "Wandboard i.MX6 Dual Lite Board revD1";
 	compatible = "wand,imx6dl-wandboard", "fsl,imx6dl";
 
 	memory at 10000000 {
diff --git a/arch/arm/dts/imx6q-wandboard-revb1.dts b/arch/arm/dts/imx6q-wandboard-revd1.dts
similarity index 80%
rename from arch/arm/dts/imx6q-wandboard-revb1.dts
rename to arch/arm/dts/imx6q-wandboard-revd1.dts
index f6ccbecff9..55331021d8 100644
--- a/arch/arm/dts/imx6q-wandboard-revb1.dts
+++ b/arch/arm/dts/imx6q-wandboard-revd1.dts
@@ -6,10 +6,10 @@
  */
 /dts-v1/;
 #include "imx6q.dtsi"
-#include "imx6qdl-wandboard-revb1.dtsi"
+#include "imx6qdl-wandboard-revd1.dtsi"
 
 / {
-	model = "Wandboard i.MX6 Quad Board rev B1";
+	model = "Wandboard i.MX6 Quad Board revD1";
 	compatible = "wand,imx6q-wandboard", "fsl,imx6q";
 
 	memory at 10000000 {
diff --git a/configs/wandboard_defconfig b/configs/wandboard_defconfig
index 82e517b90f..ee70758f3a 100644
--- a/configs/wandboard_defconfig
+++ b/configs/wandboard_defconfig
@@ -46,8 +46,8 @@ CONFIG_CMD_BMP=y
 CONFIG_CMD_CACHE=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_OF_CONTROL=y
-CONFIG_DEFAULT_DEVICE_TREE="imx6dl-wandboard-revb1"
-CONFIG_OF_LIST="imx6q-wandboard-revb1 imx6qp-wandboard-revd1 imx6dl-wandboard-revb1"
+CONFIG_DEFAULT_DEVICE_TREE="imx6dl-wandboard-revd1"
+CONFIG_OF_LIST="imx6q-wandboard-revd1 imx6qp-wandboard-revd1 imx6dl-wandboard-revd1"
 CONFIG_MULTI_DTB_FIT=y
 CONFIG_ENV_IS_IN_MMC=y
 CONFIG_SYS_RELOC_GD_ENV_ADDR=y
-- 
2.17.1

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

* [PATCH 2/5] pmic: pfuze100: Change error message level to debug
  2020-04-17  0:10 [PATCH 1/5] wandboard: Fix detection for mx6q/mx6dl revD1 revariants Fabio Estevam
@ 2020-04-17  0:10 ` Fabio Estevam
  2020-04-17  0:10 ` [PATCH v3 2/2] wandboard: Remove repeated PMIC string Fabio Estevam
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 7+ messages in thread
From: Fabio Estevam @ 2020-04-17  0:10 UTC (permalink / raw)
  To: u-boot

On systems that can run on multiple board variants, such as wandboard,
which versions with and without the PMIC populated, it is not useful
to get PMIC error on systems that do not have the PMIC populated.

Change error message level to debug instead.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
---
 drivers/power/pmic/pfuze100.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/power/pmic/pfuze100.c b/drivers/power/pmic/pfuze100.c
index 6cf5f35f0f..db630f3ad0 100644
--- a/drivers/power/pmic/pfuze100.c
+++ b/drivers/power/pmic/pfuze100.c
@@ -41,7 +41,7 @@ static int pfuze100_write(struct udevice *dev, uint reg, const uint8_t *buff,
 static int pfuze100_read(struct udevice *dev, uint reg, uint8_t *buff, int len)
 {
 	if (dm_i2c_read(dev, reg, buff, len)) {
-		pr_err("read error from device: %p register: %#x!\n", dev, reg);
+		debug("read error from device: %p register: %#x!\n", dev, reg);
 		return -EIO;
 	}
 
-- 
2.17.1

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

* [PATCH v3 2/2] wandboard: Remove repeated PMIC string
  2020-04-17  0:10 [PATCH 1/5] wandboard: Fix detection for mx6q/mx6dl revD1 revariants Fabio Estevam
  2020-04-17  0:10 ` [PATCH 2/5] pmic: pfuze100: Change error message level to debug Fabio Estevam
@ 2020-04-17  0:10 ` Fabio Estevam
  2020-04-17  0:10 ` [PATCH 4/5] wandboard: Remove CONFIG_DISPLAY_BOARDINFO_LATE Fabio Estevam
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 7+ messages in thread
From: Fabio Estevam @ 2020-04-17  0:10 UTC (permalink / raw)
  To: u-boot

After the conversion to DM_PMIC the following output is seen:

PMIC:  PMIC:  PFUZE100 ID=0x10

Remove the unnecessary PMIC string from the board file to
avoid the repetead string.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
---
Changes since v2:
- None

 board/wandboard/wandboard.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/board/wandboard/wandboard.c b/board/wandboard/wandboard.c
index 7209cc8211..e386ad2cc1 100644
--- a/board/wandboard/wandboard.c
+++ b/board/wandboard/wandboard.c
@@ -361,8 +361,6 @@ int power_init_board(void)
 	struct udevice *dev;
 	int reg, ret;
 
-	puts("PMIC:  ");
-
 	ret = pmic_get("pfuze100 at 8", &dev);
 	if (ret < 0) {
 		printf("pmic_get() ret %d\n", ret);
-- 
2.17.1

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

* [PATCH 4/5] wandboard: Remove CONFIG_DISPLAY_BOARDINFO_LATE
  2020-04-17  0:10 [PATCH 1/5] wandboard: Fix detection for mx6q/mx6dl revD1 revariants Fabio Estevam
  2020-04-17  0:10 ` [PATCH 2/5] pmic: pfuze100: Change error message level to debug Fabio Estevam
  2020-04-17  0:10 ` [PATCH v3 2/2] wandboard: Remove repeated PMIC string Fabio Estevam
@ 2020-04-17  0:10 ` Fabio Estevam
  2020-04-17  0:10 ` [PATCH 5/5] wandboard: Remove checkboard() Fabio Estevam
  2020-04-17  0:14 ` [PATCH 1/5] wandboard: Fix detection for mx6q/mx6dl revD1 revariants Fabio Estevam
  4 siblings, 0 replies; 7+ messages in thread
From: Fabio Estevam @ 2020-04-17  0:10 UTC (permalink / raw)
  To: u-boot

Since we are using revD1 device tree for all board revisions, the
following can be seen on a revB1 board:

Model: Wandboard i.MX6 Quad Board revD1
Board: Wandboard rev B1

To avoid such confusing messages, disable CONFIG_DISPLAY_BOARDINFO_LATE.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
---
 configs/wandboard_defconfig | 1 -
 1 file changed, 1 deletion(-)

diff --git a/configs/wandboard_defconfig b/configs/wandboard_defconfig
index ee70758f3a..f9a5fe479b 100644
--- a/configs/wandboard_defconfig
+++ b/configs/wandboard_defconfig
@@ -29,7 +29,6 @@ CONFIG_BOOTCOMMAND="run findfdt; run finduuid; run distro_bootcmd"
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
 CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 # CONFIG_DISPLAY_BOARDINFO is not set
-CONFIG_DISPLAY_BOARDINFO_LATE=y
 CONFIG_BOUNCE_BUFFER=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_SPL_SEPARATE_BSS=y
-- 
2.17.1

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

* [PATCH 5/5] wandboard: Remove checkboard()
  2020-04-17  0:10 [PATCH 1/5] wandboard: Fix detection for mx6q/mx6dl revD1 revariants Fabio Estevam
                   ` (2 preceding siblings ...)
  2020-04-17  0:10 ` [PATCH 4/5] wandboard: Remove CONFIG_DISPLAY_BOARDINFO_LATE Fabio Estevam
@ 2020-04-17  0:10 ` Fabio Estevam
  2020-04-17  0:14 ` [PATCH 1/5] wandboard: Fix detection for mx6q/mx6dl revD1 revariants Fabio Estevam
  4 siblings, 0 replies; 7+ messages in thread
From: Fabio Estevam @ 2020-04-17  0:10 UTC (permalink / raw)
  To: u-boot

Since the variant revision is no longer show, simply get rid
of checkboard().

Move the gpio_request() prior to its usage.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
---
 board/wandboard/wandboard.c | 15 +--------------
 1 file changed, 1 insertion(+), 14 deletions(-)

diff --git a/board/wandboard/wandboard.c b/board/wandboard/wandboard.c
index df454d8f17..bb1ffd87e1 100644
--- a/board/wandboard/wandboard.c
+++ b/board/wandboard/wandboard.c
@@ -404,6 +404,7 @@ static const struct boot_mode board_boot_modes[] = {
 static bool is_revc1(void)
 {
 	SETUP_IOMUX_PADS(rev_detection_pad);
+	gpio_request(REV_DETECTION, "REV_DETECT");
 	gpio_direction_input(REV_DETECTION);
 
 	if (gpio_get_value(REV_DETECTION))
@@ -466,20 +467,6 @@ int board_init(void)
 	return 0;
 }
 
-int checkboard(void)
-{
-	gpio_request(REV_DETECTION, "REV_DETECT");
-
-	if (is_revd1())
-		puts("Board: Wandboard rev D1\n");
-	else if (is_revc1())
-		puts("Board: Wandboard rev C1\n");
-	else
-		puts("Board: Wandboard rev B1\n");
-
-	return 0;
-}
-
 #ifdef CONFIG_SPL_LOAD_FIT
 int board_fit_config_name_match(const char *name)
 {
-- 
2.17.1

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

* [PATCH 1/5] wandboard: Fix detection for mx6q/mx6dl revD1 revariants
  2020-04-17  0:10 [PATCH 1/5] wandboard: Fix detection for mx6q/mx6dl revD1 revariants Fabio Estevam
                   ` (3 preceding siblings ...)
  2020-04-17  0:10 ` [PATCH 5/5] wandboard: Remove checkboard() Fabio Estevam
@ 2020-04-17  0:14 ` Fabio Estevam
  4 siblings, 0 replies; 7+ messages in thread
From: Fabio Estevam @ 2020-04-17  0:14 UTC (permalink / raw)
  To: u-boot

Sorry for sending this twice.

The first submission had the wrong patch 3/5.

On Thu, Apr 16, 2020 at 9:10 PM Fabio Estevam <festevam@gmail.com> wrote:
>
> The detection of the revD1 version is based on the presence of the PMIC.
>
> Currently revb1 device trees are used for mx6q/mx6dl variants, which
> do not have the PMIC nodes.
>
> This causes revD1 boards to be incorrectly be detected as revB1.
>
> Use the revd1 device trees, so that the PMIC node can be found and
> then the PMIC can be detected by reading its register ID.
>
> Reported-by: Heiko Schocher <hs@denx.de>
> Reported-by: Derek Atkins <derek@ihtfp.com>
> Signed-off-by: Fabio Estevam <festevam@gmail.com>
> ---
> Hi Heiko,
>
> Could you please try this on your mx6dl wandboard revD1 board?
>
> I recall you reported this issue sometime ago.
>
> Derek tested this on his mx6q wandboard revD1 board and it worked
> fine.
>
> I have also tested it on a revB1 and the version is properly
> detected.
>
> Thanks
>
>  arch/arm/dts/Makefile                                         | 4 ++--
>  ...{imx6dl-wandboard-revb1.dts => imx6dl-wandboard-revd1.dts} | 4 ++--
>  .../{imx6q-wandboard-revb1.dts => imx6q-wandboard-revd1.dts}  | 4 ++--
>  configs/wandboard_defconfig                                   | 4 ++--
>  4 files changed, 8 insertions(+), 8 deletions(-)
>  rename arch/arm/dts/{imx6dl-wandboard-revb1.dts => imx6dl-wandboard-revd1.dts} (78%)
>  rename arch/arm/dts/{imx6q-wandboard-revb1.dts => imx6q-wandboard-revd1.dts} (80%)
>
> diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
> index 820ee9733a..2a71917c92 100644
> --- a/arch/arm/dts/Makefile
> +++ b/arch/arm/dts/Makefile
> @@ -622,7 +622,7 @@ dtb-y += \
>         imx6dl-pico.dtb \
>         imx6dl-sabreauto.dtb \
>         imx6dl-sabresd.dtb \
> -       imx6dl-wandboard-revb1.dtb \
> +       imx6dl-wandboard-revd1.dtb \
>
>  endif
>
> @@ -654,7 +654,7 @@ dtb-y += \
>         imx6q-sabrelite.dtb \
>         imx6q-sabresd.dtb \
>         imx6q-tbs2910.dtb \
> -       imx6q-wandboard-revb1.dtb \
> +       imx6q-wandboard-revd1.dtb \
>         imx6qp-sabreauto.dtb \
>         imx6qp-sabresd.dtb \
>         imx6qp-wandboard-revd1.dtb \
> diff --git a/arch/arm/dts/imx6dl-wandboard-revb1.dts b/arch/arm/dts/imx6dl-wandboard-revd1.dts
> similarity index 78%
> rename from arch/arm/dts/imx6dl-wandboard-revb1.dts
> rename to arch/arm/dts/imx6dl-wandboard-revd1.dts
> index c2946fbaa0..6d1d863c2e 100644
> --- a/arch/arm/dts/imx6dl-wandboard-revb1.dts
> +++ b/arch/arm/dts/imx6dl-wandboard-revd1.dts
> @@ -6,10 +6,10 @@
>   */
>  /dts-v1/;
>  #include "imx6dl.dtsi"
> -#include "imx6qdl-wandboard-revb1.dtsi"
> +#include "imx6qdl-wandboard-revd1.dtsi"
>
>  / {
> -       model = "Wandboard i.MX6 Dual Lite Board rev B1";
> +       model = "Wandboard i.MX6 Dual Lite Board revD1";
>         compatible = "wand,imx6dl-wandboard", "fsl,imx6dl";
>
>         memory at 10000000 {
> diff --git a/arch/arm/dts/imx6q-wandboard-revb1.dts b/arch/arm/dts/imx6q-wandboard-revd1.dts
> similarity index 80%
> rename from arch/arm/dts/imx6q-wandboard-revb1.dts
> rename to arch/arm/dts/imx6q-wandboard-revd1.dts
> index f6ccbecff9..55331021d8 100644
> --- a/arch/arm/dts/imx6q-wandboard-revb1.dts
> +++ b/arch/arm/dts/imx6q-wandboard-revd1.dts
> @@ -6,10 +6,10 @@
>   */
>  /dts-v1/;
>  #include "imx6q.dtsi"
> -#include "imx6qdl-wandboard-revb1.dtsi"
> +#include "imx6qdl-wandboard-revd1.dtsi"
>
>  / {
> -       model = "Wandboard i.MX6 Quad Board rev B1";
> +       model = "Wandboard i.MX6 Quad Board revD1";
>         compatible = "wand,imx6q-wandboard", "fsl,imx6q";
>
>         memory at 10000000 {
> diff --git a/configs/wandboard_defconfig b/configs/wandboard_defconfig
> index 82e517b90f..ee70758f3a 100644
> --- a/configs/wandboard_defconfig
> +++ b/configs/wandboard_defconfig
> @@ -46,8 +46,8 @@ CONFIG_CMD_BMP=y
>  CONFIG_CMD_CACHE=y
>  CONFIG_CMD_EXT4_WRITE=y
>  CONFIG_OF_CONTROL=y
> -CONFIG_DEFAULT_DEVICE_TREE="imx6dl-wandboard-revb1"
> -CONFIG_OF_LIST="imx6q-wandboard-revb1 imx6qp-wandboard-revd1 imx6dl-wandboard-revb1"
> +CONFIG_DEFAULT_DEVICE_TREE="imx6dl-wandboard-revd1"
> +CONFIG_OF_LIST="imx6q-wandboard-revd1 imx6qp-wandboard-revd1 imx6dl-wandboard-revd1"
>  CONFIG_MULTI_DTB_FIT=y
>  CONFIG_ENV_IS_IN_MMC=y
>  CONFIG_SYS_RELOC_GD_ENV_ADDR=y
> --
> 2.17.1
>

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

* [PATCH 2/5] pmic: pfuze100: Change error message level to debug
  2020-04-17  0:12 Fabio Estevam
@ 2020-04-17  0:12 ` Fabio Estevam
  0 siblings, 0 replies; 7+ messages in thread
From: Fabio Estevam @ 2020-04-17  0:12 UTC (permalink / raw)
  To: u-boot

On systems that can run on multiple board variants, such as wandboard,
which versions with and without the PMIC populated, it is not useful
to get PMIC error on systems that do not have the PMIC populated.

Change error message level to debug instead.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
---
 drivers/power/pmic/pfuze100.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/power/pmic/pfuze100.c b/drivers/power/pmic/pfuze100.c
index 6cf5f35f0f..db630f3ad0 100644
--- a/drivers/power/pmic/pfuze100.c
+++ b/drivers/power/pmic/pfuze100.c
@@ -41,7 +41,7 @@ static int pfuze100_write(struct udevice *dev, uint reg, const uint8_t *buff,
 static int pfuze100_read(struct udevice *dev, uint reg, uint8_t *buff, int len)
 {
 	if (dm_i2c_read(dev, reg, buff, len)) {
-		pr_err("read error from device: %p register: %#x!\n", dev, reg);
+		debug("read error from device: %p register: %#x!\n", dev, reg);
 		return -EIO;
 	}
 
-- 
2.17.1

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

end of thread, other threads:[~2020-04-17  0:14 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-17  0:10 [PATCH 1/5] wandboard: Fix detection for mx6q/mx6dl revD1 revariants Fabio Estevam
2020-04-17  0:10 ` [PATCH 2/5] pmic: pfuze100: Change error message level to debug Fabio Estevam
2020-04-17  0:10 ` [PATCH v3 2/2] wandboard: Remove repeated PMIC string Fabio Estevam
2020-04-17  0:10 ` [PATCH 4/5] wandboard: Remove CONFIG_DISPLAY_BOARDINFO_LATE Fabio Estevam
2020-04-17  0:10 ` [PATCH 5/5] wandboard: Remove checkboard() Fabio Estevam
2020-04-17  0:14 ` [PATCH 1/5] wandboard: Fix detection for mx6q/mx6dl revD1 revariants Fabio Estevam
2020-04-17  0:12 Fabio Estevam
2020-04-17  0:12 ` [PATCH 2/5] pmic: pfuze100: Change error message level to debug Fabio Estevam

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.