From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bo Shen Date: Sat, 16 Mar 2013 08:02:40 +0800 Subject: [U-Boot] AT91SAM9M10 Custom Board U-boot reboot after Wrong Image Format In-Reply-To: <54a8dde1b2d64623374eb97048f5bbed@netopen.com.br> References: <1363177574526-149567.post@n7.nabble.com> <51412754.8070707@gmail.com> <63f3857f52f5657a4a4817c11a38e566@netopen.com.br> <514282C5.4010203@gmail.com> <54a8dde1b2d64623374eb97048f5bbed@netopen.com.br> Message-ID: <5143B6A0.2020506@gmail.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi Marcio, ? 2013/3/16 2:46, marcio at netopen.com.br ??: > > > Hi B. > > Thanks for your attention! > >> Bad Data CRC don't help. > Because, many possible issue will cause this issue. > > I will provide the > log. > >> Consider you use 16bit NAND flash. Have you define > >> CONFIG_SYS_NAND_DBW_16 in board configuration header? > > Yes I did > that. Before I include this definition the board did not even try to > boot the kernel. > >> BTW, which bootstrap version do you use? (As I > suspect the bootstrap has >> enabled for supporting 16bit NAND, so it > read u-boot OK) > > The At91bootstrap indeed loads U-boot OK. The problem > is afterward. > > U-Boot 2012.10-00075-g0362411-dirty (Mar 15 2013 - > 11:33:53) > > U-Boot code: 73F00000 -> 73F370C0 BSS: -> 73F79654 > CPU: > AT91SAM9G45 > Crystal frequency: 12 MHz > CPU clock : 400 MHz > Master clock : > 133.333 MHz > dram_init > dram_init tam_ram=67108864 > testa_ram_readonly: > Inicio > testa_ram_readonly: Fim > monitor len: 00079654 > ramsize: > 04000000 > TLB table at: 73ff0000 > Top of RAM usable for U-Boot at: > 73ff0000 > Reserving 485k for U-Boot at: 73f76000 > Reserving 640k for > malloc() at: 73ed6000 > Reserving 32 Bytes for Board Info at: > 73ed5fe0 > Reserving 144 Bytes for Global Data at: 73ed5f50 > New Stack > Pointer is: 73ed5f40 > comeca a configurar a DRAM > Display > DRAM > display_dram_config: > DRAM: 64 MiB > reloca e perde o controle > 00000000 > > relocation Offset is: 00076000 > board_init_r: > gd=73ed5f50 > WARNING: Caches not enabled > monitor flash len: 0003C950 > Now > running in RAM - U-Boot at: 73f76000 > NAND: 256 MiB > board_init_r: > Initialize Environmet > env_relocate: Inicio gd=73ed5f50 > gd->env_valid=0 > Using default environment > > env_relocate: > Fim > board_init_r: jumptable > board_init_r: jumptable sai > In: serial > Out: > serial > Err: serial > board_init_r:interrupts > board_init_r: > initialize > board_init_r: main loop > ### main_loop entered: bootdelay=3 > > > ### main_loop: bootcmd="nand read 0x70000000 0x200000 0x300000;bootm > 0x70000000" > > Hit any key to stop autoboot: 0 > > NAND read: device 0 > offset 0x200000, size 0x300000 > 3145728 bytes read: OK > * kernel: cmdline > image address = 0x70000000 > ## Booting kernel from Legacy Image at > 70000000 ... > Image Name: Linux-2.6.39.4 > Image Type: ARM Linux Kernel > Image (uncompressed) > Data Size: 3630052 Bytes = 3.5 MiB > Load Address: > 70008000 > Entry Point: 70008000 > Verifying Checksum ... Bad Data > CRC > ERROR: can't get kernel image! I see you read only 3MiB, however, the kernel size is 3.5 MiB (Data Size: 3630052 Bytes = 3.5 MiB). So, you only read partial kernel, this cause CRC error. Best Regards, Bo Shen