How to debug U-boot issue?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

How to debug U-boot issue?

1,979 Views
hrushinale
Contributor III

Hello all,

I tried porting U-boot(2014.04) in our custom board running on i.MX6 Dualite.we run DDR calibration and got the updated values.

I updated the .cfg file with the DDR3 script values and DDR calibration result values.

But after that aso my U-boot prompt doesn't came up and It stucked at below point.

U-Boot 2014.04 (Aug 16 2016 - 10:42:46)

CPU:   Freescale i.MX6DL rev1.3 at 792 MHz

CPU:   Temperature 33 C, calibration data: 0x5804f469

Reset cause: POR

Board: Custom-Dual

I2C:   ready

DRAM:  2 GiB

(It stucked here only)

After that I modified below register values in the DDR3 configuration.

DATA 4,    0x021b0818, 0x00000007// changed from  0x00022227

DATA 4,    0x021b4818, 0x00000007 //changed from  0x00022227

and my U-boot prompt came up.

But when I closely saw the logs its giving below errors:

force_idle_bus: sda=0 scl=1 sda.gp=0x9a scl.gp=0x9b

force_idle_bus: failed to clear bus, sda=0 scl=1

wait_for_sr_state: Arbitration lost sr=93 cr=80 state=2020

i2c_init_transfer: failed for chip 0x8 retry=0

force_idle_bus: sda=0 scl=1 sda.gp=0x9a scl.gp=0x9b

force_idle_bus: failed to clear bus, sda=0 scl=1

i2c_init_transfer: give up i2c_regs=021a0000

PMIC Voltages set

The complete U-boot boot logs are as below:

U-Boot 2014.04 (Aug 17 2016 - 16:48:03)

CPU:   Freescale i.MX6DL rev1.3 at 792 MHz

CPU:   Temperature 32 C, calibration data: 0x5804f469

Reset cause: POR

Board:Custom-Dual

I2C:   ready

DRAM:  2 GiB

MMC:   FSL_SDHC: 0

MMC Device 1 not found

No MMC card found

Using default environment

No panel detected: default to Newhaven-CTP

Display: Newhaven-CTP (800x480)

In:    serial

Out:   serial

Err:   serial

Boot modes set

force_idle_bus: sda=0 scl=1 sda.gp=0x9a scl.gp=0x9b

force_idle_bus: failed to clear bus, sda=0 scl=1

wait_for_sr_state: Arbitration lost sr=93 cr=80 state=2020

i2c_init_transfer: failed for chip 0x8 retry=0

force_idle_bus: sda=0 scl=1 sda.gp=0x9a scl.gp=0x9b

force_idle_bus: failed to clear bus, sda=0 scl=1

i2c_init_transfer: give up i2c_regs=021a0000

(Not understanding Why I am getting this?)

PMIC Voltages set

## 17059

Exiting board_late_init

CMD_SEND:0

                ARG                      0x00000000

                MMC_RSP_NONE

CMD_SEND:8

                ARG                      0x000001AA

                MMC_RSP_R1,5,6,7         0x000001AA

CMD_SEND:55

                ARG                      0x00000000

                MMC_RSP_R1,5,6,7         0x00000120

CMD_SEND:41

                ARG                      0x40300000

                MMC_RSP_R3,4             0x40FF8000

CMD_SEND:55

                ARG                      0x00000000

                MMC_RSP_R1,5,6,7         0x00000120

CMD_SEND:41

                ARG                      0x40300000

                MMC_RSP_R3,4             0x40FF8000

CMD_SEND:55

                ARG                      0x00000000

                MMC_RSP_R1,5,6,7         0x00000120

CMD_SEND:41

                ARG                      0x40300000

                MMC_RSP_R3,4             0xC0FF8000

CMD_SEND:2

                ARG                      0x00000000

                MMC_RSP_R2               0x03534453

                                         0x4C313647

                                         0x806AEA77

                                         0x9E00F700

                                        DUMPING DATA

                                        000 - 03 53 44 53

                                        004 - 4C 31 36 47

                                        008 - 80 6A EA 77

                                        012 - 9E 00 F7 00

CMD_SEND:3

                ARG                      0x00000000

                MMC_RSP_R1,5,6,7         0xAAAA0520

CMD_SEND:9

                ARG                      0xAAAA0000

                MMC_RSP_R2               0x400E0032

                                         0x5B590000

                                         0x76B27F80

                                         0x0A404000

                                        DUMPING DATA

                                        000 - 40 0E 00 32

                                        004 - 5B 59 00 00

                                        008 - 76 B2 7F 80

                                        012 - 0A 40 40 00

CMD_SEND:13

                ARG                      0xAAAA0000

                MMC_RSP_R1,5,6,7         0x00000700

CURR STATE:3

CMD_SEND:7

                ARG                      0xAAAA0000

                MMC_RSP_R1,5,6,7         0x00000700

