Failed to load _image to IMX6UL SBC pro using openOCD

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

Failed to load _image to IMX6UL SBC pro using openOCD

1,053 Views
avni
Contributor I


We have custom imx6ul-sbc-pro digi board. While erasing recovery partition of NAND in uboot board get hang. The command we ware using are
nand erase.part recovery
nand erase.part rootfs

Now we are not getting any log in debug UART when board is been reset.
We are trying to add new uboot from openOCD

for loading custom build uboot for our board we use openocd with help of jlink using this command,
sudo openocd -d -f jlink.cfg -f imx6ul.cfg

it opens the openocd port and by using telnet and load the uboot file using
> load_image u-boot-pcd06.imx 0x80800000
but it gives the error of :
DAP transaction stalled (WAIT) - slowing down
Timeout during WAIT recovery
Failed to write memory at 0x82130080
JTAG-DP STICKY ERROR

We observed that MMU and D-Cache are disabled at not working condition. We tried to change it by setting the CT15 register 1 using JLinkExe command line. It enabled the MMU and D-Cache but it did not started the load_image command

After that we observed that target halts at Thumb state. While in working times it used to halt at ARM state. For changing that we need to change a bit in CPSR and SPSR register but it dose not make any changes in error.


Working logs and non-working logs are described below:

************************************ working logs ***********************************
user@test-server:~/project_data_2/openocd/pcd06$ telnet localhost 4444
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Open On-Chip Debugger
Open On-Chip Debugger
> halt // halt the board in uboot
imx6ul.cpu rev 5, partnum c07, arch f, variant 0, implementor 41
imx6ul.cpu: MPIDR level2 0, cluster 0, core 0, multi core, no SMT
target halted in ARM state due to debug-request, current mode: Supervisor
cpsr: 0x200001d3 pc: 0xbff515bc
MMU: enabled, D-Cache: enabled, I-Cache: enabled
> load_image u-boot-pcd06.imx 0x80800000 // copy new uboot on 0x80800000 RAM location
728064 bytes written at address 0x80800000
downloaded 728064 bytes in 50.965370s (13.951 KiB/s)

> resume // resume the board in uboot
Invalid ACK (7) in DAP response
Polling target imx6ul.cpu failed, trying to reexamine
Debug regions are unpowered, an unexpected reset might have happened
JTAG-DP STICKY ERROR
imx6ul.cpu: hardware has 6 breakpoints, 4 watchpoints
>


in serial terminal where use below command to load uboot from RAM location
update uboot ram 0x80800000 0xB1C00

then reboot gives proper uboot with proper ethernet driver so new firmware can be transfer using tftp

************************************ not working logs ***********************************
serial port here is not opening

user@test-server:~/project_data_2/openocd/pcd06$ telnet localhost 4444
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Open On-Chip Debugger
> halt
imx6ul.cpu rev 5, partnum c07, arch f, variant 0, implementor 41
imx6ul.cpu: MPIDR level2 0, cluster 0, core 0, multi core, no SMT
target halted in Thumb state due to debug-request, current mode: Supervisor
cpsr: 0x600001f3 pc: 0x000013ec
MMU: disabled, D-Cache: disabled, I-Cache: enabled
> load_image u-boot-pcd06.imx 0x80800000
DAP transaction stalled (WAIT) - slowing down
Timeout during WAIT recovery
Failed to write memory at 0x82130080
JTAG-DP STICKY ERROR
JTAG-DP STICKY ERROR
Could not read DSCR register
JTAG-DP STICKY ERROR
Could not read DSCR register
Error waiting for cortex_a_exec_opcode

0 Kudos
1 Reply

1,018 Views
nxf54947
NXP Employee
NXP Employee

Hi @avni,

If I grasped your question correctly, you may want to check with Digi if the NAND memory that you are using supports to boot from it.

On the other hand, we recommend to check the Kobs-ng utility for burning a U-boot image to the NAND:

https://github.com/NXPmicro/imx-kobs 

I hope this helps!

Regards,

Ruben

0 Kudos