IMX8MM Custom board uuu tool issue

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

IMX8MM Custom board uuu tool issue

2,112件の閲覧回数
Dhevan
Contributor IV

Hi,

      We have received our custom imx8mm board.

      Imx8mm evk used uart2 for debug purpose our custom board uart1 we have used for our debug purpose changes done from uboot code referred (https://community.nxp.com/t5/i-MX-Processors/Question-i-MX8M-serial-debug-console-ports/td-p/769867).

     Our custom board we have used pca9450 pmic but that changes does not done from uboot code.

     We are expecting uboot needs to prints some error message from uart1 debug console.

     Uart1 modified from uboot sources.

     using uuu tool trying to flash the board as flashing but it stuck in flash only.

      Our customized uboot bin file placed into uuu tool.

     uuu.PNG

      1) why it stucks there only ?

      2) Without pmic configuration it won't print ?

      3) Evk board it contains typec port but our design used usb otg needs to done any changes ?

 

Thanks & Regards,

        Vasu

0 件の賞賛
返信
11 返答(返信)

2,100件の閲覧回数
AldoG
NXP TechSupport
NXP TechSupport

Hello,

Please try running in verbose mode, you'll need to use the -v
i.e.
sudo ./uuu -v imx-boot-imx8mmevk-sd.bin-flash_evk

please share the tool output.

Regarding 2 & 3, it should print, even so please try to changing the configuration for uboot with no type-C, you may refer to the following:
https://community.nxp.com/t5/i-MX-Processors/Question-i-MX8M-serial-debug-console-ports/td-p/769867

Best regards,
Aldo.

0 件の賞賛
返信

2,087件の閲覧回数
Dhevan
Contributor IV

Hi,

       Our custom board imx8m mini evk uboot bin file flashing fine but debug won't print because evk used uart2 for debug.

       Uboot debug uart1 code modified after that uuu tool stucks there only.

       uart1 and uuu tool any relation is there ?

       How to solve the mentioned issue ?

Thanks & Regards,

        Vasu

      

0 件の賞賛
返信

1,996件の閲覧回数
BiyongSUN
NXP Employee
NXP Employee

please use uuu -s    or  uuu -v  to get more information.

0 件の賞賛
返信

1,998件の閲覧回数
BiyongSUN
NXP Employee
NXP Employee

Please check the following link to see if it can help.

How to Change i.MX8MM evk Linux Debug UART
https://community.nxp.com/t5/i-MX-Community-Articles/How-to-Change-i-MX8MM-evk-Linux-Debug-UART/ba-p...

 

 

0 件の賞賛
返信

2,067件の閲覧回数
AldoG
NXP TechSupport
NXP TechSupport

Hello,

There should be no relation from changing UART port for debug and UUU, I would like to ask if for this custom  board you have run DDR stress tool?

Since this may be the problem, UUU needs uboot to start correctly to download and flash the image.

You'll find the DDR tool here and a guide for it as well:
https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/i-MX-8M-Family-DDR-Tool-Release/ta-p/110...
 
Also, please add PMIC configuration as well, please let me know if you need a guide for this.

Best regards,
Aldo.

0 件の賞賛
返信

2,054件の閲覧回数
Dhevan
Contributor IV

Hi @AldoG,

        If we use uart2 log printing fine am able to see pmic error.

        After the pca9450 code ported to both uboot, kernel after that pmic error gone.

        DDR stress test need to check in custom board.

        @pmic if you have any document please share with me that will be useful to check pmic configured properly.

        Please share proper uart1 changes in uboot code than again we will flash and check (note uart2 printing fine).

Thanks & Regards,

       Vasu

0 件の賞賛
返信

2,033件の閲覧回数
AldoG
NXP TechSupport
NXP TechSupport

Hello,

Please correct me if I'm wrong, if you undo changes to UART port, please have pmic changes as well so uboot does not abort, and load this uboot to your board using UUU, does it flash successfully?

