diff options
Diffstat (limited to 'poky/meta/recipes-bsp/opensbi')
-rw-r--r-- | poky/meta/recipes-bsp/opensbi/opensbi-payloads.inc | 15 | ||||
-rw-r--r-- | poky/meta/recipes-bsp/opensbi/opensbi_0.9.bb | 3 |
2 files changed, 16 insertions, 2 deletions
diff --git a/poky/meta/recipes-bsp/opensbi/opensbi-payloads.inc b/poky/meta/recipes-bsp/opensbi/opensbi-payloads.inc index 2e3294324..cc31ab3b1 100644 --- a/poky/meta/recipes-bsp/opensbi/opensbi-payloads.inc +++ b/poky/meta/recipes-bsp/opensbi/opensbi-payloads.inc @@ -7,12 +7,25 @@ def riscv_get_extra_oemake_image(d): return "FW_PAYLOAD_PATH=" + deploy_dir + "/" + sbi_payload +def riscv_get_extra_oemake_fdt(d): + sbi_fdt = d.getVar('RISCV_SBI_FDT') + deploy_dir = d.getVar('DEPLOY_DIR_IMAGE') + + if sbi_fdt is None: + return "" + + return "FW_FDT_PATH=" + deploy_dir + "/" + sbi_fdt + def riscv_get_do_compile_depends(d): sbi_payload = d.getVar('RISCV_SBI_PAYLOAD') + sbi_fdt = d.getVar('RISCV_SBI_FDT') - if sbi_payload is None: + if sbi_payload is None and sbi_fdt is None: return "" + if sbi_fdt is not None and 'u-boot.bin' in sbi_payload: + return "virtual/kernel:do_deploy virtual/bootloader:do_deploy" + if 'linux' in sbi_payload or 'Image' in sbi_payload: return "virtual/kernel:do_deploy" if 'u-boot.bin' in sbi_payload: diff --git a/poky/meta/recipes-bsp/opensbi/opensbi_0.9.bb b/poky/meta/recipes-bsp/opensbi/opensbi_0.9.bb index cb1c3f2eb..5fee52136 100644 --- a/poky/meta/recipes-bsp/opensbi/opensbi_0.9.bb +++ b/poky/meta/recipes-bsp/opensbi/opensbi_0.9.bb @@ -15,9 +15,10 @@ SRC_URI = "git://github.com/riscv/opensbi.git;branch=master \ S = "${WORKDIR}/git" -EXTRA_OEMAKE += "PLATFORM=${RISCV_SBI_PLAT} I=${D}" +EXTRA_OEMAKE += "PLATFORM=${RISCV_SBI_PLAT} I=${D} FW_PIC=n" # If RISCV_SBI_PAYLOAD is set then include it as a payload EXTRA_OEMAKE_append = " ${@riscv_get_extra_oemake_image(d)}" +EXTRA_OEMAKE_append = " ${@riscv_get_extra_oemake_fdt(d)}" # Required if specifying a custom payload do_compile[depends] += "${@riscv_get_do_compile_depends(d)}" |