IMX6 DL SABRE AI SPI-NOR flashing

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

IMX6 DL SABRE AI SPI-NOR flashing

Jump to solution
4,858 Views
pavankishore
Contributor I

Hi,

 

I was able to do SPI-NOR flashing of u-boot, uImage, initramfs & dtd using MFG tool on IMX6DL SABRE. After boot-up I only see the U-Boot prompt and do I need to manually set the arguments for loading kernel ? Please find the cfg.ini file,

 

[LIST]
name = i.MX6Solo-SABREAUTO-SPI-NOR

 

Attached the complete putty log.

 

Thanks,

Pavan

Original Attachment has been moved to: SPI-NOR-Putty.log.zip

Labels (3)
0 Kudos
Reply
1 Solution
3,843 Views
igorpadykov
NXP Employee
NXP Employee

Hi Pavan

please look at attached Linux Guide sect.9.3 Run the Image from SPI-NOR.

Best regards

igor

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

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

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

View solution in original post

0 Kudos
Reply
12 Replies
3,844 Views
igorpadykov
NXP Employee
NXP Employee

Hi Pavan

please look at attached Linux Guide sect.9.3 Run the Image from SPI-NOR.

Best regards

igor

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

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

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

0 Kudos
Reply
3,843 Views
pavankishore
Contributor I

Hello Igor,

Thanks for your reply. I tried the steps mentioned at 9.3 but I'm getting the an error which was expected. From the steps looks like I need to setup TFTP server in my host PC where images are to be copied which I didn't do it and also DHCP server for assigning the IP to SABRE AI board. Let me know if my understanding is correct. If so, please let me know the host side setup for TFTP and DHCP. Please find the serial log below, I connected LVDS display so skipped the HDMI configuration

MX6SOLO SABREAUTO U-Boot > setenv serverip 10.192.225.216

MX6SOLO SABREAUTO U-Boot > setenv loadaddr 0x10800000

MX6SOLO SABREAUTO U-Boot > setenv nfsroot /data/rootfs_home/rootfs_mx6

MX6SOLO SABREAUTO U-Boot > setenv bootargs_base 'setenv bootargs console=ttymxc3, 115200'

MX6SOLO SABREAUTO U-Boot > setenv bootargs_sf 'root=/dev/nfs ip=dhcp nfsroot=${serverip }:${nfsroot},v3,tcp ip=dhcp'

MX6SOLO SABREAUTO U-Boot > setenv bootcmd_nor 'run bootargs_base bootargs_sf;sf probe 1; sf read ${loadaddr} 0x100000 0x400000;bootm'

MX6SOLO SABREAUTO U-Boot > setenv bootcmd 'run bootcmd_nor'

MX6SOLO SABREAUTO U-Boot > run bootcmd

Unknown command 'root=/dev/nfs' - try 'help'

JEDEC ID: 0x20:0x20:0x16

4096 KiB M25P32 - 4MB at 0:1 is now current device

SPI flash read failed

Wrong Image Format for bootm command

ERROR: can't get kernel image!

MX6SOLO SABREAUTO U-Boot >

Regards,

Pavan

0 Kudos
Reply
3,843 Views
igorpadykov
NXP Employee
NXP Employee

Hi Pavan

I think your understanding is correct. Regarding tftp please look at

sect. 5.3 TFTP Host Setup

http://cache.freescale.com/files/dsp/doc/app_note/AN3875.pdf

Best regards

igor

0 Kudos
Reply
3,843 Views
pavankishore
Contributor I

Hello Igor,

I was able to make some progress but getting struck at flashing the U-Boot into Parallel-NOR. I setup the TFTP/NFS and able to download the images to IMX but not flashing. Please find below the serial output,

MX6SOLO SABREAUTO U-Boot > setenv ipaddr 192.168.1.11

MX6SOLO SABREAUTO U-Boot > setenv serverip 192.168.1.10

MX6SOLO SABREAUTO U-Boot > setenv netmask 255.255.0.0

MX6SOLO SABREAUTO U-Boot > setenv loadaddr 0x10800000

MX6SOLO SABREAUTO U-Boot > tftpboot ${loadaddr} u-boot.bin

FEC: Link is Up 796d

Using FEC0 device

TFTP from server 192.168.1.10; our IP address is 192.168.1.11

Filename 'u-boot.bin'.

Load address: 0x10800000

Loading: #################################

done

Bytes transferred = 168388 (291c4 hex)

MX6SOLO SABREAUTO U-Boot > erase 8000000 168388

MX6SOLO SABREAUTO U-Boot > cp.b ${loadaddr} 8000000 168388     ---->Here it stays forever. I waited for 10minutes but nothing moved.

Thanks,

Pavan

0 Kudos
Reply
3,843 Views
igorpadykov
NXP Employee
NXP Employee

Hi Pavan

what NOR are trying to write SPI-NOR or parallel ?

Best regards

igor