Unfortunately it is hard to say what is the problem since in your board there is no debug output, so it could be that DDR or PMIC initialization fails.

Please note that EVK will boot since parameters for DDR and PMIC are already in the done.

I'll share the changes needed as soon as I have them.

Best regards,
Aldo.

0 件の賞賛
返信

2,017件の閲覧回数
Dhevan
Contributor IV

Hi @AldoG,

      Even trough pmic error uart2 printing error but same uart1 does not printing not even flashing also.

      pmic configured uboot and kernel, rootfs booting fine.

      Uart2 tampered from our custom board actual debug connector will be uart1.

      In order use uart1 for debug port what are the exact changes needs done from uboot code ?

 

Thanks & Regards,

       Vasu

0 件の賞賛
返信

1,977件の閲覧回数
AldoG
NXP TechSupport
NXP TechSupport

Hi @Dhevan,

PMIC changes needed for uboot for PCA9450 are as following, for the UART changes you may refer to the answer by biyong.

In the “./include/configs/” directory
Modify imx8mm_evk.h to remove bd71837 and add pca9450

https://source.codeaurora.org/external/imx/uboot-imx/tree/include/configs/imx8mm_evk.h?h=imx_v2020.0...

#undef CONFIG_POWER_BD71837
#define CONFIG_POWER_PCA9450

In the “./arch/arm/dts/” directory change the fsl-imx8mm-evk.dts
https://source.codeaurora.org/external/imx/uboot-imx/tree/arch/arm/dts/imx8mm-evk.dts?h=imx_v2020.04...

 

スポイラ

&i2c1 {

clock-frequency = <400000>;

pinctrl-names = "default", "gpio";

pinctrl-0 = <&pinctrl_i2c1>;

pinctrl-1 = <&pinctrl_i2c1_gpio>;

scl-gpios = <&gpio5 14 GPIO_ACTIVE_HIGH>;

sda-gpios = <&gpio5 15 GPIO_ACTIVE_HIGH>;

status = "okay";

 

pmic: pca9450@25 {

reg = <0x25>;

compatible = "nxp,pca9450";

/* PMIC PCA9450 PMIC_nINT GPIO1_IO3 */

pinctrl-0 = <&pinctrl_pmic>;

gpio_intr = <&gpio1 3 GPIO_ACTIVE_LOW>;

 

gpo {

nxp,drv = <0x0C>;        /* 0b0000_1100 all gpos with cmos output mode */

};

 

regulators {

#address-cells = <1>;

#size-cells = <0>;

 

pca9450,pmic-buck2-uses-i2c-dvs;

pca9450,pmic-buck2-dvs-voltage = <1000000>, <900000>, <0>; /* VDD_ARM: Run-Idle */

 

buck1_reg: regulator@0 {

reg = <0>;

regulator-compatible = "buck1";

regulator-min-microvolt = <600000>;

regulator-max-microvolt = <2187500>;

regulator-boot-on;

regulator-always-on;

regulator-ramp-delay = <3125>;

};

 

buck2_reg: regulator@1 {

reg = <1>;

regulator-compatible = "buck2";

regulator-min-microvolt = <600000>;

regulator-max-microvolt = <2187500>;

regulator-boot-on;

regulator-always-on;

regulator-ramp-delay = <3125>;

};

 

buck3_reg: regulator@2 {

reg = <2>;

regulator-compatible = "buck3";

regulator-min-microvolt = <600000>;

regulator-max-microvolt = <2187500>;

regulator-boot-on;

regulator-always-on;

};

 

buck4_reg: regulator@3 {

reg = <3>;

regulator-compatible = "buck4";

regulator-min-microvolt = <600000>;

regulator-max-microvolt = <3400000>;

regulator-boot-on;

regulator-always-on;

};

 

buck5_reg: regulator@4 {

reg = <4>;

regulator-compatible = "buck5";

regulator-min-microvolt = <600000>;

regulator-max-microvolt = <3400000>;

regulator-boot-on;

regulator-always-on;

};

 

buck6_reg: regulator@5 {

reg = <5>;

regulator-compatible = "buck6";

regulator-min-microvolt = <600000>;

regulator-max-microvolt = <3400000>;

regulator-boot-on;

regulator-always-on;

};

 

ldo1_reg: regulator@6 {

reg = <6>;

regulator-compatible = "ldo1";

regulator-min-microvolt = <1600000>;

regulator-max-microvolt = <3300000>;

regulator-boot-on;

regulator-always-on;

};

 

ldo2_reg: regulator@7 {

reg = <7>;

regulator-compatible = "ldo2";

regulator-min-microvolt = <800000>;

regulator-max-microvolt = <1150000>;

regulator-boot-on;

regulator-always-on;

};

 

ldo3_reg: regulator@8 {

reg = <8>;

regulator-compatible = "ldo3";

regulator-min-microvolt = <800000>;

regulator-max-microvolt = <3300000>;

regulator-boot-on;

regulator-always-on;

};

 

ldo4_reg: regulator@9 {

reg = <9>;

regulator-compatible = "ldo4";

regulator-min-microvolt = <800000>;

regulator-max-microvolt = <3300000>;

regulator-boot-on;

regulator-always-on;

};

 

ldo5_reg: regulator@10 {

reg = <10>;

regulator-compatible = "ldo5";

regulator-min-microvolt = <1800000>;

regulator-max-microvolt = <3300000>;

};

 

};

};

};

