diff options
author | Mark Hatle <mark.hatle@amd.com> | 2023-05-18 13:18:29 -0600 |
---|---|---|
committer | Mark Hatle <mark.hatle@amd.com> | 2023-05-18 14:59:03 -0600 |
commit | 96363a1fada8f5dca874917e47899e7f6dd26b43 (patch) | |
tree | 60a031689d7c6bb11640136a00e2e44eedfc3868 /meta-xilinx-core | |
parent | fe4b15d97e0b5ce73cd3186ac3e380df07c9d1ca (diff) | |
parent | d4732aa636e6764c64030083a20975283c2352d5 (diff) | |
download | meta-xilinx-96363a1fada8f5dca874917e47899e7f6dd26b43.tar.gz |
Merge remote-tracking branch 'origin/rel-v2023.1'
Resolved conflicts
Preserved 2022* versions
Signed-off-by: Mark Hatle <mark.hatle@amd.com>
Diffstat (limited to 'meta-xilinx-core')
47 files changed, 978 insertions, 32 deletions
diff --git a/meta-xilinx-core/classes/gen-machine-conf.bbclass b/meta-xilinx-core/classes/gen-machine-conf.bbclass new file mode 100644 index 00000000..25960cd1 --- /dev/null +++ b/meta-xilinx-core/classes/gen-machine-conf.bbclass | |||
@@ -0,0 +1,6 @@ | |||
1 | #Add scripts path with the tools to PATH to be able to use from eSDK | ||
2 | sdk_ext_postinst:append() { | ||
3 | if [ -d $target_sdk_dir/layers/meta-xilinx/meta-xilinx-core/gen-machine-conf ]; then | ||
4 | echo "export PATH=$target_sdk_dir/layers/meta-xilinx/meta-xilinx-core/gen-machine-conf:\$PATH" >> $env_setup_script | ||
5 | fi | ||
6 | } | ||
diff --git a/meta-xilinx-core/conf/layer.conf b/meta-xilinx-core/conf/layer.conf index 5f0c939f..36f445ac 100644 --- a/meta-xilinx-core/conf/layer.conf +++ b/meta-xilinx-core/conf/layer.conf | |||
@@ -41,12 +41,13 @@ SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS += " \ | |||
41 | *->xserver-xorg \ | 41 | *->xserver-xorg \ |
42 | " | 42 | " |
43 | 43 | ||
44 | XILINX_RELEASE_VERSION ??= "v2022.2" | 44 | XILINX_RELEASE_VERSION ??= "v2023.1" |
45 | 45 | ||
46 | BUILDCFG_VARS:append = " SOC_VARIANT XILINX_RELEASE_VERSION" | 46 | BUILDCFG_VARS:append = " SOC_VARIANT XILINX_RELEASE_VERSION" |
47 | 47 | ||
48 | XILINX_QEMU_VERSION[v2022.1] = "v7.1.0-xilinx-v2022.1%" | 48 | XILINX_QEMU_VERSION[v2022.1] = "v7.1.0-xilinx-v2022.1%" |
49 | XILINX_QEMU_VERSION[v2022.2] = "v7.1.0-xilinx-v2022.2%" | 49 | XILINX_QEMU_VERSION[v2022.2] = "v7.1.0-xilinx-v2022.2%" |
50 | XILINX_QEMU_VERSION[v2023.1] = "v7.1.0-xilinx-v2023.1%" | ||
50 | PREFERRED_VERSION_qemu-xilinx ?= "${@d.getVarFlag('XILINX_QEMU_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" | 51 | PREFERRED_VERSION_qemu-xilinx ?= "${@d.getVarFlag('XILINX_QEMU_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" |
51 | PREFERRED_VERSION_qemu-xilinx-native ?= "${@d.getVarFlag('XILINX_QEMU_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" | 52 | PREFERRED_VERSION_qemu-xilinx-native ?= "${@d.getVarFlag('XILINX_QEMU_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" |
52 | PREFERRED_VERSION_qemu-xilinx-system-native ?= "${@d.getVarFlag('XILINX_QEMU_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" | 53 | PREFERRED_VERSION_qemu-xilinx-system-native ?= "${@d.getVarFlag('XILINX_QEMU_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" |
@@ -54,14 +55,21 @@ PREFERRED_VERSION_qemu-devicetrees ?= "xilinx-${XILINX_RELEASE_VERSION}%" | |||
54 | 55 | ||
55 | XILINX_ATF_VERSION[v2022.1] = "2.6-xilinx-v2022.1%" | 56 | XILINX_ATF_VERSION[v2022.1] = "2.6-xilinx-v2022.1%" |
56 | XILINX_ATF_VERSION[v2022.2] = "2.6-xilinx-v2022.2%" | 57 | XILINX_ATF_VERSION[v2022.2] = "2.6-xilinx-v2022.2%" |
58 | XILINX_ATF_VERSION[v2023.1] = "2.8-xilinx-v2023.1%" | ||
57 | PREFERRED_VERSION_arm-trusted-firmware ?= "${@d.getVarFlag('XILINX_ATF_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" | 59 | PREFERRED_VERSION_arm-trusted-firmware ?= "${@d.getVarFlag('XILINX_ATF_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" |
58 | 60 | ||
59 | XILINX_UBOOT_VERSION[v2022.1] = "v2021.01-xilinx-v2022.1%" | 61 | XILINX_UBOOT_VERSION[v2022.1] = "v2021.01-xilinx-v2022.1%" |
60 | XILINX_UBOOT_VERSION[v2022.2] = "v2021.01-xilinx-v2022.2%" | 62 | XILINX_UBOOT_VERSION[v2022.2] = "v2021.01-xilinx-v2022.2%" |
63 | XILINX_UBOOT_VERSION[v2023.1] = "v2023.01-xilinx-v2023.1%" | ||
61 | 64 | ||
62 | PREFERRED_VERSION_u-boot-xlnx ?= "${@d.getVarFlag('XILINX_UBOOT_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" | 65 | PREFERRED_VERSION_u-boot-xlnx ?= "${@d.getVarFlag('XILINX_UBOOT_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" |
63 | PREFERRED_VERSION_u-boot-tools-xlnx ?= "${@d.getVarFlag('XILINX_UBOOT_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" | 66 | PREFERRED_VERSION_u-boot-tools-xlnx ?= "${@d.getVarFlag('XILINX_UBOOT_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" |
64 | 67 | ||
65 | XILINX_LINUX_VERSION[v2022.1] = "5.15.19-xilinx-v2022.1%" | 68 | XILINX_LINUX_VERSION[v2022.1] = "5.15.19-xilinx-v2022.1%" |
66 | XILINX_LINUX_VERSION[v2022.2] = "5.15.36-xilinx-v2022.2%" | 69 | XILINX_LINUX_VERSION[v2022.2] = "5.15.36-xilinx-v2022.2%" |
70 | XILINX_LINUX_VERSION[v2023.1] = "6.1.5-xilinx-v2023.1%" | ||
67 | PREFERRED_VERSION_linux-xlnx ?= "${@d.getVarFlag('XILINX_LINUX_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" | 71 | PREFERRED_VERSION_linux-xlnx ?= "${@d.getVarFlag('XILINX_LINUX_VERSION', d.getVar('XILINX_RELEASE_VERSION')) or 'undefined'}" |
72 | |||
73 | # Add support to eSDK for gen-machine-conf if it exists | ||
74 | PLNX_SCRIPTS_PATH = "${LAYERDIR}/gen-machine-conf/gen-machine-scripts" | ||
75 | IMAGE_CLASSES += "gen-machine-conf" | ||
diff --git a/meta-xilinx-core/dynamic-layers/openamp-layer/recipes-bsp/device-tree/open-amp-device-tree.bb b/meta-xilinx-core/dynamic-layers/openamp-layer/recipes-bsp/device-tree/open-amp-device-tree.bb index 9f481fec..8f77bd54 100644 --- a/meta-xilinx-core/dynamic-layers/openamp-layer/recipes-bsp/device-tree/open-amp-device-tree.bb +++ b/meta-xilinx-core/dynamic-layers/openamp-layer/recipes-bsp/device-tree/open-amp-device-tree.bb | |||
@@ -11,8 +11,6 @@ SRC_URI = " \ | |||
11 | file://zynqmp-openamp-overlay.dts \ | 11 | file://zynqmp-openamp-overlay.dts \ |
12 | file://versal-openamp.dtsi \ | 12 | file://versal-openamp.dtsi \ |
13 | file://versal-openamp-overlay.dts \ | 13 | file://versal-openamp-overlay.dts \ |
14 | file://versal-net-openamp.dtsi \ | ||
15 | file://versal-net-openamp-overlay.dts \ | ||
16 | " | 14 | " |
17 | 15 | ||
18 | # We don't have anything to include from the kernel | 16 | # We don't have anything to include from the kernel |
@@ -21,7 +19,6 @@ KERNEL_INCLUDE = "" | |||
21 | COMPATIBLE_MACHINE:zynq = "${MACHINE}" | 19 | COMPATIBLE_MACHINE:zynq = "${MACHINE}" |
22 | COMPATIBLE_MACHINE:zynqmp = "${MACHINE}" | 20 | COMPATIBLE_MACHINE:zynqmp = "${MACHINE}" |
23 | COMPATIBLE_MACHINE:versal = "${MACHINE}" | 21 | COMPATIBLE_MACHINE:versal = "${MACHINE}" |
24 | COMPATIBLE_MACHINE:versal-net = "${MACHINE}" | ||
25 | 22 | ||
26 | inherit devicetree image-artifact-names features_check | 23 | inherit devicetree image-artifact-names features_check |
27 | 24 | ||
diff --git a/meta-xilinx-core/dynamic-layers/openamp-layer/recipes-openamp/libmetal/libmetal-xlnx_v2023.1.bb b/meta-xilinx-core/dynamic-layers/openamp-layer/recipes-openamp/libmetal/libmetal-xlnx_v2023.1.bb new file mode 100644 index 00000000..30ca3501 --- /dev/null +++ b/meta-xilinx-core/dynamic-layers/openamp-layer/recipes-openamp/libmetal/libmetal-xlnx_v2023.1.bb | |||
@@ -0,0 +1,15 @@ | |||
1 | SRCBRANCH ?= "2023.1" | ||
2 | SRCREV = "be635252271de342014a146825870b64bd41d6eb" | ||
3 | BRANCH = "xlnx_rel_v2023.1" | ||
4 | LIC_FILES_CHKSUM ?= "file://LICENSE.md;md5=f4d5df0f12dcea1b1a0124219c0dbab4" | ||
5 | PV = "${SRCBRANCH}+git${SRCPV}" | ||
6 | |||
7 | REPO = "git://github.com/Xilinx/libmetal.git;protocol=https" | ||
8 | |||
9 | include ${LAYER_PATH_openamp-layer}/recipes-openamp/libmetal/libmetal.inc | ||
10 | |||
11 | RPROVIDES:${PN}-dbg += "libmetal-dbg" | ||
12 | RPROVIDES:${PN}-dev += "libmetal-dev" | ||
13 | RPROVIDES:${PN}-lic += "libmetal-lic" | ||
14 | RPROVIDES:${PN}-src += "libmetal-src" | ||
15 | RPROVIDES:${PN}-staticdev += "libmetal-staticdev" | ||
diff --git a/meta-xilinx-core/dynamic-layers/openamp-layer/recipes-openamp/open-amp/open-amp-xlnx_v2023.1.bb b/meta-xilinx-core/dynamic-layers/openamp-layer/recipes-openamp/open-amp/open-amp-xlnx_v2023.1.bb new file mode 100644 index 00000000..e295b869 --- /dev/null +++ b/meta-xilinx-core/dynamic-layers/openamp-layer/recipes-openamp/open-amp/open-amp-xlnx_v2023.1.bb | |||
@@ -0,0 +1,16 @@ | |||
1 | SRCBRANCH ?= "2023.1" | ||
2 | SRCREV = "c8aaf2f26d5493f492f0af09dd558d45908636da" | ||
3 | BRANCH = "xlnx_rel_v2023.1" | ||
4 | LIC_FILES_CHKSUM ?= "file://LICENSE.md;md5=ab88daf995c0bd0071c2e1e55f3d3505" | ||
5 | PV = "${SRCBRANCH}+git${SRCPV}" | ||
6 | REPO = "git://github.com/Xilinx/open-amp.git;protocol=https" | ||
7 | |||
8 | include ${LAYER_PATH_openamp-layer}/recipes-openamp/open-amp/open-amp.inc | ||
9 | require ${LAYER_PATH_openamp-layer}/vendor/xilinx/recipes-openamp/open-amp/open-amp-xlnx.inc | ||
10 | |||
11 | RPROVIDES:${PN}-dbg += "open-amp-dbg" | ||
12 | RPROVIDES:${PN}-dev += "open-amp-dev" | ||
13 | RPROVIDES:${PN}-lic += "open-amp-lic" | ||
14 | RPROVIDES:${PN}-src += "open-amp-src" | ||
15 | RPROVIDES:${PN}-staticdev += "open-amp-staticdev" | ||
16 | |||
diff --git a/meta-xilinx-core/dynamic-layers/virtualization-layer/recipes-kernel/lopper/lopper_git.bbappend b/meta-xilinx-core/dynamic-layers/virtualization-layer/recipes-kernel/lopper/lopper_git.bbappend index db4f4820..0440b1bc 100644 --- a/meta-xilinx-core/dynamic-layers/virtualization-layer/recipes-kernel/lopper/lopper_git.bbappend +++ b/meta-xilinx-core/dynamic-layers/virtualization-layer/recipes-kernel/lopper/lopper_git.bbappend | |||
@@ -1,5 +1,7 @@ | |||
1 | SRC_URI = "git://github.com/devicetree-org/lopper.git;branch=v0.2022.x;protocol=https" | 1 | SRC_URI = "git://github.com/devicetree-org/lopper.git;branch=master;protocol=https" |
2 | SRCREV = "cdb1a7b55c375f5237683a512257e0fc573063a2" | 2 | SRCREV = "395f00d44ee259d5db6fd6165c6cd18c8fe40e2f" |
3 | |||
4 | FILESEXTRAPATHS:prepend := "${THISDIR}/lopper:" | ||
3 | 5 | ||
4 | BASEVERSION = "1.1.0" | 6 | BASEVERSION = "1.1.0" |
5 | 7 | ||
diff --git a/meta-xilinx-core/gen-machine-conf b/meta-xilinx-core/gen-machine-conf new file mode 160000 | |||
Subproject a08b0e9e88b4c70336b12d57d4704343474d608 | |||
diff --git a/meta-xilinx-core/recipes-bsp/ai-engine/ai-engine-driver_3.2.bb b/meta-xilinx-core/recipes-bsp/ai-engine/ai-engine-driver_3.2.bb index 787111b5..810b51fd 100644 --- a/meta-xilinx-core/recipes-bsp/ai-engine/ai-engine-driver_3.2.bb +++ b/meta-xilinx-core/recipes-bsp/ai-engine/ai-engine-driver_3.2.bb | |||
@@ -1,7 +1,7 @@ | |||
1 | SUMMARY = "Xilinx AI Engine runtime" | 1 | SUMMARY = "Xilinx AI Engine runtime" |
2 | DESCRIPTION = "This library provides APIs for the runtime support of the Xilinx AI Engine IP" | 2 | DESCRIPTION = "This library provides APIs for the runtime support of the Xilinx AI Engine IP" |
3 | 3 | ||
4 | require aie-rt.inc | 4 | require aie-rt-2022.inc |
5 | 5 | ||
6 | SECTION = "libs" | 6 | SECTION = "libs" |
7 | 7 | ||
diff --git a/meta-xilinx-core/recipes-bsp/ai-engine/ai-engine-driver_3.3.bb b/meta-xilinx-core/recipes-bsp/ai-engine/ai-engine-driver_3.3.bb new file mode 100644 index 00000000..6a4fd880 --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/ai-engine/ai-engine-driver_3.3.bb | |||
@@ -0,0 +1,47 @@ | |||
1 | SUMMARY = "Xilinx AI Engine runtime" | ||
2 | DESCRIPTION = "This library provides APIs for the runtime support of the Xilinx AI Engine IP" | ||
3 | |||
4 | require aie-rt.inc | ||
5 | |||
6 | SECTION = "libs" | ||
7 | |||
8 | AIEDIR ?= "${S}/driver" | ||
9 | S = "${WORKDIR}/git" | ||
10 | I = "${AIEDIR}/include" | ||
11 | |||
12 | COMPATIBLE_MACHINE = "^$" | ||
13 | COMPATIBLE_MACHINE:versal-ai-core = "versal-ai-core" | ||
14 | COMPATIBLE_MACHINE:versal-ai-edge = "${SOC_VARIANT_ARCH}" | ||
15 | PV = "3.3" | ||
16 | |||
17 | IOBACKENDS ?= "Linux" | ||
18 | |||
19 | DEPENDS = "${@bb.utils.contains('IOBACKENDS', 'metal', 'libmetal', '', d)}" | ||
20 | RDEPENDS:${PN} = "${@bb.utils.contains('IOBACKENDS', 'metal', 'libmetal', '', d)}" | ||
21 | |||
22 | PROVIDES = "libxaiengine" | ||
23 | RPROVIDES:${PN} = "libxaiengine" | ||
24 | |||
25 | # The makefile isn't ready for parallel execution at the moment | ||
26 | PARALLEL_MAKE = "-j 1" | ||
27 | |||
28 | CFLAGS += "-Wall -Wextra -fno-thread-jumps -fno-tree-pre" | ||
29 | CFLAGS += "${@bb.utils.contains('IOBACKENDS', 'Linux', ' -D__AIELINUX__', '', d)}" | ||
30 | CFLAGS += "${@bb.utils.contains('IOBACKENDS', 'metal', ' -D__AIEMETAL__', '', d)}" | ||
31 | EXTRA_OEMAKE = "-C ${AIEDIR}/src -f Makefile.Linux CFLAGS='${CFLAGS}'" | ||
32 | |||
33 | |||
34 | do_compile(){ | ||
35 | oe_runmake | ||
36 | } | ||
37 | |||
38 | do_install(){ | ||
39 | install -d ${D}${includedir} | ||
40 | install ${I}/*.h ${D}${includedir}/ | ||
41 | install -d ${D}${includedir}/xaiengine | ||
42 | install ${I}/xaiengine/*.h ${D}${includedir}/xaiengine/ | ||
43 | install -d ${D}${libdir} | ||
44 | cp -dr ${AIEDIR}/src/*.so* ${D}${libdir} | ||
45 | } | ||
46 | |||
47 | PACKAGE_ARCH:versal-ai-core = "${SOC_VARIANT_ARCH}" | ||
diff --git a/meta-xilinx-core/recipes-bsp/ai-engine/aie-rt-2022.inc b/meta-xilinx-core/recipes-bsp/ai-engine/aie-rt-2022.inc new file mode 100644 index 00000000..85121654 --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/ai-engine/aie-rt-2022.inc | |||
@@ -0,0 +1,11 @@ | |||
1 | SECTION = "libs" | ||
2 | |||
3 | REPO ?= "git://github.com/Xilinx/aie-rt.git;protocol=https" | ||
4 | |||
5 | BRANCH ?= "xlnx_rel_v2022.2" | ||
6 | SRCREV ?= "ae24c8ede049906323510693f37e6167a963fd0e" | ||
7 | |||
8 | LICENSE = "BSD-3-Clause" | ||
9 | LIC_FILES_CHKSUM ?= "file://license.txt;md5=b81abf1f508952331dd7d2ab36408f5b" | ||
10 | |||
11 | SRC_URI = "${REPO};branch=${BRANCH}" | ||
diff --git a/meta-xilinx-core/recipes-bsp/ai-engine/aie-rt.inc b/meta-xilinx-core/recipes-bsp/ai-engine/aie-rt.inc index 85121654..5eeb69d4 100644 --- a/meta-xilinx-core/recipes-bsp/ai-engine/aie-rt.inc +++ b/meta-xilinx-core/recipes-bsp/ai-engine/aie-rt.inc | |||
@@ -2,8 +2,8 @@ SECTION = "libs" | |||
2 | 2 | ||
3 | REPO ?= "git://github.com/Xilinx/aie-rt.git;protocol=https" | 3 | REPO ?= "git://github.com/Xilinx/aie-rt.git;protocol=https" |
4 | 4 | ||
5 | BRANCH ?= "xlnx_rel_v2022.2" | 5 | BRANCH ?= "xlnx_rel_v2023.1" |
6 | SRCREV ?= "ae24c8ede049906323510693f37e6167a963fd0e" | 6 | SRCREV ?= "1ad203de0b7f282b1c0659fd2ae3f218652c7274" |
7 | 7 | ||
8 | LICENSE = "BSD-3-Clause" | 8 | LICENSE = "BSD-3-Clause" |
9 | LIC_FILES_CHKSUM ?= "file://license.txt;md5=b81abf1f508952331dd7d2ab36408f5b" | 9 | LIC_FILES_CHKSUM ?= "file://license.txt;md5=b81abf1f508952331dd7d2ab36408f5b" |
diff --git a/meta-xilinx-core/recipes-bsp/ai-engine/aiefal_1.0.bb b/meta-xilinx-core/recipes-bsp/ai-engine/aiefal_1.0.bb index 641c39a9..7bb4b849 100644 --- a/meta-xilinx-core/recipes-bsp/ai-engine/aiefal_1.0.bb +++ b/meta-xilinx-core/recipes-bsp/ai-engine/aiefal_1.0.bb | |||
@@ -1,7 +1,7 @@ | |||
1 | SUMMARY = "Xilinx AI Engine FAL(Functional Abstraction Layer)" | 1 | SUMMARY = "Xilinx AI Engine FAL(Functional Abstraction Layer)" |
2 | DESCRIPTION = "AIE FAL provides functional abstraction APIs for runtime support of Xilinx AI Engine IP" | 2 | DESCRIPTION = "AIE FAL provides functional abstraction APIs for runtime support of Xilinx AI Engine IP" |
3 | 3 | ||
4 | require aie-rt.inc | 4 | require aie-rt-2022.inc |
5 | 5 | ||
6 | SECTION = "devel" | 6 | SECTION = "devel" |
7 | 7 | ||
diff --git a/meta-xilinx-core/recipes-bsp/ai-engine/aiefal_1.4.bb b/meta-xilinx-core/recipes-bsp/ai-engine/aiefal_1.4.bb new file mode 100644 index 00000000..641c39a9 --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/ai-engine/aiefal_1.4.bb | |||
@@ -0,0 +1,33 @@ | |||
1 | SUMMARY = "Xilinx AI Engine FAL(Functional Abstraction Layer)" | ||
2 | DESCRIPTION = "AIE FAL provides functional abstraction APIs for runtime support of Xilinx AI Engine IP" | ||
3 | |||
4 | require aie-rt.inc | ||
5 | |||
6 | SECTION = "devel" | ||
7 | |||
8 | XAIEFAL_DIR ?= "fal" | ||
9 | S = "${WORKDIR}/git" | ||
10 | |||
11 | COMPATIBLE_MACHINE = "^$" | ||
12 | COMPATIBLE_MACHINE:versal-ai-core = "versal-ai-core" | ||
13 | COMPATIBLE_MACHINE:versal-ai-edge = "${SOC_VARIANT_ARCH}" | ||
14 | |||
15 | IOBACKENDS ?= "Linux" | ||
16 | |||
17 | PROVIDES = "aiefal" | ||
18 | ALLOW_EMPTY:${PN} = "1" | ||
19 | |||
20 | inherit pkgconfig cmake | ||
21 | |||
22 | DEPENDS = "libxaiengine" | ||
23 | |||
24 | OECMAKE_SOURCEPATH = "${S}/${XAIEFAL_DIR}" | ||
25 | |||
26 | EXTRA_OECMAKE = "-DWITH_TESTS=OFF " | ||
27 | EXTRA_OECMAKE:append = "${@'-DWITH_EXAMPLES=ON' if d.getVar('WITH_EXAMPLES') == 'y' else '-DWITH_EXAMPLES=OFF'}" | ||
28 | |||
29 | FILES:${PN}-demos = " \ | ||
30 | ${bindir}/* \ | ||
31 | " | ||
32 | |||
33 | PACKAGE_ARCH:versal-ai-core = "${SOC_VARIANT_ARCH}" | ||
diff --git a/meta-xilinx-core/recipes-bsp/arm-trusted-firmware/arm-trusted-firmware_2023.1.bb b/meta-xilinx-core/recipes-bsp/arm-trusted-firmware/arm-trusted-firmware_2023.1.bb new file mode 100644 index 00000000..2bcbe7d4 --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/arm-trusted-firmware/arm-trusted-firmware_2023.1.bb | |||
@@ -0,0 +1,8 @@ | |||
1 | ATF_VERSION = "2.8" | ||
2 | SRCREV = "c9b71dc96f3f18ca94cad590612aae3224c8c84d" | ||
3 | BRANCH = "xlnx_rebase_v2.8" | ||
4 | LIC_FILES_CHKSUM = "file://license.rst;md5=1dd070c98a281d18d9eefd938729b031" | ||
5 | |||
6 | |||
7 | include arm-trusted-firmware.inc | ||
8 | |||
diff --git a/meta-xilinx-core/recipes-bsp/bootgen/bootgen_2023.1.bb b/meta-xilinx-core/recipes-bsp/bootgen/bootgen_2023.1.bb new file mode 100644 index 00000000..a934230d --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/bootgen/bootgen_2023.1.bb | |||
@@ -0,0 +1,31 @@ | |||
1 | SUMMARY = "Building and installing bootgen" | ||
2 | DESCRIPTION = "Building and installing bootgen, a Xilinx tool that lets you stitch binary files together and generate device boot images" | ||
3 | |||
4 | LICENSE = "Apache-2.0" | ||
5 | LIC_FILES_CHKSUM = "file://LICENSE;md5=d526b6d0807bf263b97da1da876f39b1" | ||
6 | |||
7 | S = "${WORKDIR}/git" | ||
8 | |||
9 | DEPENDS += "openssl" | ||
10 | RDEPENDS:${PN} += "openssl" | ||
11 | |||
12 | REPO ?= "git://github.com/Xilinx/bootgen.git;protocol=https" | ||
13 | BRANCH = "xlnx_rel_v2023.1" | ||
14 | SRCREV = "4f1e1caf2c09cdeacc35cbeedaf2550c6e44c7fd" | ||
15 | |||
16 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
17 | SRC_URI = "${REPO};${BRANCHARG}" | ||
18 | |||
19 | EXTRA_OEMAKE += 'CROSS_COMPILER="${CXX}" -C ${S}' | ||
20 | CXXFLAGS:append = " -std=c++0x" | ||
21 | |||
22 | TARGET_CC_ARCH += "${LDFLAGS}" | ||
23 | |||
24 | do_install() { | ||
25 | install -d ${D}${bindir} | ||
26 | install -Dm 0755 ${S}/bootgen ${D}${bindir} | ||
27 | } | ||
28 | |||
29 | FILES:${PN} = "${bindir}/bootgen" | ||
30 | |||
31 | BBCLASSEXTEND = "native nativesdk" | ||
diff --git a/meta-xilinx-core/recipes-bsp/dfx-mgr/dfx-mgr_2023.1.bb b/meta-xilinx-core/recipes-bsp/dfx-mgr/dfx-mgr_2023.1.bb new file mode 100644 index 00000000..a4149d39 --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/dfx-mgr/dfx-mgr_2023.1.bb | |||
@@ -0,0 +1,72 @@ | |||
1 | SUMMARY = "Xilinx dfx-mgr libraries" | ||
2 | DESCRIPTION = "Xilinx Runtime User Space Libraries and Binaries" | ||
3 | |||
4 | LICENSE = "MIT" | ||
5 | LIC_FILES_CHKSUM = "file://LICENSE;md5=d67bcef754e935bf77b6d7051bd62b5e" | ||
6 | |||
7 | REPO ?= "git://github.com/Xilinx/dfx-mgr.git;protocol=https" | ||
8 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
9 | SRC_URI = "${REPO};${BRANCHARG}" | ||
10 | |||
11 | BRANCH = "xlnx_rel_v2023.1" | ||
12 | SRCREV = "5918fb3406d828693cca484b77229ffd031b5dc4" | ||
13 | SOMAJOR = "1" | ||
14 | SOMINOR = "0" | ||
15 | SOVERSION = "${SOMAJOR}.${SOMINOR}" | ||
16 | |||
17 | COMPATIBLE_MACHINE = "^$" | ||
18 | COMPATIBLE_MACHINE:zynqmp = "zynqmp" | ||
19 | COMPATIBLE_MACHINE:versal = "versal" | ||
20 | |||
21 | S = "${WORKDIR}/git" | ||
22 | |||
23 | inherit cmake update-rc.d systemd | ||
24 | |||
25 | DEPENDS += " libwebsockets inotify-tools libdfx zocl libdrm" | ||
26 | RDEPENDS:${PN} += " freeipmi" | ||
27 | EXTRA_OECMAKE += " \ | ||
28 | -DCMAKE_SYSROOT:PATH=${RECIPE_SYSROOT} \ | ||
29 | " | ||
30 | |||
31 | INITSCRIPT_NAME = "dfx-mgr.sh" | ||
32 | INITSCRIPT_PARAMS = "start 99 S ." | ||
33 | |||
34 | SYSTEMD_PACKAGES="${PN}" | ||
35 | SYSTEMD_SERVICE:${PN}="dfx-mgr.service" | ||
36 | SYSTEMD_AUTO_ENABLE:${PN}="enable" | ||
37 | |||
38 | |||
39 | do_install(){ | ||
40 | install -d ${D}${bindir} | ||
41 | install -d ${D}${libdir} | ||
42 | install -d ${D}${includedir} | ||
43 | install -d ${D}${base_libdir}/firmware/xilinx | ||
44 | install -d ${D}${sysconfdir}/dfx-mgrd | ||
45 | |||
46 | cp ${B}/example/sys/linux/dfx-mgrd-static ${D}${bindir}/dfx-mgrd | ||
47 | cp ${B}/example/sys/linux/dfx-mgr-client-static ${D}${bindir}/dfx-mgr-client | ||
48 | chrpath -d ${D}${bindir}/dfx-mgrd | ||
49 | chrpath -d ${D}${bindir}/dfx-mgr-client | ||
50 | install -m 0644 ${S}/src/dfxmgr_client.h ${D}${includedir} | ||
51 | |||
52 | oe_soinstall ${B}/src/libdfx-mgr.so.${SOVERSION} ${D}${libdir} | ||
53 | |||
54 | install -m 0755 ${S}/src/daemon.conf ${D}${sysconfdir}/dfx-mgrd/ | ||
55 | |||
56 | if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then | ||
57 | install -d ${D}${sysconfdir}/init.d/ | ||
58 | install -m 0755 ${S}/src/dfx-mgr.sh ${D}${sysconfdir}/init.d/ | ||
59 | fi | ||
60 | |||
61 | install -m 0755 ${S}/src/dfx-mgr.sh ${D}${bindir} | ||
62 | install -m 0755 ${S}/src/scripts/xlnx-firmware-detect ${D}${bindir} | ||
63 | |||
64 | install -d ${D}${systemd_system_unitdir} | ||
65 | install -m 0644 ${S}/src/dfx-mgr.service ${D}${systemd_system_unitdir} | ||
66 | } | ||
67 | |||
68 | PACKAGES =+ "libdfx-mgr" | ||
69 | |||
70 | FILES:${PN} += "${base_libdir}/firmware/xilinx" | ||
71 | FILES:${PN} += "${@bb.utils.contains('DISTRO_FEATURES','sysvinit','${sysconfdir}/init.d/dfx-mgr.sh', '', d)} ${systemd_system_unitdir}" | ||
72 | FILES:libdfx-mgr = "${libdir}/libdfx-mgr.so.${SOVERSION} ${libdir}/libdfx-mgr.so.${SOMAJOR}" | ||
diff --git a/meta-xilinx-core/recipes-bsp/libdfx/libdfx_2023.1.bb b/meta-xilinx-core/recipes-bsp/libdfx/libdfx_2023.1.bb new file mode 100644 index 00000000..287246c2 --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/libdfx/libdfx_2023.1.bb | |||
@@ -0,0 +1,23 @@ | |||
1 | SUMMARY = "Xilinx libdfx library" | ||
2 | DESCRIPTION = "Xilinx libdfx Library and headers" | ||
3 | |||
4 | LICENSE = "MIT & GPL-2.0-or-later" | ||
5 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=94aba86aec117f003b958a52f019f1a7" | ||
6 | |||
7 | BRANCH ?= "xlnx_rel_v2023.1" | ||
8 | REPO ?= "git://github.com/Xilinx/libdfx.git;protocol=https" | ||
9 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
10 | SRC_URI = "${REPO};${BRANCHARG}" | ||
11 | SRCREV = "52c1d83c72a2b2e85d256411a199ed1baed12ae1" | ||
12 | |||
13 | COMPATIBLE_MACHINE = "^$" | ||
14 | COMPATIBLE_MACHINE:zynqmp = "zynqmp" | ||
15 | COMPATIBLE_MACHINE:versal = "versal" | ||
16 | |||
17 | S = "${WORKDIR}/git" | ||
18 | |||
19 | inherit cmake | ||
20 | |||
21 | # Due to an update where the soname/version was defined, we need to use an RREPLACES | ||
22 | # so updates will work properly. | ||
23 | RREPLACES:${PN} = "libdfx" | ||
diff --git a/meta-xilinx-core/recipes-bsp/u-boot/u-boot-tools-xlnx_2023.1.bb b/meta-xilinx-core/recipes-bsp/u-boot/u-boot-tools-xlnx_2023.1.bb new file mode 100644 index 00000000..fe5ecf79 --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/u-boot/u-boot-tools-xlnx_2023.1.bb | |||
@@ -0,0 +1,21 @@ | |||
1 | require u-boot-tools-xlnx.inc | ||
2 | require u-boot-xlnx-2023.1.inc | ||
3 | |||
4 | # MUST clear CONFIG_VIDEO to avoid a compilation failure trying to construct | ||
5 | # bmp_logo.h | ||
6 | SED_CONFIG_EFI:append = ' -e "s/CONFIG_VIDEO=.*/# CONFIG_VIDEO is not set/"' | ||
7 | |||
8 | # Default do_compile fails with: | ||
9 | # | error: object directory ../downloads/git2/github.com.Xilinx.u-boot-xlnx.git/objects does not exist; check .git/objects/info/alternates. | ||
10 | # The regular workaround of calling 'git diff' seems to be problematic. | ||
11 | do_compile () { | ||
12 | oe_runmake -C ${S} tools-only_defconfig O=${B} | ||
13 | |||
14 | # Disable CONFIG_CMD_LICENSE, license.h is not used by tools and | ||
15 | # generating it requires bin2header tool, which for target build | ||
16 | # is built with target tools and thus cannot be executed on host. | ||
17 | sed -i -e "s/CONFIG_CMD_LICENSE=.*/# CONFIG_CMD_LICENSE is not set/" ${SED_CONFIG_EFI} ${B}/.config | ||
18 | |||
19 | oe_runmake -C ${S} cross_tools NO_SDL=1 O=${B} | ||
20 | } | ||
21 | |||
diff --git a/meta-xilinx-core/recipes-bsp/u-boot/u-boot-v2023.01/microblaze-generic-top.h b/meta-xilinx-core/recipes-bsp/u-boot/u-boot-v2023.01/microblaze-generic-top.h new file mode 100644 index 00000000..be823421 --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/u-boot/u-boot-v2023.01/microblaze-generic-top.h | |||
@@ -0,0 +1,8 @@ | |||
1 | /* | ||
2 | * This file is use for addition u-boot configurations for microblaze. | ||
3 | */ | ||
4 | #include <configs/microblaze-generic.h> | ||
5 | |||
6 | /* Core microblaze boot configurations */ | ||
7 | #define XILINX_USE_ICACHE 1 | ||
8 | #define XILINX_USE_DCACHE 1 | ||
diff --git a/meta-xilinx-core/recipes-bsp/u-boot/u-boot-v2023.01/microblaze-generic.cfg b/meta-xilinx-core/recipes-bsp/u-boot/u-boot-v2023.01/microblaze-generic.cfg new file mode 100644 index 00000000..3c911a06 --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/u-boot/u-boot-v2023.01/microblaze-generic.cfg | |||
@@ -0,0 +1,83 @@ | |||
1 | # SPDX-License-Identifier: MIT | ||
2 | |||
3 | #........................................................................ | ||
4 | # WARNING | ||
5 | # | ||
6 | # This file is a u-boot configuration fragment, and not a full u-boot | ||
7 | # configuration file. The final u-boot configuration is made up of | ||
8 | # an assembly of processed fragments, each of which is designed to | ||
9 | # capture a specific part of the final configuration (e.g. platform | ||
10 | # configuration, feature configuration, and board specific hardware | ||
11 | # configuration). For more information on u-boot configuration, please | ||
12 | # refer the product documentation. | ||
13 | # | ||
14 | #....................................................................... | ||
15 | |||
16 | # | ||
17 | # Definitions for Generic Microbalze machine. | ||
18 | # | ||
19 | CONFIG_BOOTDELAY=4 | ||
20 | CONFIG_TEXT_BASE=0x80100000 | ||
21 | CONFIG_SYS_PROMPT="U-Boot>" | ||
22 | CONFIG_SYS_CONFIG_NAME="microblaze-generic-top" | ||
23 | CONFIG_BOOT_SCRIPT_OFFSET=0x1F00000 | ||
24 | # CONFIG_SYS_NS16550 is not set | ||
25 | # CONFIG_SYS_FLASH_USE_BUFFER_WRITE is not set | ||
26 | # CONFIG_SYS_FLASH_CFI is not set | ||
27 | # CONFIG_FLASH_CFI_DRIVER is not set | ||
28 | # CONFIG_CMD_FLASH is not set | ||
29 | # CONFIG_CMD_IMLS is not set | ||
30 | # CONFIG_MTD_NOR_FLASH is not set | ||
31 | # CONFIG_MTD_DEVICE is not set | ||
32 | # CONFIG_SYS_FLASH_PROTECTION is not set | ||
33 | # CONFIG_SPI_FLASH_SST is not set | ||
34 | # CONFIG_XILINX_EMACLITE is not set | ||
35 | # CONFIG_PHY_VITESSE is not set | ||
36 | # CONFIG_CMD_EXT2 is not set | ||
37 | # CONFIG_CMD_EXT4 is not set | ||
38 | # CONFIG_CMD_EXT4_WRITE is not set | ||
39 | # CONFIG_CMD_FAT is not set | ||
40 | # CONFIG_DOS_PARTITION is not set | ||
41 | # CONFIG_FAT_WRITE is not set | ||
42 | CONFIG_DM=y | ||
43 | CONFIG_SYS_MALLOC_F=y | ||
44 | CONFIG_XILINX_UARTLITE=y | ||
45 | CONFIG_XILINX_AXIEMAC=y | ||
46 | CONFIG_PHY_XILINX=y | ||
47 | CONFIG_PHY_TI=y | ||
48 | CONFIG_NET=y | ||
49 | CONFIG_PHY_GIGE=y | ||
50 | CONFIG_NETDEVICES=y | ||
51 | CONFIG_CMD_NET=y | ||
52 | CONFIG_DM_ETH=y | ||
53 | CONFIG_CMD_PING=y | ||
54 | CONFIG_CMD_DHCP=y | ||
55 | CONFIG_PHYLIB=y | ||
56 | CONFIG_CMD_TFTPPUT=y | ||
57 | CONFIG_CMD_NFS=y | ||
58 | CONFIG_CMD_MII=y | ||
59 | CONFIG_PHY_MARVELL=y | ||
60 | CONFIG_PHY_REALTEK=y | ||
61 | CONFIG_PHY_NATSEMI=y | ||
62 | CONFIG_XILINX_SPI=y | ||
63 | CONFIG_CMD_SPI=y | ||
64 | CONFIG_CMD_SF=y | ||
65 | CONFIG_SPI_FLASH=y | ||
66 | CONFIG_SPI_FLASH_BAR=y | ||
67 | CONFIG_DM_SPI_FLASH=y | ||
68 | CONFIG_DM_SPI=y | ||
69 | CONFIG_SPI_FLASH_SPANSION=y | ||
70 | CONFIG_SPI_FLASH_STMICRO=y | ||
71 | CONFIG_SPI_FLASH_WINBOND=y | ||
72 | CONFIG_SPI_FLASH_MACRONIX=y | ||
73 | CONFIG_SPI=y | ||
74 | CONFIG_SPI_FLASH_ISSI=y | ||
75 | # CONFIG_BOOTARGS is not set | ||
76 | # CONFIG_USE_BOOTARGS is not set | ||
77 | # CONFIG_SPL is not set | ||
78 | # CONFIG_I2C_EEPROM is not set | ||
79 | # CONFIG_CMD_EEPROM is not set | ||
80 | # CONFIG_SYS_I2C_EEPROM_ADDR is not set | ||
81 | # CONFIG_SYS_I2C_EEPROM_ADDR_OVERFLOW is not set | ||
82 | CONFIG_DCACHE=y | ||
83 | CONFIG_ICACHE=y | ||
diff --git a/meta-xilinx-core/recipes-bsp/u-boot/u-boot-xlnx-2023.1.inc b/meta-xilinx-core/recipes-bsp/u-boot/u-boot-xlnx-2023.1.inc new file mode 100644 index 00000000..01082966 --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/u-boot/u-boot-xlnx-2023.1.inc | |||
@@ -0,0 +1,17 @@ | |||
1 | UBOOT_VERSION = "v2023.01" | ||
2 | |||
3 | UBRANCH = "xlnx_rebase_v2023.01" | ||
4 | |||
5 | SRCREV = "40a08d69e749c0472103551c85c02c41f979453d" | ||
6 | |||
7 | LICENSE = "GPL-2.0-or-later" | ||
8 | LIC_FILES_CHKSUM = "file://README;beginline=1;endline=4;md5=744e7e3bb0c94b4b9f6b3db3bf893897" | ||
9 | |||
10 | # u-boot-xlnx has support for these | ||
11 | HAS_PLATFORM_INIT ?= " \ | ||
12 | xilinx_zynqmp_virt_config \ | ||
13 | xilinx_zynq_virt_defconfig \ | ||
14 | xilinx_versal_vc_p_a2197_revA_x_prc_01_revA \ | ||
15 | " | ||
16 | |||
17 | DEPENDS += "bc-native dtc-native python3-setuptools-native gnutls-native" | ||
diff --git a/meta-xilinx-core/recipes-bsp/u-boot/u-boot-xlnx_2023.1.bb b/meta-xilinx-core/recipes-bsp/u-boot/u-boot-xlnx_2023.1.bb new file mode 100644 index 00000000..fd76bc51 --- /dev/null +++ b/meta-xilinx-core/recipes-bsp/u-boot/u-boot-xlnx_2023.1.bb | |||
@@ -0,0 +1,4 @@ | |||
1 | |||
2 | require u-boot-xlnx.inc | ||
3 | require u-boot-spl-zynq-init.inc | ||
4 | require u-boot-xlnx-2023.1.inc | ||
diff --git a/meta-xilinx-core/recipes-core/images/core-image-ptest-all.bbppend b/meta-xilinx-core/recipes-core/images/core-image-ptest-all.bbppend new file mode 100644 index 00000000..fd3a3c11 --- /dev/null +++ b/meta-xilinx-core/recipes-core/images/core-image-ptest-all.bbppend | |||
@@ -0,0 +1,5 @@ | |||
1 | # Minimum board memory required for each type | ||
2 | QB_MEM:microblaze = "-m 2G" | ||
3 | QB_MEM:zynq = "-m 1G" | ||
4 | QB_MEM:zynqmp = "-m 4G" | ||
5 | QB_MEM:versal = "-m 16G" | ||
diff --git a/meta-xilinx-core/recipes-devtools/qemu/qemu-devicetrees_2023.1.bb b/meta-xilinx-core/recipes-devtools/qemu/qemu-devicetrees_2023.1.bb new file mode 100644 index 00000000..91e787bd --- /dev/null +++ b/meta-xilinx-core/recipes-devtools/qemu/qemu-devicetrees_2023.1.bb | |||
@@ -0,0 +1,6 @@ | |||
1 | |||
2 | require qemu-devicetrees.inc | ||
3 | |||
4 | BRANCH ?= "xlnx_rel_v2023.1" | ||
5 | SRCREV ?= "1c45adcde1fc06432c01be250bf668c6477d8459" | ||
6 | |||
diff --git a/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx-2023.1.inc b/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx-2023.1.inc new file mode 100644 index 00000000..06ac05a1 --- /dev/null +++ b/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx-2023.1.inc | |||
@@ -0,0 +1,3 @@ | |||
1 | XILINX_QEMU_VERSION = "v7.1.0" | ||
2 | BRANCH = "xlnx_rel_v2023.1" | ||
3 | SRCREV = "21adc9f99e813fb24fb65421259b5b0614938376" | ||
diff --git a/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx-native_2023.1.bb b/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx-native_2023.1.bb new file mode 100644 index 00000000..06711fd9 --- /dev/null +++ b/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx-native_2023.1.bb | |||
@@ -0,0 +1,9 @@ | |||
1 | require qemu-xilinx-2023.1.inc | ||
2 | require qemu-xilinx-native-7.1.inc | ||
3 | require qemu-native-alt.inc | ||
4 | |||
5 | BPN = "qemu-xilinx" | ||
6 | |||
7 | EXTRA_OECONF:append = " --target-list=${@get_qemu_usermode_target_list(d)} --disable-tools --disable-blobs --disable-guest-agent" | ||
8 | |||
9 | PACKAGECONFIG ??= "pie" | ||
diff --git a/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx-system-native_2023.1.bb b/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx-system-native_2023.1.bb new file mode 100644 index 00000000..1e738530 --- /dev/null +++ b/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx-system-native_2023.1.bb | |||
@@ -0,0 +1,26 @@ | |||
1 | require qemu-system-native-alt.inc | ||
2 | require qemu-xilinx-2023.1.inc | ||
3 | require qemu-xilinx-native-7.1.inc | ||
4 | |||
5 | PROVIDES = "qemu-system-native" | ||
6 | |||
7 | EXTRA_OECONF:append = " --target-list=${@get_qemu_system_target_list(d)}" | ||
8 | |||
9 | PACKAGECONFIG ??= "fdt alsa kvm gcrypt pie slirp" | ||
10 | |||
11 | PACKAGECONFIG:remove = "${@'kvm' if not os.path.exists('/usr/include/linux/kvm.h') else ''}" | ||
12 | |||
13 | DEPENDS += "pixman-native qemu-xilinx-native bison-native ninja-native meson-native" | ||
14 | DEPENDS += "qemu-xilinx-multiarch-helper-native" | ||
15 | |||
16 | do_install:append() { | ||
17 | # The following is also installed by qemu-native | ||
18 | rm -f ${D}${datadir}/qemu/trace-events-all | ||
19 | rm -rf ${D}${datadir}/qemu/keymaps | ||
20 | rm -rf ${D}${datadir}/icons | ||
21 | rm -rf ${D}${includedir}/qemu-plugin.h | ||
22 | |||
23 | # Install qmp.py to be used with testimage | ||
24 | install -d ${D}${libdir}/qemu-python/qmp/ | ||
25 | install -D ${S}/python/qemu/qmp/* ${D}${libdir}/qemu-python/qmp/ | ||
26 | } | ||
diff --git a/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx_2023.1.bb b/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx_2023.1.bb new file mode 100644 index 00000000..6c1851ba --- /dev/null +++ b/meta-xilinx-core/recipes-devtools/qemu/qemu-xilinx_2023.1.bb | |||
@@ -0,0 +1,24 @@ | |||
1 | require qemu-xilinx-2023.1.inc | ||
2 | require recipes-devtools/qemu/qemu.inc | ||
3 | require qemu-xilinx-7.1.inc | ||
4 | require qemu-alt.inc | ||
5 | |||
6 | # Links to libmali-xlnx, so it becomes MACHINE_ARCH specific | ||
7 | DEFAULT_PACKAGE_ARCH := "${PACKAGE_ARCH}" | ||
8 | MALI_PACKAGE_ARCH = "${@'${MACHINE_ARCH}' if d.getVar('PREFERRED_PROVIDER_virtual/libgles1') == 'libmali-xlnx' else '${DEFAULT_PACKAGE_ARCH}'}" | ||
9 | PACKAGE_ARCH:class-target = "${@bb.utils.contains_any('DEPENDS', 'libepoxy virglrenderer', '${MALI_PACKAGE_ARCH}', '${DEFAULT_PACKAGE_ARCH}', d)}" | ||
10 | |||
11 | BBCLASSEXTEND = "nativesdk" | ||
12 | |||
13 | RDEPENDS:${PN}:class-target += "bash" | ||
14 | |||
15 | PROVIDES:class-nativesdk = "nativesdk-qemu" | ||
16 | RPROVIDES:${PN}:class-nativesdk = "nativesdk-qemu" | ||
17 | |||
18 | EXTRA_OECONF:append:class-target = " --target-list=${@get_qemu_target_list(d)}" | ||
19 | EXTRA_OECONF:append:class-nativesdk = " --target-list=${@get_qemu_target_list(d)}" | ||
20 | EXTRA_OECONF:append:class-target:mipsarcho32 = "${@bb.utils.contains('BBEXTENDCURR', 'multilib', ' --disable-capstone', '', d)}" | ||
21 | |||
22 | do_install:append:class-nativesdk() { | ||
23 | ${@bb.utils.contains('PACKAGECONFIG', 'gtk+', 'make_qemu_wrapper', '', d)} | ||
24 | } | ||
diff --git a/meta-xilinx-core/recipes-graphics/libgles/libmali-xlnx.bb b/meta-xilinx-core/recipes-graphics/libgles/libmali-xlnx.bb index e3113b4d..07de26dc 100644 --- a/meta-xilinx-core/recipes-graphics/libgles/libmali-xlnx.bb +++ b/meta-xilinx-core/recipes-graphics/libgles/libmali-xlnx.bb | |||
@@ -13,8 +13,8 @@ PROVIDES += "virtual/libgles1 virtual/libgles2 virtual/egl virtual/libgbm" | |||
13 | FILESEXTRAPATHS:prepend := "${THISDIR}/files:" | 13 | FILESEXTRAPATHS:prepend := "${THISDIR}/files:" |
14 | 14 | ||
15 | REPO ?= "git://github.com/Xilinx/mali-userspace-binaries.git;protocol=https" | 15 | REPO ?= "git://github.com/Xilinx/mali-userspace-binaries.git;protocol=https" |
16 | BRANCH ?= "xlnx_rel_v2022.2" | 16 | BRANCH ?= "xlnx_rel_v2023.1" |
17 | SRCREV ?= "a1a22c9f03b20d8cb70b91727fe51c1db7f4b061" | 17 | SRCREV ?= "b3a772aad859cdadc8513b11c3e995546c20e75e" |
18 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | 18 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" |
19 | 19 | ||
20 | PV = "r9p0-01rel0" | 20 | PV = "r9p0-01rel0" |
diff --git a/meta-xilinx-core/recipes-kernel/dp/kernel-module-dp_2023.1.bb b/meta-xilinx-core/recipes-kernel/dp/kernel-module-dp_2023.1.bb new file mode 100644 index 00000000..28770994 --- /dev/null +++ b/meta-xilinx-core/recipes-kernel/dp/kernel-module-dp_2023.1.bb | |||
@@ -0,0 +1,24 @@ | |||
1 | SUMMARY = "Xilinx DisplayPort Linux Kernel module" | ||
2 | DESCRIPTION = "Out-of-tree DisplayPort(DP) kernel modules provider for aarch64 devices" | ||
3 | SECTION = "kernel/modules" | ||
4 | LICENSE = "GPL-2.0-only" | ||
5 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=eb723b61539feef013de476e68b5c50a" | ||
6 | |||
7 | XLNX_DP_VERSION = "6.1.0" | ||
8 | PV = "${XLNX_DP_VERSION}+xilinx-v${@bb.parse.vars_from_file(d.getVar('FILE', False),d)[1] or ''}+git${SRCPV}" | ||
9 | |||
10 | S = "${WORKDIR}/git" | ||
11 | |||
12 | BRANCH ?= "xlnx_rel_v2023.1" | ||
13 | REPO ?= "git://github.com/xilinx/dp-modules.git;protocol=https" | ||
14 | SRCREV ?= "5b0969ac09f301c33bccc140c8f60e832f5cf222" | ||
15 | |||
16 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
17 | SRC_URI = "${REPO};${BRANCHARG}" | ||
18 | |||
19 | inherit module | ||
20 | |||
21 | EXTRA_OEMAKE += "O=${STAGING_KERNEL_BUILDDIR}" | ||
22 | COMPATIBLE_MACHINE = "^$" | ||
23 | COMPATIBLE_MACHINE:zynqmp = "zynqmp" | ||
24 | COMPATIBLE_MACHINE:versal = "versal" | ||
diff --git a/meta-xilinx-core/recipes-kernel/hdmi/kernel-module-hdmi_2023.1.bb b/meta-xilinx-core/recipes-kernel/hdmi/kernel-module-hdmi_2023.1.bb new file mode 100644 index 00000000..20acb8b3 --- /dev/null +++ b/meta-xilinx-core/recipes-kernel/hdmi/kernel-module-hdmi_2023.1.bb | |||
@@ -0,0 +1,24 @@ | |||
1 | SUMMARY = "Xilinx HDMI Linux Kernel module" | ||
2 | DESCRIPTION = "Out-of-tree HDMI kernel modules provider for MPSoC EG/EV devices" | ||
3 | SECTION = "kernel/modules" | ||
4 | LICENSE = "GPL-2.0-only" | ||
5 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=b34277fe156508fd5a650609dc36d1fe" | ||
6 | |||
7 | XLNX_HDMI_VERSION = "6.1" | ||
8 | PV = "${XLNX_HDMI_VERSION}+xilinx-v${@bb.parse.vars_from_file(d.getVar('FILE', False),d)[1] or ''}+git${SRCPV}" | ||
9 | |||
10 | S = "${WORKDIR}/git" | ||
11 | |||
12 | BRANCH ?= "xlnx_rel_v2023.1" | ||
13 | REPO ?= "git://github.com/Xilinx/hdmi-modules.git;protocol=https" | ||
14 | SRCREV = "1c6330f02fea68992e22400fdbc8c0d0e63e2958" | ||
15 | |||
16 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
17 | SRC_URI = "${REPO};${BRANCHARG}" | ||
18 | |||
19 | inherit module | ||
20 | |||
21 | EXTRA_OEMAKE += "O=${STAGING_KERNEL_BUILDDIR}" | ||
22 | COMPATIBLE_MACHINE = "^$" | ||
23 | COMPATIBLE_MACHINE:zynqmp = "zynqmp" | ||
24 | COMPATIBLE_MACHINE:versal = "versal" | ||
diff --git a/meta-xilinx-core/recipes-kernel/linux/linux-microblaze.inc b/meta-xilinx-core/recipes-kernel/linux/linux-microblaze.inc index 40fdc70a..a2f15adb 100644 --- a/meta-xilinx-core/recipes-kernel/linux/linux-microblaze.inc +++ b/meta-xilinx-core/recipes-kernel/linux/linux-microblaze.inc | |||
@@ -1,5 +1,4 @@ | |||
1 | SRC_URI += " \ | 1 | SRC_URI += " \ |
2 | file://mb-no-tree-loop-distribute-patterns.patch \ | ||
3 | file://microblaze_generic.cfg \ | 2 | file://microblaze_generic.cfg \ |
4 | " | 3 | " |
5 | 4 | ||
diff --git a/meta-xilinx-core/recipes-kernel/linux/linux-xlnx_2023.1.bb b/meta-xilinx-core/recipes-kernel/linux/linux-xlnx_2023.1.bb new file mode 100644 index 00000000..6740a459 --- /dev/null +++ b/meta-xilinx-core/recipes-kernel/linux/linux-xlnx_2023.1.bb | |||
@@ -0,0 +1,11 @@ | |||
1 | LINUX_VERSION = "6.1.5" | ||
2 | YOCTO_META ?= "git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-6.1;destsuffix=yocto-kmeta" | ||
3 | KBRANCH="xlnx_rebase_v6.1_LTS" | ||
4 | SRCREV = "716921b6d7dc9db49660369428fb61ca96947ccb" | ||
5 | SRCREV_meta = "185bcfcbe480c742247d9117011794c69682914f" | ||
6 | |||
7 | KCONF_AUDIT_LEVEL="0" | ||
8 | |||
9 | include linux-xlnx.inc | ||
10 | |||
11 | FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:" | ||
diff --git a/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops.bb b/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops.bb index 38ec473b..2648c372 100644 --- a/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops.bb +++ b/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops.bb | |||
@@ -8,9 +8,10 @@ RDEPENDS:${PN} += "lopper" | |||
8 | SRC_URI = " \ | 8 | SRC_URI = " \ |
9 | file://lop-microblaze-yocto.dts \ | 9 | file://lop-microblaze-yocto.dts \ |
10 | file://lop-xilinx-id-cpus.dts \ | 10 | file://lop-xilinx-id-cpus.dts \ |
11 | file://lop-machine-name.dts \ | ||
11 | " | 12 | " |
12 | 13 | ||
13 | LIC_FILES_CHKSUM = "file://lop-microblaze-yocto.dts;endline=8;md5=a0e89d39fa397ec5d5320409ff701280" | 14 | LIC_FILES_CHKSUM = "file://lop-microblaze-yocto.dts;endline=10;md5=27139f9b862dc6fe466c7157aba7ed9c" |
14 | 15 | ||
15 | S = "${WORKDIR}" | 16 | S = "${WORKDIR}" |
16 | 17 | ||
@@ -23,6 +24,7 @@ do_install() { | |||
23 | mkdir -p ${D}/${PYTHON_SITEPACKAGES_DIR}/lopper/lops | 24 | mkdir -p ${D}/${PYTHON_SITEPACKAGES_DIR}/lopper/lops |
24 | cp ${S}/lop-microblaze-yocto.dts ${D}/${PYTHON_SITEPACKAGES_DIR}/lopper/lops/. | 25 | cp ${S}/lop-microblaze-yocto.dts ${D}/${PYTHON_SITEPACKAGES_DIR}/lopper/lops/. |
25 | cp ${S}/lop-xilinx-id-cpus.dts ${D}/${PYTHON_SITEPACKAGES_DIR}/lopper/lops/. | 26 | cp ${S}/lop-xilinx-id-cpus.dts ${D}/${PYTHON_SITEPACKAGES_DIR}/lopper/lops/. |
27 | cp ${S}/lop-machine-name.dts ${D}/${PYTHON_SITEPACKAGES_DIR}/lopper/lops/. | ||
26 | } | 28 | } |
27 | 29 | ||
28 | FILES:${PN} += "${PYTHON_SITEPACKAGES_DIR}/lopper/lops" | 30 | FILES:${PN} += "${PYTHON_SITEPACKAGES_DIR}/lopper/lops" |
diff --git a/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops/lop-machine-name.dts b/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops/lop-machine-name.dts new file mode 100644 index 00000000..0fb5649a --- /dev/null +++ b/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops/lop-machine-name.dts | |||
@@ -0,0 +1,44 @@ | |||
1 | /* | ||
2 | * Copyright (c) 2023 Advanced Micro Devices, Inc. All rights reserved. | ||
3 | * | ||
4 | * Author: | ||
5 | * Mark Hatle <mark.hatle@amd.com> | ||
6 | * | ||
7 | * SPDX-License-Identifier: BSD-3-Clause | ||
8 | */ | ||
9 | |||
10 | /dts-v1/; | ||
11 | |||
12 | / { | ||
13 | compatible = "system-device-tree-v1,lop"; | ||
14 | lops { | ||
15 | compatible = "system-device-tree-v1,lop"; | ||
16 | track_feature: track_feature { | ||
17 | compatible = "system-device-tree-v1,lop,code-v1"; | ||
18 | noexec; | ||
19 | code = " | ||
20 | # print( 'track: lopper library routine: %s' % node ) | ||
21 | try: | ||
22 | node.tunes[prop] = prop | ||
23 | except: | ||
24 | pass | ||
25 | "; | ||
26 | }; | ||
27 | lop_0_1 { | ||
28 | compatible = "system-device-tree-v1,lop,select-v1"; | ||
29 | select_1; | ||
30 | select_2 = "/"; | ||
31 | lop_0_2 { | ||
32 | compatible = "system-device-tree-v1,lop,code-v1"; | ||
33 | inherit = "subsystem"; | ||
34 | code = " | ||
35 | for n in tree.__selected__: | ||
36 | mach_name = n['compatible'].value[0].replace(',','-').replace('.','-') | ||
37 | model = n['model'].value[0] | ||
38 | device_id = n['device_id'].value[0] | ||
39 | print( '%s %s %s' % (mach_name.lower(), device_id, model) ) | ||
40 | "; | ||
41 | }; | ||
42 | }; | ||
43 | }; | ||
44 | }; | ||
diff --git a/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops/lop-microblaze-yocto.dts b/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops/lop-microblaze-yocto.dts index 72eb4665..5e5f7986 100644 --- a/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops/lop-microblaze-yocto.dts +++ b/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops/lop-microblaze-yocto.dts | |||
@@ -1,8 +1,10 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (c) 2020 Xilinx Inc. All rights reserved. | 2 | * Copyright (c) 2020 Xilinx Inc. All rights reserved. |
3 | * Copyright (c) 2023 Advanced Micro Devices, Inc. All rights reserved. | ||
3 | * | 4 | * |
4 | * Author: | 5 | * Author: |
5 | * Bruce Ashfield <bruce.ashfield@xilinx.com> | 6 | * Bruce Ashfield <bruce.ashfield@amd.com> |
7 | * Mark Hatle <mark.hatle@amd.com> | ||
6 | * | 8 | * |
7 | * SPDX-License-Identifier: BSD-3-Clause | 9 | * SPDX-License-Identifier: BSD-3-Clause |
8 | */ | 10 | */ |
@@ -38,13 +40,16 @@ | |||
38 | n.tunes = OrderedDict() | 40 | n.tunes = OrderedDict() |
39 | n.tunes['microblaze'] = 'microblaze' | 41 | n.tunes['microblaze'] = 'microblaze' |
40 | n.tunes['version'] = 'v9.2' | 42 | n.tunes['version'] = 'v9.2' |
43 | n.tune_type = val.split('-')[0] | ||
41 | 44 | ||
42 | if val == 'pmc-microblaze' or val == 'psm-microblaze': | 45 | elif val == 'pmc-microblaze' or val == 'psm-microblaze': |
43 | n.tunes = OrderedDict() | 46 | n.tunes = OrderedDict() |
44 | n.tunes['microblaze'] = 'microblaze' | 47 | n.tunes['microblaze'] = 'microblaze' |
45 | n.tunes['version'] = 'v10.0' | 48 | n.tunes['version'] = 'v10.0' |
49 | n.tune_type = val.split('-')[0] | ||
46 | 50 | ||
47 | n.tune_type = val | 51 | else: |
52 | n.tune_type = re.split('@', n.name)[0] | ||
48 | "; | 53 | "; |
49 | }; | 54 | }; |
50 | }; | 55 | }; |
@@ -225,18 +230,16 @@ | |||
225 | compatible = "system-device-tree-v1,lop,code-v1"; | 230 | compatible = "system-device-tree-v1,lop,code-v1"; |
226 | code = " | 231 | code = " |
227 | cpu_addr = 0 | 232 | cpu_addr = 0 |
233 | firmware_cpus = {} | ||
228 | for n in __selected__: | 234 | for n in __selected__: |
229 | tname = re.split('@', n.name) | 235 | tname = 'microblaze-'+n.tune_type |
230 | tname = tname[0]+str(cpu_addr) | 236 | if n.tune_type == 'cpu': |
231 | cpu_addr += 1 | 237 | tname = tname + str(cpu_addr) |
232 | print( 'AVAILTUNES += \"microblaze-%s\"' % tname ) | 238 | cpu_addr += 1 |
233 | print( 'TUNE_FEATURES:tune-microblaze-%s = \"' % tname, end='' ) | 239 | print( '# %s\\n# compatible = \"%s\";' % (n, n['compatible'].value[0])) |
234 | for t in n.tunes.values(): | 240 | print( 'AVAILTUNES += \"%s\"' % tname ) |
235 | print( ' %s' % t, end='' ) | 241 | print( 'TUNE_FEATURES:tune-%s = \"%s\"' % (tname, ' '.join(n.tunes.values()))) |
236 | print( '\"' ) | 242 | print( 'PACKAGE_EXTRA_ARCHS:tune-%s = \"${TUNE_PKGARCH}\"\\n' % tname ) |
237 | print( 'PACKAGE_EXTRA_ARCHS:tune-microblaze-%s = \"${TUNE_PKGARCH}\"' % tname ) | ||
238 | print( 'TUNE_FEATURES:tune-%s = \"${TUNE_FEATURES:tune-microblaze-%s}\"\\n' % (n.tune_type,tname) ) | ||
239 | |||
240 | "; | 243 | "; |
241 | }; | 244 | }; |
242 | }; | 245 | }; |
diff --git a/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops/lop-xilinx-id-cpus.dts b/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops/lop-xilinx-id-cpus.dts index 67d68bba..1468801a 100644 --- a/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops/lop-xilinx-id-cpus.dts +++ b/meta-xilinx-core/recipes-kernel/lopper/xilinx-lops/lop-xilinx-id-cpus.dts | |||
@@ -104,19 +104,27 @@ | |||
104 | inherit = "lopper_lib"; | 104 | inherit = "lopper_lib"; |
105 | code = " | 105 | code = " |
106 | cpu_output = {} | 106 | cpu_output = {} |
107 | symbol_node = node.tree['/__symbols__'] | ||
108 | prop_dict = symbol_node.__props__ | ||
107 | for c in __selected__: | 109 | for c in __selected__: |
110 | num_cpu = 0 | ||
108 | for c_node in c.subnodes( children_only = True ): | 111 | for c_node in c.subnodes( children_only = True ): |
109 | try: | 112 | try: |
110 | cpu_node = c_node['device_type'].value[0] | 113 | cpu_node = c_node['device_type'].value[0] |
114 | num_cpu = c_node['reg'].value[0] | ||
115 | num_cpu = num_cpu + 1 | ||
111 | except: | 116 | except: |
112 | cpu_node = None | 117 | cpu_node = None |
113 | if cpu_node: | 118 | if cpu_node: |
114 | if c_node.ref == 0: | 119 | match = [label for label,node_abs in prop_dict.items() if re.match(node_abs[0], c_node.abs_path) and len(node_abs[0]) == len(c_node.abs_path)] |
120 | cpu_name = match[0] | ||
121 | if num_cpu != 0: | ||
115 | cpu_type = c_node['compatible'].value[0] | 122 | cpu_type = c_node['compatible'].value[0] |
116 | cpu_output[cpu_type] = '{} {} {}'.format(cpu_type,'None','None') | 123 | dict_key = cpu_name + str(num_cpu) |
124 | cpu_output[dict_key] = '{} {} {} {} {}'.format(cpu_type, num_cpu-1, 'None', cpu_name, 'None') | ||
117 | 125 | ||
118 | if cpu_output: | 126 | if cpu_output: |
119 | print( '# global no-domain cpus' ) | 127 | print( '# global core_number no-domain cpu_name' ) |
120 | 128 | ||
121 | for o in cpu_output.values(): | 129 | for o in cpu_output.values(): |
122 | print( '%s' % o ) | 130 | print( '%s' % o ) |
diff --git a/meta-xilinx-core/recipes-multimedia/vcu/kernel-module-vcu_2023.1.bb b/meta-xilinx-core/recipes-multimedia/vcu/kernel-module-vcu_2023.1.bb new file mode 100644 index 00000000..9adfcade --- /dev/null +++ b/meta-xilinx-core/recipes-multimedia/vcu/kernel-module-vcu_2023.1.bb | |||
@@ -0,0 +1,39 @@ | |||
1 | SUMMARY = "Linux kernel module for Video Code Unit" | ||
2 | DESCRIPTION = "Out-of-tree VCU decoder, encoder and common kernel modules provider for MPSoC EV devices" | ||
3 | SECTION = "kernel/modules" | ||
4 | LICENSE = "GPL-2.0-only" | ||
5 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=eb723b61539feef013de476e68b5c50a" | ||
6 | |||
7 | XILINX_VCU_VERSION = "1.0.0" | ||
8 | PV = "${XILINX_VCU_VERSION}-xilinx-v${@bb.parse.vars_from_file(d.getVar('FILE', False),d)[1] or ''}+git${SRCPV}" | ||
9 | |||
10 | S = "${WORKDIR}/git" | ||
11 | |||
12 | FILESEXTRAPATHS:prepend := "${THISDIR}/files:" | ||
13 | |||
14 | BRANCH = "xlnx_rel_v2023.1" | ||
15 | REPO = "git://github.com/Xilinx/vcu-modules.git;protocol=https" | ||
16 | SRCREV = "4afe0ab4eb3b7f2d17bcb823dee0caa0f03ab7a0" | ||
17 | |||
18 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
19 | SRC_URI = " \ | ||
20 | ${REPO};${BRANCHARG} \ | ||
21 | file://99-vcu-enc-dec.rules \ | ||
22 | " | ||
23 | |||
24 | inherit module features_check | ||
25 | |||
26 | REQUIRED_MACHINE_FEATURES = "vcu" | ||
27 | |||
28 | EXTRA_OEMAKE += "O=${STAGING_KERNEL_BUILDDIR}" | ||
29 | |||
30 | RDEPENDS:${PN} = "vcu-firmware" | ||
31 | |||
32 | KERNEL_MODULE_AUTOLOAD += "dmaproxy" | ||
33 | |||
34 | do_install:append() { | ||
35 | install -d ${D}${sysconfdir}/udev/rules.d | ||
36 | install -m 0644 ${WORKDIR}/99-vcu-enc-dec.rules ${D}${sysconfdir}/udev/rules.d/ | ||
37 | } | ||
38 | |||
39 | FILES:${PN} = "${sysconfdir}/udev/rules.d/*" | ||
diff --git a/meta-xilinx-core/recipes-multimedia/vcu/libomxil-xlnx_2023.1.bb b/meta-xilinx-core/recipes-multimedia/vcu/libomxil-xlnx_2023.1.bb new file mode 100644 index 00000000..3c258008 --- /dev/null +++ b/meta-xilinx-core/recipes-multimedia/vcu/libomxil-xlnx_2023.1.bb | |||
@@ -0,0 +1,51 @@ | |||
1 | SUMMARY = "OpenMAX Integration layer for VCU" | ||
2 | DESCRIPTION = "OMX IL Libraries,test applications and headers for VCU" | ||
3 | LICENSE = "MIT" | ||
4 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=5375796c5ae4ee85ea1f2c1603e58509" | ||
5 | |||
6 | XILINX_VCU_VERSION = "1.0.0" | ||
7 | PV = "${XILINX_VCU_VERSION}-xilinx-v${@bb.parse.vars_from_file(d.getVar('FILE', False),d)[1] or ''}+git${SRCPV}" | ||
8 | |||
9 | BRANCH ?= "xlnx_rel_v2023.1" | ||
10 | REPO ?= "git://github.com/Xilinx/vcu-omx-il.git;protocol=https" | ||
11 | SRCREV = "4773b372b72b88ccbabc122b023f042fb22a019e" | ||
12 | |||
13 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
14 | SRC_URI = "${REPO};${BRANCHARG}" | ||
15 | |||
16 | S = "${WORKDIR}/git" | ||
17 | |||
18 | inherit features_check | ||
19 | |||
20 | REQUIRED_MACHINE_FEATURES = "vcu" | ||
21 | |||
22 | PACKAGE_ARCH = "${MACHINE_ARCH}" | ||
23 | |||
24 | DEPENDS = "libvcu-xlnx" | ||
25 | RDEPENDS:${PN} = "kernel-module-vcu libvcu-xlnx" | ||
26 | |||
27 | EXTERNAL_INCLUDE="${STAGING_INCDIR}/vcu-ctrl-sw/include" | ||
28 | |||
29 | EXTRA_OEMAKE = " \ | ||
30 | CC='${CC}' CXX='${CXX} ${CXXFLAGS}' \ | ||
31 | EXTERNAL_INCLUDE='${EXTERNAL_INCLUDE}' \ | ||
32 | " | ||
33 | |||
34 | do_install() { | ||
35 | install -d ${D}${libdir} | ||
36 | install -d ${D}${includedir}/vcu-omx-il | ||
37 | |||
38 | install -m 0644 ${S}/omx_header/*.h ${D}${includedir}/vcu-omx-il | ||
39 | |||
40 | install -Dm 0755 ${S}/bin/omx_decoder ${D}/${bindir}/omx_decoder | ||
41 | install -Dm 0755 ${S}/bin/omx_encoder ${D}/${bindir}/omx_encoder | ||
42 | |||
43 | oe_libinstall -C ${S}/bin/ -so libOMX.allegro.core ${D}/${libdir}/ | ||
44 | oe_libinstall -C ${S}/bin/ -so libOMX.allegro.video_decoder ${D}/${libdir}/ | ||
45 | oe_libinstall -C ${S}/bin/ -so libOMX.allegro.video_encoder ${D}/${libdir}/ | ||
46 | } | ||
47 | |||
48 | # These libraries shouldn't get installed in world builds unless something | ||
49 | # explicitly depends upon them. | ||
50 | |||
51 | EXCLUDE_FROM_WORLD = "1" | ||
diff --git a/meta-xilinx-core/recipes-multimedia/vcu/libvcu-xlnx_2023.1.bb b/meta-xilinx-core/recipes-multimedia/vcu/libvcu-xlnx_2023.1.bb new file mode 100644 index 00000000..7dc97d72 --- /dev/null +++ b/meta-xilinx-core/recipes-multimedia/vcu/libvcu-xlnx_2023.1.bb | |||
@@ -0,0 +1,44 @@ | |||
1 | SUMMARY = "Control Software for VCU" | ||
2 | DESCRIPTION = "Control software libraries, test applications and headers provider for VCU" | ||
3 | LICENSE = "MIT" | ||
4 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=5375796c5ae4ee85ea1f2c1603e58509" | ||
5 | |||
6 | XILINX_VCU_VERSION = "1.0.0" | ||
7 | PV = "${XILINX_VCU_VERSION}-xilinx-v${@bb.parse.vars_from_file(d.getVar('FILE', False),d)[1] or ''}+git${SRCPV}" | ||
8 | |||
9 | BRANCH ?= "xlnx_rel_v2023.1" | ||
10 | REPO ?= "git://github.com/Xilinx/vcu-ctrl-sw.git;protocol=https" | ||
11 | SRCREV = "83aabb84c26667f7d6aee632654c63e504838061" | ||
12 | |||
13 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
14 | SRC_URI = "${REPO};${BRANCHARG}" | ||
15 | |||
16 | S = "${WORKDIR}/git" | ||
17 | |||
18 | inherit features_check | ||
19 | |||
20 | REQUIRED_MACHINE_FEATURES = "vcu" | ||
21 | |||
22 | RDEPENDS:${PN} = "kernel-module-vcu" | ||
23 | |||
24 | EXTRA_OEMAKE = "CC='${CC}' CXX='${CXX} ${CXXFLAGS}'" | ||
25 | |||
26 | do_install() { | ||
27 | install -d ${D}${libdir} | ||
28 | install -d ${D}${includedir}/vcu-ctrl-sw/include | ||
29 | |||
30 | install -Dm 0755 ${S}/bin/ctrlsw_encoder ${D}/${bindir}/ctrlsw_encoder | ||
31 | install -Dm 0755 ${S}/bin/ctrlsw_decoder ${D}/${bindir}/ctrlsw_decoder | ||
32 | |||
33 | oe_runmake install_headers INSTALL_HDR_PATH=${D}${includedir}/vcu-ctrl-sw/include | ||
34 | oe_libinstall -C ${S}/bin/ -so liballegro_decode ${D}/${libdir}/ | ||
35 | oe_libinstall -C ${S}/bin/ -so liballegro_encode ${D}/${libdir}/ | ||
36 | } | ||
37 | |||
38 | # These libraries shouldn't get installed in world builds unless something | ||
39 | # explicitly depends upon them. | ||
40 | |||
41 | EXCLUDE_FROM_WORLD = "1" | ||
42 | |||
43 | # Disable buildpaths QA check warnings. | ||
44 | INSANE_SKIP:${PN} += "buildpaths" | ||
diff --git a/meta-xilinx-core/recipes-multimedia/vcu/vcu-firmware_2023.1.bb b/meta-xilinx-core/recipes-multimedia/vcu/vcu-firmware_2023.1.bb new file mode 100644 index 00000000..50e7926d --- /dev/null +++ b/meta-xilinx-core/recipes-multimedia/vcu/vcu-firmware_2023.1.bb | |||
@@ -0,0 +1,38 @@ | |||
1 | SUMMARY = "Firmware for VCU" | ||
2 | DESCRIPTION = "Firmware binaries provider for VCU" | ||
3 | LICENSE = "Proprietary" | ||
4 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=6da65299754e921b31f03e9b11d77a74" | ||
5 | |||
6 | XILINX_VCU_VERSION = "1.0.0" | ||
7 | PV = "${XILINX_VCU_VERSION}-xilinx-v${@bb.parse.vars_from_file(d.getVar('FILE', False),d)[1] or ''}+git${SRCPV}" | ||
8 | |||
9 | S = "${WORKDIR}/git" | ||
10 | |||
11 | BRANCH ?= "xlnx_rel_v2023.1" | ||
12 | REPO ?= "git://github.com/Xilinx/vcu-firmware.git;protocol=https" | ||
13 | SRCREV = "c90288595ac9a12ff401de6dfa680b1f9adce5f6" | ||
14 | |||
15 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
16 | SRC_URI = "${REPO};${BRANCHARG}" | ||
17 | |||
18 | inherit features_check | ||
19 | |||
20 | REQUIRED_MACHINE_FEATURES = "vcu" | ||
21 | |||
22 | do_install() { | ||
23 | install -Dm 0644 ${S}/${XILINX_VCU_VERSION}/lib/firmware/al5d_b.fw ${D}/lib/firmware/al5d_b.fw | ||
24 | install -Dm 0644 ${S}/${XILINX_VCU_VERSION}/lib/firmware/al5d.fw ${D}/lib/firmware/al5d.fw | ||
25 | install -Dm 0644 ${S}/${XILINX_VCU_VERSION}/lib/firmware/al5e_b.fw ${D}/lib/firmware/al5e_b.fw | ||
26 | install -Dm 0644 ${S}/${XILINX_VCU_VERSION}/lib/firmware/al5e.fw ${D}/lib/firmware/al5e.fw | ||
27 | } | ||
28 | |||
29 | # Inhibit warnings about files being stripped | ||
30 | INHIBIT_PACKAGE_DEBUG_SPLIT = "1" | ||
31 | INHIBIT_PACKAGE_STRIP = "1" | ||
32 | FILES:${PN} = "/lib/firmware/*" | ||
33 | |||
34 | # These libraries shouldn't get installed in world builds unless something | ||
35 | # explicitly depends upon them. | ||
36 | EXCLUDE_FROM_WORLD = "1" | ||
37 | |||
38 | INSANE_SKIP:${PN} = "ldflags" | ||
diff --git a/meta-xilinx-core/recipes-multimedia/vdu/files/99-vdu-enc-dec.rules b/meta-xilinx-core/recipes-multimedia/vdu/files/99-vdu-enc-dec.rules new file mode 100644 index 00000000..78bb54f4 --- /dev/null +++ b/meta-xilinx-core/recipes-multimedia/vdu/files/99-vdu-enc-dec.rules | |||
@@ -0,0 +1,4 @@ | |||
1 | # Allegro VDU Encode, Decoder module drivers | ||
2 | SUBSYSTEM=="allegro_decode_class", KERNEL=="allegroDecodeIP[0-4]*", MODE="0660", GROUP="video", TAG+="uaccess" | ||
3 | |||
4 | |||
diff --git a/meta-xilinx-core/recipes-multimedia/vdu/kernel-module-vdu_2023.1.bb b/meta-xilinx-core/recipes-multimedia/vdu/kernel-module-vdu_2023.1.bb new file mode 100644 index 00000000..a1396278 --- /dev/null +++ b/meta-xilinx-core/recipes-multimedia/vdu/kernel-module-vdu_2023.1.bb | |||
@@ -0,0 +1,41 @@ | |||
1 | SUMMARY = "Linux kernel module for Video Decode Unit" | ||
2 | DESCRIPTION = "Out-of-tree VDU decoder common kernel modules" | ||
3 | SECTION = "kernel/modules" | ||
4 | LICENSE = "GPLv2" | ||
5 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=eb723b61539feef013de476e68b5c50a" | ||
6 | |||
7 | XILINX_VDU_VERSION = "1.0.0" | ||
8 | PV = "${XILINX_VDU_VERSION}-xilinx-${XILINX_RELEASE_VERSION}+git${SRCPV}" | ||
9 | |||
10 | S = "${WORKDIR}/git" | ||
11 | FILESEXTRAPATHS:prepend := "${THISDIR}/files:" | ||
12 | |||
13 | BRANCH ?= "xlnx_rel_v2023.1" | ||
14 | REPO ?= "git://github.com/Xilinx/vdu-modules.git;protocol=https" | ||
15 | SRCREV ?= "82d06e395c93a1e941b83cccbb6f2e4e6d966f1c" | ||
16 | |||
17 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
18 | SRC_URI = "${REPO};${BRANCHARG} \ | ||
19 | file://99-vdu-enc-dec.rules \ | ||
20 | " | ||
21 | |||
22 | inherit module features_check | ||
23 | |||
24 | REQUIRED_MACHINE_FEATURES = "vdu" | ||
25 | |||
26 | EXTRA_OEMAKE += "O=${STAGING_KERNEL_BUILDDIR}" | ||
27 | |||
28 | RDEPENDS:${PN} = "vdu-firmware" | ||
29 | |||
30 | COMPATIBLE_MACHINE = "^$" | ||
31 | COMPATIBLE_MACHINE:versal-ai-core = "versal-ai-core" | ||
32 | COMPATIBLE_MACHINE:versal-ai-edge = "versal-ai-edge" | ||
33 | |||
34 | PACKAGE_ARCH = "${SOC_FAMILY_ARCH}" | ||
35 | |||
36 | do_install:append() { | ||
37 | install -d ${D}${sysconfdir}/udev/rules.d | ||
38 | install -m 0644 ${WORKDIR}/99-vdu-enc-dec.rules ${D}${sysconfdir}/udev/rules.d/ | ||
39 | } | ||
40 | |||
41 | FILES:${PN} = "${sysconfdir}/udev/rules.d/*" | ||
diff --git a/meta-xilinx-core/recipes-multimedia/vdu/libvdu-ctrlsw_2023.1.bb b/meta-xilinx-core/recipes-multimedia/vdu/libvdu-ctrlsw_2023.1.bb new file mode 100644 index 00000000..82f3c4f5 --- /dev/null +++ b/meta-xilinx-core/recipes-multimedia/vdu/libvdu-ctrlsw_2023.1.bb | |||
@@ -0,0 +1,44 @@ | |||
1 | SUMMARY = "Control Software for VDU" | ||
2 | DESCRIPTION = "Control software libraries, test applications and headers provider for VDU" | ||
3 | LICENSE = "MIT" | ||
4 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=aaf483d309243c4596f6373eb9c8325f" | ||
5 | |||
6 | XILINX_VDU_VERSION = "1.0.0" | ||
7 | PV = "${XILINX_VDU_VERSION}-xilinx-${XILINX_RELEASE_VERSION}+git${SRCPV}" | ||
8 | |||
9 | inherit autotools features_check | ||
10 | |||
11 | REQUIRED_MACHINE_FEATURES = "vdu" | ||
12 | |||
13 | BRANCH ?= "xlnx_rel_v2023.1" | ||
14 | REPO ?= "git://github.com/Xilinx/vdu-ctrl-sw.git;protocol=https" | ||
15 | SRCREV ?= "06fc18b303b40d4fee7549ad162c22ee1bc31582" | ||
16 | |||
17 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
18 | SRC_URI = "${REPO};${BRANCHARG}" | ||
19 | |||
20 | S = "${WORKDIR}/git" | ||
21 | |||
22 | COMPATIBLE_MACHINE = "^$" | ||
23 | COMPATIBLE_MACHINE:versal-ai-core = "versal-ai-core" | ||
24 | COMPATIBLE_MACHINE:versal-ai-edge = "versal-ai-edge" | ||
25 | |||
26 | PACKAGE_ARCH = "${SOC_FAMILY_ARCH}" | ||
27 | |||
28 | RDEPENDS:${PN} = "kernel-module-vdu" | ||
29 | |||
30 | do_compile[dirs] = "${S}" | ||
31 | do_install[dirs] = "${S}" | ||
32 | |||
33 | EXTRA_OEMAKE = "CC='${CC}' CXX='${CXX} ${CXXFLAGS}'" | ||
34 | EXTRA_OEMAKE +=" INSTALL_HDR_PATH=${D}${includedir}/vdu-ctrl-sw/include INSTALL_PATH=${D}${bindir}" | ||
35 | |||
36 | do_install:append() { | ||
37 | |||
38 | oe_libinstall -C ${S}/bin/ -so liballegro_decode ${D}/${libdir}/ | ||
39 | } | ||
40 | |||
41 | # These libraries shouldn't get installed in world builds unless something | ||
42 | # explicitly depends upon them. | ||
43 | |||
44 | EXCLUDE_FROM_WORLD = "1" | ||
diff --git a/meta-xilinx-core/recipes-multimedia/vdu/libvdu-omxil_2023.1.bb b/meta-xilinx-core/recipes-multimedia/vdu/libvdu-omxil_2023.1.bb new file mode 100644 index 00000000..88b50193 --- /dev/null +++ b/meta-xilinx-core/recipes-multimedia/vdu/libvdu-omxil_2023.1.bb | |||
@@ -0,0 +1,53 @@ | |||
1 | SUMMARY = "OpenMAX Integration layer for VDU" | ||
2 | DESCRIPTION = "OMX IL Libraries,test application and headers for VDU" | ||
3 | LICENSE = "MIT" | ||
4 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=aaf483d309243c4596f6373eb9c8325f" | ||
5 | |||
6 | XILINX_VDU_VERSION = "1.0.0" | ||
7 | PV = "${XILINX_VDU_VERSION}-xilinx-${XILINX_RELEASE_VERSION}+git${SRCPV}" | ||
8 | |||
9 | BRANCH ?= "xlnx_rel_v2023.1" | ||
10 | REPO ?= "git://github.com/Xilinx/vdu-omx-il.git;protocol=https" | ||
11 | SRCREV ?= "811eefac953fd5e098c69cada97a0dd35f5e9015" | ||
12 | |||
13 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
14 | SRC_URI = "${REPO};${BRANCHARG} \ | ||
15 | " | ||
16 | S = "${WORKDIR}/git" | ||
17 | |||
18 | inherit autotools features_check | ||
19 | |||
20 | REQUIRED_MACHINE_FEATURES = "vdu" | ||
21 | |||
22 | COMPATIBLE_MACHINE = "^$" | ||
23 | COMPATIBLE_MACHINE:versal-ai-core = "versal-ai-core" | ||
24 | COMPATIBLE_MACHINE:versal-ai-edge = "versal-ai-edge" | ||
25 | |||
26 | PACKAGE_ARCH = "${SOC_FAMILY_ARCH}" | ||
27 | |||
28 | DEPENDS = "libvdu-ctrlsw" | ||
29 | RDEPENDS:${PN} = "kernel-module-vdu libvdu-ctrlsw" | ||
30 | |||
31 | EXTERNAL_INCLUDE="${STAGING_INCDIR}/vdu-ctrl-sw/include" | ||
32 | |||
33 | do_compile[dirs] = "${S}" | ||
34 | do_install[dirs] = "${S}" | ||
35 | |||
36 | EXTRA_OEMAKE = " \ | ||
37 | CC='${CC}' CXX='${CXX} ${CXXFLAGS}' \ | ||
38 | EXTERNAL_INCLUDE='${EXTERNAL_INCLUDE}' \ | ||
39 | INSTALL_PATH=${D}${bindir} \ | ||
40 | INCLUDE_INST_PATH=${D}${includedir} \ | ||
41 | " | ||
42 | |||
43 | do_install:append() { | ||
44 | install -d ${D}${libdir} | ||
45 | |||
46 | oe_libinstall -C ${S}/bin/ -so libOMX.allegro.core ${D}/${libdir}/ | ||
47 | oe_libinstall -C ${S}/bin/ -so libOMX.allegro.video_decoder ${D}/${libdir}/ | ||
48 | } | ||
49 | |||
50 | # These libraries shouldn't get installed in world builds unless something | ||
51 | # explicitly depends upon them. | ||
52 | |||
53 | EXCLUDE_FROM_WORLD = "1" | ||
diff --git a/meta-xilinx-core/recipes-multimedia/vdu/vdu-firmware_2023.1.bb b/meta-xilinx-core/recipes-multimedia/vdu/vdu-firmware_2023.1.bb new file mode 100755 index 00000000..e96e0d24 --- /dev/null +++ b/meta-xilinx-core/recipes-multimedia/vdu/vdu-firmware_2023.1.bb | |||
@@ -0,0 +1,42 @@ | |||
1 | SUMMARY = "Firmware for VDU" | ||
2 | DESCRIPTION = "Firmware binaries provider for VDU" | ||
3 | LICENSE = "Proprietary" | ||
4 | LIC_FILES_CHKSUM = "file://LICENSE.md;md5=c5784f63397086d836580d8785d1deb9" | ||
5 | |||
6 | XILINX_VDU_VERSION = "1.0.0" | ||
7 | PV = "${XILINX_VDU_VERSION}-xilinx-${XILINX_RELEASE_VERSION}+git${SRCPV}" | ||
8 | |||
9 | S = "${WORKDIR}/git" | ||
10 | |||
11 | inherit autotools features_check | ||
12 | |||
13 | REQUIRED_MACHINE_FEATURES = "vdu" | ||
14 | |||
15 | BRANCH ?= "xlnx_rel_v2023.1" | ||
16 | REPO ?= "git://github.com/Xilinx/vdu-firmware.git;protocol=https" | ||
17 | SRCREV ?= "63fe2fce6e46d5bf03e33300a58a37d8568722ee" | ||
18 | |||
19 | BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != '']}" | ||
20 | SRC_URI = "${REPO};${BRANCHARG}" | ||
21 | |||
22 | COMPATIBLE_MACHINE = "^$" | ||
23 | COMPATIBLE_MACHINE:versal-ai-core = "versal-ai-core" | ||
24 | COMPATIBLE_MACHINE:versal-ai-edge = "versal-ai-edge" | ||
25 | |||
26 | PACKAGE_ARCH = "${SOC_FAMILY_ARCH}" | ||
27 | EXTRA_OEMAKE +="INSTALL_PATH=${D}/lib/firmware" | ||
28 | |||
29 | do_compile[noexec] = "1" | ||
30 | do_install[dirs] = "${S}" | ||
31 | |||
32 | # Inhibit warnings about files being stripped | ||
33 | INHIBIT_PACKAGE_DEBUG_SPLIT = "1" | ||
34 | INHIBIT_PACKAGE_STRIP = "1" | ||
35 | FILES:${PN} = "/lib/firmware/*" | ||
36 | |||
37 | |||
38 | # These libraries shouldn't get installed in world builds unless something | ||
39 | # explicitly depends upon them. | ||
40 | EXCLUDE_FROM_WORLD = "1" | ||
41 | |||
42 | INSANE_SKIP:${PN} = "ldflags" | ||
diff --git a/meta-xilinx-core/recipes-xrt/xrt/xrt.inc b/meta-xilinx-core/recipes-xrt/xrt/xrt.inc index 19f8f8cd..3b150673 100644 --- a/meta-xilinx-core/recipes-xrt/xrt/xrt.inc +++ b/meta-xilinx-core/recipes-xrt/xrt/xrt.inc | |||
@@ -3,6 +3,6 @@ BRANCHARG = "${@['nobranch=1', 'branch=${BRANCH}'][d.getVar('BRANCH', True) != ' | |||
3 | SRC_URI = "${REPO};${BRANCHARG}" | 3 | SRC_URI = "${REPO};${BRANCHARG}" |
4 | 4 | ||
5 | BRANCH= "2023.1" | 5 | BRANCH= "2023.1" |
6 | SRCREV= "f0c2e397211347dfa1ea92910712d481fe43f662" | 6 | SRCREV= "64c933573e7e50a8aba939a74209590c2b739e8b" |
7 | PV = "202310.2.15.0" | 7 | PV = "202310.2.15.0" |
8 | 8 | ||