summaryrefslogtreecommitdiff
path: root/docs/platform
diff options
context:
space:
mode:
authorAtish Patra <atish.patra@wdc.com>2019-04-11 20:46:27 +0300
committerAnup Patel <anup@brainfault.org>2019-04-15 07:30:04 +0300
commit194dbbe5a13dff2255411c26d249f3ad4ef42c0b (patch)
tree0fe88a8ec0b5b45a5dd6c66d22f8c49154366341 /docs/platform
parentb2cd5fda61d7dfd553784f5cab529d9effbd35dc (diff)
downloadopensbi-194dbbe5a13dff2255411c26d249f3ad4ef42c0b.tar.xz
doc: Update docs as per latest kernel/u-boot status.
All dependant patches are merged in U-Boot and Linux kernel now. Update the unleashed guide to reflect that and fix the documentation about tftp loading path as well. Signed-off-by: Atish Patra <atish.patra@wdc.com> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Diffstat (limited to 'docs/platform')
-rw-r--r--docs/platform/sifive_fu540.md22
1 files changed, 12 insertions, 10 deletions
diff --git a/docs/platform/sifive_fu540.md b/docs/platform/sifive_fu540.md
index 286abdd..96be734 100644
--- a/docs/platform/sifive_fu540.md
+++ b/docs/platform/sifive_fu540.md
@@ -23,13 +23,8 @@ This will let the board boot only hart1 instead of default 1-4.
Building SiFive Fu540 Platform
-----------------------------
-As of this writing, the required Linux kernel and U-Boot patches are not
-accepted in mainline. Please follow the below instructions to cherry-pick
-them into your repository.
-
-[U-Boot patches](../firmware/payload_uboot.md)
-
-[Linux kernel patches](../firmware/payload_linux.md)
+In order to boot SMP Linux in U-Boot, Linux kernel higher than v.5.1-rc1 and
+latest U-Boot(at least HEAD should ffb269ab30db or after) should be used.
**Linux Kernel Payload**
@@ -54,6 +49,13 @@ Without SMP support enabled in U-Boot:
make PLATFORM=sifive/fu540 FW_PAYLOAD_PATH=<u-boot_build_dir>/u-boot.bin FU540_ENABLED_HART_MASK=0x02
```
+Generate the uImage from Linux Image.
+```
+mkimage -A riscv -O linux -T kernel -C none -a 0x80200000 -e 0x80200000 -n Linux -d \
+ <linux_build_directory>/arch/riscv/boot/Image \
+ <linux_build_directory>/arch/riscv/boot/uImage
+```
+
**U-Boot & Linux Kernel as a single payload**
A single monolithic image containing both U-Boot & Linux can also be used if network boot setup is
@@ -62,7 +64,7 @@ not available.
1. Generate the uImage from Linux Image.
```
mkimage -A riscv -O linux -T kernel -C none -a 0x80200000 -e 0x80200000 -n Linux -d \
- <linux_build_directory>arch/riscv/boot/Image \
+ <linux_build_directory>/arch/riscv/boot/Image \
<linux_build_directory>/arch/riscv/boot/uImage
```
@@ -148,7 +150,7 @@ setenv gatewayip <ipaddress of the network gateway>
5. Load the Linux kernel image from the tftp server.
```
-tftpboot ${kernel_addr_r} /sifive/fu540/uImage
+tftpboot ${kernel_addr_r} <uImage path in tftpboot directory>
```
6. Load the ramdisk image from the tftp server. This is only required if ramdisk
@@ -156,7 +158,7 @@ tftpboot ${kernel_addr_r} /sifive/fu540/uImage
of the kernel or loaded from an external storage by kernel.
```
-tftpboot ${ramdisk_addr_r} /sifive/fu540/uRamdisk
+tftpboot ${ramdisk_addr_r} <ramdisk path in tftpboot directory>
```
7. Set the boot command-line arguments.