diff options
author | Olof Johansson <olof@lixom.net> | 2019-02-15 09:16:47 +0530 |
---|---|---|
committer | Anup Patel <anup@brainfault.org> | 2019-02-15 15:54:44 +0530 |
commit | 868e20df8b302c20782026a806dda317b76655e9 (patch) | |
tree | 621a78fadd96f831d67b2252e001900b015120b3 /platform | |
parent | 286b80768beb16130f869877875af2f581439b2b (diff) |
Makefile: Add 'make run' command for platform specific run
Makes for easy and quick build-run one-stop command.
For now only added for qemu targets. It can be added for
any platform having simulator/emulator (such as QEMU).
Signed-off-by: Olof Johansson <olof@lixom.net>
Signed-off-by: Anup Patel <anup.patel@wdc.com>
Diffstat (limited to 'platform')
-rw-r--r-- | platform/qemu/sifive_u/config.mk | 8 | ||||
-rw-r--r-- | platform/qemu/virt/config.mk | 8 | ||||
-rw-r--r-- | platform/template/config.mk | 10 |
3 files changed, 20 insertions, 6 deletions
diff --git a/platform/qemu/sifive_u/config.mk b/platform/qemu/sifive_u/config.mk index 4e69b43..097fcdb 100644 --- a/platform/qemu/sifive_u/config.mk +++ b/platform/qemu/sifive_u/config.mk @@ -13,6 +13,10 @@ platform-cflags-y = platform-asflags-y = platform-ldflags-y = +# Command for platform specific "make run" +platform-runcmd = qemu-system-riscv$(PLATFORM_RISCV_XLEN) -M sifive_u -m 256M \ + -nographic -kernel $(build_dir)/platform/qemu/sifive_u/firmware/fw_payload.elf + # Common drivers to enable PLATFORM_IRQCHIP_PLIC=y PLATFORM_SERIAL_SIFIVE_UART=y @@ -21,7 +25,7 @@ PLATFORM_SYS_CLINT=y # Blobs to build FW_TEXT_START=0x80000000 FW_JUMP=y -ifeq ($(OPENSBI_CC_XLEN), 32) +ifeq ($(PLATFORM_RISCV_XLEN), 32) # This needs to be 4MB alligned for 32-bit system FW_JUMP_ADDR=0x80400000 else @@ -30,7 +34,7 @@ else endif FW_JUMP_FDT_ADDR=0x82200000 FW_PAYLOAD=y -ifeq ($(OPENSBI_CC_XLEN), 32) +ifeq ($(PLATFORM_RISCV_XLEN), 32) # This needs to be 4MB alligned for 32-bit system FW_PAYLOAD_OFFSET=0x400000 else diff --git a/platform/qemu/virt/config.mk b/platform/qemu/virt/config.mk index 538b039..ad58b72 100644 --- a/platform/qemu/virt/config.mk +++ b/platform/qemu/virt/config.mk @@ -13,6 +13,10 @@ platform-cflags-y = platform-asflags-y = platform-ldflags-y = +# Command for platform specific "make run" +platform-runcmd = qemu-system-riscv$(PLATFORM_RISCV_XLEN) -M virt -m 256M \ + -nographic -kernel $(build_dir)/platform/qemu/virt/firmware/fw_payload.elf + # Common drivers to enable PLATFORM_IRQCHIP_PLIC=y PLATFORM_SERIAL_UART8250=y @@ -21,7 +25,7 @@ PLATFORM_SYS_CLINT=y # Blobs to build FW_TEXT_START=0x80000000 FW_JUMP=y -ifeq ($(OPENSBI_CC_XLEN), 32) +ifeq ($(PLATFORM_RISCV_XLEN), 32) # This needs to be 4MB alligned for 32-bit system FW_JUMP_ADDR=0x80400000 else @@ -30,7 +34,7 @@ else endif FW_JUMP_FDT_ADDR=0x82200000 FW_PAYLOAD=y -ifeq ($(OPENSBI_CC_XLEN), 32) +ifeq ($(PLATFORM_RISCV_XLEN), 32) # This needs to be 4MB alligned for 32-bit system FW_PAYLOAD_OFFSET=0x400000 else diff --git a/platform/template/config.mk b/platform/template/config.mk index 65ea135..5623a9b 100644 --- a/platform/template/config.mk +++ b/platform/template/config.mk @@ -16,6 +16,12 @@ platform-asflags-y = platform-ldflags-y = # +# Command for platform specific "make run" +# Useful for development and debugging on plaftform simulator (such as QEMU) +# +# platform-runcmd = your_platform_run.sh + +# # Platform RISC-V XLEN, ABI, ISA and Code Model configuration. # These are optional parameters but platforms can optionaly provide it. # Some of these are guessed based on GCC compiler capabilities @@ -47,7 +53,7 @@ FW_TEXT_START=0x80000000 FW_JUMP=<y|n> # This needs to be 4MB aligned for 32-bit support # This needs to be 2MB aligned for 64-bit support -# ifeq ($(OPENSBI_CC_XLEN), 32) +# ifeq ($(PLATFORM_RISCV_XLEN), 32) # FW_JUMP_ADDR=0x80400000 # else # FW_JUMP_ADDR=0x80200000 @@ -62,7 +68,7 @@ FW_JUMP=<y|n> FW_PAYLOAD=<y|n> # This needs to be 4MB aligned for 32-bit support # This needs to be 2MB aligned for 64-bit support -ifeq ($(OPENSBI_CC_XLEN), 32) +ifeq ($(PLATFORM_RISCV_XLEN), 32) FW_PAYLOAD_OFFSET=0x400000 else FW_PAYLOAD_OFFSET=0x200000 |