CMD_SEND:55

                ARG                      0xAAAA0000

                MMC_RSP_R1,5,6,7         0x00000920

CMD_SEND:51

                ARG                      0x00000000

                MMC_RSP_R1,5,6,7         0x00000920

CMD_SEND:6

                ARG                      0x00FFFFF1

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:6

                ARG                      0x80FFFFF1

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:55

                ARG                      0xAAAA0000

                MMC_RSP_R1,5,6,7         0x00000920

CMD_SEND:6

                ARG                      0x00000002

                MMC_RSP_R1,5,6,7         0x00000920

CMD_SEND:16

                ARG                      0x00000200

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:17

                ARG                      0x00000000

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:16

                ARG                      0x00000200

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:17

                ARG                      0x00000000

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:16

                ARG                      0x00000200

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:17

                ARG                      0x00000800

                MMC_RSP_R1,5,6,7         0x00000900

reading uimage

CMD_SEND:16

                ARG                      0x00000200

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:17

                ARG                      0x00000800

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:16

                ARG                      0x00000200

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:18

                ARG                      0x00000881

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:12

                ARG                      0x00000000

                MMC_RSP_R1b              0x00000B00

CMD_SEND:16

                ARG                      0x00000200

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:18

                ARG                      0x00000801

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:12

                ARG                      0x00000000

                MMC_RSP_R1b              0x00000B00

CMD_SEND:16

                ARG                      0x00000200

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:18

                ARG                      0x00000807

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:12

                ARG                      0x00000000

                MMC_RSP_R1b              0x00000B00

CMD_SEND:16

                ARG                      0x00000200

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:18

                ARG                      0x0000080D

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:12

                ARG                      0x00000000

                MMC_RSP_R1b              0x00000B00

CMD_SEND:16

                ARG                      0x00000200

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:18

                ARG                      0x000008A5

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:12

                ARG                      0x00000000

                MMC_RSP_R1b              0x00000B00

CMD_SEND:16

                ARG                      0x00000200

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:17

                ARG                      0x00003957

                MMC_RSP_R1,5,6,7         0x00000900

6382984 bytes read in 445 ms (13.7 MiB/s)

CMD_SEND:16

                ARG                      0x00000200

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:17

                ARG                      0x00000000

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:16

                ARG                      0x00000200

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:17

                ARG                      0x00000800

                MMC_RSP_R1,5,6,7         0x00000900

reading arya.dtb

CMD_SEND:16

                ARG                      0x00000200

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:17

                ARG                      0x00000800

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:16

                ARG                      0x00000200

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:18

                ARG                      0x00000881

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:12

                ARG                      0x00000000

                MMC_RSP_R1b              0x00000B00

CMD_SEND:16

                ARG                      0x00000200

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:18

                ARG                      0x0000080D

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:12

                ARG                      0x00000000

                MMC_RSP_R1b              0x00000B00

CMD_SEND:16

                ARG                      0x00000200

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:18

                ARG                      0x00003959

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:12

                ARG                      0x00000000

                MMC_RSP_R1b              0x00000B00

CMD_SEND:16

                ARG                      0x00000200

                MMC_RSP_R1,5,6,7         0x00000900

CMD_SEND:17

                ARG                      0x0000399E

                MMC_RSP_R1,5,6,7         0x00000900

35358 bytes read in 109 ms (316.4 KiB/s)

Net:   FEC [PRIME]

Warning: failed to set MAC address

Normal Boot

Hit any key to stop autoboot:  0

U-BOOT >

WHen I checked the i2c probe output it shows below errors:

U-BOOT > i2c probe

Valid chip addresses:wait_for_sr_state: Arbitration lost sr=93 cr=80 state=2020

i2c_init_transfer: failed for chip 0x0 retry=0

force_idle_bus: sda=0 scl=1 sda.gp=0x9a scl.gp=0x9b

force_idle_bus: failed to clear bus, sda=0 scl=1

i2c_init_transfer: give up i2c_regs=021a0000

wait_for_sr_state: failed sr=a1 cr=80 state=2000

wait_for_sr_state: failed sr=a1 cr=80 state=2000

i2c_imx_stop:trigger stop failed

i2c_init_transfer: failed for chip 0x1 retry=0

force_idle_bus: sda=0 scl=1 sda.gp=0x9a scl.gp=0x9b

force_idle_bus: failed to clear bus, sda=0 scl=1

i2c_init_transfer: give up i2c_regs=021a0000

wait_for_sr_state: Arbitration lost sr=93 cr=80 state=2020

i2c_init_transfer: failed for chip 0x2 retry=0

force_idle_bus: sda=0 scl=1 sda.gp=0x9a scl.gp=0x9b

force_idle_bus: failed to clear bus, sda=0 scl=1

i2c_init_transfer: give up i2c_regs=021a0000

Kindly help regarding this issue.

Best Regards,

Hrushi

Tags (2)
0 Kudos
4 Replies

