[U-Boot] boot.bin on SD Card for SAMA5D3 Xplained
Robert Nelson
robertcnelson at gmail.com
Wed Dec 5 20:38:48 UTC 2018
On Wed, Dec 5, 2018 at 8:37 AM <Eugen.Hristev at microchip.com> wrote:
>
>
>
> On 05.12.2018 02:15, Daniel Evans wrote:
> > Trying to get uboot SPL boot.bin to run on an SD card for the sama5d3 xplained board. All I get is RomBOOT and no other messages. I have tried throwing in a couple test pins to toggle in board_early_init_f but still not getting any debug. I can get at91bootstrap to produce a boot.bin that works on the sama5d3 xplained so I am assuming I don’t have a bad board. My boot partition is FAT16. To compile I just run the following on Debian Buster :
> >
> > make mrproper
> > make sama5d3_xplained_mmc_defconfig
> > make
> >
> > Cross Compiler is gcc-linaro-6.4.1-2018.05-x86_64_arm-linux-gnueabihf
> >
> > When finished compiling I just copy the boot.bin to my BOOT partition.
> >
> > Has to be something obvious that I am missing. Any insight is appreciated…
>
> Hello,
>
> Check the datasheet for sama5d3 SoC section 11.4.3. - Valid code
> detection (my datasheet is dated 2 Feb 2016 if it helps)
>
> Basically the vector 6 needs to have hardcoded the binary size. Are you
> doing that ? Otherwise the RomBOOT code will consider your binary as faulty.
>
> PS. make sure endianess is right, use a good hexeditor...
>
> Hope this helps,
> Eugen
Okay, just finished my git bisect, this turned out to be a miss-placed
#endif when Wenyou did the "configs: at91: Remove
CONFIG_SYS_EXTRA_OPTIONS assignment" patch:
https://github.com/u-boot/u-boot/commit/5541543f686b43210fb92181003ff7175d4ab036#diff-651b6ffe22be4df459343a0d6d25154e
=> RomBOOT
<debug_uart>
U-Boot spl 2019.01-rc1-00021-g2e2a2a5d4f-dirty (Dec 05 2018 - 14:30:22 -0600)
Trying to boot from MMC1
<debug_uart>
U-Boot 2019.01-rc1-00021-g2e2a2a5d4f-dirty (Dec 05 2018 - 14:30:22 -0600)
<snip>
diff --git a/include/configs/sama5d3_xplained.h
b/include/configs/sama5d3_xplained.h
index d0d8087ca3..f87713319d 100644
--- a/include/configs/sama5d3_xplained.h
+++ b/include/configs/sama5d3_xplained.h
@@ -80,7 +80,6 @@
#elif CONFIG_NAND_BOOT
#define CONFIG_SPL_NAND_DRIVERS
#define CONFIG_SPL_NAND_BASE
-#endif
#define CONFIG_SYS_NAND_U_BOOT_OFFS 0x40000
#define CONFIG_SYS_NAND_5_ADDR_CYCLE
#define CONFIG_SYS_NAND_PAGE_SIZE 0x800
@@ -91,3 +90,5 @@
#define CONFIG_SPL_GENERATE_ATMEL_PMECC_HEADER
#endif
+
+#endif
Before:
#ifdef CONFIG_SYS_USE_MMC
#define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1
#define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img"
#elif CONFIG_SYS_USE_NANDFLASH
#define CONFIG_SPL_NAND_DRIVERS
#define CONFIG_SPL_NAND_BASE
#define CONFIG_SYS_NAND_U_BOOT_OFFS 0x40000
#define CONFIG_SYS_NAND_5_ADDR_CYCLE
#define CONFIG_SYS_NAND_PAGE_SIZE 0x800
#define CONFIG_SYS_NAND_PAGE_COUNT 64
#define CONFIG_SYS_NAND_OOBSIZE 64
#define CONFIG_SYS_NAND_BLOCK_SIZE 0x20000
#define CONFIG_SYS_NAND_BAD_BLOCK_POS 0x0
#define CONFIG_SPL_GENERATE_ATMEL_PMECC_HEADER
#endif
After:
#ifdef CONFIG_SD_BOOT
#define CONFIG_SYS_MMCSD_FS_BOOT_PARTITION 1
#define CONFIG_SPL_FS_LOAD_PAYLOAD_NAME "u-boot.img"
#elif CONFIG_NAND_BOOT
#define CONFIG_SPL_NAND_DRIVERS
#define CONFIG_SPL_NAND_BASE
#endif
<------------------------------------------------- WHY HERE????
#define CONFIG_SYS_NAND_U_BOOT_OFFS 0x40000
#define CONFIG_SYS_NAND_5_ADDR_CYCLE
#define CONFIG_SYS_NAND_PAGE_SIZE 0x800
#define CONFIG_SYS_NAND_PAGE_COUNT 64
#define CONFIG_SYS_NAND_OOBSIZE 64
#define CONFIG_SYS_NAND_BLOCK_SIZE 0x20000
#define CONFIG_SYS_NAND_BAD_BLOCK_POS 0x0
#define CONFIG_SPL_GENERATE_ATMEL_PMECC_HEADER
#endif
Regards,
--
Robert Nelson
https://rcn-ee.com/
More information about the U-Boot
mailing list