opensbi_0.9.bb 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175
  1. DESCRIPTION = "Light Opensbi Components"
  2. LICENSE = "CLOSED"
  3. inherit deploy
  4. DEPENDS = "e2fsprogs-native"
  5. COMPATIBLE_MACHINE = "light-*"
  6. SRC_URI = " \
  7. git://git@gitee.com/thead-yocto/opensbi.git;branch=master;protocol=http \
  8. file://light_aon_fpga.bin;md5=9f0d26a65b54d7f72a21be519c1c09b4 \
  9. file://light_aon_fpga.elf;md5=447b37b51877dce013b21d845c6c602a \
  10. file://light_c906_audio.bin;md5=d11d1c42e6cbe432279286eac1eae940 \
  11. file://light_c906_audio.elf;md5=2663d4dab3fa10ec614467bf4a124fbe \
  12. file://lightA/light_aon_fpga.bin;md5=93d0bd559cda10adfd50463a142f8a37 \
  13. file://lightA/light_aon_fpga.elf;md5=11f6f5293f0b54e738d058116c4b9e98 \
  14. file://lightA/light_c906_audio.bin;md5=d11d1c42e6cbe432279286eac1eae940 \
  15. file://lightA/light_c906_audio.elf;md5=2663d4dab3fa10ec614467bf4a124fbe \
  16. file://lightB/light_aon_fpga.bin;md5=709d447f7973dc9789af54c1c820f383 \
  17. file://lightB/light_aon_fpga.elf;md5=87f55a3f0af394ea703eab379204dbb8 \
  18. file://lightB/light_c906_audio.bin;md5=67141bb799ccad041dd34c49081d6905 \
  19. file://lightB/light_c906_audio.elf;md5=f07966e101cb8c047b7b93c183dde9ac \
  20. file://light-ant-ref/light_aon_fpga.bin;md5=f87aa7be3675914d1842806f54f8a8d8 \
  21. file://light-ant-ref/light_aon_fpga.elf;md5=fa0df5c3f47a2475882aa171b7a72e96 \
  22. file://light-ant-ref/light_c906_audio.bin;md5=9124f7306370eb0d9e3f6178da1fa4fd \
  23. file://light-ant-ref/light_c906_audio.elf;md5=b4206da84148852df208088c96e4b2b3 \
  24. file://light-ant-discrete/light_aon_fpga.bin;md5=9b98df64aa4b95a32b1939e822ac912c \
  25. file://light-ant-discrete/light_aon_fpga.elf;md5=96d1e845e69d2a9b4e014d87e9e1e15a \
  26. file://light-ant-discrete/light_c906_audio.bin;md5=3c5d2ccb84c98fb1dbcacec72e49ee96 \
  27. file://light-ant-discrete/light_c906_audio.elf;md5=b4206da84148852df208088c96e4b2b3 \
  28. file://light-beagle/light_aon_fpga.bin;md5=6486aed6f815af4118e4e4a840ec5482 \
  29. file://light-beagle/light_aon_fpga.elf;md5=f447400d1df5ab59f23c738fe147260a \
  30. file://light-beagle/light_c906_audio.bin;md5=9124f7306370eb0d9e3f6178da1fa4fd \
  31. file://light-beagle/light_c906_audio.elf;md5=b4206da84148852df208088c96e4b2b3 \
  32. file://light-lpi4a/light_aon_fpga.bin;md5=6486aed6f815af4118e4e4a840ec5482 \
  33. file://light-lpi4a/light_aon_fpga.elf;md5=f447400d1df5ab59f23c738fe147260a \
  34. file://light-lpi4a/light_c906_audio.bin;md5=384e8de853ea93cc71fef6379a630fae \
  35. file://light-lpi4a/light_c906_audio.elf;md5=7ba187b91846cad61e5026bc63f1af6e \
  36. file://light-b-ref/light_aon_fpga.bin;md5=aaacb9a4382298f73472bb26a4c73a42 \
  37. file://light-b-ref/light_aon_fpga.elf;md5=501e828bb48bc6795bfd391518352fc2 \
  38. file://light-b-ref/light_c906_audio.bin;md5=9124f7306370eb0d9e3f6178da1fa4fd \
  39. file://light-b-ref/light_c906_audio.elf;md5=b4206da84148852df208088c96e4b2b3 \
  40. file://light-a-ref/light_aon_fpga.bin;md5=dfabc70fda5b845ee9d7123358a39bc8 \
  41. file://light-a-ref/light_aon_fpga.elf;md5=f8be0d51e17ad3fddd6cc721be42807d \
  42. file://light-a-ref/light_c906_audio.bin;md5=d11d1c42e6cbe432279286eac1eae940 \
  43. file://light-a-ref/light_c906_audio.elf;md5=2663d4dab3fa10ec614467bf4a124fbe \
  44. file://light-b-power/light_aon_fpga.bin;md5=701b9540f0585ea8030139d36960e75b \
  45. file://light-b-power/light_aon_fpga.elf;md5=b60dc93a181e09de2773c145ff04f79c \
  46. file://light-b-power/light_c906_audio.bin;md5=9124f7306370eb0d9e3f6178da1fa4fd \
  47. file://light-b-power/light_c906_audio.elf;md5=b4206da84148852df208088c96e4b2b3 \
  48. "
  49. THEAD_BSP_TAG ?= "${AUTOREV}"
  50. SRCREV = "${THEAD_BSP_TAG}"
  51. S = "${WORKDIR}/git"
  52. export ARCH?="riscv"
  53. export CROSS_COMPILE="riscv64-linux-"
  54. export PLATFORM="generic"
  55. export TOOLCHAIN_DIR?="${EXTERNAL_TOOLCHAIN}"
  56. PARALLEL_MAKEINST = "-j1"
  57. do_compile() {
  58. oe_runmake
  59. }
  60. do_deploy () {
  61. install -m 0755 ${S}/build/platform/generic/firmware/fw_dynamic.bin ${DEPLOYDIR}/
  62. install -m 0755 ${S}/build/platform/generic/firmware/fw_dynamic.elf ${DEPLOYDIR}/
  63. if echo "${MACHINE}" | grep -Eq "light-a-val|light-a-public-release"; then
  64. echo "Firmware INFO: light-evb opensbi and e902 c906 firmware build MACHINE = ${MACHINE}"
  65. install -m 0755 ${WORKDIR}/light_aon_fpga.bin ${DEPLOYDIR}/
  66. install -m 0755 ${WORKDIR}/light_aon_fpga.elf ${DEPLOYDIR}/
  67. install -m 0755 ${WORKDIR}/light_c906_audio.bin ${DEPLOYDIR}/
  68. install -m 0755 ${WORKDIR}/light_c906_audio.elf ${DEPLOYDIR}/
  69. elif echo "${MACHINE}" | grep -q "light-ant-discrete"; then
  70. echo "Firmware INFO: light ant-discrete opensbi and e902 c906 firmware build MACHINE = ${MACHINE}"
  71. install -m 0755 ${WORKDIR}/light-ant-discrete/light_aon_fpga.bin ${DEPLOYDIR}/
  72. install -m 0755 ${WORKDIR}/light-ant-discrete/light_aon_fpga.elf ${DEPLOYDIR}/
  73. install -m 0755 ${WORKDIR}/light-ant-discrete/light_c906_audio.bin ${DEPLOYDIR}/
  74. install -m 0755 ${WORKDIR}/light-ant-discrete/light_c906_audio.elf ${DEPLOYDIR}/
  75. elif echo "${MACHINE}" | grep -q "light-beagle"; then
  76. echo "Firmware INFO: light beagle opensbi and e902 c906 firmware build MACHINE = ${MACHINE}"
  77. install -m 0755 ${WORKDIR}/light-beagle/light_aon_fpga.bin ${DEPLOYDIR}/
  78. install -m 0755 ${WORKDIR}/light-beagle/light_aon_fpga.elf ${DEPLOYDIR}/
  79. install -m 0755 ${WORKDIR}/light-beagle/light_c906_audio.bin ${DEPLOYDIR}/
  80. install -m 0755 ${WORKDIR}/light-beagle/light_c906_audio.elf ${DEPLOYDIR}/
  81. elif echo "${MACHINE}" | grep -q "light-lpi4a"; then
  82. echo "Firmware INFO: light lpi4a opensbi and e902 c906 firmware build MACHINE = ${MACHINE}"
  83. install -m 0755 ${WORKDIR}/light-lpi4a/light_aon_fpga.bin ${DEPLOYDIR}/
  84. install -m 0755 ${WORKDIR}/light-lpi4a/light_aon_fpga.elf ${DEPLOYDIR}/
  85. install -m 0755 ${WORKDIR}/light-lpi4a/light_c906_audio.bin ${DEPLOYDIR}/
  86. install -m 0755 ${WORKDIR}/light-lpi4a/light_c906_audio.elf ${DEPLOYDIR}/
  87. elif echo "${MACHINE}" | grep -q "light-a-ref"; then
  88. echo "Firmware INFO: light-a-ref opensbi and e902 c906 firmware build MACHINE = ${MACHINE}"
  89. install -m 0755 ${WORKDIR}/light-a-ref/light_aon_fpga.bin ${DEPLOYDIR}/
  90. install -m 0755 ${WORKDIR}/light-a-ref/light_aon_fpga.elf ${DEPLOYDIR}/
  91. install -m 0755 ${WORKDIR}/light-a-ref/light_c906_audio.bin ${DEPLOYDIR}/
  92. install -m 0755 ${WORKDIR}/light-a-ref/light_c906_audio.elf ${DEPLOYDIR}/
  93. elif echo "${MACHINE}" | grep -q "light-b-ref"; then
  94. echo "Firmware INFO: light-b-ref opensbi and e902 c906 firmware build MACHINE = ${MACHINE}"
  95. install -m 0755 ${WORKDIR}/light-b-ref/light_aon_fpga.bin ${DEPLOYDIR}/
  96. install -m 0755 ${WORKDIR}/light-b-ref/light_aon_fpga.elf ${DEPLOYDIR}/
  97. install -m 0755 ${WORKDIR}/light-b-ref/light_c906_audio.bin ${DEPLOYDIR}/
  98. install -m 0755 ${WORKDIR}/light-b-ref/light_c906_audio.elf ${DEPLOYDIR}/
  99. elif echo "${MACHINE}" | grep -Eq "light-ant-ref|light-ant-ref-release"; then
  100. echo "Firmware INFO: light ant-ref opensbi and e902 c906 firmware build MACHINE = ${MACHINE}"
  101. install -m 0755 ${WORKDIR}/light-ant-ref/light_aon_fpga.bin ${DEPLOYDIR}/
  102. install -m 0755 ${WORKDIR}/light-ant-ref/light_aon_fpga.elf ${DEPLOYDIR}/
  103. install -m 0755 ${WORKDIR}/light-ant-ref/light_c906_audio.bin ${DEPLOYDIR}/
  104. install -m 0755 ${WORKDIR}/light-ant-ref/light_c906_audio.elf ${DEPLOYDIR}/
  105. elif echo "${MACHINE}" | grep -q "light-a-product"; then
  106. echo "Firmware INFO: light-a opensbi and e902 c906 firmware build MACHINE = ${MACHINE}"
  107. install -m 0755 ${WORKDIR}/lightA/light_aon_fpga.bin ${DEPLOYDIR}/
  108. install -m 0755 ${WORKDIR}/lightA/light_aon_fpga.elf ${DEPLOYDIR}/
  109. install -m 0755 ${WORKDIR}/lightA/light_c906_audio.bin ${DEPLOYDIR}/
  110. install -m 0755 ${WORKDIR}/lightA/light_c906_audio.elf ${DEPLOYDIR}/
  111. elif echo "${MACHINE}" | grep -q "light-b-product-release"; then
  112. echo "Firmware INFO: light b opensbi and e902 c906 firmware build MACHINE = ${MACHINE}"
  113. install -m 0755 ${WORKDIR}/lightB/light_aon_fpga.bin ${DEPLOYDIR}/
  114. install -m 0755 ${WORKDIR}/lightB/light_aon_fpga.elf ${DEPLOYDIR}/
  115. install -m 0755 ${WORKDIR}/lightB/light_c906_audio.bin ${DEPLOYDIR}/
  116. install -m 0755 ${WORKDIR}/lightB/light_c906_audio.elf ${DEPLOYDIR}/
  117. elif echo "${MACHINE}" | grep -Eq "light-b-product|light-b-public"; then
  118. echo "Firmware INFO: light b opensbi and e902 c906 firmware build MACHINE = ${MACHINE}"
  119. install -m 0755 ${WORKDIR}/lightB/light_aon_fpga.bin ${DEPLOYDIR}/
  120. install -m 0755 ${WORKDIR}/lightB/light_aon_fpga.elf ${DEPLOYDIR}/
  121. install -m 0755 ${WORKDIR}/lightB/light_c906_audio.bin ${DEPLOYDIR}/
  122. install -m 0755 ${WORKDIR}/lightB/light_c906_audio.elf ${DEPLOYDIR}/
  123. elif echo "${MACHINE}" | grep -q "light-b-power"; then
  124. echo "Firmware INFO: light b power opensbi and e902 c906 firmware build MACHINE = ${MACHINE}"
  125. install -m 0755 ${WORKDIR}/light-b-power/light_aon_fpga.bin ${DEPLOYDIR}/
  126. install -m 0755 ${WORKDIR}/light-b-power/light_aon_fpga.elf ${DEPLOYDIR}/
  127. install -m 0755 ${WORKDIR}/light-b-power/light_c906_audio.bin ${DEPLOYDIR}/
  128. install -m 0755 ${WORKDIR}/light-b-power/light_c906_audio.elf ${DEPLOYDIR}/
  129. else
  130. echo "Firmware INFO: light general opensbi and e902 c906 firmware build MACHINE = ${MACHINE}"
  131. install -m 0755 ${WORKDIR}/light_aon_fpga.bin ${DEPLOYDIR}/
  132. install -m 0755 ${WORKDIR}/light_aon_fpga.elf ${DEPLOYDIR}/
  133. install -m 0755 ${WORKDIR}/light_c906_audio.bin ${DEPLOYDIR}/
  134. install -m 0755 ${WORKDIR}/light_c906_audio.elf ${DEPLOYDIR}/
  135. fi
  136. if [ ! -d ${DEPLOY_DIR_IMAGE}/.boot ]; then
  137. mkdir -p ${DEPLOY_DIR_IMAGE}/.boot
  138. fi
  139. if [ -f ${DEPLOYDIR}/fw_dynamic.bin ]; then
  140. cp -f ${DEPLOYDIR}/fw_dynamic.bin ${DEPLOY_DIR_IMAGE}/.boot
  141. fi
  142. if [ -f ${DEPLOYDIR}/light_aon_fpga.bin ]; then
  143. cp -f ${DEPLOYDIR}/light_aon_fpga.bin ${DEPLOY_DIR_IMAGE}/.boot
  144. fi
  145. if [ -f ${DEPLOYDIR}/light_c906_audio.bin ]; then
  146. cp -f ${DEPLOYDIR}/light_c906_audio.bin ${DEPLOY_DIR_IMAGE}/.boot
  147. fi
  148. dd if=/dev/zero of=${DEPLOY_DIR_IMAGE}/boot.ext4 count=10000 bs=4096
  149. mkfs.ext4 -F ${DEPLOY_DIR_IMAGE}/boot.ext4 -d ${DEPLOY_DIR_IMAGE}/.boot
  150. }
  151. do_deploy[nostamp] = "1"
  152. addtask deploy before do_build after do_install
  153. FILES:${PN} += " ${datadir} "
  154. PACKAGES = "${PN}"
  155. INSANE_SKIP:${PN} += " debug-files "