Modify initial code of spl.c to replace bd71837 code with pca9450.
https://source.codeaurora.org/external/imx/uboot-imx/tree/board/freescale/imx8mm_evk/spl.c?h=imx_v20...

 

スポイラ

#include <asm/arch/imx8mm_pins.h>

 #include <asm/arch/sys_proto.h>

 #include <power/pmic.h>

+#include <power/pca9450.h>

-#include <power/bd71837.h>

 #include <asm/arch/clock.h>

 #include <asm/mach-imx/gpio.h>

 #include <asm/mach-imx/mxc_i2c.h>

Finally change power_init_board() function as following
https://source.codeaurora.org/external/imx/uboot-imx/tree/board/freescale/imx8mm_evk/spl.c?h=imx_v20...

 

スポイラ

board_mmc_getcd(struct mmc *mmc)

 

 #ifdef CONFIG_POWER

 #define I2C_PMIC        0

int power_init_board(void)

{

        struct pmic *p;

        int ret;

 

        ret = power_pca9450_init(I2C_PMIC);

        if (ret)

                printf("power init failed");

 

        p = pmic_get("PCA9450");

        pmic_probe(p);

 

        /* BUCKxOUT_DVS0/1 control BUCK123 output */

        pmic_reg_write(p, PCA9450_BUCK123_DVS, 0x29);

 

        /* Buck 1 DVS control through PMIC_STBY_REQ */

        pmic_reg_write(p, PCA9450_BUCK1CTRL, 0x59);

 

        /* decrease RESET key long push time from the default 10s to 10ms */

        /* Ton_Deb of PCA9450 is 20ms and don't change */

 

        /* increase VDD_SOC to typical value 0.85v before first DRAM access */

        /* pmic_reg_write(p, PCA9450_BUCK1OUT_DVS0, 0x14); */

        pmic_reg_write(p, PCA9450_BUCK1OUT_DVS0, 0x14);

        pmic_reg_write(p, PCA9450_BUCK1OUT_DVS1, 0x10);

 

        /* increase VDD_DRAM to 0.975v for 3Ghz DDR -> 0.95V instead of 0.975V, */

        /* because PCA9450 Buck3 can set 0.95V */

        /* Also, set B3_ENMODE=2 (ON by PMIC_ON_REQ=H & PMIC_STBY_REQ=L) */

        pmic_reg_write(p, PCA9450_BUCK3OUT_DVS0, 0x1C);

        pmic_reg_write(p, PCA9450_BUCK3CTRL, 0x4A);

 

        /* set VDD_SNVS_0V8 from default 0.85V */

        pmic_reg_write(p, PCA9450_LDO2CTRL, 0xC0);

 

#ifndef CONFIG_IMX8M_LPDDR4

        /* increase NVCC_DRAM_1V2 to 1.2v for DDR4 */

        pmic_reg_write(p, PCA9450_BUCK6OUT, 0x18);

#endif

 

        /* set WDOG_B_CFG to 10b=Cold Reset, except LDO1/2 */

        pmic_reg_write(p, PCA9450_RESET_CTRL, 0xA1);

 

        return 0;

}