1,337 Views
igorpadykov
NXP Employee
NXP Employee

Hi Hrushi

one can try to tweak drive strength of ddr signals, seems increasing

should help. For i2c one can try to inspect signals with oscilloscope.

Best regards

igor

-----------------------------------------------------------------------------------------------------------------------

Note: If this post answers your question, please click the Correct Answer button. Thank you!

-----------------------------------------------------------------------------------------------------------------------

0 Kudos

1,337 Views
hrushinale
Contributor III

Hello igor,

Previously it was not going further "Uncompressing Linux... done, booting the kernel." but after enabling the earlyprintk  I am getting below output:

Starting kernel ...

cleanup_before_linux from cpu.c executed successfully

Entering into Kernel

Uncompressing Linux... done, booting the kernel.

Booting Linux on physical CPU 0x0

Linux version 3.14.28 (shree@Needa) (gcc version 4.9.2 (GCC) ) #69 SMP PREEMPT Mon Aug 22 13:56:25 IST 2016

CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c53c7d

CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache

Machine model: Wearberrytec i.MX6 DualLite ARYA Smart Device Board

bootconsole [earlycon0] enabled

cma: CMA: reserved 320 MiB at 6a000000

Memory policy: Data cache writealloc

Unable to handle kernel paging request at virtual address ff579000

pgd = 80004000

[ff579000] *pgd=00000000

Internal error: Oops: 5 [#1] PREEMPT SMP ARM

Modules linked in:

CPU: 0 PID: 0 Comm: swapper Not tainted 3.14.28 #69

task: 80e6c428 ti: 80e60000 task.ti: 80e60000

PC is at __unflatten_device_tree+0x70/0x2d4

LR is at unflatten_device_tree+0x28/0x34

pc : [<805448d4>]    lr : [<80de2d0c>]    psr: 600001d3

sp : 80e61f30  ip : 10f45ddb  fp : 80f26a24

r10: 80c85768  r9 : 80000200  r8 : ef7ffd40

r7 : 80db2940  r6 : 80ed33e0  r5 : ff579000  r4 : 80ed33e0

r3 : 00000000  r2 : 00000000  r1 : 80f389d0  r0 : ff579000

Flags: nZCv  IRQs off  FIQs off  Mode SVC_32  ISA ARM  Segment kernel

Control: 10c53c7d  Table: 1000404a  DAC: 00000015

Process swapper (pid: 0, stack limit = 0x80e60238)

Stack: (0x80e61f30 to 0x80e62000)

1f20:                                     00001000 00000007 80f26a18 80f389d0

1f40: 80db2940 80def1f4 80e75f90 80e6d3b0 ef7ffd40 80de2d0c 80e68488 80db1db8

1f60: ffffffff 10c53c7d 00000000 00000000 00000000 80edac00 80e61fd4 80df3790

1f80: ffffffff 1000406a 412fc09a 00000000 00000000 8072a280 80c83a00 80edaac0

1fa0: 80e68480 00000001 ffffffff 1000406a 412fc09a 00000000 00000000 80dae844

1fc0: 00000000 00000000 00000000 00000000 00000000 80df3790 00000000 10c53c7d

1fe0: 80e684fc 80df378c 80e6d4c0 1000406a 412fc09a 10008074 00000000 00000000

[<805448d4>] (__unflatten_device_tree) from [<80de2d0c>] (unflatten_device_tree+0x28/0x34)

[<80de2d0c>] (unflatten_device_tree) from [<80db1db8>] (setup_arch+0x6ac/0x900)

[<80db1db8>] (setup_arch) from [<80dae844>] (start_kernel+0x84/0x35c)

[<80dae844>] (start_kernel) from [<10008074>] (0x10008074)

Code: 1a00007c e1d33ab2 e3130004 1a00006c (e5953000)

---[ end trace 3406ff24bd97382e ]---

Kernel panic - not syncing: Attempted to kill the idle task!

But I am not understanding why I am getting above panic issue.We have used the same RAM MT41K256M16TW-107 part number for our solo board.But while migrating to dual board (with 2GB RAM)we are getting this issue.

Do I need to modify anything in kernel and device tree for Dualite board like

memory {

        reg = <0x10000000 0x80000000>;//changed for dualite

    };

Kindly guide me regarding this issue.

Thanks & Regards,

Hrushi

0 Kudos

1,337 Views
igorpadykov
NXP Employee
NXP Employee

Hi Hrushi

one can try kernel boot parameter maxcpus=1 to imitate i.MX6Solo,

drive strength configuration can be found in IOMUX Chapter of Reference Manual.

Nevertheless error resembles ddr error, could you recheck with ddr tester if dcd header

memory settings are correct.

Best regards

igor

0 Kudos

1,337 Views
hrushinale
Contributor III

Hello igor,

How can I tweak the drive strength of ddr signals?

Thanks & Regards,

Hrushi

0 Kudos