|
@@ -19,19 +19,31 @@ ifneq ($(OPENSBI_PLAT),)
|
|
|
OPENSBI_MAKE_ENV += PLATFORM=$(OPENSBI_PLAT)
|
|
|
endif
|
|
|
|
|
|
+ifeq ($(BR2_TARGET_OPENSBI_LINUX_PAYLOAD),y)
|
|
|
+OPENSBI_DEPENDENCIES += linux
|
|
|
+OPENSBI_MAKE_ENV += FW_PAYLOAD_PATH="$(BINARIES_DIR)/Image"
|
|
|
+endif
|
|
|
+
|
|
|
define OPENSBI_BUILD_CMDS
|
|
|
$(TARGET_MAKE_ENV) $(OPENSBI_MAKE_ENV) $(MAKE) -C $(@D)
|
|
|
endef
|
|
|
|
|
|
ifneq ($(OPENSBI_PLAT),)
|
|
|
OPENSBI_INSTALL_IMAGES = YES
|
|
|
+OPENSBI_FW_IMAGES += jump dynamic
|
|
|
+ifeq ($(BR2_TARGET_OPENSBI_LINUX_PAYLOAD),y)
|
|
|
+OPENSBI_FW_IMAGES += payload
|
|
|
+endif
|
|
|
+endif
|
|
|
+
|
|
|
define OPENSBI_INSTALL_IMAGES_CMDS
|
|
|
- $(INSTALL) -m 0644 -D $(@D)/build/platform/$(OPENSBI_PLAT)/firmware/fw_jump.bin $(BINARIES_DIR)/fw_jump.bin
|
|
|
- $(INSTALL) -m 0644 -D $(@D)/build/platform/$(OPENSBI_PLAT)/firmware/fw_jump.elf $(BINARIES_DIR)/fw_jump.elf
|
|
|
- $(INSTALL) -m 0644 -D $(@D)/build/platform/$(OPENSBI_PLAT)/firmware/fw_dynamic.bin $(BINARIES_DIR)/fw_dynamic.bin
|
|
|
- $(INSTALL) -m 0644 -D $(@D)/build/platform/$(OPENSBI_PLAT)/firmware/fw_dynamic.elf $(BINARIES_DIR)/fw_dynamic.elf
|
|
|
+ $(foreach f,$(OPENSBI_FW_IMAGES),\
|
|
|
+ $(INSTALL) -m 0644 -D $(@D)/build/platform/$(OPENSBI_PLAT)/firmware/fw_$(f).bin \
|
|
|
+ $(BINARIES_DIR)/fw_$(f).bin
|
|
|
+ $(INSTALL) -m 0644 -D $(@D)/build/platform/$(OPENSBI_PLAT)/firmware/fw_$(f).elf \
|
|
|
+ $(BINARIES_DIR)/fw_$(f).elf
|
|
|
+ )
|
|
|
endef
|
|
|
-endif
|
|
|
|
|
|
# libsbi.a is not a library meant to be linked in user-space code, but
|
|
|
# with bare metal code, which is why we don't install it in
|