AnsweredAssumed Answered

NAND boot in IMX7D

Question asked by Gopinath Srinivasan on Aug 3, 2017
Latest reply on Aug 3, 2017 by igorpadykov

Hi All,

 

On default i.MX7D sabreSD board, does not have NAND flash.  So we mounted MT29F32G08CBADB 4GB nand in the device footprint. After adding NAND support in linux kernel and u-boot, I am able to detect, read and write to the NAND flash. Now I want to boot from this NAND flash. For this I am trying to flash the u-boot to NAND flash using below command in kernel.

 

kobs-ng init -x -v /boot/u-boot.imx

But I am getting below error. 

 

root@imx7:~# kobs-ng init -x -v
MTD CONFIG:
chip_0_device_path = "/dev/mtd0"
chip_1_device_path = "(null)"
search_exponent = 2
data_setup_time = 80
data_hold_time = 60
address_setup_time = 25
data_sample_time = 6
row_address_size = 3
column_address_size = 2
read_command_code1 = 0
read_command_code2 = 48
boot_stream_major_version = 1
boot_stream_minor_version = 0
boot_stream_sub_version = 0
ncb_version = 3
boot_stream_1_address = 0
boot_stream_2_address = 0
unable to create a temporary file
root@esomimx7:~# kobs-ng init -x -v u-boot
u-boot-nand.imx u-boot.imx
root@esomimx7:~# kobs-ng init -x -v u-boot.imx
MTD CONFIG:
chip_0_device_path = "/dev/mtd0"
chip_1_device_path = "(null)"
search_exponent = 2
data_setup_time = 80
data_hold_time = 60
address_setup_time = 25
data_sample_time = 6
row_address_size = 3
column_address_size = 2
read_command_code1 = 0
read_command_code2 = 48
boot_stream_major_version = 1
boot_stream_minor_version = 0
boot_stream_sub_version = 0
ncb_version = 3
boot_stream_1_address = 0
boot_stream_2_address = 0
-- We add the 1k-padding to the uboot.
.tmp_kobs_ng: verifying using key '00000000000000000000000000000000'
.tmp_kobs_ng: is a valid bootstream for key '00000000000000000000000000000000'
mtd: use new bch layout raw access mode
mtd: opening: "/dev/mtd0"
NFC geometry :
ECC Strength : 40
Page Size in Bytes : 8762
Metadata size : 10
ECC Chunk Size in byte : 1024
ECC Chunk count : 8
Block Mark Byte Offset : 7692
Block Mark Bit Offset : 0
====================================================
mtd: opened '/dev/mtd0' - '(null)'
mtd: mtd size too small
mtd_init failed!

 

I referred  this  i.mx6ulevk nand too small?  link with similar issue. But that solution was not help full for me. Can anyone help me on this issue? Also May I know how to flash to NAND using MFG tool? Is there any other support to be added for this too? Your suggestions are greatly appreciated.

 

Thanks,

Gopinath S 

Outcomes