forked from Mirrors/opensbi
		
	docs: Add documenation for QEMU platforms
This patch adds documentation for qemu/virt and qemu/sifive_u platform supports. Signed-off-by: Anup Patel <anup.patel@wdc.com>
This commit is contained in:
		
							
								
								
									
										42
									
								
								docs/platform/qemu_sifive_u.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								docs/platform/qemu_sifive_u.md
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,42 @@
 | 
			
		||||
QEMU SiFive Unleashed Machine
 | 
			
		||||
=============================
 | 
			
		||||
 | 
			
		||||
The **QEMU SiFive Unleashed Machine** is an emulation of
 | 
			
		||||
SiFive Unleashed platform.
 | 
			
		||||
 | 
			
		||||
To build platform specific library and firmwares, provide
 | 
			
		||||
`PLATFORM=qemu/sifive_u` parameter to top-level make.
 | 
			
		||||
 | 
			
		||||
Platform Options
 | 
			
		||||
----------------
 | 
			
		||||
 | 
			
		||||
We don't have any platform specific options for this platform.
 | 
			
		||||
 | 
			
		||||
Try on QEMU RISC-V 64bit
 | 
			
		||||
------------------------
 | 
			
		||||
 | 
			
		||||
**No Payload**
 | 
			
		||||
 | 
			
		||||
*Build*:
 | 
			
		||||
```
 | 
			
		||||
    make PLATFORM=qemu/virt
 | 
			
		||||
```
 | 
			
		||||
*Run*:
 | 
			
		||||
```
 | 
			
		||||
    qemu-system-riscv64 -M sifive_u -m 256M -display none -serial stdio -kernel build/platform/qemu/sifive_u/firmware/fw_payload.elf
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
**U-Boot Payload**
 | 
			
		||||
 | 
			
		||||
*Note*: We assume that U-Boot is compiled using `qemu-riscv64_smode_defconfig`.
 | 
			
		||||
 | 
			
		||||
*Build*:
 | 
			
		||||
```
 | 
			
		||||
    make PLATFORM=qemu/virt FW_PAYLOAD_PATH=<uboot_build_directory>/u-boot.bin
 | 
			
		||||
```
 | 
			
		||||
*Run*:
 | 
			
		||||
```
 | 
			
		||||
    qemu-system-riscv64 -M sifive_u -m 256M -display none -serial stdio -kernel build/platform/qemu/sifive_u/firmware/fw_payload.elf
 | 
			
		||||
    or
 | 
			
		||||
    qemu-system-riscv64 -M sifive_u -m 256M -display none -serial stdio -kernel build/platform/qemu/sifive_u/firmware/fw_jump.elf -device loader,file=<uboot_build_directory>/u-boot.bin,addr=0x80200000
 | 
			
		||||
```
 | 
			
		||||
							
								
								
									
										59
									
								
								docs/platform/qemu_virt.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										59
									
								
								docs/platform/qemu_virt.md
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,59 @@
 | 
			
		||||
QEMU RISC-V Virt Machine
 | 
			
		||||
========================
 | 
			
		||||
 | 
			
		||||
The **QEMU RISC-V Virt Machine** is virtual platform created
 | 
			
		||||
for RISC-V software development. It is also referred to as
 | 
			
		||||
QEMU RISC-V VirtIO machine because it uses VirtIO devices
 | 
			
		||||
for network, storage, and other types of IO.
 | 
			
		||||
 | 
			
		||||
To build platform specific library and firmwares, provide
 | 
			
		||||
`PLATFORM=qemu/virt` parameter to top-level make.
 | 
			
		||||
 | 
			
		||||
Platform Options
 | 
			
		||||
----------------
 | 
			
		||||
 | 
			
		||||
We don't have any platform specific options for this platform.
 | 
			
		||||
 | 
			
		||||
Try on QEMU RISC-V 64bit
 | 
			
		||||
------------------------
 | 
			
		||||
 | 
			
		||||
**No Payload**
 | 
			
		||||
 | 
			
		||||
*Build*:
 | 
			
		||||
```
 | 
			
		||||
    make PLATFORM=qemu/virt
 | 
			
		||||
```
 | 
			
		||||
*Run*:
 | 
			
		||||
```
 | 
			
		||||
    qemu-system-riscv64 -M virt -m 256M -display none -serial stdio -kernel build/platform/qemu/virt/firmware/fw_payload.elf
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
**U-Boot Payload**
 | 
			
		||||
 | 
			
		||||
*Note*: We assume that U-Boot is compiled using `qemu-riscv64_smode_defconfig`.
 | 
			
		||||
 | 
			
		||||
*Build*:
 | 
			
		||||
```
 | 
			
		||||
    make PLATFORM=qemu/virt FW_PAYLOAD_PATH=<uboot_build_directory>/u-boot.bin
 | 
			
		||||
```
 | 
			
		||||
*Run*:
 | 
			
		||||
```
 | 
			
		||||
    qemu-system-riscv64 -M virt -m 256M -display none -serial stdio -kernel build/platform/qemu/virt/firmware/fw_payload.elf
 | 
			
		||||
    or
 | 
			
		||||
    qemu-system-riscv64 -M virt -m 256M -display none -serial stdio -kernel build/platform/qemu/virt/firmware/fw_jump.elf -device loader,file=<uboot_build_directory>/u-boot.bin,addr=0x80200000
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
**Linux Payload**
 | 
			
		||||
 | 
			
		||||
*Note*: We assume that Linux is compiled using `defconfig`.
 | 
			
		||||
 | 
			
		||||
*Build*:
 | 
			
		||||
```
 | 
			
		||||
    make PLATFORM=qemu/virt FW_PAYLOAD_PATH=<linux_build_directory>/arch/riscv/boot/Image
 | 
			
		||||
```
 | 
			
		||||
*Run*:
 | 
			
		||||
```
 | 
			
		||||
    qemu-system-riscv64 -M virt -m 256M -display none -serial stdio -kernel build/platform/qemu/virt/firmware/fw_payload.elf -drive file=<path_to_linux_rootfs>,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 -append "root=/dev/vda rw console=ttyS0"
 | 
			
		||||
    or
 | 
			
		||||
    qemu-system-riscv64 -M virt -m 256M -display none -serial stdio -kernel build/platform/qemu/virt/firmware/fw_jump.elf -device loader,file=<linux_build_directory>/arch/riscv/boot/Image,addr=0x80200000 -drive file=<path_to_linux_rootfs>,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 -append "root=/dev/vda rw console=ttyS0"
 | 
			
		||||
```
 | 
			
		||||
		Reference in New Issue
	
	Block a user