0 Kudos
Reply
3,843 Views
pavankishore
Contributor I

Hi Igor,

I tried with SPI & WEIM(Parallel) NOR and both have the same problem. I saw in the Quick Start Guide of IMX6dl SABRE AI that it is 32MB 16 bit parallel NOR and 4MB of SPI-NOR, so I decided to make use of parallel NOR to flash u-boot, uImage to it.

PS: I used the prebuilt u-boot-mx6dl-sabreauto-weimnor.bin for parallel NOR flashing

Thanks,

Pavan

0 Kudos
Reply
3,843 Views
igorpadykov
NXP Employee
NXP Employee

Hi Pavan

you can write u-boot also with MFG tool.

Since both flashes are insufficient for rootfs,

it shoudl be located on another media, for example SD.

~igor

0 Kudos
Reply
3,843 Views
pavankishore
Contributor I

Thanks for your reply. Please find the issues that I'm facing currently,

MFG:

1.) I could flash u-boot on SPI-NOR but cannot upgrade the u-boot using MFG as IMX6 is not getting detected as HID any more now

2.) I assume that uImage,rootfs etc cannot be flashed to SPI-NOR due to size limitations and they should reside on SD

TFTP/NFS:

1.) To upgrade the u-boot to custom built one, I'm following TFTP procedure but getting struck at "cp.b ${loadaddr} 8000000 168388" as I mentioned in my previous reply.

SPI-NOR:

     > U-Boot on NOR and rest on SD. Is that correct ?

WEIM-NOR:

     > U-Boot and uImage on NOR and rest on SD. Is that correct ?

Regards,

Pavan

0 Kudos
Reply
3,843 Views
igorpadykov
NXP Employee
NXP Employee

>1.) I could flash u-boot on SPI-NOR but cannot upgrade the u-boot using MFG as IMX6 is not getting detected as HID any more now

In Uboot IMX6 will not be getting detected as HID. One needs to put i.MX6 in serial downloder mode, then put

new Uboot image to MFG folder (replace old image) and run MFG

2.) I assume that uImage,rootfs etc cannot be flashed to SPI-NOR due to size limitations and they should reside on SD

correct

>SPI-NOR:      > U-Boot on NOR and rest on SD. Is that correct ?

correct

>WEIM-NOR:     > U-Boot and uImage on NOR and rest on SD. Is that correct ?

correct

regarding flashing WEIM Uboot one can try it with MFG Tool, refer to

Chapter 6 Downloading Images by Using MFGTool

Best regards

igor

0 Kudos
Reply
3,843 Views
pavankishore
Contributor I

Hi Igor,

Thanks for your reply. Do I need to flash dtd and load same like u-boot & uImage ?If so can you let me know the address where I should load it after flashing on temporary address space. I guess this step is missing in the documents.

Thanks,

Pavan

0 Kudos
Reply
3,842 Views
igorpadykov
NXP Employee
NXP Employee

Hi Pavan

for commands one can look at attached ucl2.xml file from MFG Tools,

profiles: <LIST name="i.MX6Solo-SABREAUTO-SPI-NOR

<LIST name="MX6DL-Sabreauto-Parallel_NOR

~igor

0 Kudos
Reply
3,842 Views
pavankishore
Contributor I

Hello Igor,

Please find the steps that I followed for loading IMX6 DL SABRE AI from WEIM-NOR based on your instructions so far and I have issue at step# 14,

  1. Boot from SD-Card and interrupt at U-Boot
  2. Using TFTP/NFS server setup in host PC flashed the updated u-boot and uImage as below,
  3. setenv loadaddr 0x10800000
  4. tftpboot ${loadaddr} u-boot.bin
  5. cp.b ${loadaddr} 8000000 ${filesize}
  6. tftpboot ${loadaddr} uImage
  7. cp.b ${loadaddr} 8080000
  8. Reboot the IMX6 with WEIM-NOR DIP switch settings
  9. MX6SDL SABREAUTO U-Boot> setenv loadaddr 0x10800000
  10. MX6SDL SABREAUTO U-Boot> setenv bootargs_base 'setenv bootargs console=ttymxc3,115200'
  11. MX6SDL SABREAUTO U-Boot> setenv bootargs_nor 'setenv bootargs ${bootargs} root=/dev/nfs ip=${ipaddr} weim-nor nfsroot=${serverip}:${nfsroot},v3,tcp'
  12. MX6SDL SABREAUTO U-Boot> setenv bootcmd_nor 'run bootargs_base bootargs_nor; cp.l 0x8080000 ${loadaddr} 0x400000; bootm'
  13. MX6SDL SABREAUTO U-Boot> setenv bootcmd 'run bootcmd_nor'
  14. MX6SDL SABREAUTO U-Boot> run bootcmd       ----------------->Nothing happens after this. It just stays forever

Please let me know if I missed anything to overcome this issue.

Thanks,

Pavan

0 Kudos
Reply