summaryrefslogtreecommitdiffstats
path: root/meta-xilinx-standalone-sdt
diff options
context:
space:
mode:
authorMark Hatle <mark.hatle@amd.com>2024-11-24 16:58:53 -0700
committerMark Hatle <mark.hatle@amd.com>2024-11-24 16:58:53 -0700
commit1d98f8981e3157aa265ca141a0fc9e6e2640394f (patch)
tree3923c7c04f92a75bbc4f0bb3c15b81019e830d75 /meta-xilinx-standalone-sdt
parentfc651966ac5add0bd5d4e2612c02368ff715621b (diff)
downloadmeta-xilinx-master.tar.gz
meta-xilinx-standalone: Rework embeddedsw integrationHEADmaster
Introduce a new embeddedsw-source recipe that is a single point for unpack, and patch of the sources. This will allow someone to universally patch (via a bbappend or similar) the esw sources. As part of this work, we transfered the various patches for fsbl, pmu, plm, and psm to the universe source recipe. Most of this is transparent to any recipe using xlnx-embeddedsw. The class automaticaly detects if the recipe is a user our the special embeddedsw-source recipe and enables the correct behavior. Since the esw sources expect the S and B to be the same, the cmake objects get written into S, we are not able to follow the gcc-source example. Instead recipes that use the xlnx-embeddedsw class will hard link or copy the source files to their working directory. This avoid the penalty for fetch, unpack and patch. Note these recipes may also add their own SRC_URI which WILL be processed as normal. This is often used to introduce special tcl scripts. See the do_copy_shared_src task injected by the xlnx-embeddedsw.bbclass for technical details. Additionally, correct some of the existing patch Upstream-Status entries to conform to current YP guidelines. For 2024.2 introduce a special Xil_Assert fix for the current toolchain which is more strict on type conversion.. See the patch itself for more details. Signed-off-by: Mark Hatle <mark.hatle@amd.com>
Diffstat (limited to 'meta-xilinx-standalone-sdt')
-rw-r--r--meta-xilinx-standalone-sdt/classes-recipe/esw.bbclass2
-rw-r--r--meta-xilinx-standalone-sdt/recipes-bsp/embeddedsw/esw-conf_2024.1.bb3
-rw-r--r--meta-xilinx-standalone-sdt/recipes-bsp/embeddedsw/esw-conf_2024.2.bb3
-rw-r--r--meta-xilinx-standalone-sdt/recipes-libraries/xilstandalone_2024.2.bb19
4 files changed, 9 insertions, 18 deletions
diff --git a/meta-xilinx-standalone-sdt/classes-recipe/esw.bbclass b/meta-xilinx-standalone-sdt/classes-recipe/esw.bbclass
index 644f3b49..7619c029 100644
--- a/meta-xilinx-standalone-sdt/classes-recipe/esw.bbclass
+++ b/meta-xilinx-standalone-sdt/classes-recipe/esw.bbclass
@@ -8,8 +8,6 @@ OECMAKE_ARGS:remove = "-DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=ON"
8 8
9SRCREV_FORMAT = "src_decouple" 9SRCREV_FORMAT = "src_decouple"
10 10
11S = "${UNPACKDIR}/git"
12B = "${WORKDIR}/build"
13OECMAKE_SOURCEPATH = "${S}/${ESW_COMPONENT_SRC}" 11OECMAKE_SOURCEPATH = "${S}/${ESW_COMPONENT_SRC}"
14LICFILENAME = "license.txt" 12LICFILENAME = "license.txt"
15 13
diff --git a/meta-xilinx-standalone-sdt/recipes-bsp/embeddedsw/esw-conf_2024.1.bb b/meta-xilinx-standalone-sdt/recipes-bsp/embeddedsw/esw-conf_2024.1.bb
index dbcbbc11..bd62913f 100644
--- a/meta-xilinx-standalone-sdt/recipes-bsp/embeddedsw/esw-conf_2024.1.bb
+++ b/meta-xilinx-standalone-sdt/recipes-bsp/embeddedsw/esw-conf_2024.1.bb
@@ -1,9 +1,6 @@
1# Can't depend on esw since this is needed for setup! 1# Can't depend on esw since this is needed for setup!
2inherit xlnx-embeddedsw 2inherit xlnx-embeddedsw
3 3
4S = "${UNPACKDIR}/git"
5B = "${WORKDIR}/build"
6
7INHIBIT_DEFAULT_DEPS = "1" 4INHIBIT_DEFAULT_DEPS = "1"
8 5
9# Installing this recipe should install the lopper tools and such 6# Installing this recipe should install the lopper tools and such
diff --git a/meta-xilinx-standalone-sdt/recipes-bsp/embeddedsw/esw-conf_2024.2.bb b/meta-xilinx-standalone-sdt/recipes-bsp/embeddedsw/esw-conf_2024.2.bb
index dbcbbc11..bd62913f 100644
--- a/meta-xilinx-standalone-sdt/recipes-bsp/embeddedsw/esw-conf_2024.2.bb
+++ b/meta-xilinx-standalone-sdt/recipes-bsp/embeddedsw/esw-conf_2024.2.bb
@@ -1,9 +1,6 @@
1# Can't depend on esw since this is needed for setup! 1# Can't depend on esw since this is needed for setup!
2inherit xlnx-embeddedsw 2inherit xlnx-embeddedsw
3 3
4S = "${UNPACKDIR}/git"
5B = "${WORKDIR}/build"
6
7INHIBIT_DEFAULT_DEPS = "1" 4INHIBIT_DEFAULT_DEPS = "1"
8 5
9# Installing this recipe should install the lopper tools and such 6# Installing this recipe should install the lopper tools and such
diff --git a/meta-xilinx-standalone-sdt/recipes-libraries/xilstandalone_2024.2.bb b/meta-xilinx-standalone-sdt/recipes-libraries/xilstandalone_2024.2.bb
index a4b0037b..ac2064ff 100644
--- a/meta-xilinx-standalone-sdt/recipes-libraries/xilstandalone_2024.2.bb
+++ b/meta-xilinx-standalone-sdt/recipes-libraries/xilstandalone_2024.2.bb
@@ -5,17 +5,16 @@ ESW_COMPONENT_NAME = "libxilstandalone.a"
5 5
6DEPENDS += "libgloss" 6DEPENDS += "libgloss"
7 7
8S = "${B}"
9
8do_configure:prepend() { 10do_configure:prepend() {
9 # This script should also not rely on relative paths and such 11 # This script should also not rely on relative paths and such
10 ( 12 lopper ${DTS_FILE} -- baremetal_bspconfig_xlnx ${ESW_MACHINE} ${B}/${ESW_COMPONENT_SRC}
11 cd ${S} 13 install -m 0755 MemConfig.cmake ${B}/${ESW_COMPONENT_SRC}/
12 lopper ${DTS_FILE} -- baremetal_bspconfig_xlnx ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} 14 install -m 0755 *.c ${B}/${ESW_COMPONENT_SRC}
13 install -m 0755 MemConfig.cmake ${S}/${ESW_COMPONENT_SRC}/ 15 lopper ${DTS_FILE} -- bmcmake_metadata_xlnx ${ESW_MACHINE} ${B}/${ESW_COMPONENT_SRC} hwcmake_metadata ${B}
14 install -m 0755 *.c ${S}/${ESW_COMPONENT_SRC} 16 install -m 0755 StandaloneExample.cmake ${B}/${ESW_COMPONENT_SRC}/common/
15 lopper ${DTS_FILE} -- bmcmake_metadata_xlnx ${ESW_MACHINE} ${S}/${ESW_COMPONENT_SRC} hwcmake_metadata ${S} 17 LOPPER_DTC_FLAGS="-b 0 -@" lopper ${DTS_FILE} -- baremetal_xparameters_xlnx.py ${ESW_MACHINE} ${B}
16 install -m 0755 StandaloneExample.cmake ${S}/${ESW_COMPONENT_SRC}/common/ 18 install -m 0755 xparameters.h ${B}/${ESW_COMPONENT_SRC}/common/
17 LOPPER_DTC_FLAGS="-b 0 -@" lopper ${DTS_FILE} -- baremetal_xparameters_xlnx.py ${ESW_MACHINE} ${S}
18 install -m 0755 xparameters.h ${S}/${ESW_COMPONENT_SRC}/common/
19 )
20 19
21} 20}