From 10fa14942b9cb27780f9496382107516639208b4 Mon Sep 17 00:00:00 2001 From: Andrew Geissler Date: Fri, 11 Dec 2020 16:25:29 -0600 Subject: meta-xilinx: subtree update:569f52f275..b3e37df5d9 Mark Hatle (11): meta-microblaze: Move gcc patch that was missed in the prior work Uprev standalone toolchain bbappends pmu-firmware: Latest toolchain always treats 'assert' as a macro binutils: update to early gatesgarth version gdb: update to early gatesgarth version gcc: update to early gatesgarth version newlib: update to early gatesgarth version machine/aarch64-tc.conf: Fix incorrect ilp32 pkgarch libgcc.bbappend: Clear empty lib directory newlib: Upstream now disabled builtin symbols gdb: Fix on-target GDB compilation Sai Hari Chandana Kalluri (5): linux-xlnx_2020.2: Fix previous git cherry-pick xrt: Remove stale patch to fix endian issues with latest version of boost opencl-clhpp, ocl-icd: Remove recipes from meta-xilinx esw.bbclass: Remove trailing / after S Remove recipe bbappends pointing to older versions Signed-off-by: Andrew Geissler Change-Id: I18b028388a5b55a49ef135b98290228fa797e38d --- .../meta-xilinx-standalone/classes/esw.bbclass | 4 +- .../recipes-core/newlib/libgloss_3.%.bbappend | 12 +++ .../recipes-core/newlib/libgloss_3.1.0.bbappend | 13 ---- .../recipes-core/newlib/newlib_3.%.bbappend | 20 +++++ .../recipes-core/newlib/newlib_3.1.0.bbappend | 21 ------ .../gcc-10/additional-microblaze-multilibs.patch | 86 ++++++++++++++++++++++ .../gcc-9/additional-microblaze-multilibs.patch | 86 ---------------------- .../recipes-devtools/gcc/gcc-source_10.%.bbappend | 7 ++ .../recipes-devtools/gcc/gcc-source_9.%.bbappend | 7 -- .../recipes-devtools/gcc/libgcc_%.bbappend | 3 + .../pmu-firmware/fix-zynqmp-assert.patch | 68 +++++++++++++++++ .../pmu-firmware/pmu-firmware_2020.2.bb | 3 +- 12 files changed, 200 insertions(+), 130 deletions(-) create mode 100644 meta-xilinx/meta-xilinx-standalone/recipes-core/newlib/libgloss_3.%.bbappend delete mode 100644 meta-xilinx/meta-xilinx-standalone/recipes-core/newlib/libgloss_3.1.0.bbappend create mode 100644 meta-xilinx/meta-xilinx-standalone/recipes-core/newlib/newlib_3.%.bbappend delete mode 100644 meta-xilinx/meta-xilinx-standalone/recipes-core/newlib/newlib_3.1.0.bbappend create mode 100644 meta-xilinx/meta-xilinx-standalone/recipes-devtools/gcc/gcc-10/additional-microblaze-multilibs.patch delete mode 100644 meta-xilinx/meta-xilinx-standalone/recipes-devtools/gcc/gcc-9/additional-microblaze-multilibs.patch create mode 100644 meta-xilinx/meta-xilinx-standalone/recipes-devtools/gcc/gcc-source_10.%.bbappend delete mode 100644 meta-xilinx/meta-xilinx-standalone/recipes-devtools/gcc/gcc-source_9.%.bbappend create mode 100644 meta-xilinx/meta-xilinx-standalone/recipes-standalone/pmu-firmware/pmu-firmware/fix-zynqmp-assert.patch (limited to 'meta-xilinx/meta-xilinx-standalone') diff --git a/meta-xilinx/meta-xilinx-standalone/classes/esw.bbclass b/meta-xilinx/meta-xilinx-standalone/classes/esw.bbclass index 565b37127..1f7e35f42 100644 --- a/meta-xilinx/meta-xilinx-standalone/classes/esw.bbclass +++ b/meta-xilinx/meta-xilinx-standalone/classes/esw.bbclass @@ -15,8 +15,8 @@ SRC_URI = "${REPO};branch=${BRANCH}" SRCREV_FORMAT = "src_decouple" -S = "${WORKDIR}/git/" -B = "${WORKDIR}/build/" +S = "${WORKDIR}/git" +B = "${WORKDIR}/build" OECMAKE_SOURCEPATH = "${S}/${ESW_COMPONENT_SRC}" SPECFILE_PATH_arm = "${S}/scripts/specs/arm/Xilinx.spec" diff --git a/meta-xilinx/meta-xilinx-standalone/recipes-core/newlib/libgloss_3.%.bbappend b/meta-xilinx/meta-xilinx-standalone/recipes-core/newlib/libgloss_3.%.bbappend new file mode 100644 index 000000000..646d0e9a9 --- /dev/null +++ b/meta-xilinx/meta-xilinx-standalone/recipes-core/newlib/libgloss_3.%.bbappend @@ -0,0 +1,12 @@ +COMPATIBLE_HOST = ".*-elf" +COMPATIBLE_HOST_arm = "[^-]*-[^-]*-eabi" + +# When building multiple, we need to depend on the multilib newlib +DEPENDS_append_xilinx-standalone = " ${MLPREFIX}newlib" + +EXTRA_OECONF_append_xilinx-standalone = " \ + --enable-newlib-io-c99-formats \ + --enable-newlib-io-long-long \ + --enable-newlib-io-float \ + --enable-newlib-io-long-double \ +" diff --git a/meta-xilinx/meta-xilinx-standalone/recipes-core/newlib/libgloss_3.1.0.bbappend b/meta-xilinx/meta-xilinx-standalone/recipes-core/newlib/libgloss_3.1.0.bbappend deleted file mode 100644 index b2245022e..000000000 --- a/meta-xilinx/meta-xilinx-standalone/recipes-core/newlib/libgloss_3.1.0.bbappend +++ /dev/null @@ -1,13 +0,0 @@ -COMPATIBLE_HOST = ".*-elf" -COMPATIBLE_HOST_arm = "[^-]*-[^-]*-eabi" - -# When building multiple, we need to depend on the multilib newlib -DEPENDS_append_xilinx-standalone = " ${MLPREFIX}newlib" - -EXTRA_OECONF_append_xilinx-standalone = " \ - --enable-newlib-io-c99-formats \ - --enable-newlib-io-long-long \ - --enable-newlib-io-float \ - --enable-newlib-io-long-double \ - --disable-newlib-supplied-syscalls \ -" diff --git a/meta-xilinx/meta-xilinx-standalone/recipes-core/newlib/newlib_3.%.bbappend b/meta-xilinx/meta-xilinx-standalone/recipes-core/newlib/newlib_3.%.bbappend new file mode 100644 index 000000000..90522cfbc --- /dev/null +++ b/meta-xilinx/meta-xilinx-standalone/recipes-core/newlib/newlib_3.%.bbappend @@ -0,0 +1,20 @@ +COMPATIBLE_HOST = ".*-elf" +COMPATIBLE_HOST_arm = "[^-]*-[^-]*-eabi" + +EXTRA_OECONF_append_xilinx-standalone = " \ + --enable-newlib-io-c99-formats \ + --enable-newlib-io-long-long \ + --enable-newlib-io-float \ + --enable-newlib-io-long-double \ +" + +# Avoid trimmping CCARGS from CC by newlib configure +do_configure_prepend_xilinx-standalone(){ + export CC_FOR_TARGET="${CC}" +} + +# Fix for multilib newlib installations +do_install_prepend_xilinx-standalone() { + mkdir -p $(dirname ${D}${libdir}) + mkdir -p $(dirname ${D}${includedir}) +} diff --git a/meta-xilinx/meta-xilinx-standalone/recipes-core/newlib/newlib_3.1.0.bbappend b/meta-xilinx/meta-xilinx-standalone/recipes-core/newlib/newlib_3.1.0.bbappend deleted file mode 100644 index 536a23a1a..000000000 --- a/meta-xilinx/meta-xilinx-standalone/recipes-core/newlib/newlib_3.1.0.bbappend +++ /dev/null @@ -1,21 +0,0 @@ -COMPATIBLE_HOST = ".*-elf" -COMPATIBLE_HOST_arm = "[^-]*-[^-]*-eabi" - -EXTRA_OECONF_append_xilinx-standalone = " \ - --enable-newlib-io-c99-formats \ - --enable-newlib-io-long-long \ - --enable-newlib-io-float \ - --enable-newlib-io-long-double \ - --disable-newlib-supplied-syscalls \ -" - -# Avoid trimmping CCARGS from CC by newlib configure -do_configure_prepend_xilinx-standalone(){ - export CC_FOR_TARGET="${CC}" -} - -# Fix for multilib newlib installations -do_install_prepend_xilinx-standalone() { - mkdir -p $(dirname ${D}${libdir}) - mkdir -p $(dirname ${D}${includedir}) -} diff --git a/meta-xilinx/meta-xilinx-standalone/recipes-devtools/gcc/gcc-10/additional-microblaze-multilibs.patch b/meta-xilinx/meta-xilinx-standalone/recipes-devtools/gcc/gcc-10/additional-microblaze-multilibs.patch new file mode 100644 index 000000000..3d520d0f9 --- /dev/null +++ b/meta-xilinx/meta-xilinx-standalone/recipes-devtools/gcc/gcc-10/additional-microblaze-multilibs.patch @@ -0,0 +1,86 @@ +Change the multilib settings to match the expectations of Vitis and related. + +The multilib list is as follows: + +.; +le;@mlittle-endian +bs;@mxl-barrel-shift +p;@mxl-pattern-compare +m;@mno-xl-soft-mul +fpd;@mhard-float +m/fpd;@mno-xl-soft-mul@mhard-float +p/m;@mxl-pattern-compare@mno-xl-soft-mul +p/fpd;@mxl-pattern-compare@mhard-float +p/m/fpd;@mxl-pattern-compare@mno-xl-soft-mul@mhard-float +bs/p;@mxl-barrel-shift@mxl-pattern-compare +bs/m;@mxl-barrel-shift@mno-xl-soft-mul +bs/fpd;@mxl-barrel-shift@mhard-float +bs/m/fpd;@mxl-barrel-shift@mno-xl-soft-mul@mhard-float +bs/p/m;@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul +bs/p/fpd;@mxl-barrel-shift@mxl-pattern-compare@mhard-float +bs/p/m/fpd;@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul@mhard-float +le/m64;@mlittle-endian@m64 +le/bs;@mlittle-endian@mxl-barrel-shift +le/p;@mlittle-endian@mxl-pattern-compare +le/m;@mlittle-endian@mno-xl-soft-mul +le/fpd;@mlittle-endian@mhard-float +le/m/fpd;@mlittle-endian@mno-xl-soft-mul@mhard-float +le/p/m;@mlittle-endian@mxl-pattern-compare@mno-xl-soft-mul +le/p/fpd;@mlittle-endian@mxl-pattern-compare@mhard-float +le/p/m/fpd;@mlittle-endian@mxl-pattern-compare@mno-xl-soft-mul@mhard-float +le/bs/p;@mlittle-endian@mxl-barrel-shift@mxl-pattern-compare +le/bs/m;@mlittle-endian@mxl-barrel-shift@mno-xl-soft-mul +le/bs/fpd;@mlittle-endian@mxl-barrel-shift@mhard-float +le/bs/m/fpd;@mlittle-endian@mxl-barrel-shift@mno-xl-soft-mul@mhard-float +le/bs/p/m;@mlittle-endian@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul +le/bs/p/fpd;@mlittle-endian@mxl-barrel-shift@mxl-pattern-compare@mhard-float +le/bs/p/m/fpd;@mlittle-endian@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul@mhard-float +le/m64/bs;@mlittle-endian@m64@mxl-barrel-shift +le/m64/p;@mlittle-endian@m64@mxl-pattern-compare +le/m64/m;@mlittle-endian@m64@mno-xl-soft-mul +le/m64/fpd;@mlittle-endian@m64@mhard-float +le/m64/m/fpd;@mlittle-endian@m64@mno-xl-soft-mul@mhard-float +le/m64/p/m;@mlittle-endian@m64@mxl-pattern-compare@mno-xl-soft-mul +le/m64/p/fpd;@mlittle-endian@m64@mxl-pattern-compare@mhard-float +le/m64/p/m/fpd;@mlittle-endian@m64@mxl-pattern-compare@mno-xl-soft-mul@mhard-float +le/m64/bs/p;@mlittle-endian@m64@mxl-barrel-shift@mxl-pattern-compare +le/m64/bs/m;@mlittle-endian@m64@mxl-barrel-shift@mno-xl-soft-mul +le/m64/bs/fpd;@mlittle-endian@m64@mxl-barrel-shift@mhard-float +le/m64/bs/m/fpd;@mlittle-endian@m64@mxl-barrel-shift@mno-xl-soft-mul@mhard-float +le/m64/bs/p/m;@mlittle-endian@m64@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul +le/m64/bs/p/fpd;@mlittle-endian@m64@mxl-barrel-shift@mxl-pattern-compare@mhard-float +le/m64/bs/p/m/fpd;@mlittle-endian@m64@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul@mhard-float + +As part of this the order of the multilibs was changes from upstream to make +it easier to avoid big-endian m64, which is not supported by the toolchain. + +Signed-off-by: Mark Hatle + +Index: gcc-9.2.0/gcc/config/microblaze/t-microblaze +=================================================================== +--- gcc-9.2.0.orig/gcc/config/microblaze/t-microblaze ++++ gcc-9.2.0/gcc/config/microblaze/t-microblaze +@@ -1,17 +1,11 @@ +-MULTILIB_OPTIONS = m64 mxl-barrel-shift mlittle-endian mno-xl-soft-mul mxl-multiply-high +-#MULTILIB_DIRNAMES = m64 bs le m mh +-MULTILIB_DIRNAMES = . . . . . +-MULTILIB_EXCEPTIONS = *m64/mxl-multiply-high mxl-multiply-high +-MULTILIB_EXCEPTIONS += *m64 +-MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift +-MULTILIB_EXCEPTIONS += *m64/mno-xl-soft-mul +-MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift/mno-xl-soft-mul +-MULTILIB_EXCEPTIONS += *m64/mno-xl-soft-mul +-MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift/mno-xl-soft-mul/mxl-multiply-high +-MULTILIB_EXCEPTIONS += *m64/mno-xl-soft-mul/mxl-multiply-high ++MULTILIB_OPTIONS = mlittle-endian m64 mxl-barrel-shift mxl-pattern-compare mno-xl-soft-mul mhard-float ++MULTILIB_DIRNAMES = le m64 bs p m fpd ++MULTILIB_EXCEPTIONS = mxl-multiply-high + MULTILIB_EXCEPTIONS += *mxl-barrel-shift/mxl-multiply-high mxl-multiply-high + MULTILIB_EXCEPTIONS += *mlittle-endian/mxl-multiply-high mxl-multiply-high +-MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift/mlittle-endian/mxl-multiply-high ++MULTILIB_EXCEPTIONS += *mxl-pattern-compare*/*mxl-multiply-high* ++# Big endian m64 is not supported ++MULTILIB_EXCEPTIONS += m64* + + # Extra files + microblaze-c.o: $(srcdir)/config/microblaze/microblaze-c.c \ diff --git a/meta-xilinx/meta-xilinx-standalone/recipes-devtools/gcc/gcc-9/additional-microblaze-multilibs.patch b/meta-xilinx/meta-xilinx-standalone/recipes-devtools/gcc/gcc-9/additional-microblaze-multilibs.patch deleted file mode 100644 index 3d520d0f9..000000000 --- a/meta-xilinx/meta-xilinx-standalone/recipes-devtools/gcc/gcc-9/additional-microblaze-multilibs.patch +++ /dev/null @@ -1,86 +0,0 @@ -Change the multilib settings to match the expectations of Vitis and related. - -The multilib list is as follows: - -.; -le;@mlittle-endian -bs;@mxl-barrel-shift -p;@mxl-pattern-compare -m;@mno-xl-soft-mul -fpd;@mhard-float -m/fpd;@mno-xl-soft-mul@mhard-float -p/m;@mxl-pattern-compare@mno-xl-soft-mul -p/fpd;@mxl-pattern-compare@mhard-float -p/m/fpd;@mxl-pattern-compare@mno-xl-soft-mul@mhard-float -bs/p;@mxl-barrel-shift@mxl-pattern-compare -bs/m;@mxl-barrel-shift@mno-xl-soft-mul -bs/fpd;@mxl-barrel-shift@mhard-float -bs/m/fpd;@mxl-barrel-shift@mno-xl-soft-mul@mhard-float -bs/p/m;@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul -bs/p/fpd;@mxl-barrel-shift@mxl-pattern-compare@mhard-float -bs/p/m/fpd;@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul@mhard-float -le/m64;@mlittle-endian@m64 -le/bs;@mlittle-endian@mxl-barrel-shift -le/p;@mlittle-endian@mxl-pattern-compare -le/m;@mlittle-endian@mno-xl-soft-mul -le/fpd;@mlittle-endian@mhard-float -le/m/fpd;@mlittle-endian@mno-xl-soft-mul@mhard-float -le/p/m;@mlittle-endian@mxl-pattern-compare@mno-xl-soft-mul -le/p/fpd;@mlittle-endian@mxl-pattern-compare@mhard-float -le/p/m/fpd;@mlittle-endian@mxl-pattern-compare@mno-xl-soft-mul@mhard-float -le/bs/p;@mlittle-endian@mxl-barrel-shift@mxl-pattern-compare -le/bs/m;@mlittle-endian@mxl-barrel-shift@mno-xl-soft-mul -le/bs/fpd;@mlittle-endian@mxl-barrel-shift@mhard-float -le/bs/m/fpd;@mlittle-endian@mxl-barrel-shift@mno-xl-soft-mul@mhard-float -le/bs/p/m;@mlittle-endian@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul -le/bs/p/fpd;@mlittle-endian@mxl-barrel-shift@mxl-pattern-compare@mhard-float -le/bs/p/m/fpd;@mlittle-endian@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul@mhard-float -le/m64/bs;@mlittle-endian@m64@mxl-barrel-shift -le/m64/p;@mlittle-endian@m64@mxl-pattern-compare -le/m64/m;@mlittle-endian@m64@mno-xl-soft-mul -le/m64/fpd;@mlittle-endian@m64@mhard-float -le/m64/m/fpd;@mlittle-endian@m64@mno-xl-soft-mul@mhard-float -le/m64/p/m;@mlittle-endian@m64@mxl-pattern-compare@mno-xl-soft-mul -le/m64/p/fpd;@mlittle-endian@m64@mxl-pattern-compare@mhard-float -le/m64/p/m/fpd;@mlittle-endian@m64@mxl-pattern-compare@mno-xl-soft-mul@mhard-float -le/m64/bs/p;@mlittle-endian@m64@mxl-barrel-shift@mxl-pattern-compare -le/m64/bs/m;@mlittle-endian@m64@mxl-barrel-shift@mno-xl-soft-mul -le/m64/bs/fpd;@mlittle-endian@m64@mxl-barrel-shift@mhard-float -le/m64/bs/m/fpd;@mlittle-endian@m64@mxl-barrel-shift@mno-xl-soft-mul@mhard-float -le/m64/bs/p/m;@mlittle-endian@m64@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul -le/m64/bs/p/fpd;@mlittle-endian@m64@mxl-barrel-shift@mxl-pattern-compare@mhard-float -le/m64/bs/p/m/fpd;@mlittle-endian@m64@mxl-barrel-shift@mxl-pattern-compare@mno-xl-soft-mul@mhard-float - -As part of this the order of the multilibs was changes from upstream to make -it easier to avoid big-endian m64, which is not supported by the toolchain. - -Signed-off-by: Mark Hatle - -Index: gcc-9.2.0/gcc/config/microblaze/t-microblaze -=================================================================== ---- gcc-9.2.0.orig/gcc/config/microblaze/t-microblaze -+++ gcc-9.2.0/gcc/config/microblaze/t-microblaze -@@ -1,17 +1,11 @@ --MULTILIB_OPTIONS = m64 mxl-barrel-shift mlittle-endian mno-xl-soft-mul mxl-multiply-high --#MULTILIB_DIRNAMES = m64 bs le m mh --MULTILIB_DIRNAMES = . . . . . --MULTILIB_EXCEPTIONS = *m64/mxl-multiply-high mxl-multiply-high --MULTILIB_EXCEPTIONS += *m64 --MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift --MULTILIB_EXCEPTIONS += *m64/mno-xl-soft-mul --MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift/mno-xl-soft-mul --MULTILIB_EXCEPTIONS += *m64/mno-xl-soft-mul --MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift/mno-xl-soft-mul/mxl-multiply-high --MULTILIB_EXCEPTIONS += *m64/mno-xl-soft-mul/mxl-multiply-high -+MULTILIB_OPTIONS = mlittle-endian m64 mxl-barrel-shift mxl-pattern-compare mno-xl-soft-mul mhard-float -+MULTILIB_DIRNAMES = le m64 bs p m fpd -+MULTILIB_EXCEPTIONS = mxl-multiply-high - MULTILIB_EXCEPTIONS += *mxl-barrel-shift/mxl-multiply-high mxl-multiply-high - MULTILIB_EXCEPTIONS += *mlittle-endian/mxl-multiply-high mxl-multiply-high --MULTILIB_EXCEPTIONS += *m64/mxl-barrel-shift/mlittle-endian/mxl-multiply-high -+MULTILIB_EXCEPTIONS += *mxl-pattern-compare*/*mxl-multiply-high* -+# Big endian m64 is not supported -+MULTILIB_EXCEPTIONS += m64* - - # Extra files - microblaze-c.o: $(srcdir)/config/microblaze/microblaze-c.c \ diff --git a/meta-xilinx/meta-xilinx-standalone/recipes-devtools/gcc/gcc-source_10.%.bbappend b/meta-xilinx/meta-xilinx-standalone/recipes-devtools/gcc/gcc-source_10.%.bbappend new file mode 100644 index 000000000..e1876700f --- /dev/null +++ b/meta-xilinx/meta-xilinx-standalone/recipes-devtools/gcc/gcc-source_10.%.bbappend @@ -0,0 +1,7 @@ +COMPATIBLE_HOST = "${HOST_SYS}" + +# Add MicroBlaze Patches (only when using MicroBlaze) +FILESEXTRAPATHS_append_microblaze_xilinx-standalone := ":${THISDIR}/gcc-10" +SRC_URI_append_microblaze_xilinx-standalone = " \ + file://additional-microblaze-multilibs.patch \ +" diff --git a/meta-xilinx/meta-xilinx-standalone/recipes-devtools/gcc/gcc-source_9.%.bbappend b/meta-xilinx/meta-xilinx-standalone/recipes-devtools/gcc/gcc-source_9.%.bbappend deleted file mode 100644 index 6a4a8c5a3..000000000 --- a/meta-xilinx/meta-xilinx-standalone/recipes-devtools/gcc/gcc-source_9.%.bbappend +++ /dev/null @@ -1,7 +0,0 @@ -COMPATIBLE_HOST = "${HOST_SYS}" - -# Add MicroBlaze Patches (only when using MicroBlaze) -FILESEXTRAPATHS_append_microblaze_xilinx-standalone := ":${THISDIR}/gcc-9" -SRC_URI_append_microblaze_xilinx-standalone = " \ - file://additional-microblaze-multilibs.patch \ -" diff --git a/meta-xilinx/meta-xilinx-standalone/recipes-devtools/gcc/libgcc_%.bbappend b/meta-xilinx/meta-xilinx-standalone/recipes-devtools/gcc/libgcc_%.bbappend index e80b0b79f..17529a039 100644 --- a/meta-xilinx/meta-xilinx-standalone/recipes-devtools/gcc/libgcc_%.bbappend +++ b/meta-xilinx/meta-xilinx-standalone/recipes-devtools/gcc/libgcc_%.bbappend @@ -13,6 +13,9 @@ standalone_fixup () { ln -s $each $(basename $each) done ) + + # Apparently we can end up with an empty /lib occasionally + find ${D}/lib -type d | sort -r | xargs rmdir || : } FIXUP_FUNCTION = "" diff --git a/meta-xilinx/meta-xilinx-standalone/recipes-standalone/pmu-firmware/pmu-firmware/fix-zynqmp-assert.patch b/meta-xilinx/meta-xilinx-standalone/recipes-standalone/pmu-firmware/pmu-firmware/fix-zynqmp-assert.patch new file mode 100644 index 000000000..87e1b111b --- /dev/null +++ b/meta-xilinx/meta-xilinx-standalone/recipes-standalone/pmu-firmware/pmu-firmware/fix-zynqmp-assert.patch @@ -0,0 +1,68 @@ +diff --git a/lib/sw_apps/zynqmp_pmufw/src/pm_reset.c b/lib/sw_apps/zynqmp_pmufw/src/pm_reset.c +index 297c6c2ddc..bc295cf013 100644 +--- a/lib/sw_apps/zynqmp_pmufw/src/pm_reset.c ++++ b/lib/sw_apps/zynqmp_pmufw/src/pm_reset.c +@@ -52,7 +52,7 @@ + * @pulse Function performing reset pulse operation + */ + typedef struct PmResetOps { +- void (*const assert)(const PmReset* const rst, const u32 action); ++ void (*const resetAssert)(const PmReset* const rst, const u32 action); + u32 (*const getStatus)(const PmReset* const s); + u32 (*const pulse)(const PmReset* const rst); + } PmResetOps; +@@ -415,37 +415,37 @@ static u32 PmResetPulsePl(const PmReset* const rst) + } + + static const PmResetOps pmResetOpsGeneric = { +- .assert = PmResetAssertGen, ++ .resetAssert = PmResetAssertGen, + .getStatus = PmResetGetStatusGen, + .pulse = PmResetPulseGen, + }; + + static const PmResetOps pmResetOpsGpo = { +- .assert = PmResetAssertGpo, ++ .resetAssert = PmResetAssertGpo, + .getStatus = PmResetGetStatusGpo, + .pulse = PmResetPulseGpo, + }; + + static const PmResetOps pmResetOpsRom = { +- .assert = PmResetAssertRom, ++ .resetAssert = PmResetAssertRom, + .getStatus = PmResetGetStatusRom, + .pulse = PmResetPulseRom, + }; + + static const PmResetOps pmResetOpsNoAssert = { +- .assert = NULL, ++ .resetAssert = NULL, + .getStatus = PmResetGetStatusRom, + .pulse = PmResetPulseRom, + }; + + static const PmResetOps pmResetOpsPl = { +- .assert = PmResetAssertPl, ++ .resetAssert = PmResetAssertPl, + .getStatus = PmResetGetStatusPl, + .pulse = PmResetPulsePl, + }; + + static const PmResetOps pmResetOpsGpioBankIO = { +- .assert = NULL, ++ .resetAssert = NULL, + .getStatus = PmResetGetStatusGpioBankIOs, + .pulse = PmResetPulseGpioBankIOs, + }; +@@ -1901,8 +1901,8 @@ s32 PmResetDoAssert(const PmReset *reset, u32 action) + switch (action) { + case PM_RESET_ACTION_RELEASE: + case PM_RESET_ACTION_ASSERT: +- if (NULL != reset->ops->assert) { +- reset->ops->assert(reset, action); ++ if (NULL != reset->ops->resetAssert) { ++ reset->ops->resetAssert(reset, action); + } else { + status = XST_INVALID_PARAM; + } diff --git a/meta-xilinx/meta-xilinx-standalone/recipes-standalone/pmu-firmware/pmu-firmware_2020.2.bb b/meta-xilinx/meta-xilinx-standalone/recipes-standalone/pmu-firmware/pmu-firmware_2020.2.bb index 652241c0a..330e02095 100644 --- a/meta-xilinx/meta-xilinx-standalone/recipes-standalone/pmu-firmware/pmu-firmware_2020.2.bb +++ b/meta-xilinx/meta-xilinx-standalone/recipes-standalone/pmu-firmware/pmu-firmware_2020.2.bb @@ -6,7 +6,8 @@ LIC_FILES_CHKSUM = "file://../../../../license.txt;md5=39ab6ab638f4d1836ba994ec6 SRCREV = "e8db5fb118229fdc621e0ec7848641a23bf60998" PV = "${XILINX_RELEASE_VERSION}+git${SRCPV}" -SRC_URI = "git://github.com/Xilinx/embeddedsw.git;protocol=https;nobranch=1" +SRC_URI = "git://github.com/Xilinx/embeddedsw.git;protocol=https;nobranch=1 \ + file://fix-zynqmp-assert.patch;pnum=5" COMPATIBLE_HOST = "microblaze.*-elf" COMPATIBLE_MACHINE = "microblaze-pmu" -- cgit v1.2.3