[U-Boot] OMAP3630 Falcon Mode Questions
Adam Ford
aford173 at gmail.com
Sat Oct 29 19:53:27 CEST 2016
I am trying to utilize Falcon mode on an OMAP3630 (DM3730), but it
just hangs, and I was hoping someone might find something obvious that
I missed. I am able to boot from NAND through U-boot, so I know my
kernel and device tree are OK as are the boot parameters, MLO and
U-boot.
I have read through the ./doc/README.falcon, and I read through some
of the am33 docs regarding this, and I think I'm doing it right, but
I'm obviously missing something.
I have reset my partition structure to:
device nand0 <omap2-nand.0>, # parts = 6
#: name size offset mask_flags
0: MLO 0x00080000 0x00000000 0
1: u-boot 0x001c0000 0x00080000 0
2: spl-os 0x00020000 0x00240000 0
3: u-boot-env 0x00020000 0x00260000 0
4: kernel 0x00800000 0x00280000 0
5: fs 0x1f580000 0x00a80000 0
My defines in the header file are set as follows:
#define CONFIG_CMD_SPL_NAND_OFS 0x240000
(matches spl-os offset)
#define CONFIG_SYS_NAND_SPL_KERNEL_OFFS 0x280000
(matches kernel offset)
#define CONFIG_CMD_SPL_WRITE_SIZE 0x2000
#define CONFIG_SYS_TEXT_BASE 0x80100000
#define CONFIG_SPL_BSS_START_ADDR 0x80000000
#define CONFIG_SPL_BSS_MAX_SIZE (512 << 10) /* 512 KB */
#define CONFIG_SYS_SPL_MALLOC_START 0x80208000
#define CONFIG_SYS_SPL_MALLOC_SIZE 0x100000
I build my uImage with LOADADDR=0x80008000
My bootargs are as follows:
console=ttyO0,115200n8 ignore_loglevel early_printk no_console_suspend
root=ubi0:rootfs rw ubi.mtd=fs noinitrd rootfstype=ubifs rootwait
display=15 ignore_loglevel early_printk no_console_suspend
mtdparts=omap2-nand.0:512k(MLO),1792k(u-boot),128k(spl-os),128k(u-boot-env),8m(kernel),-(fs)
I can load uImage and fdtimage, then with the bootargs set, I run
spl export fdt $loadaddr - $fdtaddr
## Booting kernel from Legacy Image at 81000000 ...
Image Name: Linux-4.9.0-rc2-00040-g9fe68ca-d
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 3869952 Bytes = 3.7 MiB
Load Address: 80008000
Entry Point: 80008000
Verifying Checksum ... OK
## Flattened Device Tree blob at 86000000
Booting using the fdt blob at 0x86000000
Loading Kernel Image ... OK
Loading Device Tree to 8df1f000, end 8df33114 ... OK
subcommand not supported
subcommand not supported
Loading Device Tree to 8df07000, end 8df1e114 ... OK
Argument image is now in RAM: 0x8df07000
I then write this blob to my spl-os partition with the following:
nand write 0x8df07000 spl-os 0x20000
When I eject the SD card and I boot from NAND (attempting) with Falcon
it just hangs:
U-Boot SPL 2016.11-rc2-00164-g7904673-dirty (Oct 29 2016 - 10:28:32)
Trying to boot from NAND
Does anyone know if I missed a step somewhere, or do I have something
configured incorrectly?
I don't think it's an ECC issue, because I can boot to and read/write
from the UBI partition from Linux going through U-boot.
adam
More information about the U-Boot
mailing list