BR,
Aldo.

0 件の賞賛
返信

2,091件の閲覧回数
Dhevan
Contributor IV

Hi,

     3) I had configured uboot usb otg followed this link (https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/i-MX8MM-i-MX8MQ-USB2-0-Design-Without-US...)

     Still uuu stuck issue is there

uuu1.PNG

 

Thanks & Regards,

        Vasu

0 件の賞賛
返信

2,093件の閲覧回数
Dhevan
Contributor IV

Hi @AldoG,

     Please look into attached log.

vasu@vasu:~/Downloads/L5.4.47-2.2.0_images_MX8MMEVK1$ sudo ./uuu -v imx-boot-imx8mmevk-sd.bin-flash_evk
[sudo] password for vasu: 
uuu (Universal Update Utility) for nxp imx chips -- libuuu_1.4.69-0-g63b1d3c

Build in config:
	Pctl	 Chip		 Vid	 Pid	 BcdVersion
	==================================================
	SDPS:	 MX8QXP		 0x1fc9	 0x012f	 [0x0002..0xffff]
	SDPS:	 MX8QM		 0x1fc9	 0x0129	 [0x0002..0xffff]
	SDPS:	 MX8DXL		 0x1fc9	 0x0147
	SDPS:	 MX28		 0x15a2	 0x004f
	SDPS:	 MX815		 0x1fc9	 0x013e
	SDPS:	 MX865		 0x1fc9	 0x0146
	SDP:	 MX7D		 0x15a2	 0x0076
	SDP:	 MX6Q		 0x15a2	 0x0054
	SDP:	 MX6D		 0x15a2	 0x0061
	SDP:	 MX6SL		 0x15a2	 0x0063
	SDP:	 MX6SX		 0x15a2	 0x0071
	SDP:	 MX6UL		 0x15a2	 0x007d
	SDP:	 MX6ULL		 0x15a2	 0x0080
	SDP:	 MX6SLL		 0x1fc9	 0x0128
	SDP:	 MX7ULP		 0x1fc9	 0x0126
	SDP:	 MXRT106X	 0x1fc9	 0x0135
	SDP:	 MX8MM		 0x1fc9	 0x0134
	SDP:	 MX8MQ		 0x1fc9	 0x012b
	SDPU:	 SPL		 0x0525	 0xb4a4	 [0x0000..0x04ff]
	SDPV:	 SPL1		 0x0525	 0xb4a4	 [0x0500..0x9998]
	SDPU:	 SPL		 0x0525	 0xb4a4	 [0x9999..0x9999]
	SDPU:	 SPL		 0x3016	 0x1001	 [0x0000..0x04ff]
	SDPV:	 SPL1		 0x3016	 0x1001	 [0x0500..0x9998]
	FBK:	 		 0x066f	 0x9afe
	FBK:	 		 0x066f	 0x9bff
	FB:	 		 0x0525	 0xa4a5
	FB:	 		 0x18d1	 0x0d02
	FB:	 		 0x3016	 0x0001
Wait for Known USB Device Appear...
New USB Device Attached at 1:3
1:3>Start Cmd:SDP: boot -f "imx-boot-imx8mmevk-sd.bin-flash_evk"
6400%1:3>Okay (2.435s)
1:3>Start Cmd:SDP: done
1:3>Okay (0s)

 

Thanks & Regards,

        Vasu

0 件の賞賛
返信