diff options
author | Masahiro Yamada <yamada.masahiro@socionext.com> | 2016-03-22 16:40:05 (GMT) |
---|---|---|
committer | Masahiro Yamada <yamada.masahiro@socionext.com> | 2016-03-23 16:45:41 (GMT) |
commit | d085ecd61b9956cda0d37b89b5c538f54440fe58 (patch) | |
tree | 22e43a5f98992e66b1c7caafc4af9bcc6507494d | |
parent | cbbc2d80fc58531c59cadc803717c9d53c9543f1 (diff) | |
download | u-boot-d085ecd61b9956cda0d37b89b5c538f54440fe58.tar.xz |
ARM: uniphier: switch to raw U-Boot image
Now everything is done to load a raw U-Boot proper image instead of
an mkimage-processed one (as far as I tested on NAND, eMMC, NOR).
The SPL already knows the load address of the U-Boot proper without
parsing its uImage header because the load address is defined by
CONFIG_SYS_TEXT_BASE, assuming that the two images are generated from
the same build.
My main motivation of this switch is to use u-boot-with-spl.bin, a
concatenation of u-boot-spl.bin and u-boot.bin. (I wish there were
a concatenation of u-boot-spl.bin and u-boot.img...) Anyway, this
commit would be useful for one-shot image burn.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
-rw-r--r-- | doc/README.uniphier | 22 | ||||
-rw-r--r-- | include/configs/uniphier.h | 9 |
2 files changed, 22 insertions, 9 deletions
diff --git a/doc/README.uniphier b/doc/README.uniphier index 47863a4..49045a0 100644 --- a/doc/README.uniphier +++ b/doc/README.uniphier @@ -75,12 +75,17 @@ to use your favorite compiler. Burn U-Boot images to NAND -------------------------- -Write two files to the NAND device as follows: +Write the following to the NAND device: + - spl/u-boot-spl.bin at the offset address 0x00000000 - - u-boot.img at the offset address 0x00010000 + - u-boot.bin at the offset address 0x00010000 + +or + + - u-boot-with-spl.bin at the offset address 0x00000000 If a TFTP server is available, the images can be easily updated. -Just copy the u-boot-spl.bin and u-boot.img to the TFTP public directory, +Just copy the u-boot-spl.bin and u-boot.bin to the TFTP public directory, and then run the following command at the U-Boot command line: => run nandupdate @@ -89,12 +94,17 @@ and then run the following command at the U-Boot command line: Burn U-Boot images to eMMC -------------------------- -Write two files to the Boot partition 1 of the eMMC device as follows: +Write the following to the Boot partition 1 of the eMMC device: + - spl/u-boot-spl.bin at the offset address 0x00000000 - - u-boot.img at the offset address 0x00010000 + - u-boot.bin at the offset address 0x00010000 + +or + + - u-boot-with-spl.bin at the offset address 0x00000000 If a TFTP server is available, the images can be easily updated. -Just copy the u-boot-spl.bin and u-boot.img to the TFTP public directory, +Just copy the u-boot-spl.bin and u-boot.bin to the TFTP public directory, and then run the following command at the U-Boot command line: => run emmcupdate diff --git a/include/configs/uniphier.h b/include/configs/uniphier.h index dd7b352..5f3d6b8 100644 --- a/include/configs/uniphier.h +++ b/include/configs/uniphier.h @@ -61,6 +61,7 @@ #define CONFIG_SYS_MAX_FLASH_SECT 256 #define CONFIG_SYS_MONITOR_BASE 0 +#define CONFIG_SYS_MONITOR_LEN 0x00080000 /* 512KB */ #define CONFIG_SYS_FLASH_BASE 0 /* @@ -233,12 +234,12 @@ "mmc erase 0 800 &&" \ "tftpboot u-boot-spl.bin &&" \ "mmc write $loadaddr 0 80 &&" \ - "tftpboot u-boot.img &&" \ + "tftpboot u-boot.bin &&" \ "mmc write $loadaddr 80 780\0" \ "nandupdate=nand erase 0 0x00100000 &&" \ "tftpboot u-boot-spl.bin &&" \ "nand write $loadaddr 0 0x00010000 &&" \ - "tftpboot u-boot.img &&" \ + "tftpboot u-boot.bin &&" \ "nand write $loadaddr 0x00010000 0x000f0000\0" \ LINUXBOOT_ENV_SETTINGS @@ -272,9 +273,11 @@ #define CONFIG_SYS_NAND_U_BOOT_OFFS 0x10000 -#define CONFIG_SYS_UBOOT_BASE 0x60000 +/* subtract sizeof(struct image_header) */ +#define CONFIG_SYS_UBOOT_BASE (0x60000 - 0x40) #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0x80 +#define CONFIG_SPL_TARGET "u-boot-with-spl.bin" #define CONFIG_SPL_MAX_FOOTPRINT 0x10000 #endif /* __CONFIG_UNIPHIER_COMMON_H__ */ |