Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3923a4fac8 | ||
|
|
bd1991e228 | ||
|
|
560c4a0d03 | ||
|
|
5ad971ee08 | ||
|
|
307abe2029 | ||
|
|
762fe411f2 | ||
|
|
57e5d85185 | ||
|
|
352a2abad5 | ||
|
|
e9584abeb0 | ||
|
|
7127899951 | ||
|
|
fbc2e83d41 | ||
|
|
67564d1da2 | ||
|
|
320dbd06dd | ||
|
|
a220cfad56 | ||
|
|
edab7e0f75 | ||
|
|
f8e97d8cd6 | ||
|
|
a4df618107 | ||
|
|
90bee8d448 | ||
|
|
5e2d890b5d | ||
|
|
324e16e8b6 | ||
|
|
924c0ae623 | ||
|
|
fa03b8cd7c | ||
|
|
69e694d0dd | ||
|
|
b8088fce0a | ||
|
|
836cb23310 | ||
|
|
a8ce33440d | ||
|
|
b703a2b860 | ||
|
|
f8b5d6a000 | ||
|
|
f6706817e7 | ||
|
|
e57158821e | ||
|
|
6695c97334 | ||
|
|
f264dc796c | ||
|
|
bb17fd587c | ||
|
|
dbf9f01f0c | ||
|
|
a56e07c512 | ||
|
|
531c8b75ac | ||
|
|
c515e82f23 | ||
|
|
1aa7d047a7 | ||
|
|
90d46e1901 | ||
|
|
1f5b0a3691 | ||
|
|
1000321ddf | ||
|
|
01a58f55ea | ||
|
|
896bc3f147 | ||
|
|
36f6034477 | ||
|
|
e25f6feace | ||
|
|
bf041313f9 | ||
|
|
867a993aea | ||
|
|
c2019a9f18 | ||
|
|
6fc43d90b4 | ||
|
|
1d2861ea8d | ||
|
|
4d98c3fdd5 | ||
|
|
421edb89b4 | ||
|
|
d04b0ad4c3 | ||
|
|
0f400122d8 | ||
|
|
84bbc84d8f | ||
|
|
9dd511431c | ||
|
|
24fca3414c | ||
|
|
7f1d37ef7b | ||
|
|
2ed983f7ce | ||
|
|
29715b801e | ||
|
|
3408ccf38e | ||
|
|
7b716b2017 | ||
|
|
6d7f7b3459 | ||
|
|
38659269b9 | ||
|
|
f3661a50e6 | ||
|
|
7c22ff2045 | ||
|
|
cafc98bb21 | ||
|
|
db399aed5c | ||
|
|
9eef1ed9f1 | ||
|
|
7821b1e64b | ||
|
|
11dea30f52 | ||
|
|
1bd74ab101 | ||
|
|
7ad96715e6 | ||
|
|
6989c71564 | ||
|
|
5bf4f3e516 | ||
|
|
872d1ca1cc | ||
|
|
39245bdd90 | ||
|
|
3782ce8291 | ||
|
|
3304de4e81 | ||
|
|
133d4e188b | ||
|
|
c2d1555301 | ||
|
|
52f4fd74ac | ||
|
|
65714b7e86 | ||
|
|
90dbfba385 | ||
|
|
623add7dae | ||
|
|
e66213ee55 | ||
|
|
b38be2fcae | ||
|
|
7814dbce15 | ||
|
|
50ceb24bb6 | ||
|
|
f445c63558 | ||
|
|
eb6a2e7d31 | ||
|
|
e90f7de856 | ||
|
|
8b26a893f5 | ||
|
|
7f8805c1a6 | ||
|
|
747f62053c | ||
|
|
ecdd588f43 | ||
|
|
f2f7a1901a | ||
|
|
3d613b21b0 | ||
|
|
2356a40fad | ||
|
|
19424402c5 | ||
|
|
36482bd613 | ||
|
|
b1a9eeba83 | ||
|
|
dbea8981a6 | ||
|
|
01cbe25105 | ||
|
|
3dfd81986e | ||
|
|
cb18e7e6f0 | ||
|
|
62aac0da49 | ||
|
|
eaada7c96b | ||
|
|
b62df15fda | ||
|
|
4a2dbae95f | ||
|
|
df3f76c86f | ||
|
|
18706806b3 | ||
|
|
81c8ac125a | ||
|
|
c2f0c3bf6e | ||
|
|
5230b93c77 | ||
|
|
da9f314f9d | ||
|
|
095d4bbdaf | ||
|
|
76dd7489f2 | ||
|
|
d7af75764a | ||
|
|
22fd7da0d2 | ||
|
|
fb5ced5914 | ||
|
|
ca87e434b2 | ||
|
|
22c14e41b4 | ||
|
|
55ea70d56d | ||
|
|
b2961a318d | ||
|
|
829eec5dbf | ||
|
|
e3b6770a7a | ||
|
|
5f07925767 | ||
|
|
8375841e0b | ||
|
|
bf495325c1 | ||
|
|
9153c6283b | ||
|
|
0067ab06a3 | ||
|
|
f2fd4a3775 | ||
|
|
b32591f5f5 | ||
|
|
2851e8ed7f | ||
|
|
b8b36712ef | ||
|
|
c6f2655481 | ||
|
|
f629956fe6 | ||
|
|
3173b77975 | ||
|
|
c32b8b57eb | ||
|
|
71eb15a51f | ||
|
|
6ff5b03f93 | ||
|
|
01ae565de7 | ||
|
|
6b95c89a04 | ||
|
|
741c5b325f | ||
|
|
3e7f940caa | ||
|
|
1d030119fc | ||
|
|
a3726f9b5e | ||
|
|
214a6454c6 | ||
|
|
6e248a121c | ||
|
|
7511b17932 | ||
|
|
3a8384bc40 | ||
|
|
5d6308d543 | ||
|
|
4e2d157c72 | ||
|
|
282d67e765 | ||
|
|
b6e0520b7a | ||
|
|
6e537234e4 | ||
|
|
f7ae6d3148 | ||
|
|
157ecd6d6e | ||
|
|
7737930661 | ||
|
|
748007faee | ||
|
|
442e7cab3a | ||
|
|
ba378b79b2 | ||
|
|
91c51b76c7 | ||
|
|
1dc0ad4993 | ||
|
|
c7613338bb | ||
|
|
0605f6d05d | ||
|
|
945555e7ff | ||
|
|
4b8eaecbdd | ||
|
|
1eee210297 | ||
|
|
e2c274ef77 | ||
|
|
584d553f39 | ||
|
|
d918568a15 | ||
|
|
6e89b38386 | ||
|
|
255441793c | ||
|
|
24ef678979 | ||
|
|
a319bd0e31 | ||
|
|
023a36704f | ||
|
|
672efd219e |
+123
-15
@@ -99,6 +99,8 @@ board/technologic/ts4900/post-image.sh Shellcheck
|
||||
board/toradex/apalis-imx6/post-image.sh Shellcheck
|
||||
board/udoo/common/post-build.sh Shellcheck
|
||||
board/udoo/mx6qdl/patches/linux/0000-udoo-disable-usbh1.patch Upstream
|
||||
board/versal/post-build.sh Shellcheck
|
||||
board/versal/post-image.sh Shellcheck TrailingSpace
|
||||
board/zynqmp/kria/patches/uboot/v1-0001-makefile-add-multi_dtb_fit-dep.patch ApplyOrder Upstream
|
||||
boot/afboot-stm32/0003-Makefile-disable-stack-protector.patch Upstream
|
||||
boot/at91bootstrap/0001-eabi-fix.patch Upstream
|
||||
@@ -107,6 +109,12 @@ boot/at91bootstrap/0003-u-boot-relocation-fix.patch Upstream
|
||||
boot/at91dataflashboot/0001-do-not-install.patch Upstream
|
||||
boot/at91dataflashboot/0002-eabi-fixes.patch Upstream
|
||||
boot/grub2/0001-Makefile-Make-grub_fstest.pp-depend-on-config-util.h.patch Upstream
|
||||
boot/grub2/0002-grub-mkconfig-Restore-umask-for-the-grub.cfg.patch Upstream
|
||||
boot/lpc32xxcdl/0001-compiler_name.patch Upstream
|
||||
boot/lpc32xxcdl/0002-delete_redundant_files.patch Upstream
|
||||
boot/lpc32xxcdl/0003-libnosys_gnu.patch Upstream
|
||||
boot/lpc32xxcdl/0004-slashes.patch Upstream
|
||||
boot/mv-ddr-marvell/0001-Makefile-disable-stack-protection.patch Upstream
|
||||
boot/optee-os/3.13.0/0001-core-zlib-fix-build-warning-when-_LFS64_LARGEFILE-is.patch Upstream
|
||||
boot/syslinux/0001-bios-Fix-alignment-change-with-gcc-5.patch Upstream
|
||||
boot/syslinux/0002-Disable-PIE-to-avoid-FTBFS-on-amd64.patch Upstream
|
||||
@@ -128,6 +136,7 @@ package/4th/0001-avoid-regen-during-install.patch Upstream
|
||||
package/ace/0001-ACE-ace-SSL-SSL_Asynch_BIO.cpp-fix-build-with-libres.patch Upstream
|
||||
package/ace/0002-ACE-ace-SSL-SSL_Asynch_BIO.cpp-fix-build-with-libres.patch Upstream
|
||||
package/acl/0001-Build-with-old-GCC-versions.patch Upstream
|
||||
package/acpica/0001-build-do-not-use-Werror.patch Upstream
|
||||
package/acpid/0001-dont-use-isfdtype.patch Upstream
|
||||
package/alchemy/0001-toolchains-remove-hash-style-management.patch Upstream
|
||||
package/alsamixergui/0001-misc-fixes.patch Sob Upstream
|
||||
@@ -205,6 +214,18 @@ package/berkeleydb/0001-cwd-db_config.patch Upstream
|
||||
package/berkeleydb/0002-atomic_compare_exchange.patch Upstream
|
||||
package/bind/0001-cross.patch Upstream
|
||||
package/bind/S81named Indent Shellcheck Variables
|
||||
package/binutils/2.37/0001-sh-conf.patch Upstream
|
||||
package/binutils/2.37/0002-poison-system-directories.patch Upstream
|
||||
package/binutils/2.37/0003-bfd-elf32-or1k-fix-building-with-gcc-version-5.patch Upstream
|
||||
package/binutils/2.37/0004-or1k-fix-pc-relative-relocation-against-dynamic-on-P.patch Upstream
|
||||
package/binutils/2.37/0005-or1k-Avoid-R_OR1K_GOT16-signed-overflow-by-using-spe.patch Upstream
|
||||
package/binutils/2.37/0006-bfd-Close-the-file-descriptor-if-there-is-no-archive.patch Upstream
|
||||
package/binutils/2.37/0007-i386-Allow-GOT32-relocations-against-ABS-symbols.patch Upstream
|
||||
package/binutils/2.38/0001-sh-conf.patch Upstream
|
||||
package/binutils/2.38/0002-poison-system-directories.patch Upstream
|
||||
package/binutils/2.38/0003-bfd-elf32-or1k-fix-building-with-gcc-version-5.patch Upstream
|
||||
package/binutils/2.38/0004-or1k-Avoid-R_OR1K_GOT16-signed-overflow-by-using-spe.patch Upstream
|
||||
package/binutils/2.38/0005-binutils-2.38-vs.-ppc32-linux-kernel.patch Upstream
|
||||
package/binutils/2.39/0001-sh-conf.patch Upstream
|
||||
package/binutils/2.39/0002-poison-system-directories.patch Upstream
|
||||
package/binutils/2.39/0003-bfd-elf32-or1k-fix-building-with-gcc-version-5.patch Upstream
|
||||
@@ -215,6 +236,7 @@ package/bmx7/0001-Fix-schedule.c-378-36-error-SIOCGSTAMP-undeclared.patch Upstre
|
||||
package/bmx7/0002-Fix-linking-error.patch Upstream
|
||||
package/bmx7/0003-Reorder-includes-to-avoid-ethhdr-collision.patch Upstream
|
||||
package/boinc/S99boinc-client Indent Shellcheck Variables
|
||||
package/bootgen/0001-Fix-build-on-machines-with-modern-flex.patch Upstream
|
||||
package/botan/0001-Add-superh-alias-needed-by-Debian.patch Upstream
|
||||
package/botan/0002-src-build-data-arch-superh.txt-add-sh4-eb-aeb.patch Upstream
|
||||
package/brickd/S70brickd Indent Shellcheck Variables
|
||||
@@ -259,9 +281,13 @@ package/cgroupfs-mount/S30cgroupfs Indent Shellcheck Variables
|
||||
package/chipmunk/0001-Fix-build-failure-on-musl.patch Upstream
|
||||
package/chocolate-doom/0001-Remove-redundant-demoextend-definition.patch Upstream
|
||||
package/chrony/S49chrony Indent Shellcheck Variables
|
||||
package/clang/0001-lib-Driver-ToolChains-Gnu-Use-GCC_INSTALL_PREFIX-in-.patch Upstream
|
||||
package/cmake/0001-rename-cmake-rootfile.patch Upstream
|
||||
package/cmocka/0001-Don-t-redefine-uintptr_t.patch Upstream
|
||||
package/collectd/0001-src-netlink.c-remove-REG_NOERROR.patch Upstream
|
||||
package/connman/0001-gweb-Fix-OOB-write-in-received_data.patch Upstream
|
||||
package/connman/0002-wispr-Add-reference-counter-to-portal-context.patch Upstream
|
||||
package/connman/0003-wispr-Update-portal-context-references.patch Upstream
|
||||
package/connman/S45connman Variables
|
||||
package/copas/0001-Do-not-load-coxpcall-for-LuaJIT.patch Upstream
|
||||
package/coremark-pro/coremark-pro.sh.in Shellcheck
|
||||
@@ -334,7 +360,7 @@ package/dmalloc/0004-Makefile-use-the-configure-detected-or-user-supplied.patch
|
||||
package/dmalloc/0005-configure-use-LD-instead-of-hard-coding-ld.patch Upstream
|
||||
package/dmraid/0001-fix-compilation-under-musl.patch Upstream
|
||||
package/dmraid/S20dmraid Variables
|
||||
package/dnsmasq/S80dnsmasq Shellcheck
|
||||
package/dnsmasq/S80dnsmasq Shellcheck Variables
|
||||
package/docker-engine/S60dockerd Indent Shellcheck Variables
|
||||
package/docopt-cpp/0001-only-build-one-target-use-BUILD_SHARED_LIBS-where-appropriate.patch Upstream
|
||||
package/domoticz/S99domoticz Shellcheck
|
||||
@@ -360,6 +386,7 @@ package/dvblast/0002-fix-int-types.patch Upstream
|
||||
package/dvbsnoop/0001-musl-types-h.patch Upstream
|
||||
package/dvdrw-tools/0001-limits.h.patch Upstream
|
||||
package/dvdrw-tools/0002-Include-sysmacros.h-to-compile-with-newer-gcc.patch Upstream
|
||||
package/e2fsprogs/0001-libext2fs-add-sanity-check-to-extent-manipulation.patch Upstream
|
||||
package/earlyoom/0001-main.c-fix-build-with-kernel-4.3.patch Upstream
|
||||
package/earlyoom/S02earlyoom Indent Shellcheck
|
||||
package/ebtables/0001-replace-ebtables-save-perl-script-with-bash.patch Upstream
|
||||
@@ -386,7 +413,7 @@ package/elf2flt/0002-elf2flt.ld-reinstate-32-byte-alignment-for-.data-sec.patch
|
||||
package/elf2flt/0003-elf2flt-add-riscv-64-bits-support.patch Upstream
|
||||
package/elf2flt/0004-elf2flt-create-a-common-helper-function.patch Upstream
|
||||
package/elf2flt/0005-elf2flt-fix-fatal-error-regression-on-m68k-xtensa-ri.patch Upstream
|
||||
package/elf2flt/0006-xtensa-fix-text-relocations.patch Upstream
|
||||
package/elf2flt/0006-elf2flt-xtensa-fix-text-relocations.patch Upstream
|
||||
package/elftosb/0001-fixes-includes.patch Upstream
|
||||
package/elftosb/0002-force-cxx-compiler.patch Upstream
|
||||
package/elfutils/0001-Add-a-enable-disable-progs-configure-option.patch Upstream
|
||||
@@ -395,8 +422,12 @@ package/empty/0001-respect-LDFLAGS.patch Upstream
|
||||
package/erlang-p1-sip/0001-correct-include.patch Upstream
|
||||
package/erlang-p1-xmpp/0001-fix-includes.patch Upstream
|
||||
package/erlang-rebar/0001-src-rebar_port_compiler-add-fPIC-to-LDFLAGS-by-defau.patch Upstream
|
||||
package/erlang/0001-erts-ethread-instruct-libatomic_ops-we-do-require-CA.patch Upstream
|
||||
package/erlang/0002-erts-emulator-reorder-inclued-headers-paths.patch Upstream
|
||||
package/erlang/0003-crypto-Fixes-for-LibreSSL-3-5-0.patch Upstream
|
||||
package/espeak/0001-Fix-build-of-shared-library-on-architectures-needing.patch Upstream
|
||||
package/espeak/0002-tr_languages-cast-string_ordinal-init-values.patch Upstream
|
||||
package/eudev/0001-Only-use-pragma-for-ignoring-diagnostics-if-.patch Upstream
|
||||
package/eudev/S10udev ConsecutiveEmptyLines Indent Shellcheck Variables
|
||||
package/evemu/0001-Include-limits.h-for-PATH_MAX.patch Upstream
|
||||
package/evemu/0002-evemu-Update-struct-input_event.patch Upstream
|
||||
@@ -414,6 +445,8 @@ package/exim/0009-Fix-non-WITH_CONTENT_SCAN-build-3.patch Upstream
|
||||
package/exim/S86exim Indent Variables
|
||||
package/expect/0001-enable-cross-compilation.patch Upstream
|
||||
package/expect/0002-allow-tcl-build-directory.patch Upstream
|
||||
package/f2fs-tools/0001-configure-ac-fix-cross-compilation.patch Upstream
|
||||
package/f2fs-tools/0002-f2fs-tools-fix-build-error-on-lz4-1-9-4.patch Upstream
|
||||
package/faifa/0001-sha2.c-explicitly-include-endian.h-for-BYTE_ORDER-ma.patch Upstream
|
||||
package/faifa/0002-hpav_cfg.c-do-not-include-linux-if_ether.h-for-musl-.patch Upstream
|
||||
package/faifa/0003-Makefile.in-fix-asbolute-symlink-of-libfaifa.so.patch Upstream
|
||||
@@ -448,12 +481,16 @@ package/flex/0002-build-make-it-possible-to-disable-the-build-of-the-f.patch Ups
|
||||
package/flex/0003-build-make-it-possible-to-disable-the-build-of-the-d.patch Upstream
|
||||
package/flite/0001-fix-alsa-static.patch Upstream
|
||||
package/fltk/0001-disable-tests.patch Upstream
|
||||
package/fluent-bit/0001-lib-cfl-fixup-static_assert.patch Upstream
|
||||
package/fluent-bit/0002-lib-c-ares-fixup-static_assert.patch Upstream
|
||||
package/fluent-bit/0003-fix-build-without-C.patch Upstream
|
||||
package/fluxbox/0001-fixes-bug-1138.patch Upstream
|
||||
package/freeipmi/0001-add-disable-doc.patch Upstream
|
||||
package/freeradius-client/0001-fix-for-nettle.patch Upstream
|
||||
package/freerdp/0001-Fix-variable-declaration-in-loop.patch Upstream
|
||||
package/freerdp/0002-Fixed-variable-declaration-in-loop.patch Upstream
|
||||
package/freerdp/0003-winpr-include-winpr-file.h-fix-build-on-uclibc.patch Upstream
|
||||
package/freerdp/0004-Fix-8702-Disable-sha3-and-shake-hashes-for-libressl.patch Upstream
|
||||
package/freescale-imx/imx-kobs/0001-Fix-musl-build.patch Upstream
|
||||
package/freescale-imx/imx-kobs/0002-Fix-build-for-recent-toolchains.patch Upstream
|
||||
package/freescale-imx/imx-uuc/S80imx-uuc Indent Shellcheck Variables
|
||||
@@ -470,10 +507,15 @@ package/fxload/0001-fix-static-build.patch Upstream
|
||||
package/gamin/0001-no-abstract-sockets.patch Upstream
|
||||
package/gamin/0002-no-const-return.patch Sob Upstream
|
||||
package/gamin/0003-fix-missing-PTHREAD_MUTEX_RECURSIVE_NP.patch Upstream
|
||||
package/gawk/0001-Fix-a-bug-with-Node_elem_new.patch Upstream
|
||||
package/gcc/10.4.0/0001-Revert-re-PR-target-92095-internal-error-with-O1-mcp.patch Upstream
|
||||
package/gcc/10.4.0/0002-or1k-Add-mcmodel-option-to-handle-large-GOTs.patch Upstream
|
||||
package/gcc/10.4.0/0003-or1k-Use-cmodel-large-when-building-crtstuff.patch Upstream
|
||||
package/gcc/10.4.0/0004-gcc-define-_REENTRANT-for-OpenRISC-when-pthread-is-p.patch Upstream
|
||||
package/gcc/10.4.0/0005-disable-split-stack-for-non-thread-builds.patch Upstream
|
||||
package/gcc/11.4.0/0001-or1k-Add-mcmodel-option-to-handle-large-GOTs.patch Upstream
|
||||
package/gcc/11.4.0/0004-disable-split-stack-for-non-thread-builds.patch Upstream
|
||||
package/gcc/12.3.0/0001-disable-split-stack-for-non-thread-builds.patch Upstream
|
||||
package/gcc/13.2.0/0001-disable-split-stack-for-non-thread-builds.patch Upstream
|
||||
package/gcc/8.4.0/0001-xtensa-fix-PR-target-91880.patch Upstream
|
||||
package/gcc/8.4.0/0002-Revert-re-PR-target-92095-internal-error-with-O1-mcp.patch Upstream
|
||||
package/gcc/8.4.0/0003-libsanitizer-Remove-cyclades-from-libsanitizer.patch Upstream
|
||||
@@ -514,6 +556,7 @@ package/gengetopt/0001-configure.ac-add-disable-doc-option.patch Upstream
|
||||
package/genpart/0001-fix-return-code.patch Upstream
|
||||
package/genromfs/0001-build-system.patch Sob Upstream
|
||||
package/gensio/0001-Fix-missing-EVP_PKEY_ED25519-build-error-on-libressl.patch Upstream
|
||||
package/gerbera/0001-Fix-build-with-fmt-9-0.patch Upstream
|
||||
package/gerbera/S99gerbera Indent
|
||||
package/gettext-gnu/0001-error_print_progname.patch Upstream
|
||||
package/gettext-gnu/0002-restore-the-ability-to-buld-gettext-tools-seperately-part1.patch Upstream
|
||||
@@ -528,6 +571,8 @@ package/gmp/0001-mpz-inp_raw.c-Avoid-bit-size-overflows.patch Upstream
|
||||
package/gnu-efi/0001-Make.defaults-don-t-override-ARCH-when-cross-compili.patch Upstream
|
||||
package/gnupg/0001-build-Always-use-EXTERN_UNLESS_MAIN_MODULE-pattern.patch Upstream
|
||||
package/gnuplot/0001-configure-add-without-demo-option.patch Upstream
|
||||
package/gnuradio/0001-blocks-Including-missing-vector-in-blockinterleaver.patch Upstream
|
||||
package/gnuradio/0002-blocks-blockinterleaving.h-add-missing-cstddef-heade.patch Upstream
|
||||
package/go/0001-build.go-explicit-option-for-crosscompilation.patch Upstream
|
||||
package/gob2/0001-dont-include-from-prefix.patch Upstream
|
||||
package/gobject-introspection/0001-disable-tests.patch Upstream
|
||||
@@ -561,6 +606,7 @@ package/haveged/S21haveged Shellcheck Variables
|
||||
package/heirloom-mailx/0001-fix-libressl-support.patch Upstream
|
||||
package/highway/0001-Fix-compilation-for-armv7-with-gcc-8.patch Upstream
|
||||
package/highway/0002-Fix-compilation-for-armv7-targets-with-vfp-v4-and-gc.patch Upstream
|
||||
package/hiredis/0001-CMakeLists.txt-respect-BUILD_SHARED_LIBS.patch Upstream
|
||||
package/hplip/0001-build-use-pkg-config-to-discover-libusb.patch Upstream
|
||||
package/hplip/0002-configure.in-fix-AM_INIT_AUTOMAKE-call.patch Upstream
|
||||
package/htpdate/S43htpdate Shellcheck
|
||||
@@ -621,6 +667,7 @@ package/irrlicht/0002-makefile-override-LDFLAGS-and-remove-obsolete-X11R6-.patch
|
||||
package/iucode-tool/S00iucode-tool Variables
|
||||
package/iwd/S40iwd Shellcheck Variables
|
||||
package/jack2/0001-Remove-usage-of-U-mode-bit-for-opening-files-in-pyth.patch Upstream
|
||||
package/janet/0001-Update-for-more-minimal-builds.patch Upstream
|
||||
package/janus-gateway/0001-disable-ssp.patch Upstream
|
||||
package/janus-gateway/0002-Add-test-for-Wunused-but-set-variable.patch Upstream
|
||||
package/jose/0001-lib-hsh.c-rename-hsh-local-variable.patch Upstream
|
||||
@@ -641,6 +688,7 @@ package/lcdproc/0001-LCDd.conf.patch Upstream
|
||||
package/lcdproc/0002-Add-missing-ioctl-header.patch Upstream
|
||||
package/lcdproc/0003-Fixcompilation-with-GCC-10-x.patch Upstream
|
||||
package/leafnode2/0001-cross_makefile.patch Upstream
|
||||
package/less/0001-End-OSC8-hyperlink-on-invalid-embedded-escape-sequence.patch Upstream
|
||||
package/let-me-create/0001-fix-build-with-musl-C-library.patch Upstream
|
||||
package/leveldb/0001-Fix-compilation-with-g-4.8.2.patch Upstream
|
||||
package/leveldb/0002-CMake-install-libmemenv.a.patch Upstream
|
||||
@@ -651,19 +699,25 @@ package/libabseil-cpp/0001-force-position-independent-code.patch Upstream
|
||||
package/libarchive/0001-autotools-do-not-add-iconv-for-Requires.private.patch Upstream
|
||||
package/libargon2/0001-libargon2-dont-fail-on-existing-symlink.patch Upstream
|
||||
package/libart/0001-art-config-cross.patch Sob Upstream
|
||||
package/libasplib/0001-asplib_CPUTimer.h-Fix-time.h-include.patch Upstream
|
||||
package/libatasmart/0001-strpool-cross-flags.patch Upstream
|
||||
package/libavl/0001-fix-makefile.patch Upstream
|
||||
package/libb64/0001-Integer-overflows.patch Upstream
|
||||
package/libb64/0002-Initialize-C++-objects.patch Upstream
|
||||
package/libblockdev/0001-Provide-replacement-function-for-strerror_l.patch Upstream
|
||||
package/libbsd/0001-src-local-elf.h-fix-big-endian-sh.patch Upstream
|
||||
package/libcdaudio/0001-libcdaudio-enable-autoreconf.patch Upstream
|
||||
package/libcec/0001-cecloader-h-fix-null-return.patch Upstream
|
||||
package/libcgi/0001-CMakeLists.txt-honour-BUILD_TESTING.patch Upstream
|
||||
package/libcgicc/0001-disable-documentation-option.patch Sob Upstream
|
||||
package/libclc/0001-support-out-of-tree-build.patch Upstream
|
||||
package/libcodec2/0001-update-cmake.patch Upstream
|
||||
package/libconfuse/0001-Fix-163-unterminated-username-used-with-getpwnam.patch Upstream
|
||||
package/libcorrect/0002-CMakeLists.txt-conditionally-use-fsanitize-address.patch Upstream
|
||||
package/libcuefile/0001-fix-static-link.patch Upstream
|
||||
package/libdaemon/0001-testd-use-unistd-h-instead-of-sys-unistd-h.patch Upstream
|
||||
package/libdeflate/0001-lib-arm-crc32-use-crypto-target-when-required-due-to-gcc-bug.patch Upstream
|
||||
package/libdeflate/0002-lib-arm-cpu_features-fix-build-error-due-to-PMULL-enabled-without-NEON.patch Upstream
|
||||
package/libdnet/0001-python-makefile.patch Upstream
|
||||
package/libdnet/0002-Correct-path-to-string-h-from-bsd.patch Upstream
|
||||
package/libdrm/0001-tests-meson.build-disable-nouveau-tests-for-static-b.patch Upstream
|
||||
@@ -689,7 +743,9 @@ package/libftdi1/0002-CMakeLists.txt-fix-paths-when-FTDIPP-is-set.patch Upstream
|
||||
package/libftdi1/0003-CMakeLists.txt-fix-static-build-with-libusb-and-lato.patch Upstream
|
||||
package/libfuse/0001-fix-aarch64-build.patch Upstream
|
||||
package/libfuse/0002-util-ulockmgr_server-c-conditionally-define-closefrom-fix-glibc-2-34.patch Upstream
|
||||
package/libfuse3/0001-Fix-MS_LAZYTIME-not-defined-on-uclibc.patch Upstream
|
||||
package/libgcrypt/0001-configure.ac-add-an-option-to-disable-tests.patch Upstream
|
||||
package/libgdiplus/0001-Build-unit-tests-only-when-enable-unit-tests-is-pass.patch Upstream
|
||||
package/libglfw/0001-Wayland-Remove-extra-cmake-modules-dependency.patch Upstream
|
||||
package/libglfw/0002-src-CMakeLists.txt-allow-override-of-wayland-pkgdata.patch Upstream
|
||||
package/libgpgme/0001-Fix-build-without-threads.patch Upstream
|
||||
@@ -725,6 +781,11 @@ package/libloki/0002-use-ln-snf.patch Upstream
|
||||
package/libmad/0001-mips-h-constraint-removal.patch Sob Upstream
|
||||
package/libmad/0002-configure-ac-automake-foreign.patch Upstream
|
||||
package/libmanette/0001-Meson-Un-hardcode-building-a-shared-library.patch Upstream
|
||||
package/libmemcached/0001-disable-tests.patch Upstream
|
||||
package/libmemcached/0002-disable-sanitizer.patch Upstream
|
||||
package/libmemcached/0003-move-ac_config_aux_dir.patch Upstream
|
||||
package/libmemcached/0004-disable-doc-and-man.patch Upstream
|
||||
package/libmemcached/0005-fix-pointer-comparaison.patch Upstream
|
||||
package/libmng/0001-jpeg-9a.patch Upstream
|
||||
package/libmodsecurity/0001-configure.ac-drop-usage-of-git-at-configure-time.patch Upstream
|
||||
package/libmodsecurity/0002-modsecurity.pc.in-add-lstdc.patch Upstream
|
||||
@@ -746,6 +807,9 @@ package/libodb-mysql/0002-mariadb-FTBFS-fix.patch Upstream
|
||||
package/libopenssl/0001-Dont-waste-time-building-manpages-if-we-re-not-going.patch Upstream
|
||||
package/libopenssl/0002-Reproducible-build-do-not-leak-compiler-path.patch Upstream
|
||||
package/libopenssl/0004-Configure-use-ELFv2-ABI-on-some-ppc64-big-endian-sys.patch Upstream
|
||||
package/libopenssl/0005-crypto-perlasm-ppc-xlate.pl-add-linux64v2-flavour.patch Upstream
|
||||
package/libopenssl/0006-Add-support-for-io_pgetevents_time64-syscall.patch Upstream
|
||||
package/libopenssl/0007-Fixup-support-for-io_pgetevents_time64-syscall.patch Upstream
|
||||
package/liboping/0001-fix-utf8-support.patch Upstream
|
||||
package/liboping/0002-Open-raw-sockets-when-adding-hosts-not-when-doing-th.patch Upstream
|
||||
package/liboping/0003-Fix-compile-break-with-GCC-7-buffer-overflow-with-snprintf.patch Upstream
|
||||
@@ -753,9 +817,12 @@ package/liboping/0004-Fix-compile-error-on-GCC-7.patch Upstream
|
||||
package/liboping/0005-src-oping.c-always-use-s-style-format-for-printf-sty.patch Upstream
|
||||
package/libp11/0001-src-p11_attr.c-fix-build-with-gcc-4.8.patch Upstream
|
||||
package/libpam-tacplus/0001-Add-an-option-to-disable-Werror.patch Upstream
|
||||
package/libpjsip/0001-Merge-pull-request-from-GHSA-9pfh-r8x4-w26w.patch Upstream
|
||||
package/libpjsip/0002-Merge-pull-request-from-GHSA-cxwq-5g9x-x7fr.patch Upstream
|
||||
package/libplatform/0001-cmake-require-c-11-as-the-minimum-standard.patch Upstream
|
||||
package/libpng/0001-Disable-pngfix-and-png-fix-itxt.patch Upstream
|
||||
package/libpthsem/0001-fix-build-on-linux-3.x-host.patch Upstream
|
||||
package/libqb/0001-Add-disable-tests-option.patch Upstream
|
||||
package/libressl/0001-always-expose-SSL_OP_NO_TLSv1_3.patch Upstream
|
||||
package/libroxml/0001-src-roxml_mem.h-add-missing-extern.patch Upstream
|
||||
package/librsvg/0001-gdk-pixbuf-loader-Makefile.am-set-GDK_PIXBUF_MODULED.patch Upstream
|
||||
@@ -783,6 +850,7 @@ package/libspatialindex/0001-allow-building-static-libs.patch Upstream
|
||||
package/libspatialindex/0002-CMakeLists.txt-fix-CMAKE_BUILD_TYPE.patch Upstream
|
||||
package/libsquish/0001-Makefile-add-f-option-for-ln-to-remove-existing-dest.patch Upstream
|
||||
package/libsrtp/0001-Remove-compatibility-code-for-legacy-OpenSSL-to-fix-LibreSSL-build.patch Upstream
|
||||
package/libssh2/0001-Opaque-structs-in-LibreSSL-3-5.patch Upstream
|
||||
package/libsvg/0001-fix-expat-static-declaration.patch Upstream
|
||||
package/libsvg/0002-Fix-undefined-symbol-png_set_gray_1_2_4_to_8.patch Upstream
|
||||
package/libsvgtiny/0001-disable-debug-printfs.patch Upstream
|
||||
@@ -815,6 +883,7 @@ package/libwebsock/0002-fix-ssl.patch Upstream
|
||||
package/libwebsock/0003-fix-incorrect-inline.patch Upstream
|
||||
package/libwebsockets/0001-lib-tls-CMakeLists.txt-fix-build-without-threads.patch Upstream
|
||||
package/libyuv/0001-i386-sse2.patch Upstream
|
||||
package/lightning/0001-lib-jit_disasm.c-fix-build.patch Upstream
|
||||
package/lighttpd/0001-Modify-the-default-lighttpd-configuration-file-to-ha.patch Upstream
|
||||
package/lighttpd/S50lighttpd EmptyLastLine Indent Shellcheck Variables
|
||||
package/linknx/0001-configure-ac-tweak-CPPUNIT-conditional.patch Upstream
|
||||
@@ -824,8 +893,11 @@ package/linux-fusion/0001-fix-for-linux-4-and-above.patch Upstream
|
||||
package/linux-fusion/0002-Fix-mismatched-conversion-spec-and-value-in-printk.patch Upstream
|
||||
package/linux-fusion/0003-Fix-fusion-Unknown-symbol-tasklist_lock-err-0.patch Upstream
|
||||
package/linux-fusion/0004-Port-one-one_udp.c-to-Linux-4.1.patch Upstream
|
||||
package/linux-tools/S10hyperv Variables
|
||||
package/linux-zigbee/0001-test-serial-Remove-test-serial.patch Upstream
|
||||
package/linux-zigbee/0002-addrdb-coord-config-parse.y-add-missing-time.h-inclu.patch Upstream
|
||||
package/linuxptp/0001-missing.h-drop-clock_nanosleep-replacement.patch Upstream
|
||||
package/linuxptp/0002-makefile-use-conditional-assignment-for-KBUILD_OUTPUT.patch Upstream
|
||||
package/linuxptp/S65ptp4l Indent Shellcheck
|
||||
package/linuxptp/S66phc2sys Indent Shellcheck
|
||||
package/lirc-tools/0001-plugins-devinput.c-fix-build-with-musl-1.2.0.patch Upstream
|
||||
@@ -836,8 +908,7 @@ package/lite/0002-no-tests.patch Sob Upstream
|
||||
package/lite/0003-pkg-config.patch Sob Upstream
|
||||
package/live555/0001-Add-a-pkg-config-file-for-the-shared-libraries.patch Upstream
|
||||
package/lldpd/S60lldpd Indent Shellcheck Variables
|
||||
package/llvm-project/clang/0001-lib-Driver-ToolChains-Gnu-Use-GCC_INSTALL_PREFIX-in-.patch Upstream
|
||||
package/llvm-project/libclc/0001-support-out-of-tree-build.patch Upstream
|
||||
package/llvm/0001-nfc-Fix-missing-include.patch Upstream
|
||||
package/lm-sensors/0001-static-build.patch Upstream
|
||||
package/lm-sensors/0002-no-host-ldconfig.patch Upstream
|
||||
package/lmbench/0001-scripts-build-use-bin-bash-as-shell.patch Upstream
|
||||
@@ -888,8 +959,11 @@ package/madplay/0001-switch-to-new-alsa-api.patch Sob Upstream
|
||||
package/madplay/0002-configure-ac-automake-foreign.patch Upstream
|
||||
package/madplay/0003-configure-ac-use-pkg-config-to-find-id3tag.patch Upstream
|
||||
package/madplay/0004-configure-ac-call-AM_MKINSTALLDIRS.patch Upstream
|
||||
package/make/0001-configure.ac-Support-GLIBC-glob-interface-version-2.patch Upstream
|
||||
package/make/0001-glob-Do-not-assume-glibc-glob-internals.patch Upstream
|
||||
package/makedumpfile/0002-Handle-__mips64.patch Upstream
|
||||
package/mariadb/0001-add-extra-check-for-librt.patch Upstream
|
||||
package/mariadb/0002-include-ssl_compat.h-fix-build-with-libressl-3.5.0.patch Upstream
|
||||
package/mariadb/S97mysqld Indent Shellcheck Variables
|
||||
package/matchbox-keyboard/mb-applet-kbd-wrapper.sh Shellcheck TrailingSpace
|
||||
package/matchbox-lib/0001-index-is-legacy.patch Upstream
|
||||
@@ -899,6 +973,7 @@ package/matchbox-panel/0003-mb-applet-battery.patch Upstream
|
||||
package/matchbox-startup-monitor/0001-true-false.patch Upstream
|
||||
package/matchbox/0001-defaulttheme.patch Upstream
|
||||
package/matchbox/0002-src-Fix-build-with-gcc-10.patch Upstream
|
||||
package/mbw/0001-CMakeLists.txt-fix-build-without-C.patch Upstream
|
||||
package/mediastreamer/0001-src-videofilters-nowebcam.c-fix-build-without-ffmpeg.patch Upstream
|
||||
package/mediastreamer/0002-Use-AV_INPUT_BUFFER_PADDING_SIZE-to-determine-paddin.patch Upstream
|
||||
package/memcached/0001-logger.c-initialize-rport.patch Upstream
|
||||
@@ -952,6 +1027,7 @@ package/musepack/0004-missing-sys-select.patch Upstream
|
||||
package/musepack/0005-fix-build-with-gcc-10.patch Upstream
|
||||
package/musl/0001-avoid-kernel-if_ether.h.patch Upstream
|
||||
package/musl/0002-package-musl-Make-scheduler-functions-Linux-compatib.patch Upstream
|
||||
package/musl/0003-fix-incorrect-parameter-name-in-internal-netlink.h-R.patch Upstream
|
||||
package/nano/0001-lib-getrandom.c-fix-build-with-uclibc-1.0.35.patch Upstream
|
||||
package/nanocom/0001-fix-build-with-gcc-10.patch Upstream
|
||||
package/ncftp/0001-fix-gcc-10.patch Upstream
|
||||
@@ -960,6 +1036,10 @@ package/ne10/0001-CMakeLists-don-t-hard-code-thumb-code-generation.patch Upstrea
|
||||
package/ne10/0002-fix-build-without-C.patch Upstream
|
||||
package/neard/S53neard Indent Shellcheck Variables
|
||||
package/neardal/0001-lib-neardal.h-fix-build-with-gcc-10.patch Upstream
|
||||
package/neon/0001-Revert-Advertise-TS_SSL-feature-with-OpenSSL-1.1.0.patch Upstream
|
||||
package/neon/0002-configure.ac-fix-autoreconf.patch Upstream
|
||||
package/netatalk/0001-Fix-setting-of-LD_LIBRARY_FLAGS-shlibpath_var.patch Upstream
|
||||
package/netatalk/0002-etc-uams-openssl_compat.h-fix-build-with-libressl-2..patch Upstream
|
||||
package/netatalk/S50netatalk EmptyLastLine Indent Variables
|
||||
package/netcat/0001-signed-bit-counting.patch Sob Upstream
|
||||
package/netopeer2/S52netopeer2 Shellcheck Variables
|
||||
@@ -1008,6 +1088,8 @@ package/norm/0003-Fix-mixed-tabs-spaces-in-protolib-wscript.patch Upstream
|
||||
package/nss-pam-ldapd/S45nslcd EmptyLastLine Indent Shellcheck Variables
|
||||
package/ntp/0001-nano.patch Upstream
|
||||
package/ntp/0002-ntp-syscalls-fallback.patch Upstream
|
||||
package/ntp/0003-override-shell.patch Upstream
|
||||
package/ntp/0004-libntp-Do-not-use-PTHREAD_STACK_MIN-on-glibc.patch Upstream
|
||||
package/ntp/S49ntp.in Variables
|
||||
package/ntpsec/0001-wscript-remove-checks-for-bsd-string.h-fixes-host-co.patch Upstream
|
||||
package/ntpsec/0002-wscript-fix-build-without-stack-protector.patch Upstream
|
||||
@@ -1036,13 +1118,13 @@ package/olsr/0001-olsrd-migrate-to-using-bison-3.7.1.patch Upstream
|
||||
package/olsr/0002-lib-pud-Makefile-fix-parallel-build.patch Upstream
|
||||
package/olsr/0003-pud-adapt-to-API-changes-in-gpsd-3-20.patch Upstream
|
||||
package/olsr/0005-lib-pud-src-gpsdclient.c-drop-handling-of-gpsdata-fi.patch Upstream
|
||||
package/olsr/0006-build-patch-for-gpsd-3-25.patch Upstream
|
||||
package/olsr/S50olsr Indent Shellcheck Variables
|
||||
package/omxplayer/0001-Update-Makefile-to-be-compatible-with-buildroot.patch Upstream
|
||||
package/open-iscsi/0001-SHA3-is-not-supported-by-libressl.patch Upstream
|
||||
package/open-plc-utils/0001-Remove-OWNER-and-GROUPS-parameters-to-install.patch Upstream
|
||||
package/open-plc-utils/0002-plc-plc.h-fix-build-with-gcc-10.patch Upstream
|
||||
package/open2300/0001-fix-makefile.patch Upstream
|
||||
package/openjdk/17.0.8.1+1/0001-Add-ARCv2-ISA-processors-support-to-Zero.patch Upstream
|
||||
package/openjdk/17.0.7+7/0001-Add-ARCv2-ISA-processors-support-to-Zero.patch Upstream
|
||||
package/openldap/0001-fix_cross_strip.patch Upstream
|
||||
package/openldap/0002-fix-bignum.patch Upstream
|
||||
package/openldap/0003-disable-docs.patch Upstream
|
||||
@@ -1061,6 +1143,8 @@ package/openrc/0003-init.d-agetty-replace-sbin-agetty-by-sbin-getty.patch Upstre
|
||||
package/openrc/0004-init.d-agetty-start-agetty-after-all-sevices.patch Upstream
|
||||
package/openrc/0005-runlevels-do-not-add-agetty.tty-1-6-if-MKSYSVINIT-ye.patch Upstream
|
||||
package/openrc/0006-Also-create-run-lock-subsys-directory.patch Upstream
|
||||
package/opensc/0002-added-compatibility-with-LibreSSL.patch Upstream
|
||||
package/opensc/0003-Fix-build-with-libressl-3.5.0.patch Upstream
|
||||
package/openssh/S50sshd EmptyLastLine Indent Variables
|
||||
package/openswan/0001-lib-libopenswan-constants.c-workaround-missing-ns_t_.patch Upstream
|
||||
package/opentyrian/0001-Move-definitions-that-don-t-need-to-be-exposed-from-opl-h-to-opl-c.patch Upstream
|
||||
@@ -1136,11 +1220,14 @@ package/pkcs11-helper/0001-openssl-libressl-3-5-0-does-not-have-DSA_meth_set1_na
|
||||
package/pkgconf/0001-Only-prefix-with-the-sysroot-a-subset-of-variables.patch Upstream
|
||||
package/pkgconf/0002-Revert-main-assume-modversion-insted-of-version-if-o.patch Upstream
|
||||
package/pkgconf/pkg-config.in Shellcheck
|
||||
package/poco/0001-Fix-optional-JSON-support-for-MySQL-3753.patch Sob Upstream
|
||||
package/poke/0001-configure.ac-HELP2MAN-replace-by-true-when-cross-com.patch Upstream
|
||||
package/poke/0002-lib-getrandom.c-fix-build-with-uclibc-1.0.35.patch Upstream
|
||||
package/policycoreutils/0001-Add-DESTDIR-to-all-paths-that-use-an-absolute-path.patch Upstream
|
||||
package/policycoreutils/0002-Add-PREFIX-to-host-paths.patch Upstream
|
||||
package/postgresql/S50postgresql Variables
|
||||
package/pound/0001-fix-openssl-1.0.2.patch Upstream
|
||||
package/pound/0002-fix-openssl-1.1.0.patch Upstream
|
||||
package/powertop/0001-dont-force-stack-smashing-protection.patch Upstream
|
||||
package/pppd/0001-pppd-Fix-compilation-with-older-glibc-or-kernel-headers.patch Upstream
|
||||
package/pppd/0002-pppd-eap-tls.c-fix-build-with-libressl.patch Upstream
|
||||
@@ -1172,6 +1259,7 @@ package/pulseaudio/S50pulseaudio ConsecutiveEmptyLines EmptyLastLine Indent Vari
|
||||
package/pulseview/0001-Replace-obsolete-deprecated-Qt-methods.patch Upstream
|
||||
package/pulseview/0002-Fix-broken-build-due-to-C-template-behind-C-linkage.patch Upstream
|
||||
package/pulseview/0003-Support-glibmm-2.68.patch Upstream
|
||||
package/putty/0001-unix-uxutils.h-fix-build-on-uclibc.patch Upstream
|
||||
package/python-aiohttp-remotes/0001-Fix-flit_core-build-requires-backend.patch Upstream
|
||||
package/python-automat/0001-Remove-uneeded-dependency-to-wheel.patch Upstream
|
||||
package/python-crossbar/0001-Avoid-intentional-syntax-error.patch Upstream
|
||||
@@ -1179,6 +1267,7 @@ package/python-crossbar/0002-requirements-min.txt-drop-indirect-dependencies.pat
|
||||
package/python-crossbar/0003-crossbar-webservice-wap-use-markupsafe-instead-of-we.patch Upstream
|
||||
package/python-daphne/0001-remove-pytest-runner-requirement.patch Upstream
|
||||
package/python-dnspython/0001-Remove-spurious-wheel-build-dependency.patch Upstream
|
||||
package/python-hiredis/0001-setup.py-fix-build-with-gcc-4.8.patch Upstream
|
||||
package/python-m2crypto/0001-Mitigate-the-Bleichenbacher-timing-attacks-in-the-RSA-decryption-API-CVE-2020-25657.patch Upstream
|
||||
package/python-pybind/0001-pybind11-commands.py-support-STAGING_DIR.patch Upstream
|
||||
package/python-pylibftdi/0001-do-not-use-find-library.patch Upstream
|
||||
@@ -1240,6 +1329,7 @@ package/qt5/qt5enginio/0001-Do-not-use-deprecated-QLinkedList.patch Upstream
|
||||
package/qt5/qt5location/0001-3rdparty-mapbox-gl-native-fix-musl-compile-pthread_g.patch Upstream
|
||||
package/qt5/qt5script/0001-Detect-32-bits-armv8-a-architecture.patch Upstream
|
||||
package/qt5/qt5tools/0001-Disable-designer-tool-fixes-configure-error.patch Upstream
|
||||
package/qt5/qt5wayland/0001-Add-missing-define-guards.patch Upstream
|
||||
package/qt5/qt5webengine-chromium/0001-Add-python3-build-support.patch Upstream
|
||||
package/qt5/qt5webengine-chromium/0002-Don-t-rebase-sysroot-path.patch Upstream
|
||||
package/qt5/qt5webengine/0001-gn.pro-don-t-link-statically-with-libstc.patch Upstream
|
||||
@@ -1258,6 +1348,8 @@ package/quotatool/0001-fix-missing-__P-definition-for-musl-compile.patch Upstrea
|
||||
package/racehound/0001-Fix-module-install-path-lib-instead-of-usr-lib-prefi.patch Upstream
|
||||
package/ranger/0001-colorscheme-check-for-compiled-python-files.patch Upstream
|
||||
package/rapidxml/0001-ensure-internal-print-operations-are-declared-before.patch Upstream
|
||||
package/raptor/0002-Calcualte-max-nspace-declarations-correctly-for-XML-.patch Upstream
|
||||
package/raptor/0003-XML-Writer-compare-namespace-declarations-correctly.patch Upstream
|
||||
package/raspberrypi-usbboot/0001-Makefile-allow-passing-CFLAGS-LDFLAGS.patch Upstream
|
||||
package/rdesktop/0001-8bit-colors.patch Sob Upstream
|
||||
package/read-edid/0001-Fix-install-file-list.patch Upstream
|
||||
@@ -1268,6 +1360,7 @@ package/redis/0001-uclibc.patch Upstream
|
||||
package/redis/0002-largefile-conditional-define.patch Upstream
|
||||
package/redis/0003-redis.conf-adjust-defauts-for-buildroot.patch Upstream
|
||||
package/redis/S50redis Shellcheck Variables
|
||||
package/resiprocate/0001-Fix-some-issue-compiling-with-Visual-Studio.patch Upstream
|
||||
package/restorecond/S02restorecond Shellcheck
|
||||
package/ripgrep/0001-puts-jemalloc-allocator-behind-a-cargo-feature-flag.patch Upstream
|
||||
package/riscv-isa-sim/0001-riscv-disable-precompiled-headers.patch Upstream
|
||||
@@ -1285,6 +1378,7 @@ package/rpi-userland/0006-interface-vcos-pthreads-CMakeLists.txt-fix-build-wit.p
|
||||
package/rpi-userland/0007-GLES2-gl2ext.h-add-GLint64-GLuint64-and-GLsync-typed.patch Upstream
|
||||
package/rt-tests/0001-Fix-a-build-issue-with-uClibc-ng.patch Upstream
|
||||
package/rt-tests/0002-Makefile-drop-explicit-undefine-PYLIB-for-compatibil.patch Upstream
|
||||
package/rtl8192eu/0002-Fix-conflicting-get_ra-on-PowerPC.patch Upstream
|
||||
package/rtl_433/0001-CMakeLists.txt-use-pkg-config-to-detect-openssl-when.patch Upstream
|
||||
package/rtl_433/0002-minor-Fix-mongoose-build-without-threads.patch Upstream
|
||||
package/rtmpdump/0001-include-limits.h.patch Upstream
|
||||
@@ -1304,12 +1398,12 @@ package/samba4/0002-build-find-pre-built-heimdal-build-tools-in-case-of-.patch U
|
||||
package/samba4/0003-ldap_message_test.c-include-stdint.h-before-cmoka.h.patch Upstream
|
||||
package/samba4/S91smb Indent Shellcheck Variables
|
||||
package/sane-backends/0001-sane_backend-add-missing-config.h.patch Upstream
|
||||
package/screen/0001-Do-not-use-memcpy-as-an-alternative-for-bcopy-memmov.patch Upstream
|
||||
package/screen/0002-Do-not-create-backup-of-old-installed-binary.patch Upstream
|
||||
package/screen/0003-Change-binary-permission-flags-even-if-chown-fails.patch Upstream
|
||||
package/screen/0004-Support-overriding-SCREEN-to-get-a-non-versioned-bin.patch Upstream
|
||||
package/screen/0005-Renamed-sched.h-to-eventqueue.h.patch Upstream
|
||||
package/screen/0006-comm.h-now-depends-on-term.h.patch Upstream
|
||||
package/screen/0001-no-memcpy-fallback.patch Upstream
|
||||
package/screen/0002-install-no-backup-binary.patch Upstream
|
||||
package/screen/0003-install-always-chmod.patch Upstream
|
||||
package/screen/0004-install-nonversioned-binary.patch Upstream
|
||||
package/screen/0005-rename-sched_h.patch Upstream
|
||||
package/screen/0006-comm-h-now-depends-on-term-h.patch Upstream
|
||||
package/screen/0007-comm.h-needed-for-list_-display-generic-.o.patch Upstream
|
||||
package/scrub/0001-configure-ac-make-sure-m4-macros-are-included-in-the-build.patch Upstream
|
||||
package/sdl/0001-use-correct-directfb-config.patch Upstream
|
||||
@@ -1387,13 +1481,16 @@ package/sslh/S35sslh Indent Shellcheck Variables
|
||||
package/start-stop-daemon/0001-add-uclibc-alias-and-musl.patch Upstream
|
||||
package/start-stop-daemon/0002-just-warn-on-missing-arch.patch Upstream
|
||||
package/statserial/0001-ncurses-link.patch Upstream
|
||||
package/stellarium/0001-add-missing-include.patch Upstream
|
||||
package/stunnel/S50stunnel Indent Shellcheck Variables
|
||||
package/sudo/0001-configure.ac-fix-openssl-static-build.patch Upstream
|
||||
package/supervisor/S99supervisord Variables
|
||||
package/suricata/0001-configure.ac-allow-the-user-to-override-RUST_TARGET.patch Upstream
|
||||
package/suricata/0001-python-ensure-proper-shabang-on-python-scripts.patch Upstream
|
||||
package/suricata/0002-configure.ac-allow-the-user-to-override-RUST_TARGET.patch Upstream
|
||||
package/suricata/S99suricata Shellcheck
|
||||
package/swupdate/swupdate.sh Shellcheck
|
||||
package/sylpheed/0001-harden-link-checker-before-accepting-click.patch Upstream
|
||||
package/syslog-ng/0001-fix-build-on-uclibc.patch Upstream
|
||||
package/sysprof/0001-define-NT_GNU_BUILD_ID.patch Upstream
|
||||
package/sysrepo/S51sysrepo-plugind Indent Shellcheck
|
||||
package/system-config-printer/0001-Add-option-to-disable-xmlto-manual-generation.patch Upstream
|
||||
@@ -1405,7 +1502,7 @@ package/taskd/0001-Fix-missing-cmakedefine-HAVE_GET_CURRENT_DIR_NAME.patch Upstr
|
||||
package/taskd/0002-Use-correct-variables-for-GnuTLS-detection.patch Upstream
|
||||
package/taskd/0003-CMakeLists-use-pkg-config-uuid-detection.patch Upstream
|
||||
package/tcf-agent/S55tcf-agent Shellcheck Variables
|
||||
package/tcl/0001-Disable-tcl-compatibility-layers.patch Upstream
|
||||
package/tcl/0001-dont-build-compat.patch Upstream
|
||||
package/tesseract-ocr/0001-Check-if-platform-supports-feenableexcept.patch Upstream
|
||||
package/tesseract-ocr/0002-configure.ac-fix-build-on-aarch64_be.patch Upstream
|
||||
package/tftpd/0001-Use-extern-qualifier-to-fix-gcc-10.x-build.patch Upstream
|
||||
@@ -1428,6 +1525,7 @@ package/tinyxml/0001-In-stamp-always-advance-the-pointer-if-p-0xef.patch Upstrea
|
||||
package/tor/0001-patch-src_lib_crypt_ops_crypto_dh_openssl_c.patch Upstream
|
||||
package/tor/0002-patch-src_lib_crypt_ops_crypto_rsa_openssl_c.patch Upstream
|
||||
package/tor/0003-patch-src_lib_tls_x509_openssl_c.patch Upstream
|
||||
package/tovid/0001-manpage.patch Upstream
|
||||
package/tpm2-abrmd/S80tpm2-abrmd Indent Shellcheck Variables
|
||||
package/tpm2-tss/0001-Temporary-fix-for-build-without-C.patch Upstream
|
||||
package/transmission/S92transmission ConsecutiveEmptyLines Indent Shellcheck Variables
|
||||
@@ -1470,6 +1568,7 @@ package/ushare/0001-Don-t-build-po-files-if-NLS-is-disabled.patch Upstream
|
||||
package/ussp-push/0001-fix-build-against-bluez-4.patch Upstream
|
||||
package/ussp-push/0002-fix-build-again-obex-bluez.patch Upstream
|
||||
package/ussp-push/0003-add-OBEX_CharToUnicode.patch Upstream
|
||||
package/util-linux/0001-lsns-improve-dependence-on-NS_GET_-ioctls.patch Upstream
|
||||
package/vala/0001-dont-add-dirty-to-valac-version.patch Upstream
|
||||
package/vala/vala-wrapper Shellcheck
|
||||
package/valgrind/0001-workaround-SIGSEGV-on-PPC.patch Upstream
|
||||
@@ -1523,7 +1622,9 @@ package/wampcc/0002-include-wampcc-platform.h-fix-build-with-musl-1.2.0.patch Up
|
||||
package/wampcc/0003-Broken-build-on-Windows.patch Upstream
|
||||
package/watchdogd/S01watchdogd Indent NotExecutable
|
||||
package/wavemon/0001-iw_if.h-don-t-include-linux-if.h.patch Upstream
|
||||
package/wayland-utils/0001-wayland-info-Fix-build-without-libdrm.patch Upstream
|
||||
package/webrtc-audio-processing/0001-Proper-detection-of-cxxabi.h-and-execinfo.h.patch Upstream
|
||||
package/weston/0001-tests-Add-dependency-on-screenshooter-client-protocol.patch Upstream
|
||||
package/wget/0001-lib-getrandom.c-fix-build-with-uclibc-1.0.35.patch Upstream
|
||||
package/wilc-driver/0001-cfg80211.c-fix-missing-prandom_u32-with-Linux-6.1.0.patch Upstream
|
||||
package/wilc-driver/0002-spi.c-fix-build-failure-on-remove-callback.patch Upstream
|
||||
@@ -1582,6 +1683,7 @@ package/xinetd/0004-configure-rlim_t.patch Upstream
|
||||
package/xinetd/0005-CVE-2013-4342-xinetd-ignores-user-and-group-directiv.patch Upstream
|
||||
package/xl2tp/xl2tpd TrailingSpace
|
||||
package/xml-security-c/0001-fix-build-with-libressl-3.5.0.patch Upstream
|
||||
package/xvisor/0001-psmouse-back.c-fix-build-with-gcc-11.patch Upstream
|
||||
package/xxhash/0001-fix-man-page-installation.patch Upstream
|
||||
package/xxhash/0002-Makefile-add-dedicated-install-targets.patch Upstream
|
||||
package/xxhash/0003-do-no-longer-depend-on-assert-h-for-XXH_STATIC_ASSERT.patch Upstream
|
||||
@@ -1596,6 +1698,8 @@ package/ytree/0001-fix-musl.patch Upstream
|
||||
package/zabbix/0001-m4-netsnmp.m4-fix-shared-netsnmp-build.patch Upstream
|
||||
package/zabbix/0002-fix-build-with-libressl-3.5.0.patch Upstream
|
||||
package/zbar/0001-python-enum-fix-build-for-Python-3.11.patch Upstream
|
||||
package/zchunk/0001-meson-fix-argp-standalone-wrap-and-find_library.patch Upstream
|
||||
package/zchunk/0002-zck-declare-write_data-as-static.patch Upstream
|
||||
package/zic/0001-remove-dependency-check-on-version-file.patch Upstream
|
||||
package/zip/0001-configure-Remove-Check-C-compiler-type-optimization-.patch Upstream
|
||||
package/zip/0002-configure-Don-t-use-host-CPP.patch Upstream
|
||||
@@ -1605,6 +1709,9 @@ package/zip/0005-unix-configure-remove-GID-UID-size-check.patch Upstream
|
||||
package/zip/0006-unix-configure-borrow-the-LFS-test-from-autotools.patch Upstream
|
||||
package/zip/0007-timezone.c-needs-time.h-fixes-musl-compile.patch Upstream
|
||||
package/zip/0008-fix-musl-static-build.patch Upstream
|
||||
package/zlib-ng/0001-Use-static-keyword-for-vec_sumsu-to-prevent-undefine.patch Upstream
|
||||
package/zlib-ng/0002-CMakeLists.txt-fix-version-in-zlib.pc-when-building-.patch Upstream
|
||||
package/zlib-ng/0003-zlib-ng-check-that-sys-auxv.h-exists-at-configure-time.patch Upstream
|
||||
package/zmqpp/0001-Allow-building-shared-or-static-library-only.patch Upstream
|
||||
package/znc/0001-LibreSSL-3.5-opaqued-structures.patch Upstream
|
||||
package/znc/0002-Fix-build-with-libressl.patch Upstream
|
||||
@@ -1625,6 +1732,7 @@ support/download/check-hash Shellcheck
|
||||
support/download/cvs Shellcheck
|
||||
support/download/dl-wrapper Shellcheck
|
||||
support/download/file Shellcheck
|
||||
support/download/git Shellcheck
|
||||
support/download/go-post-process Shellcheck
|
||||
support/download/hg Shellcheck
|
||||
support/download/scp Shellcheck
|
||||
|
||||
@@ -10,11 +10,6 @@ stages:
|
||||
generate-gitlab-ci-yml:
|
||||
stage: generate-gitlab-ci
|
||||
script: ./support/scripts/generate-gitlab-ci-yml support/misc/gitlab-ci.yml.in > generated-gitlab-ci.yml
|
||||
retry:
|
||||
max: 2
|
||||
when:
|
||||
- runner_system_failure
|
||||
- stuck_or_timeout_failure
|
||||
artifacts:
|
||||
when: always
|
||||
paths:
|
||||
|
||||
@@ -1,210 +1,3 @@
|
||||
2023.08.3, released November 14th, 2023
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Per-package builds: Unbreak SDK relocation logic. Only drop
|
||||
the hard links for the final host / target directory, fixing a
|
||||
build time / size regression in 2023.08.2.
|
||||
|
||||
Packages where a free-form version/site can be specified
|
||||
(E.G. Linux, U-Boot, ..) can now have the corresponding
|
||||
tarballs of these custom downloads checked by the download
|
||||
infrastructure based on .hash files in the global patch
|
||||
directory. These hashes are optional unless
|
||||
BR2_DOWNLOAD_FORCE_CHECK_HASHES is enabled.
|
||||
|
||||
A utils/add-custom-hashes helper script has been added to
|
||||
assist in managing such hash files.
|
||||
|
||||
Defconfigs: Avenger96: Downgrade to TF-A v2.5 to fix boot
|
||||
issue since 2023.08, stm32mp157a-dk1, stm32mp157c-dk2: Unbreak
|
||||
TF-A build, stm32mp157c-odessey: Use a fixed TF-A version for
|
||||
reproducibility
|
||||
|
||||
Updated/fixed packages: apache, arm-trusted-firmware, aufs,
|
||||
aufs-util, azure-iot-sdk, casync, cjson, clamav, conmon,
|
||||
cups-filters, dhcpcd, docker-cli, docker-engine,
|
||||
freeradius-server, go, inadyn, ksmbd-tools, kvmtool,
|
||||
libgdiplus, libgeos, libmemcached, libmdbx, libopenssl,
|
||||
libosmium, libtommath, libupnp, libzlib, lightning, linux-pam,
|
||||
lxc, mender, minizip-zlib, mpd, mxsldr, nano, nettle,
|
||||
network-manager, nghttp2, nodejs-src, opencv4,
|
||||
opencv4-contrib, openjdk-bin, openvpn, opusfile, paho-mqtt-c,
|
||||
pango, perl-lwp-protocol-https, petitboot, php, pistache,
|
||||
python-django, python-pycryptodomex, python-urllib3,
|
||||
python-web2py, rabbitmq-c, redis, reproc,
|
||||
riscv64-elf-toolchain, sedutil, snort3, suricata, tar, tiff,
|
||||
tor, traceroute, vim, websocketpp, wireshark, wolfssl,
|
||||
xdg-dbus-proxy, xen, xlib_libX11, xlib_libXpm, zabbix, zchunk
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#14741: e2fsck is failing during cronjob build where fail...
|
||||
#15772: lz4 failed to compile with gcc 10.4.0
|
||||
#15787: atmel_sama5d3_xplained_mmc_defconfig: Missing...
|
||||
#15790: at91sam9x5ek_dev_defconfig: Missing...
|
||||
#15820: make linux-menuconfig does not modify correct .config..
|
||||
#15823: Installing nodejs modules with native extensions ...
|
||||
#15835: Incompatibility between network-manager and libcurl 8.4
|
||||
|
||||
2023.08.2, released October 15th, 2023
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Defconfigs: Freescale ARM: Add ATF patch to fix build issue
|
||||
with binutils 2.39+. QEMU Aarch64-virt: Enable ACPI support
|
||||
for EDK2. Visionfive2: Bump kernel to fix build issue with GCC
|
||||
13.
|
||||
|
||||
Per-package builds: Do not use hard links for host / target
|
||||
dirs, fixing issues with package rebuilds or post-build
|
||||
scripts modifications.
|
||||
|
||||
Infrastructure: Explicitly disable shuffle mode for Make >=
|
||||
4.4 where needed.
|
||||
|
||||
Urandom-scripts: Move seedrng init script to S01 for earlier
|
||||
random number entrophy initialization.
|
||||
|
||||
Updated/fixed packages: at91bootstrap, batman-adv, bind, cups,
|
||||
efl, enlightenment, exim, gcc, glibc, gnu-efi, go, gptfdisk,
|
||||
grub2, gst-omx, gst1-devtools, gst1-libav, gst1-plugins-bad,
|
||||
gst1-plugins-base, gst1-plugins-good, gst1-plugins-ugly,
|
||||
gst1-python, gst1-rstp-server, gst1-rtsp-vaapi, gstreamer1,
|
||||
gstreamer1-editing-services, gtkmm3, libcue, libcurl,
|
||||
libfastjson, libhtp, libmodplug, librsvg, libvpx, libyang,
|
||||
linux-pam, linux-tools, mbedtls, mosquitto, mutt, neon,
|
||||
netsnmp, nmap, nodejs, olsr, openblas, opkg-utils, php, pound,
|
||||
powertop, python-mako, python3, rauc, rockchip-mali, samba4,
|
||||
sslh, stress-ng, suricata, syslog-ng, systemd, tar, unifdef,
|
||||
urandom-scripts, usbguard, webkitgtk, wilc-driver,
|
||||
wireless-regdb, wpewebkit
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#15628: Missing dependencies in BR2_PACKAGE_PYTHON_MAKO
|
||||
#15808: connman is not supported on musl
|
||||
#15814: C++ not supported by bootlin toolchain
|
||||
|
||||
2023.08.1, released September 27th, 2023
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Updated/fixed packages: agentpp, asterisk, bind, binutils,
|
||||
conmon, cpio, docker-cli, docker-engine, e2fsprogs, erlang,
|
||||
esp-hosted, expect, fail2ban, fio, freerdp, fstrcmp, gcc, gdb,
|
||||
ghostscript, go, haproxy, hwloc, icu, irssi, libcoap, libcurl,
|
||||
libde265, libheif, libiec61850, libjxl, libopenssl, libpjsip,
|
||||
libqb, libraw, libssh, libuv, lldpd, mdadm, mutt, ne10,
|
||||
netatalk, nodejs, nut, openblas, opensc, openvpn, petitboot,
|
||||
php, pound, pppd, python-pytest, python3, qt5,
|
||||
rtl8812au-aircrack-ng, sngrep, stress-ng, strongswan, sysstat,
|
||||
tar, tcl, timescaledb, util-linux, vim, webkitgtk, webp,
|
||||
wireshark, xserver_xorg-server, xterm, zbar, zxing-cpp,
|
||||
zynaddsubfx
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#14366: Nodejs fails with "version `GLIBC_2.34' not found"..
|
||||
#15787: atmel_sama5d3_xplained_mmc_defconfig: Missing...
|
||||
#15790: at91sam9x5ek_dev_defconfig: Missing...
|
||||
|
||||
2023.08, released September 6th, 2023
|
||||
|
||||
Various fixes.
|
||||
|
||||
Defconfigs: BeagleV: Fix build issue with binutils >=
|
||||
2.38. Hifive unleashed: U-Boot needs OpenSSL
|
||||
|
||||
Updated/fixed packages: dt, grub2, heirloom-mailx, libgpgme,
|
||||
libtommath, libxcrypt, log4cxx, mesa3d-demos, openjdk,
|
||||
openjdk-bin, pam, pcm-tools, pixman, poppler, python-django,
|
||||
python-ipython, python-pip, python-tornado, zeromq
|
||||
|
||||
New packages: libdecor
|
||||
|
||||
2023.08-rc3, released August 29th, 2023
|
||||
|
||||
Fixes all over the tree.
|
||||
|
||||
Defconfigs: Avenger96: Bump ATF to 2.9 to fix build warnings
|
||||
with binutils >= 2.39. CI20: Bump kernel to 5.4.254 to fix
|
||||
build issue with GCC 12. Hifive unleashed: Add missing
|
||||
pylibfdt dependency / bump kernel to 5.10.109 to fix build
|
||||
issue GCC 12. PC x86-64 bios/elf: Add missing libelf
|
||||
dependency. Sipeed maix sdcard: Fix build issues with
|
||||
binutils >= 2.38
|
||||
|
||||
Updated/fixed packages: check, clamav, cups, esp-hosted,
|
||||
f2fs-tools, freeswitch, gcc, gmp, libks, libmodsecurity,
|
||||
mosquitto, mpg123, network-manager, php, postgresql, python3,
|
||||
ramspeed, rtl8189fs, rust, rust-bin, samba4, screen, zlib-ng
|
||||
|
||||
2023.08-rc2, released August 20th, 2023
|
||||
|
||||
Fixes all over the tree.
|
||||
|
||||
Toolchains: Only show external toolchains based on a GCC
|
||||
version supporting the selected architecture
|
||||
variant. Correctly mark Codescape MIPS external toolchains as
|
||||
not providing a gdbserver.
|
||||
|
||||
Defconfigs: Andes ae350_45: Drop custom U-Boot march setting,
|
||||
breaking builds with GCC 12. Nitrogen*: Bump
|
||||
U-Boot/Linux. Nitrogen8*: Use ATF 2.8, fixing array bounds
|
||||
errors. QEMU m68k: Add Linux patch to fix build issue with
|
||||
binutils >= 2.41. Raspberrypi*: Enable console on HDMI when
|
||||
using systemd as well.
|
||||
|
||||
Updated/fixed packages: at91dataflashboot, aubio, berkeleydb,
|
||||
bwm-ng, ccache, check, chocolate-doom, compiler-rt, composer,
|
||||
conmon, connman, dav1d, diffutils, dracut, e2fsprogs, elf2flt,
|
||||
esp-hosted, flite, gcc, gdb, go-bootstrap-stage2,
|
||||
intel-microcode, kodi-imagedecoder-heif, less, libcoap,
|
||||
libedit, libglib2, libksba, liblo, libserial, log4cxx, lsof,
|
||||
luvi, meson, mosquitto, mpd, mpv, mv-ddr-marvell, nftables,
|
||||
ntpsec, openssh, optee-test, perftest, python-botocore,
|
||||
python-docker, python-pylibfdt, python3, screenfetch,
|
||||
sentry-cli, sngrep, stellarium, trinity, tvheadend, uboot,
|
||||
uclibc, util-linux, xfsprogs, yajl
|
||||
|
||||
New packages: nftables-python, xlib_libXpresent
|
||||
|
||||
Removed packages: lpc32xxcdl
|
||||
|
||||
2023.08-rc1, released August 5, 2023
|
||||
|
||||
Numerous package updates and fixes, additional runtime tests.
|
||||
|
||||
Toolchain:
|
||||
- Toolchains from ARM (for ARM, AArch64 and AArch64 BE)
|
||||
updated to 12.2.
|
||||
- Support for binutils 2.40 and 2.41 added, binutils 2.37 and
|
||||
2.38 removed, binutils 2.40 is now the default
|
||||
- Support for gcc 13 added, gcc 10 removed, gcc 12 is now the
|
||||
default
|
||||
|
||||
Architectures:
|
||||
- Additional x86-64 variants added
|
||||
- RISC-V vector extension support added
|
||||
|
||||
Infrastructure:
|
||||
- Go now built in 3 stages to be able to update to Go 1.20.x.
|
||||
|
||||
New defconfigs: rock5b
|
||||
|
||||
Removed defconfigs: qemu_sparc_ss10
|
||||
|
||||
New packages: composer, conmon, dfu-programmer, esp-hosted,
|
||||
kodi-imagedecoder-heif, kodi-imagedecoder-raw, libde2654,
|
||||
libdisplay-info, libheif, llvm-cmake, llvm-libunwind,
|
||||
lua-dkjson, mbpoll, mdnsd, mhz, opencsd, python-libconf,
|
||||
python-blinker, python-midiutil, python-rdps-py, python-wheel,
|
||||
qt6svg, redis-plus-plus, rockchip-rkbin, rtl8822cs, swaybg,
|
||||
swugenerator
|
||||
|
||||
Removed packages: libasplib, ocf-linux, tovid
|
||||
|
||||
2023.05.2, released August 31th, 2023
|
||||
|
||||
Important / security related fixes.
|
||||
@@ -342,99 +135,6 @@
|
||||
#15376: Libiconv config
|
||||
#15461: QtVirtualKeyboard segfaults
|
||||
|
||||
2023.02.4, released August 31th, 2023
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Toolchains: Correctly mark Bootlin external toolchains as
|
||||
having OpenMP support.
|
||||
|
||||
Arch: Mark Alderlake x86 variants as having no AVX512 support.
|
||||
|
||||
Utils: Ensure utils/docker-run correctly supports git
|
||||
worktrees.
|
||||
|
||||
Defconfigs: Beaglebone qt5: Enable support for green wireless
|
||||
variant.
|
||||
|
||||
Updated/fixed packages: arm-trusted-firmware, bind, cairo,
|
||||
cmocka, containerd, crudini, dmidecode, ffmpeg, freescale-imx,
|
||||
gcc, gdb, ghostscript, gkrellm, gnuradio, go, heimdall,
|
||||
iperf3, libcurl, libmodsecurity, libopenssl, libssh,
|
||||
libubootenv, libuhttpd, linux-tools, ntp, openssh, php,
|
||||
pipewire, python-iniparse, python-iptables, python-pysmb,
|
||||
rtl8189fs, sam-ba, samba4, seatd, speex, supertuxkart, sysdig,
|
||||
tor, tpm2-tss, uboot, unzip, webkitgtk, wireless-regdb,
|
||||
wolfssl, wpebackend-fdo wpewebkit, xenomai, yaml-cpp, yavta
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#15634: fluidsynths refers to missing libgomp.so.1
|
||||
|
||||
2023.02.3, released July 17th, 2023
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Defconfigs: Chiliboard: fix build on hosts without openssl
|
||||
development headers.
|
||||
Nitrogen*: fix build on hosts without openssl or pylibfdt.
|
||||
Raspberrypi: Handle DTB overlays for all variants
|
||||
|
||||
Updated/fixed packages: agentpp, alsa-plugins, assimp, bind,
|
||||
busybox, dbus, c-ares, check, dav1d, fluidsynth, fftw, fwts,
|
||||
ghostscript, gnupg2, gnuradio, gupnp, haproxy, heimdal,
|
||||
hwdata, jhead, libcap, libgcrypt, libgpg-error, libgtk3,
|
||||
libxslt, mesa3d-demos, mpir, nodejs, php, pkgconf,
|
||||
python-cryptography, python-dbus-fast, python-django,
|
||||
python-pyicu, python-requests, python3, qt6, quickjs,
|
||||
sconeserver, taglib, tiff, wireshark, xdriver_xf86-video-dummy
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#15643: ERROR: No hash found for linux-6.3.8.tar.xz
|
||||
#15673: PKGCONF_SITE in pkgconf.mk points to parked domain
|
||||
#15682: pkgconf: no longer able to download source from...
|
||||
|
||||
2023.02.2, released June 16th, 2023
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Infrastructure: Add BR2_HOST_CMAKE_AT_LEAST_* for packages
|
||||
needing a newer host-cmake than what is currently enforced
|
||||
(3.18) - Up to the version provided by the cmake package (3.22).
|
||||
|
||||
utils/docker-run: Now correctly handles git
|
||||
workdirs/worktrees.
|
||||
|
||||
Defconfigs: QEMU s390x: Bump rootfs size to make room for
|
||||
kernel modules, Stm32f4xx: Tweak config to save RAM, Xilinx
|
||||
Versal vck190: Use correct (A72) CPU variant
|
||||
|
||||
Updated/fixed packages: atkmm, bird, busybox, cairomm1_14,
|
||||
cmake, containerd, crudini, cups, delve, docker-cli,
|
||||
docker-engine, earlyoom, edid-decode, fluent-bit, freeswitch,
|
||||
gcc, gdb, glibmm_2_66, gnupg2, go, gptfdisk, graphicsmagick,
|
||||
intel-microcode, libass, libcurl, libdeflate, libgeos,
|
||||
libgtk3, libjxl, libnftl, libopenssl, libressl, libssh, llvm,
|
||||
lua, mesa3d, micropython, minidlna, moby-buildkit, mpd, mupdf,
|
||||
ncurses, nftables, openjdk, openjdk-bin, php, postgresql,
|
||||
python-can, python-django, python-django, python-ipython,
|
||||
python-matplotlib, python-mupdf, python-requests, python3,
|
||||
qemu, redis, rpm, runc, sdl2_mixer, tzdata, uclibc, vdr,
|
||||
wilc-firmware, xapp_xcalc, xapp_xdpyinfo, xapp_xinput,
|
||||
xapp_xwininfo, xdata_xbitmaps, xdata_xcursor-themes,
|
||||
xdriver_xf86-input-mouse, xdriver_xf86-video-ark,
|
||||
xdriver_xf86-video-geode, xdriver_xf86-video-neomagic,
|
||||
xfont_encodings, xlib_libX11, xlib_libXaw, xlib_libXi,
|
||||
xlib_libXfixes, xlib_libXft, xlib_libXpm, zfs, znc
|
||||
|
||||
New packages: perl-clone, perl-http-message, python-asttokens,
|
||||
python-executing, python-pure-eval, python-stack-data
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#15421: qemu_aarch64_ebbr_defconfig: Missing Linux kernel source code
|
||||
|
||||
2023.02.1, released May 9th, 2023
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
@@ -241,7 +241,7 @@ if !BR2_PRIMARY_SITE_ONLY
|
||||
|
||||
config BR2_BACKUP_SITE
|
||||
string "Backup download site"
|
||||
default "https://sources.buildroot.net"
|
||||
default "http://sources.buildroot.net"
|
||||
help
|
||||
Backup site to download from. If this option is set then
|
||||
buildroot will fall back to download package sources from here
|
||||
@@ -664,12 +664,12 @@ config BR2_PACKAGE_OVERRIDE_FILE
|
||||
documentation for more details on this feature.
|
||||
|
||||
config BR2_GLOBAL_PATCH_DIR
|
||||
string "global patch and hash directories"
|
||||
string "global patch directories"
|
||||
help
|
||||
You may specify a space separated list of one or more
|
||||
directories containing global package patches and/or hashes.
|
||||
For a specific version <packageversion> of a specific package
|
||||
<packagename>, patches are looked up as follows:
|
||||
directories containing global package patches. For a specific
|
||||
version <packageversion> of a specific package <packagename>,
|
||||
patches are applied as follows:
|
||||
|
||||
First, the default Buildroot patch set for the package is
|
||||
applied from the package's directory in Buildroot.
|
||||
@@ -683,8 +683,6 @@ config BR2_GLOBAL_PATCH_DIR
|
||||
exists, then all *.patch files in the directory will be
|
||||
applied.
|
||||
|
||||
The hash files are looked up similarly to the patches.
|
||||
|
||||
menu "Advanced"
|
||||
|
||||
config BR2_FORCE_HOST_BUILD
|
||||
@@ -699,23 +697,6 @@ config BR2_FORCE_HOST_BUILD
|
||||
|
||||
This option will increase build time.
|
||||
|
||||
config BR2_DOWNLOAD_FORCE_CHECK_HASHES
|
||||
bool "Force all downloads to have a valid hash"
|
||||
depends on BR2_GLOBAL_PATCH_DIR != ""
|
||||
help
|
||||
For packages where a custom version or location can be set,
|
||||
Buildroot does not carry a hash for those custom versions or
|
||||
locations, so the integrity of such downloads is not verified.
|
||||
|
||||
Say 'y' here to enforce downloads to have at least one valid
|
||||
hash (and of course, that all hashes be valid).
|
||||
|
||||
Those hashes are looked in files in BR2_GLOBAL_PATCH_DIR,
|
||||
see above.
|
||||
|
||||
comment "Forcing all downloads to have a valid hash needs a global patch and hash directory"
|
||||
depends on BR2_GLOBAL_PATCH_DIR = ""
|
||||
|
||||
config BR2_REPRODUCIBLE
|
||||
bool "Make the build reproducible (experimental)"
|
||||
# SOURCE_DATE_EPOCH support in toolchain-wrapper requires GCC 4.4
|
||||
|
||||
@@ -144,58 +144,6 @@ endif
|
||||
|
||||
###############################################################################
|
||||
|
||||
comment "Legacy options removed in 2023.08"
|
||||
|
||||
config BR2_TARGET_LPC32XXCDL
|
||||
bool "lpc32xxcdl has been removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
lpc32xxcdl has been removed, due to licensing concerns.
|
||||
|
||||
config BR2_BINUTILS_VERSION_2_38_X
|
||||
bool "binutils 2.38.x has been removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
binutils 2.38 has been removed, use a newer version.
|
||||
|
||||
config BR2_GCC_VERSION_10_X
|
||||
bool "gcc 10.x support removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Support for gcc version 10.x has been removed. The current
|
||||
default version (12.x or later) has been selected instead.
|
||||
|
||||
config BR2_KERNEL_HEADERS_6_3
|
||||
bool "kernel headers version 6.3.x are no longer supported"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Version 6.3.x of the Linux kernel headers are no longer
|
||||
maintained upstream and are now removed.
|
||||
|
||||
config BR2_PACKAGE_TOVID
|
||||
bool "tovid removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
tovid was removed
|
||||
|
||||
config BR2_PACKAGE_LIBASPLIB
|
||||
bool "libasplib removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
libasplib is no longer needed.
|
||||
|
||||
config BR2_PACKAGE_OCF_LINUX
|
||||
bool "ocf-linux has been removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
ocf-linux is incompatible with newer kernels.
|
||||
|
||||
config BR2_BINUTILS_VERSION_2_37_X
|
||||
bool "binutils 2.37.x has been removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
binutils 2.37 has been removed, use a newer version.
|
||||
|
||||
comment "Legacy options removed in 2023.05"
|
||||
|
||||
config BR2_KERNEL_HEADERS_6_2
|
||||
|
||||
+11
-77
@@ -355,6 +355,7 @@ F: package/lame/
|
||||
F: package/lcms2/
|
||||
F: package/leafnode2/
|
||||
F: package/libaacs/
|
||||
F: package/libasplib/
|
||||
F: package/libass/
|
||||
F: package/libbdplus/
|
||||
F: package/libbluray/
|
||||
@@ -364,10 +365,7 @@ F: package/libcdio/
|
||||
F: package/libcec/
|
||||
F: package/libcodec2/
|
||||
F: package/libcrossguid/
|
||||
F: package/libde265/
|
||||
F: package/libdecor/
|
||||
F: package/libdeflate/
|
||||
F: package/libdisplay-info/
|
||||
F: package/libdrm/
|
||||
F: package/libdvbcsa/
|
||||
F: package/libdvdcss/
|
||||
@@ -381,7 +379,6 @@ F: package/libglew/
|
||||
F: package/libglfw/
|
||||
F: package/libglu/
|
||||
F: package/libhdhomerun/
|
||||
F: package/libheif/
|
||||
F: package/libilbc/
|
||||
F: package/libks/
|
||||
F: package/libldns/
|
||||
@@ -550,7 +547,6 @@ F: package/balena-engine/
|
||||
F: package/batman-adv/
|
||||
F: package/catatonit/
|
||||
F: package/cni-plugins/
|
||||
F: package/conmon/
|
||||
F: package/containerd/
|
||||
F: package/crun/
|
||||
F: package/delve/
|
||||
@@ -560,8 +556,6 @@ F: package/docker-engine/
|
||||
F: package/embiggen-disk/
|
||||
F: package/fuse-overlayfs/
|
||||
F: package/go/
|
||||
F: package/go-bootstrap-stage1/
|
||||
F: package/go-bootstrap-stage2/
|
||||
F: package/gocryptfs/
|
||||
F: package/mbpfan/
|
||||
F: package/moby-buildkit/
|
||||
@@ -664,7 +658,6 @@ F: package/glibmm2_66/
|
||||
F: package/gtkmm3/
|
||||
F: package/libsigc/
|
||||
F: package/libsigc2/
|
||||
F: package/llvm-project/
|
||||
F: package/paho-mqtt-cpp/
|
||||
F: package/pangomm/
|
||||
F: package/pangomm2_46/
|
||||
@@ -1026,7 +1019,6 @@ F: package/tinycbor/
|
||||
F: package/tinydtls/
|
||||
F: package/tinymembench/
|
||||
F: package/whois/
|
||||
F: package/x11r7/xlib_libXpresent/
|
||||
F: package/zeek/
|
||||
|
||||
N: Fabrice Goucem <fabrice.goucem@oss.nxp.com>
|
||||
@@ -1176,7 +1168,6 @@ F: package/at/
|
||||
F: package/binutils/
|
||||
F: package/cryptsetup/
|
||||
F: package/erlang-jiffy/
|
||||
F: package/esp-hosted/
|
||||
F: package/gcc/
|
||||
F: package/harfbuzz/
|
||||
F: package/libfuse3/
|
||||
@@ -1186,7 +1177,6 @@ F: package/mali-driver/
|
||||
F: package/minicom/
|
||||
F: package/mmc-utils/
|
||||
F: package/nfs-utils/
|
||||
F: package/python-libconf/
|
||||
F: package/python-uvloop/
|
||||
F: package/qt5/
|
||||
F: package/rockchip-mali/
|
||||
@@ -1201,7 +1191,6 @@ F: package/rtl8821cu/
|
||||
F: package/sunxi-mali-utgard/
|
||||
F: package/sunxi-mali-utgard-driver/
|
||||
F: package/sunxi-tools/
|
||||
F: package/swugenerator/
|
||||
F: package/trace-cmd/
|
||||
F: package/udisks/
|
||||
F: package/wilc-driver/
|
||||
@@ -1432,7 +1421,6 @@ F: package/python-pydyf/
|
||||
F: package/python-pypa-build/
|
||||
F: package/python-pyphen/
|
||||
F: package/python-pyproject-hooks/
|
||||
F: package/python-rpds-py/
|
||||
F: package/python-rtoml/
|
||||
F: package/python-selenium/
|
||||
F: package/python-snappy/
|
||||
@@ -1468,7 +1456,6 @@ F: package/gtkmm3/
|
||||
F: package/libpqxx/
|
||||
F: package/pangomm/
|
||||
F: package/rpm/
|
||||
F: package/swaybg/
|
||||
F: package/yad/
|
||||
|
||||
N: Jan Heylen <jan.heylen@nokia.com>
|
||||
@@ -1543,7 +1530,6 @@ F: package/libnet/
|
||||
F: package/libteam/
|
||||
F: package/libuev/
|
||||
F: package/mg/
|
||||
F: package/mdnsd/
|
||||
F: package/mini-snmpd/
|
||||
F: package/mrouted/
|
||||
F: package/netcalc/
|
||||
@@ -1613,9 +1599,6 @@ N: John Faith <jfaith@impinj.com>
|
||||
F: package/python-inflection/
|
||||
F: package/sdbusplus/
|
||||
|
||||
N: Jon Ringle <jringle@gridpoint.com>
|
||||
F: package/mbpoll/
|
||||
|
||||
N: Jonathan Ben Avraham <yba@tkos.co.il>
|
||||
F: arch/Config.in.xtensa
|
||||
F: package/autofs/
|
||||
@@ -1643,12 +1626,12 @@ F: support/testing/tests/package/test_zfs.py
|
||||
|
||||
N: Joseph Kogut <joseph.kogut@gmail.com>
|
||||
F: package/at-spi2-core/
|
||||
F: package/clang/
|
||||
F: package/earlyoom/
|
||||
F: package/gconf/
|
||||
F: package/libnss/
|
||||
F: package/llvm-project/clang/
|
||||
F: package/llvm-project/lld/
|
||||
F: package/llvm-project/llvm/
|
||||
F: package/lld/
|
||||
F: package/llvm/
|
||||
F: package/python-cython/
|
||||
F: package/python-pycups/
|
||||
F: package/python-raven/
|
||||
@@ -1722,7 +1705,6 @@ F: package/libjxl/
|
||||
F: package/octave/
|
||||
F: package/ola/
|
||||
F: package/openblas/
|
||||
F: package/opencsd/
|
||||
F: package/openmpi/
|
||||
F: package/perftest/
|
||||
F: package/ptm2human/
|
||||
@@ -1733,7 +1715,6 @@ F: package/python-hwdata/
|
||||
F: package/python-magic-wormhole/
|
||||
F: package/python-magic-wormhole-mailbox-server/
|
||||
F: package/python-magic-wormhole-transit-relay/
|
||||
F: package/python-midiutil/
|
||||
F: package/python-pyalsa/
|
||||
F: package/python-spake2/
|
||||
F: package/rdma-core/
|
||||
@@ -1744,63 +1725,37 @@ F: package/zynaddsubfx/
|
||||
F: support/testing/tests/package/sample_python_distro.py
|
||||
F: support/testing/tests/package/sample_python_gnupg.py
|
||||
F: support/testing/tests/package/sample_python_hwdata.py
|
||||
F: support/testing/tests/package/sample_python_midiutil.py
|
||||
F: support/testing/tests/package/sample_python_pyalsa.py
|
||||
F: support/testing/tests/package/sample_python_spake2.py
|
||||
F: support/testing/tests/package/test_acpica.py
|
||||
F: support/testing/tests/package/test_acpica/
|
||||
F: support/testing/tests/package/test_brotli.py
|
||||
F: support/testing/tests/package/test_bzip2.py
|
||||
F: support/testing/tests/package/test_compressor_base.py
|
||||
F: support/testing/tests/package/test_ddrescue.py
|
||||
F: support/testing/tests/package/test_ddrescue/
|
||||
F: support/testing/tests/package/test_dos2unix.py
|
||||
F: support/testing/tests/package/test_fluidsynth.py
|
||||
F: support/testing/tests/package/test_fluidsynth/
|
||||
F: support/testing/tests/package/test_gawk.py
|
||||
F: support/testing/tests/package/test_glslsandbox_player.py
|
||||
F: support/testing/tests/package/test_glslsandbox_player/
|
||||
F: support/testing/tests/package/test_gnupg2.py
|
||||
F: support/testing/tests/package/test_gnuradio.py
|
||||
F: support/testing/tests/package/test_gnuradio/
|
||||
F: support/testing/tests/package/test_gzip.py
|
||||
F: support/testing/tests/package/test_highway.py
|
||||
F: support/testing/tests/package/test_hwloc.py
|
||||
F: support/testing/tests/package/test_iperf3.py
|
||||
F: support/testing/tests/package/test_kexec.py
|
||||
F: support/testing/tests/package/test_kexec/
|
||||
F: support/testing/tests/package/test_libjxl.py
|
||||
F: support/testing/tests/package/test_lrzip.py
|
||||
F: support/testing/tests/package/test_lzip.py
|
||||
F: support/testing/tests/package/test_lsof.py
|
||||
F: support/testing/tests/package/test_lz4.py
|
||||
F: support/testing/tests/package/test_lzop.py
|
||||
F: support/testing/tests/package/test_mtools.py
|
||||
F: support/testing/tests/package/test_ncdu.py
|
||||
F: support/testing/tests/package/test_nftables.py
|
||||
F: support/testing/tests/package/test_nftables/
|
||||
F: support/testing/tests/package/test_octave.py
|
||||
F: support/testing/tests/package/test_ola.py
|
||||
F: support/testing/tests/package/test_ola/
|
||||
F: support/testing/tests/package/test_openblas.py
|
||||
F: support/testing/tests/package/test_perftest.py
|
||||
F: support/testing/tests/package/test_pigz.py
|
||||
F: support/testing/tests/package/test_python_distro.py
|
||||
F: support/testing/tests/package/test_python_gnupg.py
|
||||
F: support/testing/tests/package/test_python_hkdf.py
|
||||
F: support/testing/tests/package/test_python_hwdata.py
|
||||
F: support/testing/tests/package/test_python_magic_wormhole.py
|
||||
F: support/testing/tests/package/test_python_midiutil.py
|
||||
F: support/testing/tests/package/test_python_pyalsa.py
|
||||
F: support/testing/tests/package/test_python_spake2.py
|
||||
F: support/testing/tests/package/test_rdma_core.py
|
||||
F: support/testing/tests/package/test_rdma_core/
|
||||
F: support/testing/tests/package/test_stress_ng.py
|
||||
F: support/testing/tests/package/test_xz.py
|
||||
F: support/testing/tests/package/test_z3.py
|
||||
F: support/testing/tests/package/test_z3/
|
||||
F: support/testing/tests/package/test_zchunk.py
|
||||
F: support/testing/tests/package/test_zstd.py
|
||||
|
||||
N: Julien Viard de Galbert <julien@vdg.name>
|
||||
F: package/dieharder/
|
||||
@@ -1827,11 +1782,6 @@ F: package/ramsmp/
|
||||
N: Kieran Bingham <kieran.bingham@ideasonboard.com>
|
||||
F: package/libcamera/
|
||||
|
||||
N: Kilian Zinnecker <kilian.zinnecker@mail.de>
|
||||
F: package/rockchip-rkbin/
|
||||
F: configs/rock5b_defconfig
|
||||
F: board/radxa/rock5b/
|
||||
|
||||
N: Klaus Heinrich Kiwi <klaus@linux.vnet.ibm.com>
|
||||
F: package/wqy-zenhei/
|
||||
|
||||
@@ -2203,7 +2153,6 @@ F: configs/galileo_defconfig
|
||||
|
||||
N: Nicolas Carrier <nicolas.carrier@orolia.com>
|
||||
F: package/bmap-tools/
|
||||
F: package/composer/
|
||||
F: package/libdbi/
|
||||
F: package/libdbi-drivers/
|
||||
F: package/lua-augeas/
|
||||
@@ -2345,7 +2294,6 @@ F: configs/roseapplepi_defconfig
|
||||
F: configs/sheevaplug_defconfig
|
||||
F: configs/visionfive_defconfig
|
||||
F: package/bats-core/
|
||||
F: package/dfu-programmer/
|
||||
F: package/docker-compose/
|
||||
F: package/dump1090/
|
||||
F: package/fatcat/
|
||||
@@ -2380,7 +2328,6 @@ F: support/testing/tests/package/test_docker_compose.py
|
||||
|
||||
N: Peter Seiderer <ps.report@gmx.net>
|
||||
F: package/dotconf/
|
||||
F: package/python-blinker/
|
||||
F: package/qt5/qt5speech/
|
||||
F: package/speechd/
|
||||
|
||||
@@ -2462,9 +2409,6 @@ F: package/libdvbpsi/
|
||||
F: package/mraa/
|
||||
F: package/synergy/
|
||||
|
||||
N: Prabhu Sannachi <prabhu.sannachi@collins.com>
|
||||
F: package/redis-plus-plus/
|
||||
|
||||
N: Rafal Susz <rafal.susz@gmail.com>
|
||||
F: board/avnet/s6lx9_microboard/
|
||||
F: configs/s6lx9_microboard_defconfig
|
||||
@@ -2544,7 +2488,6 @@ F: package/azmq/
|
||||
|
||||
N: Robert Marko <robimarko@gmail.com>
|
||||
F: package/mdio-tools/
|
||||
F: package/mhz/
|
||||
|
||||
N: Robert Rose <robertroyrose@gmail.com>
|
||||
F: package/grpc/
|
||||
@@ -2561,6 +2504,7 @@ F: package/alure/
|
||||
F: package/aubio/
|
||||
F: package/binutils/
|
||||
F: package/bullet/
|
||||
F: package/clang/
|
||||
F: package/clinfo/
|
||||
F: package/efl/
|
||||
F: package/enet/
|
||||
@@ -2574,13 +2518,12 @@ F: package/irrlicht/
|
||||
F: package/liblinear/
|
||||
F: package/lensfun/
|
||||
F: package/libbpf/
|
||||
F: package/libclc/
|
||||
F: package/libgta/
|
||||
F: package/libiec61850/
|
||||
F: package/libspatialindex/
|
||||
F: package/linux-syscall-support/
|
||||
F: package/llvm-project/clang/
|
||||
F: package/llvm-project/libclc/
|
||||
F: package/llvm-project/llvm/
|
||||
F: package/llvm/
|
||||
F: package/lugaru/
|
||||
F: package/mcelog/
|
||||
F: package/mesa3d/
|
||||
@@ -2767,6 +2710,7 @@ F: package/dvdauthor/
|
||||
F: package/dvdrw-tools/
|
||||
F: package/memtest86/
|
||||
F: package/mjpegtools/
|
||||
F: package/tovid/
|
||||
F: package/udftools/
|
||||
F: package/xorriso/
|
||||
|
||||
@@ -2915,7 +2859,6 @@ F: package/msmtp/
|
||||
F: package/musl/
|
||||
F: package/musl-fts/
|
||||
F: package/ne10/
|
||||
F: package/nodejs/
|
||||
F: package/pkg-python.mk
|
||||
F: package/pkg-autotools.mk
|
||||
F: package/pkg-generic.mk
|
||||
@@ -2988,17 +2931,14 @@ F: package/gettext-tiny/
|
||||
F: package/tinyssh/
|
||||
|
||||
N: Valentin Korenblit <valentinkorenblit@gmail.com>
|
||||
F: package/clang/
|
||||
F: package/clinfo/
|
||||
F: package/llvm-project/clang/
|
||||
F: package/llvm-project/libclc/
|
||||
F: package/llvm-project/llvm/
|
||||
F: package/libclc/
|
||||
F: package/llvm/
|
||||
|
||||
N: Vanya Sergeev <vsergeev@gmail.com>
|
||||
F: package/lua-periphery/
|
||||
|
||||
N: Viacheslav Bocharov <adeep@lexina.in>
|
||||
F: package/rtl8822cs/
|
||||
|
||||
N: Victor Huesca <victor.huesca@bootlin.com>
|
||||
F: support/testing/tests/core/test_root_password.py
|
||||
|
||||
@@ -3064,10 +3004,6 @@ F: package/python-pyusb/
|
||||
N: Wojciech Niziński <niziak@spox.org>
|
||||
F: package/fwup/
|
||||
|
||||
N: Woodrow Douglass <wdouglass@carnegierobotics.com>
|
||||
F: package/opencv4
|
||||
F: package/opencv4-contrib
|
||||
|
||||
N: Xuanhao Shi <X15000177@gmail.com>
|
||||
F: boot/ti-k3-r5-loader/
|
||||
|
||||
@@ -3180,13 +3116,11 @@ F: package/zlog/
|
||||
F: support/testing/tests/package/sample_python_dicttoxml2.py
|
||||
F: support/testing/tests/package/sample_python_dtschema.py
|
||||
F: support/testing/tests/package/sample_python_munch.py
|
||||
F: support/testing/tests/package/sample_python_pysmb.py
|
||||
F: support/testing/tests/package/test_libftdi1.py
|
||||
F: support/testing/tests/package/test_python_can.py
|
||||
F: support/testing/tests/package/test_python_dicttoxml2.py
|
||||
F: support/testing/tests/package/test_python_dtschema.py
|
||||
F: support/testing/tests/package/test_python_munch.py
|
||||
F: support/testing/tests/package/test_python_pysmb.py
|
||||
F: utils/scanpypi
|
||||
|
||||
N: Yunhao Tian <t123yh.xyz@gmail.com>
|
||||
|
||||
@@ -90,9 +90,9 @@ all:
|
||||
.PHONY: all
|
||||
|
||||
# Set and export the version string
|
||||
export BR2_VERSION := 2023.08.3
|
||||
export BR2_VERSION := 2023.05.2
|
||||
# Actual time the release is cut (for reproducible builds)
|
||||
BR2_VERSION_EPOCH = 1699976000
|
||||
BR2_VERSION_EPOCH = 1693493000
|
||||
|
||||
# Save running make version since it's clobbered by the make package
|
||||
RUNNING_MAKE_VERSION := $(MAKE_VERSION)
|
||||
@@ -227,6 +227,8 @@ LEGAL_MANIFEST_CSV_HOST = $(LEGAL_INFO_DIR)/host-manifest.csv
|
||||
LEGAL_WARNINGS = $(LEGAL_INFO_DIR)/.warnings
|
||||
LEGAL_REPORT = $(LEGAL_INFO_DIR)/README
|
||||
|
||||
CPE_UPDATES_DIR = $(BASE_DIR)/cpe-updates
|
||||
|
||||
BR2_CONFIG = $(CONFIG_DIR)/.config
|
||||
|
||||
# Pull in the user's configuration file
|
||||
@@ -594,7 +596,6 @@ prepare-sdk: world
|
||||
@$(call MESSAGE,"Rendering the SDK relocatable")
|
||||
PER_PACKAGE_DIR=$(PER_PACKAGE_DIR) $(TOPDIR)/support/scripts/fix-rpath host
|
||||
PER_PACKAGE_DIR=$(PER_PACKAGE_DIR) $(TOPDIR)/support/scripts/fix-rpath staging
|
||||
$(call ppd-fixup-paths,$(BASE_DIR))
|
||||
$(INSTALL) -m 755 $(TOPDIR)/support/misc/relocate-sdk.sh $(HOST_DIR)/relocate-sdk.sh
|
||||
mkdir -p $(HOST_DIR)/share/buildroot
|
||||
echo $(HOST_DIR) > $(HOST_DIR)/share/buildroot/sdk-location
|
||||
@@ -711,7 +712,7 @@ STAGING_DIR_FILES_LISTS = $(sort $(wildcard $(BUILD_DIR)/*/.files-list-staging.t
|
||||
.PHONY: host-finalize
|
||||
host-finalize: $(PACKAGES) $(HOST_DIR) $(HOST_DIR_SYMLINK)
|
||||
@$(call MESSAGE,"Finalizing host directory")
|
||||
$(call per-package-rsync,$(sort $(PACKAGES)),host,$(HOST_DIR),copy)
|
||||
$(call per-package-rsync,$(sort $(PACKAGES)),host,$(HOST_DIR))
|
||||
|
||||
.PHONY: staging-finalize
|
||||
staging-finalize: $(STAGING_DIR_SYMLINK)
|
||||
@@ -719,7 +720,7 @@ staging-finalize: $(STAGING_DIR_SYMLINK)
|
||||
.PHONY: target-finalize
|
||||
target-finalize: $(PACKAGES) $(TARGET_DIR) host-finalize
|
||||
@$(call MESSAGE,"Finalizing target directory")
|
||||
$(call per-package-rsync,$(sort $(PACKAGES)),target,$(TARGET_DIR),copy)
|
||||
$(call per-package-rsync,$(sort $(PACKAGES)),target,$(TARGET_DIR))
|
||||
$(foreach hook,$(TARGET_FINALIZE_HOOKS),$($(hook))$(sep))
|
||||
rm -rf $(TARGET_DIR)/usr/include $(TARGET_DIR)/usr/share/aclocal \
|
||||
$(TARGET_DIR)/usr/lib/pkgconfig $(TARGET_DIR)/usr/share/pkgconfig \
|
||||
@@ -830,7 +831,7 @@ legal-info-clean:
|
||||
.PHONY: legal-info-prepare
|
||||
legal-info-prepare: $(LEGAL_INFO_DIR)
|
||||
@$(call MESSAGE,"Buildroot $(BR2_VERSION_FULL) Collecting legal info")
|
||||
@$(call legal-license-file,HOST,buildroot,buildroot,COPYING,COPYING,support/legal-info/buildroot.hash)
|
||||
@$(call legal-license-file,buildroot,buildroot,support/legal-info/buildroot.hash,COPYING,COPYING,HOST)
|
||||
@$(call legal-manifest,TARGET,PACKAGE,VERSION,LICENSE,LICENSE FILES,SOURCE ARCHIVE,SOURCE SITE,DEPENDENCIES WITH LICENSES)
|
||||
@$(call legal-manifest,HOST,PACKAGE,VERSION,LICENSE,LICENSE FILES,SOURCE ARCHIVE,SOURCE SITE,DEPENDENCIES WITH LICENSES)
|
||||
@$(call legal-manifest,HOST,buildroot,$(BR2_VERSION_FULL),GPL-2.0+,COPYING,not saved,not saved)
|
||||
@@ -926,6 +927,14 @@ pkg-stats:
|
||||
--html $(O)/pkg-stats.html \
|
||||
--nvd-path $(DL_DIR)/buildroot-nvd
|
||||
|
||||
.PHONY: missing-cpe
|
||||
missing-cpe:
|
||||
$(Q)mkdir -p $(CPE_UPDATES_DIR)
|
||||
$(Q)cd "$(CONFIG_DIR)" ; \
|
||||
$(TOPDIR)/support/scripts/gen-missing-cpe \
|
||||
--nvd-path $(DL_DIR)/buildroot-nvd \
|
||||
--output $(CPE_UPDATES_DIR)
|
||||
|
||||
else # ifeq ($(BR2_HAVE_DOT_CONFIG),y)
|
||||
|
||||
# Some subdirectories are also package names. To avoid that "make linux"
|
||||
@@ -1096,7 +1105,8 @@ show-vars:
|
||||
clean:
|
||||
rm -rf $(BASE_TARGET_DIR) $(BINARIES_DIR) $(HOST_DIR) $(HOST_DIR_SYMLINK) \
|
||||
$(BUILD_DIR) $(BASE_DIR)/staging \
|
||||
$(LEGAL_INFO_DIR) $(GRAPHS_DIR) $(PER_PACKAGE_DIR) $(O)/pkg-stats.*
|
||||
$(LEGAL_INFO_DIR) $(GRAPHS_DIR) $(PER_PACKAGE_DIR) $(CPE_UPDATES_DIR) \
|
||||
$(O)/pkg-stats.*
|
||||
|
||||
.PHONY: distclean
|
||||
distclean: clean
|
||||
@@ -1181,6 +1191,7 @@ help:
|
||||
@echo ' legal-info - generate info about license compliance'
|
||||
@echo ' show-info - generate info about packages, as a JSON blurb'
|
||||
@echo ' pkg-stats - generate info about packages as JSON and HTML'
|
||||
@echo ' missing-cpe - generate XML snippets for missing CPE identifiers'
|
||||
@echo ' printvars - dump internal variables selected with VARS=...'
|
||||
@echo ' show-vars - dump all internal variables as a JSON blurb; use VARS=...'
|
||||
@echo ' to limit the list to variables names matching that pattern'
|
||||
@@ -1252,7 +1263,4 @@ include docs/manual/manual.mk
|
||||
|
||||
.PHONY: $(noconfig_targets)
|
||||
|
||||
# .WAIT was introduced in make 4.4. For older make, define it as phony.
|
||||
.PHONY: .WAIT
|
||||
|
||||
endif #umask / $(CURDIR) / $(O)
|
||||
|
||||
@@ -216,11 +216,6 @@ config BR2_sh
|
||||
config BR2_sparc
|
||||
bool "SPARC"
|
||||
select BR2_USE_MMU
|
||||
# uClibc-ng broken on sparc due to recent gcc changes
|
||||
# that need to be reverted since gcc 8.4, 9.3 and 10.1.
|
||||
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98784
|
||||
# gcc <= 10.x has been removed from Buildroot.
|
||||
select BR2_ARCH_HAS_NO_TOOLCHAIN_BUILDROOT
|
||||
help
|
||||
SPARC (from Scalable Processor Architecture) is a RISC
|
||||
instruction set architecture (ISA) developed by Sun
|
||||
@@ -309,10 +304,6 @@ config BR2_ARCH_NEEDS_GCC_AT_LEAST_12
|
||||
bool
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_11
|
||||
|
||||
config BR2_ARCH_NEEDS_GCC_AT_LEAST_13
|
||||
bool
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_12
|
||||
|
||||
# The following string values are defined by the individual
|
||||
# Config.in.$ARCH files
|
||||
config BR2_ARCH
|
||||
|
||||
@@ -18,9 +18,6 @@ config BR2_RISCV_ISA_RVD
|
||||
config BR2_RISCV_ISA_RVC
|
||||
bool
|
||||
|
||||
config BR2_RISCV_ISA_RVV
|
||||
bool
|
||||
|
||||
choice
|
||||
prompt "Target Architecture Variant"
|
||||
default BR2_riscv_g
|
||||
@@ -38,6 +35,7 @@ config BR2_riscv_g
|
||||
config BR2_riscv_custom
|
||||
bool "Custom architecture"
|
||||
select BR2_RISCV_ISA_RVI
|
||||
select BR2_RISCV_ISA_CUSTOM_RVA
|
||||
|
||||
endchoice
|
||||
|
||||
@@ -65,12 +63,6 @@ config BR2_RISCV_ISA_CUSTOM_RVD
|
||||
config BR2_RISCV_ISA_CUSTOM_RVC
|
||||
bool "Compressed Instructions (C)"
|
||||
select BR2_RISCV_ISA_RVC
|
||||
|
||||
config BR2_RISCV_ISA_CUSTOM_RVV
|
||||
bool "Vector Instructions (V)"
|
||||
select BR2_RISCV_ISA_RVV
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_12
|
||||
|
||||
endif
|
||||
|
||||
choice
|
||||
|
||||
+5
-204
@@ -19,20 +19,12 @@ config BR2_X86_CPU_HAS_AVX
|
||||
bool
|
||||
config BR2_X86_CPU_HAS_AVX2
|
||||
bool
|
||||
|
||||
# BR2_X86_CPU_HAS_AVX512 implies the following AVX512 extensions:
|
||||
# AVX512F, AVX512BW, AVX512CD, AVX512DQ, AVX512VL
|
||||
# This subset is common to Intel Xeon (excl Xeon Phi), AMD Zen 4, and
|
||||
# the x86-64-v4 psABI.
|
||||
#
|
||||
# Only select BR2_X86_CPU_HAS_AVX512 if the CPU supports this entire
|
||||
# subset of extensions.
|
||||
config BR2_X86_CPU_HAS_AVX512
|
||||
bool
|
||||
|
||||
# This list of CPU architecture variant is (loosely) ordered according
|
||||
# to the gcc documentation at
|
||||
# https://gcc.gnu.org/onlinedocs/gcc-13.2.0/gcc/x86-Options.html
|
||||
# https://gcc.gnu.org/onlinedocs/gcc-11.2.0/gcc/x86-Options.html
|
||||
choice
|
||||
prompt "Target Architecture Variant"
|
||||
default BR2_x86_i586 if BR2_i386
|
||||
@@ -235,17 +227,6 @@ config BR2_x86_sandybridge
|
||||
select BR2_X86_CPU_HAS_SSE42
|
||||
select BR2_X86_CPU_HAS_AVX
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9
|
||||
config BR2_x86_ivybridge
|
||||
bool "ivybridge"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
select BR2_X86_CPU_HAS_SSE2
|
||||
select BR2_X86_CPU_HAS_SSE3
|
||||
select BR2_X86_CPU_HAS_SSSE3
|
||||
select BR2_X86_CPU_HAS_SSE4
|
||||
select BR2_X86_CPU_HAS_SSE42
|
||||
select BR2_X86_CPU_HAS_AVX
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9
|
||||
config BR2_x86_core_avx2
|
||||
bool "core-avx2"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
@@ -354,54 +335,6 @@ config BR2_x86_tremont
|
||||
select BR2_X86_CPU_HAS_SSE4
|
||||
select BR2_X86_CPU_HAS_SSE42
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_9
|
||||
config BR2_x86_sierraforest
|
||||
bool "sierraforest"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
select BR2_X86_CPU_HAS_SSE2
|
||||
select BR2_X86_CPU_HAS_SSE3
|
||||
select BR2_X86_CPU_HAS_SSSE3
|
||||
select BR2_X86_CPU_HAS_SSE4
|
||||
select BR2_X86_CPU_HAS_SSE42
|
||||
select BR2_X86_CPU_HAS_AVX
|
||||
select BR2_X86_CPU_HAS_AVX2
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_13
|
||||
config BR2_x86_grandridge
|
||||
bool "grandridge"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
select BR2_X86_CPU_HAS_SSE2
|
||||
select BR2_X86_CPU_HAS_SSE3
|
||||
select BR2_X86_CPU_HAS_SSSE3
|
||||
select BR2_X86_CPU_HAS_SSE4
|
||||
select BR2_X86_CPU_HAS_SSE42
|
||||
select BR2_X86_CPU_HAS_AVX
|
||||
select BR2_X86_CPU_HAS_AVX2
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_13
|
||||
config BR2_x86_knightslanding
|
||||
bool "knightslanding"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
select BR2_X86_CPU_HAS_SSE2
|
||||
select BR2_X86_CPU_HAS_SSE3
|
||||
select BR2_X86_CPU_HAS_SSSE3
|
||||
select BR2_X86_CPU_HAS_SSE4
|
||||
select BR2_X86_CPU_HAS_SSE42
|
||||
select BR2_X86_CPU_HAS_AVX
|
||||
select BR2_X86_CPU_HAS_AVX2
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_5
|
||||
config BR2_x86_knightsmill
|
||||
bool "knightsmill"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
select BR2_X86_CPU_HAS_SSE2
|
||||
select BR2_X86_CPU_HAS_SSE3
|
||||
select BR2_X86_CPU_HAS_SSSE3
|
||||
select BR2_X86_CPU_HAS_SSE4
|
||||
select BR2_X86_CPU_HAS_SSE42
|
||||
select BR2_X86_CPU_HAS_AVX
|
||||
select BR2_X86_CPU_HAS_AVX2
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_8
|
||||
config BR2_x86_skylake_avx512
|
||||
bool "skylake-avx512"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
@@ -506,8 +439,6 @@ config BR2_x86_sapphirerapids
|
||||
select BR2_X86_CPU_HAS_AVX2
|
||||
select BR2_X86_CPU_HAS_AVX512
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_11
|
||||
help
|
||||
Use for Sapphire Rapids, Emerald Rapids
|
||||
config BR2_x86_alderlake
|
||||
bool "alderlake"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
@@ -520,8 +451,6 @@ config BR2_x86_alderlake
|
||||
select BR2_X86_CPU_HAS_AVX
|
||||
select BR2_X86_CPU_HAS_AVX2
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_11
|
||||
help
|
||||
Use for Alder Lake, Raptor Lake, Meteor Lake
|
||||
config BR2_x86_rocketlake
|
||||
bool "rocketlake"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
@@ -535,32 +464,6 @@ config BR2_x86_rocketlake
|
||||
select BR2_X86_CPU_HAS_AVX2
|
||||
select BR2_X86_CPU_HAS_AVX512
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_11
|
||||
config BR2_x86_graniterapids
|
||||
bool "graniterapids"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
select BR2_X86_CPU_HAS_SSE2
|
||||
select BR2_X86_CPU_HAS_SSE3
|
||||
select BR2_X86_CPU_HAS_SSSE3
|
||||
select BR2_X86_CPU_HAS_SSE4
|
||||
select BR2_X86_CPU_HAS_SSE42
|
||||
select BR2_X86_CPU_HAS_AVX
|
||||
select BR2_X86_CPU_HAS_AVX2
|
||||
select BR2_X86_CPU_HAS_AVX512
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_13
|
||||
config BR2_x86_graniterapids_d
|
||||
bool "graniterapids-d"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
select BR2_X86_CPU_HAS_SSE2
|
||||
select BR2_X86_CPU_HAS_SSE3
|
||||
select BR2_X86_CPU_HAS_SSSE3
|
||||
select BR2_X86_CPU_HAS_SSE4
|
||||
select BR2_X86_CPU_HAS_SSE42
|
||||
select BR2_X86_CPU_HAS_AVX
|
||||
select BR2_X86_CPU_HAS_AVX2
|
||||
select BR2_X86_CPU_HAS_AVX512
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_13
|
||||
config BR2_x86_k6
|
||||
bool "k6"
|
||||
depends on !BR2_x86_64
|
||||
@@ -598,13 +501,6 @@ config BR2_x86_barcelona
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
select BR2_X86_CPU_HAS_SSE2
|
||||
select BR2_X86_CPU_HAS_SSE3
|
||||
config BR2_x86_bobcat
|
||||
bool "bobcat"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
select BR2_X86_CPU_HAS_SSE2
|
||||
select BR2_X86_CPU_HAS_SSE3
|
||||
select BR2_X86_CPU_HAS_SSSE3
|
||||
config BR2_x86_jaguar
|
||||
bool "jaguar"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
@@ -614,25 +510,6 @@ config BR2_x86_jaguar
|
||||
select BR2_X86_CPU_HAS_SSSE3
|
||||
select BR2_X86_CPU_HAS_SSE4
|
||||
select BR2_X86_CPU_HAS_SSE42
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8
|
||||
config BR2_x86_bulldozer
|
||||
bool "bulldozer"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
select BR2_X86_CPU_HAS_SSE2
|
||||
select BR2_X86_CPU_HAS_SSE3
|
||||
select BR2_X86_CPU_HAS_SSSE3
|
||||
select BR2_X86_CPU_HAS_SSE4
|
||||
select BR2_X86_CPU_HAS_SSE42
|
||||
config BR2_x86_piledriver
|
||||
bool "piledriver"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
select BR2_X86_CPU_HAS_SSE2
|
||||
select BR2_X86_CPU_HAS_SSE3
|
||||
select BR2_X86_CPU_HAS_SSSE3
|
||||
select BR2_X86_CPU_HAS_SSE4
|
||||
select BR2_X86_CPU_HAS_SSE42
|
||||
config BR2_x86_steamroller
|
||||
bool "steamroller"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
@@ -642,73 +519,12 @@ config BR2_x86_steamroller
|
||||
select BR2_X86_CPU_HAS_SSSE3
|
||||
select BR2_X86_CPU_HAS_SSE4
|
||||
select BR2_X86_CPU_HAS_SSE42
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_8
|
||||
config BR2_x86_excavator
|
||||
bool "excavator"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
select BR2_X86_CPU_HAS_SSE2
|
||||
select BR2_X86_CPU_HAS_SSE3
|
||||
select BR2_X86_CPU_HAS_SSSE3
|
||||
select BR2_X86_CPU_HAS_SSE4
|
||||
select BR2_X86_CPU_HAS_SSE42
|
||||
select BR2_X86_CPU_HAS_AVX
|
||||
select BR2_X86_CPU_HAS_AVX2
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_4_9
|
||||
config BR2_x86_zen
|
||||
bool "zen"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
select BR2_X86_CPU_HAS_SSE2
|
||||
select BR2_X86_CPU_HAS_SSE3
|
||||
select BR2_X86_CPU_HAS_SSSE3
|
||||
select BR2_X86_CPU_HAS_SSE4
|
||||
select BR2_X86_CPU_HAS_SSE42
|
||||
select BR2_X86_CPU_HAS_AVX
|
||||
select BR2_X86_CPU_HAS_AVX2
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_6
|
||||
config BR2_x86_zen2
|
||||
bool "zen 2"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
select BR2_X86_CPU_HAS_SSE2
|
||||
select BR2_X86_CPU_HAS_SSE3
|
||||
select BR2_X86_CPU_HAS_SSSE3
|
||||
select BR2_X86_CPU_HAS_SSE4
|
||||
select BR2_X86_CPU_HAS_SSE42
|
||||
select BR2_X86_CPU_HAS_AVX
|
||||
select BR2_X86_CPU_HAS_AVX2
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_9
|
||||
config BR2_x86_zen3
|
||||
bool "zen 3"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
select BR2_X86_CPU_HAS_SSE2
|
||||
select BR2_X86_CPU_HAS_SSE3
|
||||
select BR2_X86_CPU_HAS_SSSE3
|
||||
select BR2_X86_CPU_HAS_SSE4
|
||||
select BR2_X86_CPU_HAS_SSE42
|
||||
select BR2_X86_CPU_HAS_AVX
|
||||
select BR2_X86_CPU_HAS_AVX2
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_11
|
||||
config BR2_x86_zen4
|
||||
bool "zen 4"
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_SSE
|
||||
select BR2_X86_CPU_HAS_SSE2
|
||||
select BR2_X86_CPU_HAS_SSE3
|
||||
select BR2_X86_CPU_HAS_SSSE3
|
||||
select BR2_X86_CPU_HAS_SSE4
|
||||
select BR2_X86_CPU_HAS_SSE42
|
||||
select BR2_X86_CPU_HAS_AVX
|
||||
select BR2_X86_CPU_HAS_AVX2
|
||||
select BR2_X86_CPU_HAS_AVX512
|
||||
select BR2_ARCH_NEEDS_GCC_AT_LEAST_13
|
||||
config BR2_x86_geode
|
||||
bool "AMD Geode"
|
||||
bool "geode"
|
||||
# Don't include MMX support because there several variant of geode
|
||||
# processor, some with MMX support, some without.
|
||||
# See: http://en.wikipedia.org/wiki/Geode_%28processor%29
|
||||
depends on !BR2_x86_64
|
||||
select BR2_X86_CPU_HAS_MMX
|
||||
select BR2_X86_CPU_HAS_3DNOW
|
||||
config BR2_x86_c3
|
||||
bool "Via/Cyrix C3 (Samuel/Ezra cores)"
|
||||
depends on !BR2_x86_64
|
||||
@@ -776,7 +592,6 @@ config BR2_GCC_TARGET_ARCH
|
||||
default "nehalem" if BR2_x86_nehalem
|
||||
default "corei7-avx" if BR2_x86_corei7_avx
|
||||
default "sandybridge" if BR2_x86_sandybridge
|
||||
default "ivybridge" if BR2_x86_ivybridge
|
||||
default "core-avx2" if BR2_x86_core_avx2
|
||||
default "haswell" if BR2_x86_haswell
|
||||
default "broadwell" if BR2_x86_broadwell
|
||||
@@ -788,10 +603,6 @@ config BR2_GCC_TARGET_ARCH
|
||||
default "goldmont" if BR2_x86_goldmont
|
||||
default "goldmont-plus" if BR2_x86_goldmont_plus
|
||||
default "tremont" if BR2_x86_tremont
|
||||
default "sierraforest" if BR2_x86_sierraforest
|
||||
default "grandridge" if BR2_x86_grandridge
|
||||
default "knl" if BR2_x86_knightslanding
|
||||
default "knm" if BR2_x86_knightsmill
|
||||
default "skylake-avx512" if BR2_x86_skylake_avx512
|
||||
default "cannonlake" if BR2_x86_cannonlake
|
||||
default "icelake-client" if BR2_x86_icelake_client
|
||||
@@ -802,21 +613,11 @@ config BR2_GCC_TARGET_ARCH
|
||||
default "sapphirerapids" if BR2_x86_sapphirerapids
|
||||
default "alderlake" if BR2_x86_alderlake
|
||||
default "rocketlake" if BR2_x86_rocketlake
|
||||
default "graniterapids" if BR2_x86_graniterapids
|
||||
default "graniterapids-d" if BR2_x86_graniterapids_d
|
||||
default "k8" if BR2_x86_opteron
|
||||
default "k8-sse3" if BR2_x86_opteron_sse3
|
||||
default "barcelona" if BR2_x86_barcelona
|
||||
default "btver1" if BR2_x86_bobcat
|
||||
default "btver2" if BR2_x86_jaguar
|
||||
default "bdver1" if BR2_x86_bulldozer
|
||||
default "bdver2" if BR2_x86_piledriver
|
||||
default "bdver3" if BR2_x86_steamroller
|
||||
default "bdver4" if BR2_x86_excavator
|
||||
default "znver1" if BR2_x86_zen
|
||||
default "znver2" if BR2_x86_zen2
|
||||
default "znver3" if BR2_x86_zen3
|
||||
default "znver4" if BR2_x86_zen4
|
||||
default "k6" if BR2_x86_k6
|
||||
default "k6-2" if BR2_x86_k6_2
|
||||
default "athlon" if BR2_x86_athlon
|
||||
|
||||
@@ -26,9 +26,6 @@ endif
|
||||
ifeq ($(BR2_RISCV_ISA_RVC),y)
|
||||
GCC_TARGET_ARCH := $(GCC_TARGET_ARCH)c
|
||||
endif
|
||||
ifeq ($(BR2_RISCV_ISA_RVV),y)
|
||||
GCC_TARGET_ARCH := $(GCC_TARGET_ARCH)v
|
||||
endif
|
||||
|
||||
# Starting from gcc 12.x, csr and fence instructions have been
|
||||
# separated from the base I instruction set, and special -march
|
||||
|
||||
-51
@@ -1,51 +0,0 @@
|
||||
From 336dc301e02d64507447f82020ce7a349797bef3 Mon Sep 17 00:00:00 2001
|
||||
From: Peter Korsgaard <peter@korsgaard.com>
|
||||
Date: Sun, 5 Nov 2023 14:59:16 +0100
|
||||
Subject: [PATCH] stm32mp157a-avenger96.dts: enable hash device to unbreak boot
|
||||
issue
|
||||
|
||||
The avenger96 board was forgotten when authentication support was added with
|
||||
commit 4bdb1a7a6a1325343 (stm32mp1: add authentication support for
|
||||
stm32image), causing a panic when stm32mp_init_auth() is called, so fix it
|
||||
similar to how it was done for the STM32MP157C-ED1 board with:
|
||||
|
||||
commit b37b52ef8bc05bfd8dcca992d4ba84cd7c5d23bb
|
||||
Author: Yann Gautier <yann.gautier@st.com>
|
||||
Date: Tue Oct 13 18:05:06 2020 +0200
|
||||
|
||||
fdts: add missing hash node in STM32MP157C-ED1 board DT
|
||||
|
||||
Without this node, the board fails to boot and panics in the function
|
||||
stm32mp_init_auth().
|
||||
|
||||
Change-Id: Ia54924410dac2a8c94dd6e45d7e93977fe7d87e2
|
||||
Signed-off-by: Yann Gautier <yann.gautier@st.com>
|
||||
|
||||
Upstream: N/A - Upstream reworked authentication to skip it for MP157A
|
||||
variant since v2.7, see "feat(st): disable authentication based on
|
||||
part_number"
|
||||
(https://github.com/ARM-software/arm-trusted-firmware/commit/49abdfd8cececb91a4bc7e7b29a30c09dce461c7)
|
||||
|
||||
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
|
||||
---
|
||||
fdts/stm32mp157a-avenger96.dts | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/fdts/stm32mp157a-avenger96.dts b/fdts/stm32mp157a-avenger96.dts
|
||||
index b967736e4..76edecb83 100644
|
||||
--- a/fdts/stm32mp157a-avenger96.dts
|
||||
+++ b/fdts/stm32mp157a-avenger96.dts
|
||||
@@ -271,6 +271,10 @@
|
||||
};
|
||||
};
|
||||
|
||||
+&hash1 {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
&rng1 {
|
||||
status = "okay";
|
||||
};
|
||||
--
|
||||
2.39.2
|
||||
|
||||
@@ -1,58 +0,0 @@
|
||||
From 0cf11f3c0478f4286adcfb09bf9137f8b00212e3 Mon Sep 17 00:00:00 2001
|
||||
From: Alexandre Ghiti <alexandre.ghiti@canonical.com>
|
||||
Date: Mon, 3 Oct 2022 18:07:54 +0200
|
||||
Subject: [PATCH] riscv: Fix build against binutils 2.38
|
||||
|
||||
The following description is copied from the equivalent patch for the
|
||||
Linux Kernel proposed by Aurelien Jarno:
|
||||
|
||||
>From version 2.38, binutils default to ISA spec version 20191213. This
|
||||
means that the csr read/write (csrr*/csrw*) instructions and fence.i
|
||||
instruction has separated from the `I` extension, become two standalone
|
||||
extensions: Zicsr and Zifencei. As the kernel uses those instruction,
|
||||
this causes the following build failure:
|
||||
|
||||
arch/riscv/cpu/mtrap.S: Assembler messages:
|
||||
arch/riscv/cpu/mtrap.S:65: Error: unrecognized opcode `csrr a0,scause'
|
||||
arch/riscv/cpu/mtrap.S:66: Error: unrecognized opcode `csrr a1,sepc'
|
||||
arch/riscv/cpu/mtrap.S:67: Error: unrecognized opcode `csrr a2,stval'
|
||||
arch/riscv/cpu/mtrap.S:70: Error: unrecognized opcode `csrw sepc,a0'
|
||||
|
||||
Signed-off-by: Alexandre Ghiti <alexandre.ghiti@canonical.com>
|
||||
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
|
||||
Tested-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
|
||||
Tested-by: Heiko Stuebner <heiko@sntech.de>
|
||||
Tested-by: Christian Stewart <christian@paral.in>
|
||||
Reviewed-by: Rick Chen <rick@andestech.com>
|
||||
(cherry picked from commit 1dde977518f13824b847e23275001191139bc384)
|
||||
Upstream: https://gitlab.com/u-boot/u-boot/-/commit/1dde977518f13824b847e23275001191139bc384
|
||||
Signed-off-by: Romain Naour <romain.naour@gmail.com>
|
||||
---
|
||||
arch/riscv/Makefile | 11 ++++++++++-
|
||||
1 file changed, 10 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/arch/riscv/Makefile b/arch/riscv/Makefile
|
||||
index 0b80eb8d864..53d1194ffb6 100644
|
||||
--- a/arch/riscv/Makefile
|
||||
+++ b/arch/riscv/Makefile
|
||||
@@ -24,7 +24,16 @@ ifeq ($(CONFIG_CMODEL_MEDANY),y)
|
||||
CMODEL = medany
|
||||
endif
|
||||
|
||||
-ARCH_FLAGS = -march=$(ARCH_BASE)$(ARCH_A)$(ARCH_C) -mabi=$(ABI) \
|
||||
+RISCV_MARCH = $(ARCH_BASE)$(ARCH_A)$(ARCH_C)
|
||||
+
|
||||
+# Newer binutils versions default to ISA spec version 20191213 which moves some
|
||||
+# instructions from the I extension to the Zicsr and Zifencei extensions.
|
||||
+toolchain-need-zicsr-zifencei := $(call cc-option-yn, -mabi=$(ABI) -march=$(RISCV_MARCH)_zicsr_zifencei)
|
||||
+ifeq ($(toolchain-need-zicsr-zifencei),y)
|
||||
+ RISCV_MARCH := $(RISCV_MARCH)_zicsr_zifencei
|
||||
+endif
|
||||
+
|
||||
+ARCH_FLAGS = -march=$(RISCV_MARCH) -mabi=$(ABI) \
|
||||
-mcmodel=$(CMODEL)
|
||||
|
||||
PLATFORM_CPPFLAGS += $(ARCH_FLAGS)
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -1,58 +0,0 @@
|
||||
From 0cf11f3c0478f4286adcfb09bf9137f8b00212e3 Mon Sep 17 00:00:00 2001
|
||||
From: Alexandre Ghiti <alexandre.ghiti@canonical.com>
|
||||
Date: Mon, 3 Oct 2022 18:07:54 +0200
|
||||
Subject: [PATCH] riscv: Fix build against binutils 2.38
|
||||
|
||||
The following description is copied from the equivalent patch for the
|
||||
Linux Kernel proposed by Aurelien Jarno:
|
||||
|
||||
>From version 2.38, binutils default to ISA spec version 20191213. This
|
||||
means that the csr read/write (csrr*/csrw*) instructions and fence.i
|
||||
instruction has separated from the `I` extension, become two standalone
|
||||
extensions: Zicsr and Zifencei. As the kernel uses those instruction,
|
||||
this causes the following build failure:
|
||||
|
||||
arch/riscv/cpu/mtrap.S: Assembler messages:
|
||||
arch/riscv/cpu/mtrap.S:65: Error: unrecognized opcode `csrr a0,scause'
|
||||
arch/riscv/cpu/mtrap.S:66: Error: unrecognized opcode `csrr a1,sepc'
|
||||
arch/riscv/cpu/mtrap.S:67: Error: unrecognized opcode `csrr a2,stval'
|
||||
arch/riscv/cpu/mtrap.S:70: Error: unrecognized opcode `csrw sepc,a0'
|
||||
|
||||
Signed-off-by: Alexandre Ghiti <alexandre.ghiti@canonical.com>
|
||||
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
|
||||
Tested-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
|
||||
Tested-by: Heiko Stuebner <heiko@sntech.de>
|
||||
Tested-by: Christian Stewart <christian@paral.in>
|
||||
Reviewed-by: Rick Chen <rick@andestech.com>
|
||||
(cherry picked from commit 1dde977518f13824b847e23275001191139bc384)
|
||||
Upstream: https://gitlab.com/u-boot/u-boot/-/commit/1dde977518f13824b847e23275001191139bc384
|
||||
Signed-off-by: Romain Naour <romain.naour@gmail.com>
|
||||
---
|
||||
arch/riscv/Makefile | 11 ++++++++++-
|
||||
1 file changed, 10 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/arch/riscv/Makefile b/arch/riscv/Makefile
|
||||
index 0b80eb8d864..53d1194ffb6 100644
|
||||
--- a/arch/riscv/Makefile
|
||||
+++ b/arch/riscv/Makefile
|
||||
@@ -24,7 +24,16 @@ ifeq ($(CONFIG_CMODEL_MEDANY),y)
|
||||
CMODEL = medany
|
||||
endif
|
||||
|
||||
-ARCH_FLAGS = -march=$(ARCH_BASE)$(ARCH_A)$(ARCH_C) -mabi=$(ABI) \
|
||||
+RISCV_MARCH = $(ARCH_BASE)$(ARCH_A)$(ARCH_C)
|
||||
+
|
||||
+# Newer binutils versions default to ISA spec version 20191213 which moves some
|
||||
+# instructions from the I extension to the Zicsr and Zifencei extensions.
|
||||
+toolchain-need-zicsr-zifencei := $(call cc-option-yn, -mabi=$(ABI) -march=$(RISCV_MARCH)_zicsr_zifencei)
|
||||
+ifeq ($(toolchain-need-zicsr-zifencei),y)
|
||||
+ RISCV_MARCH := $(RISCV_MARCH)_zicsr_zifencei
|
||||
+endif
|
||||
+
|
||||
+ARCH_FLAGS = -march=$(RISCV_MARCH) -mabi=$(ABI) \
|
||||
-mcmodel=$(CMODEL)
|
||||
|
||||
PLATFORM_CPPFLAGS += $(ARCH_FLAGS)
|
||||
--
|
||||
2.41.0
|
||||
|
||||
-61
@@ -1,61 +0,0 @@
|
||||
From 0f75b03c008eacb9818af3a56dc088e72a623d17 Mon Sep 17 00:00:00 2001
|
||||
From: Marco Felsch <m.felsch@pengutronix.de>
|
||||
Date: Wed, 9 Nov 2022 12:59:09 +0100
|
||||
Subject: [PATCH] feat(build): add support for new binutils versions
|
||||
|
||||
Users of GNU ld (BPF) from binutils 2.39+ will observe multiple instaces
|
||||
of a new warning when linking the bl*.elf in the form:
|
||||
|
||||
ld.bfd: warning: stm32mp1_helper.o: missing .note.GNU-stack section implies executable stack
|
||||
ld.bfd: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
|
||||
ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions
|
||||
ld.bfd: warning: bl32.elf has a LOAD segment with RWX permissions
|
||||
|
||||
These new warnings are enbaled by default to secure elf binaries:
|
||||
- https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=ba951afb99912da01a6e8434126b8fac7aa75107
|
||||
- https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=0d38576a34ec64a1b4500c9277a8e9d0f07e6774
|
||||
|
||||
Fix it in a similar way to what the Linux kernel does, see:
|
||||
https://lore.kernel.org/all/20220810222442.2296651-1-ndesaulniers@google.com/
|
||||
|
||||
Following the reasoning there, we set "-z noexecstack" for all linkers
|
||||
(although LLVM's LLD defaults to it) and optional add
|
||||
--no-warn-rwx-segments since this a ld.bfd related.
|
||||
|
||||
Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
|
||||
Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
|
||||
Change-Id: I9430f5fa5036ca88da46cd3b945754d62616b617
|
||||
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
|
||||
Upstream: https://github.com/ARM-software/arm-trusted-firmware/commit/1f49db5f25cdd4e43825c9bcc0575070b80f628c
|
||||
---
|
||||
Makefile | 7 ++++++-
|
||||
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 1ddb7b844..470956b19 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -416,6 +416,8 @@ endif
|
||||
|
||||
GCC_V_OUTPUT := $(shell $(CC) -v 2>&1)
|
||||
|
||||
+TF_LDFLAGS += -z noexecstack
|
||||
+
|
||||
# LD = armlink
|
||||
ifneq ($(findstring armlink,$(notdir $(LD))),)
|
||||
TF_LDFLAGS += --diag_error=warning --lto_level=O1
|
||||
@@ -442,7 +444,10 @@ TF_LDFLAGS += $(subst --,-Xlinker --,$(TF_LDFLAGS_$(ARCH)))
|
||||
|
||||
# LD = gcc-ld (ld) or llvm-ld (ld.lld) or other
|
||||
else
|
||||
-TF_LDFLAGS += --fatal-warnings -O1
|
||||
+# With ld.bfd version 2.39 and newer new warnings are added. Skip those since we
|
||||
+# are not loaded by a elf loader.
|
||||
+TF_LDFLAGS += $(call ld_option, --no-warn-rwx-segments)
|
||||
+TF_LDFLAGS += -O1
|
||||
TF_LDFLAGS += --gc-sections
|
||||
# ld.lld doesn't recognize the errata flags,
|
||||
# therefore don't add those in that case
|
||||
--
|
||||
2.30.2
|
||||
|
||||
-51
@@ -1,51 +0,0 @@
|
||||
From b2a94de52ae4a940a87d569815b19d3fa92dd32a Mon Sep 17 00:00:00 2001
|
||||
From: Tom Hochstein <tom.hochstein@nxp.com>
|
||||
Date: Mon, 16 May 2022 13:45:16 -0500
|
||||
Subject: [PATCH] LF-7968-01 fix(Makefile): Suppress array-bounds error
|
||||
|
||||
The array-bounds error is triggered now in cases where it was silent
|
||||
before, causing errors like:
|
||||
|
||||
```
|
||||
plat/imx/imx8m/hab.c: In function 'imx_hab_handler':
|
||||
plat/imx/imx8m/hab.c:64:57: error: array subscript 0 is outside array bounds of 'uint32_t[0]' {aka 'unsigned int[]'} [-Werror=array-bounds]
|
||||
64 | #define HAB_RVT_CHECK_TARGET_ARM64 ((unsigned long)*(uint32_t *)(HAB_RVT_BASE + 0x18))
|
||||
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
```
|
||||
|
||||
The error is a false-positive and is entered as a bug [1]. The problem
|
||||
is fixed partially in GCC 12 and fully in GCC 13 [2].
|
||||
|
||||
The partial fix does not work here because the constant addresses used
|
||||
are less than the 4kB boundary chosen for the partial fix, so suppress
|
||||
the error until GCC is upgraded to 13.
|
||||
|
||||
[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99578
|
||||
[2] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99578#c39
|
||||
|
||||
Upstream-Status: Inappropriate [other]
|
||||
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
|
||||
Signed-off-by: Jacky Bai <ping.bai@nxp.com>
|
||||
Reviewed-by: Ye Li <ye.li@nxp.com>
|
||||
Signed-off-by: Brandon Maier <brandon.maier@collins.com>
|
||||
Upstream: https://github.com/nxp-imx/imx-atf/commit/058bf0f104115037d03e277f079825ef3659c5b9
|
||||
---
|
||||
Makefile | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index c87c3ae08..2d6b90f47 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -346,7 +346,7 @@ WARNINGS += -Wshift-overflow -Wshift-sign-overflow \
|
||||
endif
|
||||
|
||||
ifneq (${E},0)
|
||||
-ERRORS := -Werror
|
||||
+ERRORS := -Werror -Wno-error=array-bounds
|
||||
endif
|
||||
|
||||
CPPFLAGS = ${DEFINES} ${INCLUDES} ${MBEDTLS_INC} -nostdinc \
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -6,7 +6,7 @@ buildroot environment for the Orangepi Lite2. With the current configuration
|
||||
it will bring-up the board, and allow access through the serial console.
|
||||
|
||||
Orangepi Lite2 link:
|
||||
http://www.orangepi.org/html/hardWare/computerAndMicrocontrollers/details/Orange-Pi-Lite-2.html
|
||||
http://www.orangepi.org/Orange%20Pi%20Lite%202/
|
||||
|
||||
Wiki link:
|
||||
https://openedev.amarulasolutions.com/display/ODWIKI/Orangepi+Lite2
|
||||
|
||||
@@ -6,7 +6,7 @@ buildroot environment for the Orangepi One Plus. With the current configuration
|
||||
it will bring-up the board, and allow access through the serial console.
|
||||
|
||||
Orangepi One Plus link:
|
||||
http://www.orangepi.org/html/hardWare/computerAndMicrocontrollers/details/Orange-Pi-One-Plus.html
|
||||
http://www.orangepi.org/OrangePiOneplus/
|
||||
|
||||
Wiki link:
|
||||
https://openedev.amarulasolutions.com/display/ODWIKI/Orangepi+One+Plus
|
||||
|
||||
@@ -6,7 +6,7 @@ buildroot environment for the Orangepi Zero Plus. With the current configuration
|
||||
it will bring-up the board, and allow access through the serial console.
|
||||
|
||||
Orangepi Zero Plus link:
|
||||
http://www.orangepi.org/html/hardWare/computerAndMicrocontrollers/details/Orange-Pi-Zero-Plus.html
|
||||
http://www.orangepi.org/OrangePiZeroPlus/
|
||||
|
||||
This configuration uses U-Boot mainline and kernel mainline.
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ buildroot environment for the Orangepi Zero Plus2. With the current configuratio
|
||||
it will bring-up the board, and allow access through the serial console.
|
||||
|
||||
Orangepi Zero Plus2 link:
|
||||
http://www.orangepi.org/html/hardWare/computerAndMicrocontrollers/details/Orange-Pi-Zero-Plus-2.html
|
||||
http://www.orangepi.org/OrangePiZeroPlus2/
|
||||
|
||||
Wiki link:
|
||||
https://openedev.amarulasolutions.com/display/ODWIKI/Orangepi+Zero+Plus2
|
||||
|
||||
@@ -12,7 +12,8 @@ CONFIG_SCHED_AUTOGROUP=y
|
||||
CONFIG_PROFILING=y
|
||||
CONFIG_ARCH_VEXPRESS=y
|
||||
CONFIG_COMPAT=y
|
||||
CONFIG_ACPI=y
|
||||
CONFIG_FW_CFG_SYSFS=y
|
||||
CONFIG_FW_CFG_SYSFS_CMDLINE=y
|
||||
CONFIG_MODULES=y
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
CONFIG_BLK_DEV_BSGLIB=y
|
||||
@@ -33,8 +34,6 @@ CONFIG_PCI=y
|
||||
CONFIG_PCI_HOST_GENERIC=y
|
||||
CONFIG_DEVTMPFS=y
|
||||
CONFIG_DEVTMPFS_MOUNT=y
|
||||
CONFIG_FW_CFG_SYSFS=y
|
||||
CONFIG_FW_CFG_SYSFS_CMDLINE=y
|
||||
CONFIG_VIRTIO_BLK=y
|
||||
CONFIG_BLK_DEV_SD=y
|
||||
CONFIG_CHR_DEV_SG=y
|
||||
|
||||
@@ -1,97 +0,0 @@
|
||||
From 0bb6b7477f5dcfafbdd76eea9c7aa7a5f78d7613 Mon Sep 17 00:00:00 2001
|
||||
From: Ben Hutchings <benh@debian.org>
|
||||
Date: Fri, 16 Jun 2023 17:36:10 +0200
|
||||
Subject: [PATCH] m68k: Fix invalid .section syntax
|
||||
|
||||
gas supports several different forms for .section for ELF targets,
|
||||
including:
|
||||
.section NAME [, "FLAGS"[, @TYPE[,FLAG_SPECIFIC_ARGUMENTS]]]
|
||||
and:
|
||||
.section "NAME"[, #FLAGS...]
|
||||
|
||||
In several places we use a mix of these two forms:
|
||||
.section NAME, #FLAGS...
|
||||
|
||||
A current development snapshot of binutils (2.40.50.20230611) treats
|
||||
this mixed syntax as an error.
|
||||
|
||||
Change to consistently use:
|
||||
.section NAME, "FLAGS"
|
||||
as is used elsewhere in the kernel.
|
||||
|
||||
Link: https://buildd.debian.org/status/fetch.php?pkg=linux&arch=m68k&ver=6.4%7Erc6-1%7Eexp1&stamp=1686907300&raw=1
|
||||
Signed-off-by: Ben Hutchings <benh@debian.org>
|
||||
Tested-by: Jan-Benedict Glaw <jbglaw@lug-owl.de>
|
||||
Link: https://lore.kernel.org/r/ZIyBaueWT9jnTwRC@decadent.org.uk
|
||||
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
|
||||
Upstream: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=922a9bd138101e3e5718f0f4d40dba68ef89bb43
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
arch/m68k/fpsp040/skeleton.S | 4 ++--
|
||||
arch/m68k/ifpsp060/os.S | 4 ++--
|
||||
arch/m68k/kernel/relocate_kernel.S | 4 ++--
|
||||
3 files changed, 6 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/arch/m68k/fpsp040/skeleton.S b/arch/m68k/fpsp040/skeleton.S
|
||||
index 439395aa6fb4..081922c72daa 100644
|
||||
--- a/arch/m68k/fpsp040/skeleton.S
|
||||
+++ b/arch/m68k/fpsp040/skeleton.S
|
||||
@@ -499,13 +499,13 @@ in_ea:
|
||||
dbf %d0,morein
|
||||
rts
|
||||
|
||||
- .section .fixup,#alloc,#execinstr
|
||||
+ .section .fixup,"ax"
|
||||
.even
|
||||
1:
|
||||
jbsr fpsp040_die
|
||||
jbra .Lnotkern
|
||||
|
||||
- .section __ex_table,#alloc
|
||||
+ .section __ex_table,"a"
|
||||
.align 4
|
||||
|
||||
.long in_ea,1b
|
||||
diff --git a/arch/m68k/ifpsp060/os.S b/arch/m68k/ifpsp060/os.S
|
||||
index 7a0d6e428066..89e2ec224ab6 100644
|
||||
--- a/arch/m68k/ifpsp060/os.S
|
||||
+++ b/arch/m68k/ifpsp060/os.S
|
||||
@@ -379,11 +379,11 @@ _060_real_access:
|
||||
|
||||
|
||||
| Execption handling for movs access to illegal memory
|
||||
- .section .fixup,#alloc,#execinstr
|
||||
+ .section .fixup,"ax"
|
||||
.even
|
||||
1: moveq #-1,%d1
|
||||
rts
|
||||
-.section __ex_table,#alloc
|
||||
+.section __ex_table,"a"
|
||||
.align 4
|
||||
.long dmrbuae,1b
|
||||
.long dmrwuae,1b
|
||||
diff --git a/arch/m68k/kernel/relocate_kernel.S b/arch/m68k/kernel/relocate_kernel.S
|
||||
index ab0f1e7d4653..f7667079e08e 100644
|
||||
--- a/arch/m68k/kernel/relocate_kernel.S
|
||||
+++ b/arch/m68k/kernel/relocate_kernel.S
|
||||
@@ -26,7 +26,7 @@ ENTRY(relocate_new_kernel)
|
||||
lea %pc@(.Lcopy),%a4
|
||||
2: addl #0x00000000,%a4 /* virt_to_phys() */
|
||||
|
||||
- .section ".m68k_fixup","aw"
|
||||
+ .section .m68k_fixup,"aw"
|
||||
.long M68K_FIXUP_MEMOFFSET, 2b+2
|
||||
.previous
|
||||
|
||||
@@ -49,7 +49,7 @@ ENTRY(relocate_new_kernel)
|
||||
lea %pc@(.Lcont040),%a4
|
||||
5: addl #0x00000000,%a4 /* virt_to_phys() */
|
||||
|
||||
- .section ".m68k_fixup","aw"
|
||||
+ .section .m68k_fixup,"aw"
|
||||
.long M68K_FIXUP_MEMOFFSET, 5b+2
|
||||
.previous
|
||||
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -1,97 +0,0 @@
|
||||
From 0bb6b7477f5dcfafbdd76eea9c7aa7a5f78d7613 Mon Sep 17 00:00:00 2001
|
||||
From: Ben Hutchings <benh@debian.org>
|
||||
Date: Fri, 16 Jun 2023 17:36:10 +0200
|
||||
Subject: [PATCH] m68k: Fix invalid .section syntax
|
||||
|
||||
gas supports several different forms for .section for ELF targets,
|
||||
including:
|
||||
.section NAME [, "FLAGS"[, @TYPE[,FLAG_SPECIFIC_ARGUMENTS]]]
|
||||
and:
|
||||
.section "NAME"[, #FLAGS...]
|
||||
|
||||
In several places we use a mix of these two forms:
|
||||
.section NAME, #FLAGS...
|
||||
|
||||
A current development snapshot of binutils (2.40.50.20230611) treats
|
||||
this mixed syntax as an error.
|
||||
|
||||
Change to consistently use:
|
||||
.section NAME, "FLAGS"
|
||||
as is used elsewhere in the kernel.
|
||||
|
||||
Link: https://buildd.debian.org/status/fetch.php?pkg=linux&arch=m68k&ver=6.4%7Erc6-1%7Eexp1&stamp=1686907300&raw=1
|
||||
Signed-off-by: Ben Hutchings <benh@debian.org>
|
||||
Tested-by: Jan-Benedict Glaw <jbglaw@lug-owl.de>
|
||||
Link: https://lore.kernel.org/r/ZIyBaueWT9jnTwRC@decadent.org.uk
|
||||
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
|
||||
Upstream: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=922a9bd138101e3e5718f0f4d40dba68ef89bb43
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
arch/m68k/fpsp040/skeleton.S | 4 ++--
|
||||
arch/m68k/ifpsp060/os.S | 4 ++--
|
||||
arch/m68k/kernel/relocate_kernel.S | 4 ++--
|
||||
3 files changed, 6 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/arch/m68k/fpsp040/skeleton.S b/arch/m68k/fpsp040/skeleton.S
|
||||
index 439395aa6fb4..081922c72daa 100644
|
||||
--- a/arch/m68k/fpsp040/skeleton.S
|
||||
+++ b/arch/m68k/fpsp040/skeleton.S
|
||||
@@ -499,13 +499,13 @@ in_ea:
|
||||
dbf %d0,morein
|
||||
rts
|
||||
|
||||
- .section .fixup,#alloc,#execinstr
|
||||
+ .section .fixup,"ax"
|
||||
.even
|
||||
1:
|
||||
jbsr fpsp040_die
|
||||
jbra .Lnotkern
|
||||
|
||||
- .section __ex_table,#alloc
|
||||
+ .section __ex_table,"a"
|
||||
.align 4
|
||||
|
||||
.long in_ea,1b
|
||||
diff --git a/arch/m68k/ifpsp060/os.S b/arch/m68k/ifpsp060/os.S
|
||||
index 7a0d6e428066..89e2ec224ab6 100644
|
||||
--- a/arch/m68k/ifpsp060/os.S
|
||||
+++ b/arch/m68k/ifpsp060/os.S
|
||||
@@ -379,11 +379,11 @@ _060_real_access:
|
||||
|
||||
|
||||
| Execption handling for movs access to illegal memory
|
||||
- .section .fixup,#alloc,#execinstr
|
||||
+ .section .fixup,"ax"
|
||||
.even
|
||||
1: moveq #-1,%d1
|
||||
rts
|
||||
-.section __ex_table,#alloc
|
||||
+.section __ex_table,"a"
|
||||
.align 4
|
||||
.long dmrbuae,1b
|
||||
.long dmrwuae,1b
|
||||
diff --git a/arch/m68k/kernel/relocate_kernel.S b/arch/m68k/kernel/relocate_kernel.S
|
||||
index ab0f1e7d4653..f7667079e08e 100644
|
||||
--- a/arch/m68k/kernel/relocate_kernel.S
|
||||
+++ b/arch/m68k/kernel/relocate_kernel.S
|
||||
@@ -26,7 +26,7 @@ ENTRY(relocate_new_kernel)
|
||||
lea %pc@(.Lcopy),%a4
|
||||
2: addl #0x00000000,%a4 /* virt_to_phys() */
|
||||
|
||||
- .section ".m68k_fixup","aw"
|
||||
+ .section .m68k_fixup,"aw"
|
||||
.long M68K_FIXUP_MEMOFFSET, 2b+2
|
||||
.previous
|
||||
|
||||
@@ -49,7 +49,7 @@ ENTRY(relocate_new_kernel)
|
||||
lea %pc@(.Lcont040),%a4
|
||||
5: addl #0x00000000,%a4 /* virt_to_phys() */
|
||||
|
||||
- .section ".m68k_fixup","aw"
|
||||
+ .section .m68k_fixup,"aw"
|
||||
.long M68K_FIXUP_MEMOFFSET, 5b+2
|
||||
.previous
|
||||
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
Run the emulation with:
|
||||
|
||||
qemu-system-ppc64 -M powernv9 -kernel output/images/vmlinux -append "console=hvc0 rootwait root=/dev/nvme0n1" -device nvme,bus=pcie.3,addr=0x0,drive=drive0,serial=1234 -drive file=output/images/rootfs.ext2,if=none,id=drive0,format=raw,cache=none -device e1000e,netdev=net0,mac=C0:FF:EE:00:01:03,bus=pcie.1,addr=0x0 -netdev user,id=net0 -serial mon:stdio -nographic # qemu_ppc64le_powernv8_defconfig
|
||||
qemu-system-ppc64 -M powernv9 -kernel vmlinux -append "console=hvc0 rootwait root=/dev/nvme0n1" -device nvme,bus=pcie.3,addr=0x0,drive=drive0,serial=1234 -drive file=./rootfs.ext2,if=none,id=drive0,format=raw,cache=none -device e1000e,netdev=net0,mac=C0:FF:EE:00:01:03,bus=pcie.1,addr=0x0 -netdev user,id=net0 -serial mon:stdio -nographic # qemu_ppc64le_powernv8_defconfig
|
||||
|
||||
The login prompt will appear in the terminal window.
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
setenv bootargs root=/dev/mmcblk0p2 rw rootfstype=ext4 clkin_hz=(25000000) earlycon clk_ignore_unused earlyprintk console=ttyS2,1500000n8 rootwait
|
||||
fatload mmc 1:1 ${loadaddr} image.itb
|
||||
bootm ${loadaddr}
|
||||
@@ -1,34 +0,0 @@
|
||||
# SD card image for Radxa Rock 5b
|
||||
|
||||
image boot.vfat {
|
||||
vfat {
|
||||
files = {
|
||||
"image.itb",
|
||||
"boot.scr"
|
||||
}
|
||||
}
|
||||
size = 16M
|
||||
}
|
||||
|
||||
image sdcard.img {
|
||||
hdimage {
|
||||
partition-table-type = "hybrid"
|
||||
}
|
||||
|
||||
partition uboot {
|
||||
in-partition-table = "false"
|
||||
image = "u-boot-rockchip.bin"
|
||||
offset = 32K
|
||||
}
|
||||
|
||||
partition boot {
|
||||
partition-type = "0xC"
|
||||
bootable = "true"
|
||||
image = "boot.vfat"
|
||||
}
|
||||
|
||||
partition rootfs {
|
||||
partition-type = 0x83
|
||||
image = "rootfs.ext2"
|
||||
}
|
||||
}
|
||||
@@ -1,4 +0,0 @@
|
||||
CONFIG_R8169=y
|
||||
# Disable Rockchip specific WiFi drivers, as the kernel
|
||||
# code cannot be build with GCC 12 due to several Werrors
|
||||
# CONFIG_WL_ROCKCHIP is not set
|
||||
-64
@@ -1,64 +0,0 @@
|
||||
From 2618a0dae09ef37728dab89ff60418cbe25ae6bd Mon Sep 17 00:00:00 2001
|
||||
From: Kees Cook <keescook@chromium.org>
|
||||
Date: Sat, 12 Feb 2022 09:14:49 -0800
|
||||
Subject: etherdevice: Adjust ether_addr* prototypes to silence
|
||||
-Wstringop-overead
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
With GCC 12, -Wstringop-overread was warning about an implicit cast from
|
||||
char[6] to char[8]. However, the extra 2 bytes are always thrown away,
|
||||
alignment doesn't matter, and the risk of hitting the edge of unallocated
|
||||
memory has been accepted, so this prototype can just be converted to a
|
||||
regular char *. Silences:
|
||||
|
||||
net/core/dev.c: In function ‘bpf_prog_run_generic_xdp’: net/core/dev.c:4618:21: warning: ‘ether_addr_equal_64bits’ reading 8 bytes from a region of size 6 [-Wstringop-overread]
|
||||
4618 | orig_host = ether_addr_equal_64bits(eth->h_dest, > skb->dev->dev_addr);
|
||||
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
net/core/dev.c:4618:21: note: referencing argument 1 of type ‘const u8[8]’ {aka ‘const unsigned char[8]’}
|
||||
net/core/dev.c:4618:21: note: referencing argument 2 of type ‘const u8[8]’ {aka ‘const unsigned char[8]’}
|
||||
In file included from net/core/dev.c:91: include/linux/etherdevice.h:375:20: note: in a call to function ‘ether_addr_equal_64bits’
|
||||
375 | static inline bool ether_addr_equal_64bits(const u8 addr1[6+2],
|
||||
| ^~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Reported-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
Tested-by: Marc Kleine-Budde <mkl@pengutronix.de>
|
||||
Link: https://lore.kernel.org/netdev/20220212090811.uuzk6d76agw2vv73@pengutronix.de
|
||||
Cc: Jakub Kicinski <kuba@kernel.org>
|
||||
Cc: "David S. Miller" <davem@davemloft.net>
|
||||
Cc: netdev@vger.kernel.org
|
||||
Signed-off-by: Kees Cook <keescook@chromium.org>
|
||||
Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
Upstream: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=2618a0dae09ef37728dab89ff60418cbe25ae6bd
|
||||
Signed-off-by: Kilian Zinnecker <kilian.zinnecker@mail.de>
|
||||
---
|
||||
include/linux/etherdevice.h | 5 ++---
|
||||
1 file changed, 2 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/include/linux/etherdevice.h b/include/linux/etherdevice.h
|
||||
index 2ad71cc90b37d..92b10e67d5f87 100644
|
||||
--- a/include/linux/etherdevice.h
|
||||
+++ b/include/linux/etherdevice.h
|
||||
@@ -134,7 +134,7 @@ static inline bool is_multicast_ether_addr(const u8 *addr)
|
||||
#endif
|
||||
}
|
||||
|
||||
-static inline bool is_multicast_ether_addr_64bits(const u8 addr[6+2])
|
||||
+static inline bool is_multicast_ether_addr_64bits(const u8 *addr)
|
||||
{
|
||||
#if defined(CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS) && BITS_PER_LONG == 64
|
||||
#ifdef __BIG_ENDIAN
|
||||
@@ -372,8 +372,7 @@ static inline bool ether_addr_equal(const u8 *addr1, const u8 *addr2)
|
||||
* Please note that alignment of addr1 & addr2 are only guaranteed to be 16 bits.
|
||||
*/
|
||||
|
||||
-static inline bool ether_addr_equal_64bits(const u8 addr1[6+2],
|
||||
- const u8 addr2[6+2])
|
||||
+static inline bool ether_addr_equal_64bits(const u8 *addr1, const u8 *addr2)
|
||||
{
|
||||
#if defined(CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS) && BITS_PER_LONG == 64
|
||||
u64 fold = (*(const u64 *)addr1) ^ (*(const u64 *)addr2);
|
||||
--
|
||||
cgit
|
||||
|
||||
-43
@@ -1,43 +0,0 @@
|
||||
From ca831f29f8f25c97182e726429b38c0802200c8f Mon Sep 17 00:00:00 2001
|
||||
From: Xiongwei Song <sxwjean@gmail.com>
|
||||
Date: Fri, 14 Jan 2022 14:07:24 -0800
|
||||
Subject: mm: page_alloc: fix building error on -Werror=array-compare
|
||||
|
||||
Arthur Marsh reported we would hit the error below when building kernel
|
||||
with gcc-12:
|
||||
|
||||
CC mm/page_alloc.o
|
||||
mm/page_alloc.c: In function `mem_init_print_info':
|
||||
mm/page_alloc.c:8173:27: error: comparison between two arrays [-Werror=array-compare]
|
||||
8173 | if (start <= pos && pos < end && size > adj) \
|
||||
|
|
||||
|
||||
In C++20, the comparision between arrays should be warned.
|
||||
|
||||
Link: https://lkml.kernel.org/r/20211125130928.32465-1-sxwjean@me.com
|
||||
Signed-off-by: Xiongwei Song <sxwjean@gmail.com>
|
||||
Reported-by: Arthur Marsh <arthur.marsh@internode.on.net>
|
||||
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
|
||||
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
||||
Upstream: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=ca831f29f8f25c97182e726429b38c0802200c8f
|
||||
Signed-off-by: Kilian Zinnecker <kilian.zinnecker@mail.de>
|
||||
---
|
||||
mm/page_alloc.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
|
||||
index 806f317c2e7e2..c4ef450ac4428 100644
|
||||
--- a/mm/page_alloc.c
|
||||
+++ b/mm/page_alloc.c
|
||||
@@ -8228,7 +8228,7 @@ void __init mem_init_print_info(void)
|
||||
*/
|
||||
#define adj_init_size(start, end, size, pos, adj) \
|
||||
do { \
|
||||
- if (start <= pos && pos < end && size > adj) \
|
||||
+ if (&start[0] <= &pos[0] && &pos[0] < &end[0] && size > adj) \
|
||||
size -= adj; \
|
||||
} while (0)
|
||||
|
||||
--
|
||||
cgit
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
set -e
|
||||
|
||||
gzip -fk "${BINARIES_DIR}/Image"
|
||||
cp board/radxa/rock5b/rock5b.its "${BINARIES_DIR}"
|
||||
(cd "${BINARIES_DIR}" && mkimage -f rock5b.its image.itb)
|
||||
support/scripts/genimage.sh -c board/radxa/rock5b/genimage.cfg
|
||||
@@ -1,82 +0,0 @@
|
||||
RADXA ROCK 5B
|
||||
==============
|
||||
https://wiki.radxa.com/Rock5/hardware/5b
|
||||
|
||||
Build:
|
||||
======
|
||||
$ make rock5b_defconfig
|
||||
$ make
|
||||
|
||||
Files created in output directory
|
||||
=================================
|
||||
|
||||
output/images
|
||||
.
|
||||
├── Image
|
||||
├── Image.gz
|
||||
├── boot.scr
|
||||
├── boot.vfat
|
||||
├── image.itb
|
||||
├── rk3588-rock-5b.dtb
|
||||
├── rk3588_bl31_v1.40.elf
|
||||
├── rk3588_ddr_lp4_2112MHz_lp5_2736MHz_v1.12.bin
|
||||
├── rock5b.its
|
||||
├── rootfs.ext2
|
||||
├── rootfs.ext4
|
||||
├── rootfs.tar
|
||||
├── sdcard.img
|
||||
├── u-boot-rockchip.bin
|
||||
└── u-boot.bin
|
||||
|
||||
Creating bootable SD card:
|
||||
==========================
|
||||
|
||||
Simply invoke (as root)
|
||||
|
||||
sudo dd if=output/images/sdcard.img of=/dev/sdX && sync
|
||||
|
||||
Where X is your SD card device.
|
||||
|
||||
Booting:
|
||||
========
|
||||
|
||||
Serial console:
|
||||
---------------
|
||||
The Rock 5B has a 40-pin GPIO header. Its layout can be seen here:
|
||||
https://wiki.radxa.com/Rock5/hardware/5b/gpio
|
||||
|
||||
The Uart pins are as follows:
|
||||
|
||||
pin 6: gnd
|
||||
pin 8: tx
|
||||
pin 10: rx
|
||||
|
||||
Baudrate for this board is 1500000.
|
||||
|
||||
Login:
|
||||
------
|
||||
Enter 'root' as login user, and the prompt is ready.
|
||||
|
||||
wiki link:
|
||||
----------
|
||||
https://forum.radxa.com/c/rock5
|
||||
|
||||
Issues:
|
||||
=======
|
||||
|
||||
The custom Radxa kernel provides custom code to support WiFi. However,
|
||||
that code does not compile with GCC 12, which is the current default
|
||||
version in buildroot. Hence, the WiFi kernel drivers are disabled, until
|
||||
the issues get fixed (if ever). If they are desperately needed, one may
|
||||
apply the following workaround, as long as buildroot still supports GCC
|
||||
version 11:
|
||||
|
||||
1. Set GCC version 11, by adding the following line to
|
||||
configs/rock5b_defconfig:
|
||||
|
||||
BR2_GCC_VERSION_11_X=y
|
||||
|
||||
2. Re-enable custom WiFi drivers by removing the following line from
|
||||
board/radxa/rock5b/linux.fragment:
|
||||
|
||||
# CONFIG_WL_ROCKCHIP is not set
|
||||
@@ -1,46 +0,0 @@
|
||||
/dts-v1/;
|
||||
|
||||
/ {
|
||||
description = "Rock 5B FIT Image";
|
||||
#address-cells = <1>;
|
||||
|
||||
images {
|
||||
kernel {
|
||||
description = "Kernel";
|
||||
data = /incbin/("Image.gz");
|
||||
type = "kernel";
|
||||
arch = "arm64";
|
||||
os = "linux";
|
||||
compression = "gzip";
|
||||
load = <0x0a200000>;
|
||||
entry = <0x0a200000>;
|
||||
hash {
|
||||
algo = "sha256";
|
||||
};
|
||||
};
|
||||
fdt {
|
||||
description = "Device Tree";
|
||||
data = /incbin/("rk3588-rock-5b.dtb");
|
||||
type = "flat_dt";
|
||||
arch = "arm64";
|
||||
compression = "none";
|
||||
load = <0x0e000000>;
|
||||
entry = <0x0e000000>;
|
||||
hash {
|
||||
algo = "sha256";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
configurations {
|
||||
default = "standard";
|
||||
standard {
|
||||
description = "Standard Boot";
|
||||
kernel = "kernel";
|
||||
fdt = "fdt";
|
||||
hash {
|
||||
algo = "sha256";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
@@ -8,12 +8,7 @@ if [ -e ${TARGET_DIR}/etc/inittab ]; then
|
||||
grep -qE '^tty1::' ${TARGET_DIR}/etc/inittab || \
|
||||
sed -i '/GENERIC_SERIAL/a\
|
||||
tty1::respawn:/sbin/getty -L tty1 0 vt100 # HDMI console' ${TARGET_DIR}/etc/inittab
|
||||
# systemd doesn't use /etc/inittab, enable getty.tty1.service instead
|
||||
elif [ -d ${TARGET_DIR}/etc/systemd ]; then
|
||||
mkdir -p "${TARGET_DIR}/etc/systemd/system/getty.target.wants"
|
||||
ln -sf /lib/systemd/system/getty@.service \
|
||||
"${TARGET_DIR}/etc/systemd/system/getty.target.wants/getty@tty1.service"
|
||||
fi
|
||||
|
||||
# ensure overlays exists for genimage
|
||||
# exnsure overlays exists for genimage
|
||||
mkdir -p "${BINARIES_DIR}/rpi-firmware/overlays"
|
||||
|
||||
@@ -1,21 +0,0 @@
|
||||
# CONFIG_FEATURE_HWIB is not set
|
||||
# CONFIG_HOSTNAME is not set
|
||||
# CONFIG_DNSDOMAINNAME is not set
|
||||
# CONFIG_FEATURE_HTTPD_PORT_DEFAULT is not set
|
||||
# CONFIG_IFCONFIG is not set
|
||||
# CONFIG_FEATURE_IFCONFIG_HW is not set
|
||||
# CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS is not set
|
||||
# CONFIG_IFUP is not set
|
||||
# CONFIG_IFDOWN is not set
|
||||
# CONFIG_IP is not set
|
||||
# CONFIG_IPADDR is not set
|
||||
# CONFIG_IPLINK is not set
|
||||
# CONFIG_IPROUTE is not set
|
||||
# CONFIG_NC is not set
|
||||
# CONFIG_NETSTAT is not set
|
||||
# CONFIG_PING is not set
|
||||
# CONFIG_ROUTE is not set
|
||||
# CONFIG_TC is not set
|
||||
# CONFIG_TELNET is not set
|
||||
# CONFIG_WGET is not set
|
||||
# CONFIG_UDHCPC is not set
|
||||
@@ -1,7 +1,4 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Busybox is built without network support
|
||||
sed -i '/hostname/d' ${TARGET_DIR}/etc/inittab
|
||||
|
||||
# Kernel is built without devpts support
|
||||
sed -i '/^devpts/d' ${TARGET_DIR}/etc/fstab
|
||||
|
||||
-1
@@ -1 +0,0 @@
|
||||
../../../../boot/arm-trusted-firmware/v2.6/0001-feat-build-add-support-for-new-binutils-versions.patch
|
||||
@@ -3,8 +3,9 @@
|
||||
# genimage will need to find the extlinux.conf
|
||||
# in the binaries directory
|
||||
|
||||
CONSOLE="$2"
|
||||
ROOT="$3"
|
||||
BOARD_DIR="$(dirname $0)"
|
||||
CONSOLE=$2
|
||||
ROOT=$3
|
||||
|
||||
mkdir -p "${BINARIES_DIR}"
|
||||
cat <<-__HEADER_EOF > "${BINARIES_DIR}/extlinux.conf"
|
||||
|
||||
@@ -6,12 +6,12 @@
|
||||
|
||||
FIRST_DT=$(sed -nr \
|
||||
-e 's|^BR2_LINUX_KERNEL_INTREE_DTS_NAME="(xilinx/)?([-_/[:alnum:]\\.]*).*"$|\2|p' \
|
||||
"${BR2_CONFIG}")
|
||||
${BR2_CONFIG})
|
||||
|
||||
[ -z "${FIRST_DT}" ] || ln -fs "${FIRST_DT}.dtb" "${BINARIES_DIR}/system.dtb"
|
||||
[ -z "${FIRST_DT}" ] || ln -fs ${FIRST_DT}.dtb ${BINARIES_DIR}/system.dtb
|
||||
|
||||
BOARD_DIR="$(dirname "$0")"
|
||||
BOARD_NAME="$4"
|
||||
BOARD_DIR="$(dirname $0)"
|
||||
BOARD_NAME=$4
|
||||
|
||||
mkdir -p "${BINARIES_DIR}"
|
||||
cat <<-__HEADER_EOF > "${BINARIES_DIR}/bootgen.bif"
|
||||
@@ -23,7 +23,7 @@ cat <<-__HEADER_EOF > "${BINARIES_DIR}/bootgen.bif"
|
||||
{ core=psm, file=${BINARIES_DIR}/${BOARD_NAME}_psmfw.elf }
|
||||
}
|
||||
image {
|
||||
id = 0x1c000000, name=apu_subsystem
|
||||
id = 0x1c000000, name=apu_subsystem
|
||||
{ type=raw, load=0x00001000, file=${BINARIES_DIR}/u-boot.dtb }
|
||||
{ core=a72-0, exception_level=el-3, trustzone, file=${BINARIES_DIR}/bl31.elf }
|
||||
{ core=a72-0, exception_level=el-2, file=${BINARIES_DIR}/u-boot.elf }
|
||||
@@ -31,5 +31,5 @@ cat <<-__HEADER_EOF > "${BINARIES_DIR}/bootgen.bif"
|
||||
}
|
||||
__HEADER_EOF
|
||||
|
||||
"${HOST_DIR}/bin/bootgen" -arch versal -image "${BINARIES_DIR}/bootgen.bif" -o "${BINARIES_DIR}/boot.bin" -w on
|
||||
support/scripts/genimage.sh -c "${BOARD_DIR}/genimage.cfg"
|
||||
${HOST_DIR}/bin/bootgen -arch versal -image ${BINARIES_DIR}/bootgen.bif -o ${BINARIES_DIR}/boot.bin -w on
|
||||
support/scripts/genimage.sh -c ${BOARD_DIR}/genimage.cfg
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
# By default U-Boot loads DTB from a file named "system.dtb", so
|
||||
# By default U-Boot loads DTB from a file named "devicetree.dtb", so
|
||||
# let's use a symlink with that name that points to the *first*
|
||||
# devicetree listed in the config.
|
||||
|
||||
|
||||
-1
@@ -1 +0,0 @@
|
||||
../../../../boot/arm-trusted-firmware/v2.6/0001-feat-build-add-support-for-new-binutils-versions.patch
|
||||
@@ -12,6 +12,7 @@ source "boot/binaries-marvell/Config.in"
|
||||
source "boot/boot-wrapper-aarch64/Config.in"
|
||||
source "boot/edk2/Config.in"
|
||||
source "boot/grub2/Config.in"
|
||||
source "boot/lpc32xxcdl/Config.in"
|
||||
source "boot/mv-ddr-marvell/Config.in"
|
||||
source "boot/mxs-bootlets/Config.in"
|
||||
source "boot/optee-os/Config.in"
|
||||
|
||||
@@ -60,7 +60,6 @@ endif
|
||||
|
||||
ARM_TRUSTED_FIRMWARE_MAKE_OPTS += \
|
||||
CROSS_COMPILE="$(TARGET_CROSS)" \
|
||||
BUILD_STRING=$(ARM_TRUSTED_FIRMWARE_VERSION) \
|
||||
$(call qstrip,$(BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES)) \
|
||||
PLAT=$(ARM_TRUSTED_FIRMWARE_PLATFORM) \
|
||||
TARGET_BOARD=$(ARM_TRUSTED_FIRMWARE_TARGET_BOARD)
|
||||
|
||||
-59
@@ -1,59 +0,0 @@
|
||||
From 5e1beb793c06352e87c46eca1144ff1fe8555103 Mon Sep 17 00:00:00 2001
|
||||
From: Heiko Thiery <heiko.thiery@gmail.com>
|
||||
Date: Mon, 10 Jul 2023 10:43:03 +0200
|
||||
Subject: [PATCH] [PATCH] feat(build): add support for new binutils versions
|
||||
|
||||
Users of GNU ld (BPF) from binutils 2.39+ will observe multiple instaces
|
||||
of a new warning when linking the bl*.elf in the form:
|
||||
|
||||
ld.bfd: warning: stm32mp1_helper.o: missing .note.GNU-stack section implies executable stack
|
||||
ld.bfd: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
|
||||
ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions
|
||||
ld.bfd: warning: bl32.elf has a LOAD segment with RWX permissions
|
||||
|
||||
These new warnings are enbaled by default to secure elf binaries:
|
||||
- https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=ba951afb99912da01a6e8434126b8fac7aa75107
|
||||
- https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=0d38576a34ec64a1b4500c9277a8e9d0f07e6774
|
||||
|
||||
Fix it in a similar way to what the Linux kernel does, see:
|
||||
https://lore.kernel.org/all/20220810222442.2296651-1-ndesaulniers@google.com/
|
||||
|
||||
Following the reasoning there, we set "-z noexecstack" for all linkers
|
||||
(although LLVM's LLD defaults to it) and optional add
|
||||
--no-warn-rwx-segments since this a ld.bfd related.
|
||||
|
||||
Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
|
||||
Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
|
||||
Change-Id: I9430f5fa5036ca88da46cd3b945754d62616b617
|
||||
|
||||
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
|
||||
Upstream: https://github.com/ARM-software/arm-trusted-firmware/commit/1f49db5f25cdd4e43825c9bcc0575070b80f628c
|
||||
---
|
||||
Makefile | 7 ++++++-
|
||||
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 721246d51..5893cf422 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -297,11 +297,16 @@ endif
|
||||
|
||||
GCC_V_OUTPUT := $(shell $(CC) -v 2>&1)
|
||||
|
||||
+TF_LDFLAGS += -z noexecstack
|
||||
+
|
||||
ifneq ($(findstring armlink,$(notdir $(LD))),)
|
||||
TF_LDFLAGS += --diag_error=warning --lto_level=O1
|
||||
TF_LDFLAGS += --remove --info=unused,unusedsymbols
|
||||
else
|
||||
-TF_LDFLAGS += --fatal-warnings -O1
|
||||
+# With ld.bfd version 2.39 and newer new warnings are added. Skip those since we
|
||||
+# are not loaded by a elf loader.
|
||||
+TF_LDFLAGS += $(call ld_option, --no-warn-rwx-segments)
|
||||
+TF_LDFLAGS += -O1
|
||||
TF_LDFLAGS += --gc-sections
|
||||
endif
|
||||
TF_LDFLAGS += $(TF_LDFLAGS_$(ARCH))
|
||||
--
|
||||
2.30.2
|
||||
|
||||
-61
@@ -1,61 +0,0 @@
|
||||
From 0f75b03c008eacb9818af3a56dc088e72a623d17 Mon Sep 17 00:00:00 2001
|
||||
From: Marco Felsch <m.felsch@pengutronix.de>
|
||||
Date: Wed, 9 Nov 2022 12:59:09 +0100
|
||||
Subject: [PATCH] feat(build): add support for new binutils versions
|
||||
|
||||
Users of GNU ld (BPF) from binutils 2.39+ will observe multiple instaces
|
||||
of a new warning when linking the bl*.elf in the form:
|
||||
|
||||
ld.bfd: warning: stm32mp1_helper.o: missing .note.GNU-stack section implies executable stack
|
||||
ld.bfd: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
|
||||
ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions
|
||||
ld.bfd: warning: bl32.elf has a LOAD segment with RWX permissions
|
||||
|
||||
These new warnings are enbaled by default to secure elf binaries:
|
||||
- https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=ba951afb99912da01a6e8434126b8fac7aa75107
|
||||
- https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=0d38576a34ec64a1b4500c9277a8e9d0f07e6774
|
||||
|
||||
Fix it in a similar way to what the Linux kernel does, see:
|
||||
https://lore.kernel.org/all/20220810222442.2296651-1-ndesaulniers@google.com/
|
||||
|
||||
Following the reasoning there, we set "-z noexecstack" for all linkers
|
||||
(although LLVM's LLD defaults to it) and optional add
|
||||
--no-warn-rwx-segments since this a ld.bfd related.
|
||||
|
||||
Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
|
||||
Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
|
||||
Change-Id: I9430f5fa5036ca88da46cd3b945754d62616b617
|
||||
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
|
||||
Upstream: https://github.com/ARM-software/arm-trusted-firmware/commit/1f49db5f25cdd4e43825c9bcc0575070b80f628c
|
||||
---
|
||||
Makefile | 7 ++++++-
|
||||
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 1ddb7b844..470956b19 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -416,6 +416,8 @@ endif
|
||||
|
||||
GCC_V_OUTPUT := $(shell $(CC) -v 2>&1)
|
||||
|
||||
+TF_LDFLAGS += -z noexecstack
|
||||
+
|
||||
# LD = armlink
|
||||
ifneq ($(findstring armlink,$(notdir $(LD))),)
|
||||
TF_LDFLAGS += --diag_error=warning --lto_level=O1
|
||||
@@ -442,7 +444,10 @@ TF_LDFLAGS += $(subst --,-Xlinker --,$(TF_LDFLAGS_$(ARCH)))
|
||||
|
||||
# LD = gcc-ld (ld) or llvm-ld (ld.lld) or other
|
||||
else
|
||||
-TF_LDFLAGS += --fatal-warnings -O1
|
||||
+# With ld.bfd version 2.39 and newer new warnings are added. Skip those since we
|
||||
+# are not loaded by a elf loader.
|
||||
+TF_LDFLAGS += $(call ld_option, --no-warn-rwx-segments)
|
||||
+TF_LDFLAGS += -O1
|
||||
TF_LDFLAGS += --gc-sections
|
||||
# ld.lld doesn't recognize the errata flags,
|
||||
# therefore don't add those in that case
|
||||
--
|
||||
2.30.2
|
||||
|
||||
-61
@@ -1,61 +0,0 @@
|
||||
From 0f75b03c008eacb9818af3a56dc088e72a623d17 Mon Sep 17 00:00:00 2001
|
||||
From: Marco Felsch <m.felsch@pengutronix.de>
|
||||
Date: Wed, 9 Nov 2022 12:59:09 +0100
|
||||
Subject: [PATCH] feat(build): add support for new binutils versions
|
||||
|
||||
Users of GNU ld (BPF) from binutils 2.39+ will observe multiple instaces
|
||||
of a new warning when linking the bl*.elf in the form:
|
||||
|
||||
ld.bfd: warning: stm32mp1_helper.o: missing .note.GNU-stack section implies executable stack
|
||||
ld.bfd: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
|
||||
ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions
|
||||
ld.bfd: warning: bl32.elf has a LOAD segment with RWX permissions
|
||||
|
||||
These new warnings are enbaled by default to secure elf binaries:
|
||||
- https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=ba951afb99912da01a6e8434126b8fac7aa75107
|
||||
- https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=0d38576a34ec64a1b4500c9277a8e9d0f07e6774
|
||||
|
||||
Fix it in a similar way to what the Linux kernel does, see:
|
||||
https://lore.kernel.org/all/20220810222442.2296651-1-ndesaulniers@google.com/
|
||||
|
||||
Following the reasoning there, we set "-z noexecstack" for all linkers
|
||||
(although LLVM's LLD defaults to it) and optional add
|
||||
--no-warn-rwx-segments since this a ld.bfd related.
|
||||
|
||||
Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
|
||||
Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
|
||||
Change-Id: I9430f5fa5036ca88da46cd3b945754d62616b617
|
||||
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
|
||||
Upstream: https://github.com/ARM-software/arm-trusted-firmware/commit/1f49db5f25cdd4e43825c9bcc0575070b80f628c
|
||||
---
|
||||
Makefile | 7 ++++++-
|
||||
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 1ddb7b844..470956b19 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -416,6 +416,8 @@ endif
|
||||
|
||||
GCC_V_OUTPUT := $(shell $(CC) -v 2>&1)
|
||||
|
||||
+TF_LDFLAGS += -z noexecstack
|
||||
+
|
||||
# LD = armlink
|
||||
ifneq ($(findstring armlink,$(notdir $(LD))),)
|
||||
TF_LDFLAGS += --diag_error=warning --lto_level=O1
|
||||
@@ -442,7 +444,10 @@ TF_LDFLAGS += $(subst --,-Xlinker --,$(TF_LDFLAGS_$(ARCH)))
|
||||
|
||||
# LD = gcc-ld (ld) or llvm-ld (ld.lld) or other
|
||||
else
|
||||
-TF_LDFLAGS += --fatal-warnings -O1
|
||||
+# With ld.bfd version 2.39 and newer new warnings are added. Skip those since we
|
||||
+# are not loaded by a elf loader.
|
||||
+TF_LDFLAGS += $(call ld_option, --no-warn-rwx-segments)
|
||||
+TF_LDFLAGS += -O1
|
||||
TF_LDFLAGS += --gc-sections
|
||||
# ld.lld doesn't recognize the errata flags,
|
||||
# therefore don't add those in that case
|
||||
--
|
||||
2.30.2
|
||||
|
||||
-61
@@ -1,61 +0,0 @@
|
||||
From 0f75b03c008eacb9818af3a56dc088e72a623d17 Mon Sep 17 00:00:00 2001
|
||||
From: Marco Felsch <m.felsch@pengutronix.de>
|
||||
Date: Wed, 9 Nov 2022 12:59:09 +0100
|
||||
Subject: [PATCH] feat(build): add support for new binutils versions
|
||||
|
||||
Users of GNU ld (BPF) from binutils 2.39+ will observe multiple instaces
|
||||
of a new warning when linking the bl*.elf in the form:
|
||||
|
||||
ld.bfd: warning: stm32mp1_helper.o: missing .note.GNU-stack section implies executable stack
|
||||
ld.bfd: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
|
||||
ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions
|
||||
ld.bfd: warning: bl32.elf has a LOAD segment with RWX permissions
|
||||
|
||||
These new warnings are enbaled by default to secure elf binaries:
|
||||
- https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=ba951afb99912da01a6e8434126b8fac7aa75107
|
||||
- https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=0d38576a34ec64a1b4500c9277a8e9d0f07e6774
|
||||
|
||||
Fix it in a similar way to what the Linux kernel does, see:
|
||||
https://lore.kernel.org/all/20220810222442.2296651-1-ndesaulniers@google.com/
|
||||
|
||||
Following the reasoning there, we set "-z noexecstack" for all linkers
|
||||
(although LLVM's LLD defaults to it) and optional add
|
||||
--no-warn-rwx-segments since this a ld.bfd related.
|
||||
|
||||
Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
|
||||
Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
|
||||
Change-Id: I9430f5fa5036ca88da46cd3b945754d62616b617
|
||||
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
|
||||
Upstream: https://github.com/ARM-software/arm-trusted-firmware/commit/1f49db5f25cdd4e43825c9bcc0575070b80f628c
|
||||
---
|
||||
Makefile | 7 ++++++-
|
||||
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 1ddb7b844..470956b19 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -416,6 +416,8 @@ endif
|
||||
|
||||
GCC_V_OUTPUT := $(shell $(CC) -v 2>&1)
|
||||
|
||||
+TF_LDFLAGS += -z noexecstack
|
||||
+
|
||||
# LD = armlink
|
||||
ifneq ($(findstring armlink,$(notdir $(LD))),)
|
||||
TF_LDFLAGS += --diag_error=warning --lto_level=O1
|
||||
@@ -442,7 +444,10 @@ TF_LDFLAGS += $(subst --,-Xlinker --,$(TF_LDFLAGS_$(ARCH)))
|
||||
|
||||
# LD = gcc-ld (ld) or llvm-ld (ld.lld) or other
|
||||
else
|
||||
-TF_LDFLAGS += --fatal-warnings -O1
|
||||
+# With ld.bfd version 2.39 and newer new warnings are added. Skip those since we
|
||||
+# are not loaded by a elf loader.
|
||||
+TF_LDFLAGS += $(call ld_option, --no-warn-rwx-segments)
|
||||
+TF_LDFLAGS += -O1
|
||||
TF_LDFLAGS += --gc-sections
|
||||
# ld.lld doesn't recognize the errata flags,
|
||||
# therefore don't add those in that case
|
||||
--
|
||||
2.30.2
|
||||
|
||||
-61
@@ -1,61 +0,0 @@
|
||||
From 0f75b03c008eacb9818af3a56dc088e72a623d17 Mon Sep 17 00:00:00 2001
|
||||
From: Marco Felsch <m.felsch@pengutronix.de>
|
||||
Date: Wed, 9 Nov 2022 12:59:09 +0100
|
||||
Subject: [PATCH] feat(build): add support for new binutils versions
|
||||
|
||||
Users of GNU ld (BPF) from binutils 2.39+ will observe multiple instaces
|
||||
of a new warning when linking the bl*.elf in the form:
|
||||
|
||||
ld.bfd: warning: stm32mp1_helper.o: missing .note.GNU-stack section implies executable stack
|
||||
ld.bfd: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
|
||||
ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions
|
||||
ld.bfd: warning: bl32.elf has a LOAD segment with RWX permissions
|
||||
|
||||
These new warnings are enbaled by default to secure elf binaries:
|
||||
- https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=ba951afb99912da01a6e8434126b8fac7aa75107
|
||||
- https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=0d38576a34ec64a1b4500c9277a8e9d0f07e6774
|
||||
|
||||
Fix it in a similar way to what the Linux kernel does, see:
|
||||
https://lore.kernel.org/all/20220810222442.2296651-1-ndesaulniers@google.com/
|
||||
|
||||
Following the reasoning there, we set "-z noexecstack" for all linkers
|
||||
(although LLVM's LLD defaults to it) and optional add
|
||||
--no-warn-rwx-segments since this a ld.bfd related.
|
||||
|
||||
Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
|
||||
Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
|
||||
Change-Id: I9430f5fa5036ca88da46cd3b945754d62616b617
|
||||
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
|
||||
Upstream: https://github.com/ARM-software/arm-trusted-firmware/commit/1f49db5f25cdd4e43825c9bcc0575070b80f628c
|
||||
---
|
||||
Makefile | 7 ++++++-
|
||||
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 1ddb7b844..470956b19 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -416,6 +416,8 @@ endif
|
||||
|
||||
GCC_V_OUTPUT := $(shell $(CC) -v 2>&1)
|
||||
|
||||
+TF_LDFLAGS += -z noexecstack
|
||||
+
|
||||
# LD = armlink
|
||||
ifneq ($(findstring armlink,$(notdir $(LD))),)
|
||||
TF_LDFLAGS += --diag_error=warning --lto_level=O1
|
||||
@@ -442,7 +444,10 @@ TF_LDFLAGS += $(subst --,-Xlinker --,$(TF_LDFLAGS_$(ARCH)))
|
||||
|
||||
# LD = gcc-ld (ld) or llvm-ld (ld.lld) or other
|
||||
else
|
||||
-TF_LDFLAGS += --fatal-warnings -O1
|
||||
+# With ld.bfd version 2.39 and newer new warnings are added. Skip those since we
|
||||
+# are not loaded by a elf loader.
|
||||
+TF_LDFLAGS += $(call ld_option, --no-warn-rwx-segments)
|
||||
+TF_LDFLAGS += -O1
|
||||
TF_LDFLAGS += --gc-sections
|
||||
# ld.lld doesn't recognize the errata flags,
|
||||
# therefore don't add those in that case
|
||||
--
|
||||
2.30.2
|
||||
|
||||
-61
@@ -1,61 +0,0 @@
|
||||
From 0f75b03c008eacb9818af3a56dc088e72a623d17 Mon Sep 17 00:00:00 2001
|
||||
From: Marco Felsch <m.felsch@pengutronix.de>
|
||||
Date: Wed, 9 Nov 2022 12:59:09 +0100
|
||||
Subject: [PATCH] feat(build): add support for new binutils versions
|
||||
|
||||
Users of GNU ld (BPF) from binutils 2.39+ will observe multiple instaces
|
||||
of a new warning when linking the bl*.elf in the form:
|
||||
|
||||
ld.bfd: warning: stm32mp1_helper.o: missing .note.GNU-stack section implies executable stack
|
||||
ld.bfd: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
|
||||
ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions
|
||||
ld.bfd: warning: bl32.elf has a LOAD segment with RWX permissions
|
||||
|
||||
These new warnings are enbaled by default to secure elf binaries:
|
||||
- https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=ba951afb99912da01a6e8434126b8fac7aa75107
|
||||
- https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=0d38576a34ec64a1b4500c9277a8e9d0f07e6774
|
||||
|
||||
Fix it in a similar way to what the Linux kernel does, see:
|
||||
https://lore.kernel.org/all/20220810222442.2296651-1-ndesaulniers@google.com/
|
||||
|
||||
Following the reasoning there, we set "-z noexecstack" for all linkers
|
||||
(although LLVM's LLD defaults to it) and optional add
|
||||
--no-warn-rwx-segments since this a ld.bfd related.
|
||||
|
||||
Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
|
||||
Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
|
||||
Change-Id: I9430f5fa5036ca88da46cd3b945754d62616b617
|
||||
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
|
||||
Upstream: https://github.com/ARM-software/arm-trusted-firmware/commit/1f49db5f25cdd4e43825c9bcc0575070b80f628c
|
||||
---
|
||||
Makefile | 7 ++++++-
|
||||
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 1ddb7b844..470956b19 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -416,6 +416,8 @@ endif
|
||||
|
||||
GCC_V_OUTPUT := $(shell $(CC) -v 2>&1)
|
||||
|
||||
+TF_LDFLAGS += -z noexecstack
|
||||
+
|
||||
# LD = armlink
|
||||
ifneq ($(findstring armlink,$(notdir $(LD))),)
|
||||
TF_LDFLAGS += --diag_error=warning --lto_level=O1
|
||||
@@ -442,7 +444,10 @@ TF_LDFLAGS += $(subst --,-Xlinker --,$(TF_LDFLAGS_$(ARCH)))
|
||||
|
||||
# LD = gcc-ld (ld) or llvm-ld (ld.lld) or other
|
||||
else
|
||||
-TF_LDFLAGS += --fatal-warnings -O1
|
||||
+# With ld.bfd version 2.39 and newer new warnings are added. Skip those since we
|
||||
+# are not loaded by a elf loader.
|
||||
+TF_LDFLAGS += $(call ld_option, --no-warn-rwx-segments)
|
||||
+TF_LDFLAGS += -O1
|
||||
TF_LDFLAGS += --gc-sections
|
||||
# ld.lld doesn't recognize the errata flags,
|
||||
# therefore don't add those in that case
|
||||
--
|
||||
2.30.2
|
||||
|
||||
-61
@@ -1,61 +0,0 @@
|
||||
From 0f75b03c008eacb9818af3a56dc088e72a623d17 Mon Sep 17 00:00:00 2001
|
||||
From: Marco Felsch <m.felsch@pengutronix.de>
|
||||
Date: Wed, 9 Nov 2022 12:59:09 +0100
|
||||
Subject: [PATCH] feat(build): add support for new binutils versions
|
||||
|
||||
Users of GNU ld (BPF) from binutils 2.39+ will observe multiple instaces
|
||||
of a new warning when linking the bl*.elf in the form:
|
||||
|
||||
ld.bfd: warning: stm32mp1_helper.o: missing .note.GNU-stack section implies executable stack
|
||||
ld.bfd: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
|
||||
ld.bfd: warning: bl2.elf has a LOAD segment with RWX permissions
|
||||
ld.bfd: warning: bl32.elf has a LOAD segment with RWX permissions
|
||||
|
||||
These new warnings are enbaled by default to secure elf binaries:
|
||||
- https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=ba951afb99912da01a6e8434126b8fac7aa75107
|
||||
- https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=0d38576a34ec64a1b4500c9277a8e9d0f07e6774
|
||||
|
||||
Fix it in a similar way to what the Linux kernel does, see:
|
||||
https://lore.kernel.org/all/20220810222442.2296651-1-ndesaulniers@google.com/
|
||||
|
||||
Following the reasoning there, we set "-z noexecstack" for all linkers
|
||||
(although LLVM's LLD defaults to it) and optional add
|
||||
--no-warn-rwx-segments since this a ld.bfd related.
|
||||
|
||||
Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
|
||||
Signed-off-by: Robert Schwebel <r.schwebel@pengutronix.de>
|
||||
Change-Id: I9430f5fa5036ca88da46cd3b945754d62616b617
|
||||
Signed-off-by: Heiko Thiery <heiko.thiery@gmail.com>
|
||||
Upstream: https://github.com/ARM-software/arm-trusted-firmware/commit/1f49db5f25cdd4e43825c9bcc0575070b80f628c
|
||||
---
|
||||
Makefile | 7 ++++++-
|
||||
1 file changed, 6 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 1ddb7b844..470956b19 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -416,6 +416,8 @@ endif
|
||||
|
||||
GCC_V_OUTPUT := $(shell $(CC) -v 2>&1)
|
||||
|
||||
+TF_LDFLAGS += -z noexecstack
|
||||
+
|
||||
# LD = armlink
|
||||
ifneq ($(findstring armlink,$(notdir $(LD))),)
|
||||
TF_LDFLAGS += --diag_error=warning --lto_level=O1
|
||||
@@ -442,7 +444,10 @@ TF_LDFLAGS += $(subst --,-Xlinker --,$(TF_LDFLAGS_$(ARCH)))
|
||||
|
||||
# LD = gcc-ld (ld) or llvm-ld (ld.lld) or other
|
||||
else
|
||||
-TF_LDFLAGS += --fatal-warnings -O1
|
||||
+# With ld.bfd version 2.39 and newer new warnings are added. Skip those since we
|
||||
+# are not loaded by a elf loader.
|
||||
+TF_LDFLAGS += $(call ld_option, --no-warn-rwx-segments)
|
||||
+TF_LDFLAGS += -O1
|
||||
TF_LDFLAGS += --gc-sections
|
||||
# ld.lld doesn't recognize the errata flags,
|
||||
# therefore don't add those in that case
|
||||
--
|
||||
2.30.2
|
||||
|
||||
@@ -32,14 +32,8 @@ endef
|
||||
AT91BOOTSTRAP_POST_PATCH_HOOKS += AT91BOOTSTRAP_APPLY_CUSTOM_PATCHES
|
||||
endif
|
||||
|
||||
# The at91bootstrap Makefile doesn't support customizing
|
||||
# CFLAGS/LDFLAGS, so we cheat and pass our custom flags through CC and
|
||||
# LD.
|
||||
define AT91BOOTSTRAP_BUILD_CMDS
|
||||
$(MAKE1) CROSS_COMPILE=$(TARGET_CROSS) \
|
||||
CC="$(TARGET_CC) -fno-stack-protector" \
|
||||
LD="$(TARGET_CC) -fno-PIE" \
|
||||
-C $(@D)/$(AT91BOOTSTRAP_MAKE_SUBDIR)
|
||||
$(MAKE1) CROSS_COMPILE=$(TARGET_CROSS) -C $(@D)/$(AT91BOOTSTRAP_MAKE_SUBDIR)
|
||||
endef
|
||||
|
||||
define AT91BOOTSTRAP_INSTALL_IMAGES_CMDS
|
||||
|
||||
@@ -11,14 +11,9 @@ AT91DATAFLASHBOOT_SITE = ftp://www.at91.com/pub/buildroot
|
||||
AT91DATAFLASHBOOT_INSTALL_TARGET = NO
|
||||
AT91DATAFLASHBOOT_INSTALL_IMAGES = YES
|
||||
|
||||
AT91DATAFLASHBOOT_CFLAGS = $(TARGET_CFLAGS) -fno-stack-protector
|
||||
ifeq ($(BR2_ARM_INSTRUCTIONS_THUMB),y)
|
||||
AT91DATAFLASHBOOT_CFLAGS += -marm
|
||||
endif
|
||||
|
||||
define AT91DATAFLASHBOOT_BUILD_CMDS
|
||||
make -C $(@D) CROSS_COMPILE=$(TARGET_CROSS) \
|
||||
CFLAGS="$(AT91DATAFLASHBOOT_CFLAGS)"
|
||||
CFLAGS="$(TARGET_CFLAGS) -fno-stack-protector"
|
||||
endef
|
||||
|
||||
define AT91DATAFLASHBOOT_INSTALL_IMAGES_CMDS
|
||||
|
||||
@@ -54,18 +54,6 @@ config BR2_TARGET_BAREBOX_CUSTOM_PATCH_DIR
|
||||
|
||||
Most users may leave this empty
|
||||
|
||||
config BR2_TARGET_BAREBOX_NEEDS_OPENSSL
|
||||
bool "Barebox needs OpenSSL"
|
||||
help
|
||||
Select this option if your Barebox board configuration
|
||||
requires OpenSSL to be available on the host.
|
||||
|
||||
config BR2_TARGET_BAREBOX_NEEDS_LIBUSB
|
||||
bool "Barebox needs LibUSB"
|
||||
help
|
||||
Select this option if your Barebox board configuration
|
||||
requires libUSB to be available on the host.
|
||||
|
||||
if BR2_TARGET_BAREBOX_CUSTOM_GIT
|
||||
|
||||
config BR2_TARGET_BAREBOX_CUSTOM_GIT_REPO_URL
|
||||
|
||||
@@ -43,14 +43,6 @@ ifeq ($(BR2_TARGET_BAREBOX_LATEST_VERSION),y)
|
||||
$(1)_LICENSE_FILES = COPYING
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_TARGET_BAREBOX_NEEDS_OPENSSL),y)
|
||||
BAREBOX_DEPENDENCIES += host-openssl host-pkgconf
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_TARGET_BAREBOX_NEEDS_LIBUSB),y)
|
||||
BAREBOX_DEPENDENCIES += host-libusb host-pkgconf
|
||||
endif
|
||||
|
||||
$(1)_CUSTOM_EMBEDDED_ENV_PATH = $$(call qstrip,$$(BR2_TARGET_$(1)_CUSTOM_EMBEDDED_ENV_PATH))
|
||||
|
||||
ifneq ($$(call qstrip,$$(BR2_TARGET_BAREBOX_CUSTOM_PATCH_DIR)),)
|
||||
@@ -81,12 +73,6 @@ endif
|
||||
|
||||
$(1)_MAKE_FLAGS = ARCH=$$($(1)_ARCH) CROSS_COMPILE="$$(TARGET_CROSS)"
|
||||
$(1)_MAKE_ENV = $$(TARGET_MAKE_ENV)
|
||||
$(1)_MAKE_ENV += \
|
||||
PKG_CONFIG="$(PKG_CONFIG_HOST_BINARY)" \
|
||||
PKG_CONFIG_SYSROOT_DIR="/" \
|
||||
PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 \
|
||||
PKG_CONFIG_ALLOW_SYSTEM_LIBS=1 \
|
||||
PKG_CONFIG_LIBDIR="$(HOST_DIR)/lib/pkgconfig:$(HOST_DIR)/share/pkgconfig"
|
||||
|
||||
ifeq ($$(BR2_REPRODUCIBLE),y)
|
||||
$(1)_MAKE_ENV += \
|
||||
|
||||
@@ -108,21 +108,6 @@ comment "QEMU SBSA depends on ATF not using EDK2 as BL33"
|
||||
|
||||
endchoice
|
||||
|
||||
config BR2_TARGET_EDK2_OVMF_DEBUG_ON_SERIAL
|
||||
bool "OVMF Debug on Serial"
|
||||
depends on BR2_ENABLE_DEBUG
|
||||
depends on BR2_TARGET_EDK2_PLATFORM_OVMF_I386 || \
|
||||
BR2_TARGET_EDK2_PLATFORM_OVMF_X64
|
||||
help
|
||||
When EDK2 OVMF is built with debug, messages are printed to
|
||||
IO port 0x402. Those messages are not shown in the normal
|
||||
Qemu emulated serial port. Enabling this option will print
|
||||
debug messages on the emulated serial port, potentially
|
||||
mixing messages with UEFI serial console output.
|
||||
|
||||
See OVMF README:
|
||||
https://github.com/tianocore/edk2/blob/master/OvmfPkg/README
|
||||
|
||||
config BR2_TARGET_EDK2_FD_NAME
|
||||
string
|
||||
default "OVMF" if BR2_TARGET_EDK2_PLATFORM_OVMF_I386
|
||||
|
||||
+1
-1
@@ -1,3 +1,3 @@
|
||||
# Locally calculated
|
||||
sha256 ca55351913e6258ebd8c08106f369ac71073d9cfaa80427fc5f131b06d808940 edk2-edk2-stable202305-br1.tar.gz
|
||||
sha256 c10520f269557d566e35fe8104141aa2865f9085ad2b3a30aae8a7e78a3ca5aa edk2-edk2-stable202208-br1.tar.gz
|
||||
sha256 50ce20c9cfdb0e19ee34fe0a51fc0afe961f743697b068359ab2f862b494df80 License.txt
|
||||
|
||||
+1
-8
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
EDK2_VERSION = edk2-stable202305
|
||||
EDK2_VERSION = edk2-stable202208
|
||||
EDK2_SITE = https://github.com/tianocore/edk2
|
||||
EDK2_SITE_METHOD = git
|
||||
EDK2_LICENSE = BSD-2-Clause-Patent
|
||||
@@ -16,15 +16,8 @@ EDK2_INSTALL_IMAGES = YES
|
||||
|
||||
ifeq ($(BR2_ENABLE_DEBUG),y)
|
||||
EDK2_BUILD_TYPE = DEBUG
|
||||
ifeq ($(BR2_TARGET_EDK2_OVMF_DEBUG_ON_SERIAL),y)
|
||||
# DEBUG_ON_SERIAL_PORT is only tested to be set, so don't disable it, as
|
||||
# it would still be set.
|
||||
EDK2_BUILD_OPTS += -DDEBUG_ON_SERIAL_PORT
|
||||
endif
|
||||
else
|
||||
EDK2_BUILD_TYPE = RELEASE
|
||||
# DEBUG_ON_SERIAL_PORT is only valid in debug builds, so useless to set
|
||||
# it (enabled or disabled) on a relase build.
|
||||
endif
|
||||
|
||||
# Build system notes.
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
From 4c1ad500e73d46c83dec369da85db39ae2fe62dd Mon Sep 17 00:00:00 2001
|
||||
From 8418defaf0902bdd8af188221ae54c5a3d6ad05d Mon Sep 17 00:00:00 2001
|
||||
From: Michael Chang <mchang@suse.com>
|
||||
Date: Fri, 3 Dec 2021 16:13:28 +0800
|
||||
Subject: [PATCH] grub-mkconfig: Restore umask for the grub.cfg
|
||||
@@ -17,7 +17,7 @@ Fixes: CVE-2021-3981
|
||||
|
||||
Signed-off-by: Michael Chang <mchang@suse.com>
|
||||
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
|
||||
Upstream: https://git.savannah.gnu.org/gitweb/?p=grub.git;a=commit;h=0adec29674561034771c13e446069b41ef41e4d4
|
||||
[Upstream: https://git.savannah.gnu.org/gitweb/?p=grub.git;a=commit;h=0adec29674561034771c13e446069b41ef41e4d4]
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
util/grub-mkconfig.in | 3 +++
|
||||
@@ -39,5 +39,5 @@ index f8cbb8d7a..84f356ea4 100644
|
||||
fi
|
||||
fi
|
||||
--
|
||||
2.41.0
|
||||
2.37.2
|
||||
|
||||
|
||||
@@ -1,126 +0,0 @@
|
||||
From dfdc742bdb22be468035f96cce0be5fee23b6df5 Mon Sep 17 00:00:00 2001
|
||||
From: Chris Coulson <chris.coulson@canonical.com>
|
||||
Date: Tue, 5 Apr 2022 10:02:04 +0100
|
||||
Subject: [PATCH] loader/efi/chainloader: Simplify the loader state
|
||||
|
||||
The chainloader command retains the source buffer and device path passed
|
||||
to LoadImage(), requiring the unload hook passed to grub_loader_set() to
|
||||
free them. It isn't required to retain this state though - they aren't
|
||||
required by StartImage() or anything else in the boot hook, so clean them
|
||||
up before grub_cmd_chainloader() finishes.
|
||||
|
||||
Signed-off-by: Chris Coulson <chris.coulson@canonical.com>
|
||||
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
|
||||
Upstream: 1469983ebb9674753ad333d37087fb8cb20e1dce
|
||||
[Thomas: needed to cherry-pick
|
||||
04c86e0bb7b58fc2f913f798cdb18934933e532d which fixes CVE-2022-28736]
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
grub-core/loader/efi/chainloader.c | 38 +++++++++++++++++-------------
|
||||
1 file changed, 21 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/grub-core/loader/efi/chainloader.c b/grub-core/loader/efi/chainloader.c
|
||||
index 2bd80f4db..d1602c89b 100644
|
||||
--- a/grub-core/loader/efi/chainloader.c
|
||||
+++ b/grub-core/loader/efi/chainloader.c
|
||||
@@ -44,25 +44,20 @@ GRUB_MOD_LICENSE ("GPLv3+");
|
||||
|
||||
static grub_dl_t my_mod;
|
||||
|
||||
-static grub_efi_physical_address_t address;
|
||||
-static grub_efi_uintn_t pages;
|
||||
-static grub_efi_device_path_t *file_path;
|
||||
static grub_efi_handle_t image_handle;
|
||||
-static grub_efi_char16_t *cmdline;
|
||||
|
||||
static grub_err_t
|
||||
grub_chainloader_unload (void)
|
||||
{
|
||||
+ grub_efi_loaded_image_t *loaded_image;
|
||||
grub_efi_boot_services_t *b;
|
||||
|
||||
+ loaded_image = grub_efi_get_loaded_image (image_handle);
|
||||
+ if (loaded_image != NULL)
|
||||
+ grub_free (loaded_image->load_options);
|
||||
+
|
||||
b = grub_efi_system_table->boot_services;
|
||||
efi_call_1 (b->unload_image, image_handle);
|
||||
- efi_call_2 (b->free_pages, address, pages);
|
||||
-
|
||||
- grub_free (file_path);
|
||||
- grub_free (cmdline);
|
||||
- cmdline = 0;
|
||||
- file_path = 0;
|
||||
|
||||
grub_dl_unref (my_mod);
|
||||
return GRUB_ERR_NONE;
|
||||
@@ -140,7 +135,7 @@ make_file_path (grub_efi_device_path_t *dp, const char *filename)
|
||||
char *dir_start;
|
||||
char *dir_end;
|
||||
grub_size_t size;
|
||||
- grub_efi_device_path_t *d;
|
||||
+ grub_efi_device_path_t *d, *file_path;
|
||||
|
||||
dir_start = grub_strchr (filename, ')');
|
||||
if (! dir_start)
|
||||
@@ -222,11 +217,14 @@ grub_cmd_chainloader (grub_command_t cmd __attribute__ ((unused)),
|
||||
grub_efi_status_t status;
|
||||
grub_efi_boot_services_t *b;
|
||||
grub_device_t dev = 0;
|
||||
- grub_efi_device_path_t *dp = 0;
|
||||
+ grub_efi_device_path_t *dp = NULL, *file_path = NULL;
|
||||
grub_efi_loaded_image_t *loaded_image;
|
||||
char *filename;
|
||||
void *boot_image = 0;
|
||||
grub_efi_handle_t dev_handle = 0;
|
||||
+ grub_efi_physical_address_t address = 0;
|
||||
+ grub_efi_uintn_t pages = 0;
|
||||
+ grub_efi_char16_t *cmdline = NULL;
|
||||
|
||||
if (argc == 0)
|
||||
return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected"));
|
||||
@@ -234,11 +232,6 @@ grub_cmd_chainloader (grub_command_t cmd __attribute__ ((unused)),
|
||||
|
||||
grub_dl_ref (my_mod);
|
||||
|
||||
- /* Initialize some global variables. */
|
||||
- address = 0;
|
||||
- image_handle = 0;
|
||||
- file_path = 0;
|
||||
-
|
||||
b = grub_efi_system_table->boot_services;
|
||||
|
||||
file = grub_file_open (filename, GRUB_FILE_TYPE_EFI_CHAINLOADED_IMAGE);
|
||||
@@ -408,6 +401,10 @@ grub_cmd_chainloader (grub_command_t cmd __attribute__ ((unused)),
|
||||
grub_file_close (file);
|
||||
grub_device_close (dev);
|
||||
|
||||
+ /* We're finished with the source image buffer and file path now. */
|
||||
+ efi_call_2 (b->free_pages, address, pages);
|
||||
+ grub_free (file_path);
|
||||
+
|
||||
grub_loader_set (grub_chainloader_boot, grub_chainloader_unload, 0);
|
||||
return 0;
|
||||
|
||||
@@ -419,11 +416,18 @@ grub_cmd_chainloader (grub_command_t cmd __attribute__ ((unused)),
|
||||
if (file)
|
||||
grub_file_close (file);
|
||||
|
||||
+ grub_free (cmdline);
|
||||
grub_free (file_path);
|
||||
|
||||
if (address)
|
||||
efi_call_2 (b->free_pages, address, pages);
|
||||
|
||||
+ if (image_handle != NULL)
|
||||
+ {
|
||||
+ efi_call_1 (b->unload_image, image_handle);
|
||||
+ image_handle = NULL;
|
||||
+ }
|
||||
+
|
||||
grub_dl_unref (my_mod);
|
||||
|
||||
return grub_errno;
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -1,165 +0,0 @@
|
||||
From 8b6336696d93b51703c2015eff3e2d8a02145e43 Mon Sep 17 00:00:00 2001
|
||||
From: Chris Coulson <chris.coulson@canonical.com>
|
||||
Date: Tue, 5 Apr 2022 10:58:28 +0100
|
||||
Subject: [PATCH] commands/boot: Add API to pass context to loader
|
||||
|
||||
Loaders rely on global variables for saving context which is consumed
|
||||
in the boot hook and freed in the unload hook. In the case where a loader
|
||||
command is executed twice, calling grub_loader_set() a second time executes
|
||||
the unload hook, but in some cases this runs when the loader's global
|
||||
context has already been updated, resulting in the updated context being
|
||||
freed and potential use-after-free bugs when the boot hook is subsequently
|
||||
called.
|
||||
|
||||
This adds a new API, grub_loader_set_ex(), which allows a loader to specify
|
||||
context that is passed to its boot and unload hooks. This is an alternative
|
||||
to requiring that loaders call grub_loader_unset() before mutating their
|
||||
global context.
|
||||
|
||||
Signed-off-by: Chris Coulson <chris.coulson@canonical.com>
|
||||
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
|
||||
Upstream: 14ceb3b3ff6db664649138442b6562c114dcf56e
|
||||
[Thomas: needed to backport 04c86e0bb7b58fc2f913f798cdb18934933e532d,
|
||||
which fixes CVE-2022-28736]
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
grub-core/commands/boot.c | 66 ++++++++++++++++++++++++++++++++++-----
|
||||
include/grub/loader.h | 5 +++
|
||||
2 files changed, 63 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/grub-core/commands/boot.c b/grub-core/commands/boot.c
|
||||
index bbca81e94..61514788e 100644
|
||||
--- a/grub-core/commands/boot.c
|
||||
+++ b/grub-core/commands/boot.c
|
||||
@@ -27,10 +27,20 @@
|
||||
|
||||
GRUB_MOD_LICENSE ("GPLv3+");
|
||||
|
||||
-static grub_err_t (*grub_loader_boot_func) (void);
|
||||
-static grub_err_t (*grub_loader_unload_func) (void);
|
||||
+static grub_err_t (*grub_loader_boot_func) (void *context);
|
||||
+static grub_err_t (*grub_loader_unload_func) (void *context);
|
||||
+static void *grub_loader_context;
|
||||
static int grub_loader_flags;
|
||||
|
||||
+struct grub_simple_loader_hooks
|
||||
+{
|
||||
+ grub_err_t (*boot) (void);
|
||||
+ grub_err_t (*unload) (void);
|
||||
+};
|
||||
+
|
||||
+/* Don't heap allocate this to avoid making grub_loader_set() fallible. */
|
||||
+static struct grub_simple_loader_hooks simple_loader_hooks;
|
||||
+
|
||||
struct grub_preboot
|
||||
{
|
||||
grub_err_t (*preboot_func) (int);
|
||||
@@ -44,6 +54,29 @@ static int grub_loader_loaded;
|
||||
static struct grub_preboot *preboots_head = 0,
|
||||
*preboots_tail = 0;
|
||||
|
||||
+static grub_err_t
|
||||
+grub_simple_boot_hook (void *context)
|
||||
+{
|
||||
+ struct grub_simple_loader_hooks *hooks;
|
||||
+
|
||||
+ hooks = (struct grub_simple_loader_hooks *) context;
|
||||
+ return hooks->boot ();
|
||||
+}
|
||||
+
|
||||
+static grub_err_t
|
||||
+grub_simple_unload_hook (void *context)
|
||||
+{
|
||||
+ struct grub_simple_loader_hooks *hooks;
|
||||
+ grub_err_t ret;
|
||||
+
|
||||
+ hooks = (struct grub_simple_loader_hooks *) context;
|
||||
+
|
||||
+ ret = hooks->unload ();
|
||||
+ grub_memset (hooks, 0, sizeof (*hooks));
|
||||
+
|
||||
+ return ret;
|
||||
+}
|
||||
+
|
||||
int
|
||||
grub_loader_is_loaded (void)
|
||||
{
|
||||
@@ -110,28 +143,45 @@ grub_loader_unregister_preboot_hook (struct grub_preboot *hnd)
|
||||
}
|
||||
|
||||
void
|
||||
-grub_loader_set (grub_err_t (*boot) (void),
|
||||
- grub_err_t (*unload) (void),
|
||||
- int flags)
|
||||
+grub_loader_set_ex (grub_err_t (*boot) (void *context),
|
||||
+ grub_err_t (*unload) (void *context),
|
||||
+ void *context,
|
||||
+ int flags)
|
||||
{
|
||||
if (grub_loader_loaded && grub_loader_unload_func)
|
||||
- grub_loader_unload_func ();
|
||||
+ grub_loader_unload_func (grub_loader_context);
|
||||
|
||||
grub_loader_boot_func = boot;
|
||||
grub_loader_unload_func = unload;
|
||||
+ grub_loader_context = context;
|
||||
grub_loader_flags = flags;
|
||||
|
||||
grub_loader_loaded = 1;
|
||||
}
|
||||
|
||||
+void
|
||||
+grub_loader_set (grub_err_t (*boot) (void),
|
||||
+ grub_err_t (*unload) (void),
|
||||
+ int flags)
|
||||
+{
|
||||
+ grub_loader_set_ex (grub_simple_boot_hook,
|
||||
+ grub_simple_unload_hook,
|
||||
+ &simple_loader_hooks,
|
||||
+ flags);
|
||||
+
|
||||
+ simple_loader_hooks.boot = boot;
|
||||
+ simple_loader_hooks.unload = unload;
|
||||
+}
|
||||
+
|
||||
void
|
||||
grub_loader_unset(void)
|
||||
{
|
||||
if (grub_loader_loaded && grub_loader_unload_func)
|
||||
- grub_loader_unload_func ();
|
||||
+ grub_loader_unload_func (grub_loader_context);
|
||||
|
||||
grub_loader_boot_func = 0;
|
||||
grub_loader_unload_func = 0;
|
||||
+ grub_loader_context = 0;
|
||||
|
||||
grub_loader_loaded = 0;
|
||||
}
|
||||
@@ -158,7 +208,7 @@ grub_loader_boot (void)
|
||||
return err;
|
||||
}
|
||||
}
|
||||
- err = (grub_loader_boot_func) ();
|
||||
+ err = (grub_loader_boot_func) (grub_loader_context);
|
||||
|
||||
for (cur = preboots_tail; cur; cur = cur->prev)
|
||||
if (! err)
|
||||
diff --git a/include/grub/loader.h b/include/grub/loader.h
|
||||
index b20864282..97f231054 100644
|
||||
--- a/include/grub/loader.h
|
||||
+++ b/include/grub/loader.h
|
||||
@@ -40,6 +40,11 @@ void EXPORT_FUNC (grub_loader_set) (grub_err_t (*boot) (void),
|
||||
grub_err_t (*unload) (void),
|
||||
int flags);
|
||||
|
||||
+void EXPORT_FUNC (grub_loader_set_ex) (grub_err_t (*boot) (void *context),
|
||||
+ grub_err_t (*unload) (void *context),
|
||||
+ void *context,
|
||||
+ int flags);
|
||||
+
|
||||
/* Unset current loader, if any. */
|
||||
void EXPORT_FUNC (grub_loader_unset) (void);
|
||||
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -1,80 +0,0 @@
|
||||
From 583fca49f413e00fe26f8ae7abe0837bbc574f79 Mon Sep 17 00:00:00 2001
|
||||
From: Chris Coulson <chris.coulson@canonical.com>
|
||||
Date: Tue, 5 Apr 2022 11:48:58 +0100
|
||||
Subject: [PATCH] loader/efi/chainloader: Use grub_loader_set_ex()
|
||||
|
||||
This ports the EFI chainloader to use grub_loader_set_ex() in order to fix
|
||||
a use-after-free bug that occurs when grub_cmd_chainloader() is executed
|
||||
more than once before a boot attempt is performed.
|
||||
|
||||
Fixes: CVE-2022-28736
|
||||
|
||||
Signed-off-by: Chris Coulson <chris.coulson@canonical.com>
|
||||
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
|
||||
Upstream: 04c86e0bb7b58fc2f913f798cdb18934933e532d
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
grub-core/loader/efi/chainloader.c | 16 +++++++---------
|
||||
1 file changed, 7 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/grub-core/loader/efi/chainloader.c b/grub-core/loader/efi/chainloader.c
|
||||
index d1602c89b..7557eb269 100644
|
||||
--- a/grub-core/loader/efi/chainloader.c
|
||||
+++ b/grub-core/loader/efi/chainloader.c
|
||||
@@ -44,11 +44,10 @@ GRUB_MOD_LICENSE ("GPLv3+");
|
||||
|
||||
static grub_dl_t my_mod;
|
||||
|
||||
-static grub_efi_handle_t image_handle;
|
||||
-
|
||||
static grub_err_t
|
||||
-grub_chainloader_unload (void)
|
||||
+grub_chainloader_unload (void *context)
|
||||
{
|
||||
+ grub_efi_handle_t image_handle = (grub_efi_handle_t) context;
|
||||
grub_efi_loaded_image_t *loaded_image;
|
||||
grub_efi_boot_services_t *b;
|
||||
|
||||
@@ -64,8 +63,9 @@ grub_chainloader_unload (void)
|
||||
}
|
||||
|
||||
static grub_err_t
|
||||
-grub_chainloader_boot (void)
|
||||
+grub_chainloader_boot (void *context)
|
||||
{
|
||||
+ grub_efi_handle_t image_handle = (grub_efi_handle_t) context;
|
||||
grub_efi_boot_services_t *b;
|
||||
grub_efi_status_t status;
|
||||
grub_efi_uintn_t exit_data_size;
|
||||
@@ -225,6 +225,7 @@ grub_cmd_chainloader (grub_command_t cmd __attribute__ ((unused)),
|
||||
grub_efi_physical_address_t address = 0;
|
||||
grub_efi_uintn_t pages = 0;
|
||||
grub_efi_char16_t *cmdline = NULL;
|
||||
+ grub_efi_handle_t image_handle = NULL;
|
||||
|
||||
if (argc == 0)
|
||||
return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("filename expected"));
|
||||
@@ -405,7 +406,7 @@ grub_cmd_chainloader (grub_command_t cmd __attribute__ ((unused)),
|
||||
efi_call_2 (b->free_pages, address, pages);
|
||||
grub_free (file_path);
|
||||
|
||||
- grub_loader_set (grub_chainloader_boot, grub_chainloader_unload, 0);
|
||||
+ grub_loader_set_ex (grub_chainloader_boot, grub_chainloader_unload, image_handle, 0);
|
||||
return 0;
|
||||
|
||||
fail:
|
||||
@@ -423,10 +424,7 @@ grub_cmd_chainloader (grub_command_t cmd __attribute__ ((unused)),
|
||||
efi_call_2 (b->free_pages, address, pages);
|
||||
|
||||
if (image_handle != NULL)
|
||||
- {
|
||||
- efi_call_1 (b->unload_image, image_handle);
|
||||
- image_handle = NULL;
|
||||
- }
|
||||
+ efi_call_1 (b->unload_image, image_handle);
|
||||
|
||||
grub_dl_unref (my_mod);
|
||||
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -1,105 +0,0 @@
|
||||
From 1e1b1271b7a7c6ac20a4c5f8e0dc29614b4975d1 Mon Sep 17 00:00:00 2001
|
||||
From: Julian Andres Klode <julian.klode@canonical.com>
|
||||
Date: Thu, 2 Dec 2021 15:03:53 +0100
|
||||
Subject: [PATCH] kern/efi/sb: Reject non-kernel files in the shim_lock
|
||||
verifier
|
||||
|
||||
We must not allow other verifiers to pass things like the GRUB modules.
|
||||
Instead of maintaining a blocklist, maintain an allowlist of things
|
||||
that we do not care about.
|
||||
|
||||
This allowlist really should be made reusable, and shared by the
|
||||
lockdown verifier, but this is the minimal patch addressing
|
||||
security concerns where the TPM verifier was able to mark modules
|
||||
as verified (or the OpenPGP verifier for that matter), when it
|
||||
should not do so on shim-powered secure boot systems.
|
||||
|
||||
Fixes: CVE-2022-28735
|
||||
|
||||
Signed-off-by: Julian Andres Klode <julian.klode@canonical.com>
|
||||
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
|
||||
Upstream: 6fe755c5c07bb386fda58306bfd19e4a1c974c53
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
grub-core/kern/efi/sb.c | 39 ++++++++++++++++++++++++++++++++++++---
|
||||
include/grub/verify.h | 1 +
|
||||
2 files changed, 37 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/grub-core/kern/efi/sb.c b/grub-core/kern/efi/sb.c
|
||||
index c52ec6226..89c4bb3fd 100644
|
||||
--- a/grub-core/kern/efi/sb.c
|
||||
+++ b/grub-core/kern/efi/sb.c
|
||||
@@ -119,10 +119,11 @@ shim_lock_verifier_init (grub_file_t io __attribute__ ((unused)),
|
||||
void **context __attribute__ ((unused)),
|
||||
enum grub_verify_flags *flags)
|
||||
{
|
||||
- *flags = GRUB_VERIFY_FLAGS_SKIP_VERIFICATION;
|
||||
+ *flags = GRUB_VERIFY_FLAGS_NONE;
|
||||
|
||||
switch (type & GRUB_FILE_TYPE_MASK)
|
||||
{
|
||||
+ /* Files we check. */
|
||||
case GRUB_FILE_TYPE_LINUX_KERNEL:
|
||||
case GRUB_FILE_TYPE_MULTIBOOT_KERNEL:
|
||||
case GRUB_FILE_TYPE_BSD_KERNEL:
|
||||
@@ -130,11 +131,43 @@ shim_lock_verifier_init (grub_file_t io __attribute__ ((unused)),
|
||||
case GRUB_FILE_TYPE_PLAN9_KERNEL:
|
||||
case GRUB_FILE_TYPE_EFI_CHAINLOADED_IMAGE:
|
||||
*flags = GRUB_VERIFY_FLAGS_SINGLE_CHUNK;
|
||||
+ return GRUB_ERR_NONE;
|
||||
|
||||
- /* Fall through. */
|
||||
+ /* Files that do not affect secureboot state. */
|
||||
+ case GRUB_FILE_TYPE_NONE:
|
||||
+ case GRUB_FILE_TYPE_LOOPBACK:
|
||||
+ case GRUB_FILE_TYPE_LINUX_INITRD:
|
||||
+ case GRUB_FILE_TYPE_OPENBSD_RAMDISK:
|
||||
+ case GRUB_FILE_TYPE_XNU_RAMDISK:
|
||||
+ case GRUB_FILE_TYPE_SIGNATURE:
|
||||
+ case GRUB_FILE_TYPE_PUBLIC_KEY:
|
||||
+ case GRUB_FILE_TYPE_PUBLIC_KEY_TRUST:
|
||||
+ case GRUB_FILE_TYPE_PRINT_BLOCKLIST:
|
||||
+ case GRUB_FILE_TYPE_TESTLOAD:
|
||||
+ case GRUB_FILE_TYPE_GET_SIZE:
|
||||
+ case GRUB_FILE_TYPE_FONT:
|
||||
+ case GRUB_FILE_TYPE_ZFS_ENCRYPTION_KEY:
|
||||
+ case GRUB_FILE_TYPE_CAT:
|
||||
+ case GRUB_FILE_TYPE_HEXCAT:
|
||||
+ case GRUB_FILE_TYPE_CMP:
|
||||
+ case GRUB_FILE_TYPE_HASHLIST:
|
||||
+ case GRUB_FILE_TYPE_TO_HASH:
|
||||
+ case GRUB_FILE_TYPE_KEYBOARD_LAYOUT:
|
||||
+ case GRUB_FILE_TYPE_PIXMAP:
|
||||
+ case GRUB_FILE_TYPE_GRUB_MODULE_LIST:
|
||||
+ case GRUB_FILE_TYPE_CONFIG:
|
||||
+ case GRUB_FILE_TYPE_THEME:
|
||||
+ case GRUB_FILE_TYPE_GETTEXT_CATALOG:
|
||||
+ case GRUB_FILE_TYPE_FS_SEARCH:
|
||||
+ case GRUB_FILE_TYPE_LOADENV:
|
||||
+ case GRUB_FILE_TYPE_SAVEENV:
|
||||
+ case GRUB_FILE_TYPE_VERIFY_SIGNATURE:
|
||||
+ *flags = GRUB_VERIFY_FLAGS_SKIP_VERIFICATION;
|
||||
+ return GRUB_ERR_NONE;
|
||||
|
||||
+ /* Other files. */
|
||||
default:
|
||||
- return GRUB_ERR_NONE;
|
||||
+ return grub_error (GRUB_ERR_ACCESS_DENIED, N_("prohibited by secure boot policy"));
|
||||
}
|
||||
}
|
||||
|
||||
diff --git a/include/grub/verify.h b/include/grub/verify.h
|
||||
index cd129c398..672ae1692 100644
|
||||
--- a/include/grub/verify.h
|
||||
+++ b/include/grub/verify.h
|
||||
@@ -24,6 +24,7 @@
|
||||
|
||||
enum grub_verify_flags
|
||||
{
|
||||
+ GRUB_VERIFY_FLAGS_NONE = 0,
|
||||
GRUB_VERIFY_FLAGS_SKIP_VERIFICATION = 1,
|
||||
GRUB_VERIFY_FLAGS_SINGLE_CHUNK = 2,
|
||||
/* Defer verification to another authority. */
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -1,689 +0,0 @@
|
||||
From 1faa412c502c7c4ca1230fc152be30b88847fdd2 Mon Sep 17 00:00:00 2001
|
||||
From: Elyes Haouas <ehaouas@noos.fr>
|
||||
Date: Fri, 4 Mar 2022 07:42:13 +0100
|
||||
Subject: [PATCH] video: Remove trailing whitespaces
|
||||
|
||||
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
|
||||
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
|
||||
Upstream: 1f48917d8ddb490dcdc70176e0f58136b7f7811a
|
||||
[Thomas: needed to backport patches fixing CVEs in the video code]
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
grub-core/video/bochs.c | 2 +-
|
||||
grub-core/video/capture.c | 2 +-
|
||||
grub-core/video/cirrus.c | 4 ++--
|
||||
grub-core/video/coreboot/cbfb.c | 2 +-
|
||||
grub-core/video/efi_gop.c | 22 +++++++++----------
|
||||
grub-core/video/fb/fbblit.c | 8 +++----
|
||||
grub-core/video/fb/video_fb.c | 10 ++++-----
|
||||
grub-core/video/i386/pc/vbe.c | 34 ++++++++++++++---------------
|
||||
grub-core/video/i386/pc/vga.c | 6 ++---
|
||||
grub-core/video/ieee1275.c | 4 ++--
|
||||
grub-core/video/radeon_fuloong2e.c | 6 ++---
|
||||
grub-core/video/radeon_yeeloong3a.c | 6 ++---
|
||||
grub-core/video/readers/png.c | 2 +-
|
||||
grub-core/video/readers/tga.c | 2 +-
|
||||
grub-core/video/sis315_init.c | 2 +-
|
||||
grub-core/video/sis315pro.c | 8 +++----
|
||||
grub-core/video/sm712.c | 10 ++++-----
|
||||
grub-core/video/video.c | 8 +++----
|
||||
18 files changed, 69 insertions(+), 69 deletions(-)
|
||||
|
||||
diff --git a/grub-core/video/bochs.c b/grub-core/video/bochs.c
|
||||
index 30ea1bd82..edc651697 100644
|
||||
--- a/grub-core/video/bochs.c
|
||||
+++ b/grub-core/video/bochs.c
|
||||
@@ -212,7 +212,7 @@ find_card (grub_pci_device_t dev, grub_pci_id_t pciid, void *data)
|
||||
|
||||
if (((class >> 16) & 0xffff) != 0x0300 || pciid != 0x11111234)
|
||||
return 0;
|
||||
-
|
||||
+
|
||||
addr = grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESS_REG0);
|
||||
framebuffer.base = grub_pci_read (addr) & GRUB_PCI_ADDR_MEM_MASK;
|
||||
if (!framebuffer.base)
|
||||
diff --git a/grub-core/video/capture.c b/grub-core/video/capture.c
|
||||
index 4d3195e01..c653d89f9 100644
|
||||
--- a/grub-core/video/capture.c
|
||||
+++ b/grub-core/video/capture.c
|
||||
@@ -92,7 +92,7 @@ grub_video_capture_start (const struct grub_video_mode_info *mode_info,
|
||||
framebuffer.ptr = grub_calloc (framebuffer.mode_info.height, framebuffer.mode_info.pitch);
|
||||
if (!framebuffer.ptr)
|
||||
return grub_errno;
|
||||
-
|
||||
+
|
||||
err = grub_video_fb_create_render_target_from_pointer (&framebuffer.render_target,
|
||||
&framebuffer.mode_info,
|
||||
framebuffer.ptr);
|
||||
diff --git a/grub-core/video/cirrus.c b/grub-core/video/cirrus.c
|
||||
index e2149e8ce..f5542ccdc 100644
|
||||
--- a/grub-core/video/cirrus.c
|
||||
+++ b/grub-core/video/cirrus.c
|
||||
@@ -354,11 +354,11 @@ grub_video_cirrus_setup (unsigned int width, unsigned int height,
|
||||
grub_uint8_t sr_ext = 0, hidden_dac = 0;
|
||||
|
||||
grub_vga_set_geometry (&config, grub_vga_cr_write);
|
||||
-
|
||||
+
|
||||
grub_vga_gr_write (GRUB_VGA_GR_MODE_256_COLOR | GRUB_VGA_GR_MODE_READ_MODE1,
|
||||
GRUB_VGA_GR_MODE);
|
||||
grub_vga_gr_write (GRUB_VGA_GR_GR6_GRAPHICS_MODE, GRUB_VGA_GR_GR6);
|
||||
-
|
||||
+
|
||||
grub_vga_sr_write (GRUB_VGA_SR_MEMORY_MODE_NORMAL, GRUB_VGA_SR_MEMORY_MODE);
|
||||
|
||||
grub_vga_cr_write ((config.pitch >> CIRRUS_CR_EXTENDED_DISPLAY_PITCH_SHIFT)
|
||||
diff --git a/grub-core/video/coreboot/cbfb.c b/grub-core/video/coreboot/cbfb.c
|
||||
index 9af81fa5b..986003c51 100644
|
||||
--- a/grub-core/video/coreboot/cbfb.c
|
||||
+++ b/grub-core/video/coreboot/cbfb.c
|
||||
@@ -106,7 +106,7 @@ grub_video_cbfb_setup (unsigned int width, unsigned int height,
|
||||
|
||||
grub_video_fb_set_palette (0, GRUB_VIDEO_FBSTD_NUMCOLORS,
|
||||
grub_video_fbstd_colors);
|
||||
-
|
||||
+
|
||||
return err;
|
||||
}
|
||||
|
||||
diff --git a/grub-core/video/efi_gop.c b/grub-core/video/efi_gop.c
|
||||
index b7590dc6c..7a5054631 100644
|
||||
--- a/grub-core/video/efi_gop.c
|
||||
+++ b/grub-core/video/efi_gop.c
|
||||
@@ -273,7 +273,7 @@ grub_video_gop_iterate (int (*hook) (const struct grub_video_mode_info *info, vo
|
||||
grub_efi_status_t status;
|
||||
struct grub_efi_gop_mode_info *info = NULL;
|
||||
struct grub_video_mode_info mode_info;
|
||||
-
|
||||
+
|
||||
status = efi_call_4 (gop->query_mode, gop, mode, &size, &info);
|
||||
|
||||
if (status)
|
||||
@@ -390,7 +390,7 @@ grub_video_gop_setup (unsigned int width, unsigned int height,
|
||||
found = 1;
|
||||
}
|
||||
}
|
||||
-
|
||||
+
|
||||
if (!found)
|
||||
{
|
||||
unsigned mode;
|
||||
@@ -399,7 +399,7 @@ grub_video_gop_setup (unsigned int width, unsigned int height,
|
||||
{
|
||||
grub_efi_uintn_t size;
|
||||
grub_efi_status_t status;
|
||||
-
|
||||
+
|
||||
status = efi_call_4 (gop->query_mode, gop, mode, &size, &info);
|
||||
if (status)
|
||||
{
|
||||
@@ -472,11 +472,11 @@ grub_video_gop_setup (unsigned int width, unsigned int height,
|
||||
framebuffer.ptr = (void *) (grub_addr_t) gop->mode->fb_base;
|
||||
framebuffer.offscreen
|
||||
= grub_malloc (framebuffer.mode_info.height
|
||||
- * framebuffer.mode_info.width
|
||||
+ * framebuffer.mode_info.width
|
||||
* sizeof (struct grub_efi_gop_blt_pixel));
|
||||
|
||||
buffer = framebuffer.offscreen;
|
||||
-
|
||||
+
|
||||
if (!buffer)
|
||||
{
|
||||
grub_dprintf ("video", "GOP: couldn't allocate shadow\n");
|
||||
@@ -485,11 +485,11 @@ grub_video_gop_setup (unsigned int width, unsigned int height,
|
||||
&framebuffer.mode_info);
|
||||
buffer = framebuffer.ptr;
|
||||
}
|
||||
-
|
||||
+
|
||||
grub_dprintf ("video", "GOP: initialising FB @ %p %dx%dx%d\n",
|
||||
framebuffer.ptr, framebuffer.mode_info.width,
|
||||
framebuffer.mode_info.height, framebuffer.mode_info.bpp);
|
||||
-
|
||||
+
|
||||
err = grub_video_fb_create_render_target_from_pointer
|
||||
(&framebuffer.render_target, &framebuffer.mode_info, buffer);
|
||||
|
||||
@@ -498,15 +498,15 @@ grub_video_gop_setup (unsigned int width, unsigned int height,
|
||||
grub_dprintf ("video", "GOP: Couldn't create FB target\n");
|
||||
return err;
|
||||
}
|
||||
-
|
||||
+
|
||||
err = grub_video_fb_set_active_render_target (framebuffer.render_target);
|
||||
-
|
||||
+
|
||||
if (err)
|
||||
{
|
||||
grub_dprintf ("video", "GOP: Couldn't set FB target\n");
|
||||
return err;
|
||||
}
|
||||
-
|
||||
+
|
||||
err = grub_video_fb_set_palette (0, GRUB_VIDEO_FBSTD_NUMCOLORS,
|
||||
grub_video_fbstd_colors);
|
||||
|
||||
@@ -514,7 +514,7 @@ grub_video_gop_setup (unsigned int width, unsigned int height,
|
||||
grub_dprintf ("video", "GOP: Couldn't set palette\n");
|
||||
else
|
||||
grub_dprintf ("video", "GOP: Success\n");
|
||||
-
|
||||
+
|
||||
return err;
|
||||
}
|
||||
|
||||
diff --git a/grub-core/video/fb/fbblit.c b/grub-core/video/fb/fbblit.c
|
||||
index d55924837..1010ef393 100644
|
||||
--- a/grub-core/video/fb/fbblit.c
|
||||
+++ b/grub-core/video/fb/fbblit.c
|
||||
@@ -466,7 +466,7 @@ grub_video_fbblit_replace_24bit_indexa (struct grub_video_fbblit_info *dst,
|
||||
for (i = 0; i < width; i++)
|
||||
{
|
||||
register grub_uint32_t col;
|
||||
- if (*srcptr == 0xf0)
|
||||
+ if (*srcptr == 0xf0)
|
||||
col = palette[16];
|
||||
else
|
||||
col = palette[*srcptr & 0xf];
|
||||
@@ -478,7 +478,7 @@ grub_video_fbblit_replace_24bit_indexa (struct grub_video_fbblit_info *dst,
|
||||
*dstptr++ = col >> 0;
|
||||
*dstptr++ = col >> 8;
|
||||
*dstptr++ = col >> 16;
|
||||
-#endif
|
||||
+#endif
|
||||
srcptr++;
|
||||
}
|
||||
|
||||
@@ -651,7 +651,7 @@ grub_video_fbblit_blend_24bit_indexa (struct grub_video_fbblit_info *dst,
|
||||
for (i = 0; i < width; i++)
|
||||
{
|
||||
register grub_uint32_t col;
|
||||
- if (*srcptr != 0xf0)
|
||||
+ if (*srcptr != 0xf0)
|
||||
{
|
||||
col = palette[*srcptr & 0xf];
|
||||
#ifdef GRUB_CPU_WORDS_BIGENDIAN
|
||||
@@ -662,7 +662,7 @@ grub_video_fbblit_blend_24bit_indexa (struct grub_video_fbblit_info *dst,
|
||||
*dstptr++ = col >> 0;
|
||||
*dstptr++ = col >> 8;
|
||||
*dstptr++ = col >> 16;
|
||||
-#endif
|
||||
+#endif
|
||||
}
|
||||
else
|
||||
dstptr += 3;
|
||||
diff --git a/grub-core/video/fb/video_fb.c b/grub-core/video/fb/video_fb.c
|
||||
index ae6b89f9a..fa4ebde26 100644
|
||||
--- a/grub-core/video/fb/video_fb.c
|
||||
+++ b/grub-core/video/fb/video_fb.c
|
||||
@@ -754,7 +754,7 @@ grub_video_fb_unmap_color_int (struct grub_video_fbblit_info * source,
|
||||
*alpha = 0;
|
||||
return;
|
||||
}
|
||||
-
|
||||
+
|
||||
/* If we have an out-of-bounds color, return transparent black. */
|
||||
if (color > 255)
|
||||
{
|
||||
@@ -1141,7 +1141,7 @@ grub_video_fb_scroll (grub_video_color_t color, int dx, int dy)
|
||||
/* If everything is aligned on 32-bit use 32-bit copy. */
|
||||
if ((grub_addr_t) grub_video_fb_get_video_ptr (&target, src_x, src_y)
|
||||
% sizeof (grub_uint32_t) == 0
|
||||
- && (grub_addr_t) grub_video_fb_get_video_ptr (&target, dst_x, dst_y)
|
||||
+ && (grub_addr_t) grub_video_fb_get_video_ptr (&target, dst_x, dst_y)
|
||||
% sizeof (grub_uint32_t) == 0
|
||||
&& linelen % sizeof (grub_uint32_t) == 0
|
||||
&& linedelta % sizeof (grub_uint32_t) == 0)
|
||||
@@ -1155,7 +1155,7 @@ grub_video_fb_scroll (grub_video_color_t color, int dx, int dy)
|
||||
else if ((grub_addr_t) grub_video_fb_get_video_ptr (&target, src_x, src_y)
|
||||
% sizeof (grub_uint16_t) == 0
|
||||
&& (grub_addr_t) grub_video_fb_get_video_ptr (&target,
|
||||
- dst_x, dst_y)
|
||||
+ dst_x, dst_y)
|
||||
% sizeof (grub_uint16_t) == 0
|
||||
&& linelen % sizeof (grub_uint16_t) == 0
|
||||
&& linedelta % sizeof (grub_uint16_t) == 0)
|
||||
@@ -1170,7 +1170,7 @@ grub_video_fb_scroll (grub_video_color_t color, int dx, int dy)
|
||||
{
|
||||
grub_uint8_t *src, *dst;
|
||||
DO_SCROLL
|
||||
- }
|
||||
+ }
|
||||
}
|
||||
|
||||
/* 4. Fill empty space with specified color. In this implementation
|
||||
@@ -1615,7 +1615,7 @@ grub_video_fb_setup (unsigned int mode_type, unsigned int mode_mask,
|
||||
framebuffer.render_target = framebuffer.back_target;
|
||||
return GRUB_ERR_NONE;
|
||||
}
|
||||
-
|
||||
+
|
||||
mode_info->mode_type &= ~(GRUB_VIDEO_MODE_TYPE_DOUBLE_BUFFERED
|
||||
| GRUB_VIDEO_MODE_TYPE_UPDATING_SWAP);
|
||||
|
||||
diff --git a/grub-core/video/i386/pc/vbe.c b/grub-core/video/i386/pc/vbe.c
|
||||
index b7f911926..0e65b5206 100644
|
||||
--- a/grub-core/video/i386/pc/vbe.c
|
||||
+++ b/grub-core/video/i386/pc/vbe.c
|
||||
@@ -219,7 +219,7 @@ grub_vbe_disable_mtrr (int mtrr)
|
||||
}
|
||||
|
||||
/* Call VESA BIOS 0x4f09 to set palette data, return status. */
|
||||
-static grub_vbe_status_t
|
||||
+static grub_vbe_status_t
|
||||
grub_vbe_bios_set_palette_data (grub_uint32_t color_count,
|
||||
grub_uint32_t start_index,
|
||||
struct grub_vbe_palette_data *palette_data)
|
||||
@@ -237,7 +237,7 @@ grub_vbe_bios_set_palette_data (grub_uint32_t color_count,
|
||||
}
|
||||
|
||||
/* Call VESA BIOS 0x4f00 to get VBE Controller Information, return status. */
|
||||
-grub_vbe_status_t
|
||||
+grub_vbe_status_t
|
||||
grub_vbe_bios_get_controller_info (struct grub_vbe_info_block *ci)
|
||||
{
|
||||
struct grub_bios_int_registers regs;
|
||||
@@ -251,7 +251,7 @@ grub_vbe_bios_get_controller_info (struct grub_vbe_info_block *ci)
|
||||
}
|
||||
|
||||
/* Call VESA BIOS 0x4f01 to get VBE Mode Information, return status. */
|
||||
-grub_vbe_status_t
|
||||
+grub_vbe_status_t
|
||||
grub_vbe_bios_get_mode_info (grub_uint32_t mode,
|
||||
struct grub_vbe_mode_info_block *mode_info)
|
||||
{
|
||||
@@ -285,7 +285,7 @@ grub_vbe_bios_set_mode (grub_uint32_t mode,
|
||||
}
|
||||
|
||||
/* Call VESA BIOS 0x4f03 to return current VBE Mode, return status. */
|
||||
-grub_vbe_status_t
|
||||
+grub_vbe_status_t
|
||||
grub_vbe_bios_get_mode (grub_uint32_t *mode)
|
||||
{
|
||||
struct grub_bios_int_registers regs;
|
||||
@@ -298,7 +298,7 @@ grub_vbe_bios_get_mode (grub_uint32_t *mode)
|
||||
return regs.eax & 0xffff;
|
||||
}
|
||||
|
||||
-grub_vbe_status_t
|
||||
+grub_vbe_status_t
|
||||
grub_vbe_bios_getset_dac_palette_width (int set, int *dac_mask_size)
|
||||
{
|
||||
struct grub_bios_int_registers regs;
|
||||
@@ -346,7 +346,7 @@ grub_vbe_bios_get_memory_window (grub_uint32_t window,
|
||||
}
|
||||
|
||||
/* Call VESA BIOS 0x4f06 to set scanline length (in bytes), return status. */
|
||||
-grub_vbe_status_t
|
||||
+grub_vbe_status_t
|
||||
grub_vbe_bios_set_scanline_length (grub_uint32_t length)
|
||||
{
|
||||
struct grub_bios_int_registers regs;
|
||||
@@ -354,14 +354,14 @@ grub_vbe_bios_set_scanline_length (grub_uint32_t length)
|
||||
regs.ecx = length;
|
||||
regs.eax = 0x4f06;
|
||||
/* BL = 2, Set Scan Line in Bytes. */
|
||||
- regs.ebx = 0x0002;
|
||||
+ regs.ebx = 0x0002;
|
||||
regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT;
|
||||
grub_bios_interrupt (0x10, ®s);
|
||||
return regs.eax & 0xffff;
|
||||
}
|
||||
|
||||
/* Call VESA BIOS 0x4f06 to return scanline length (in bytes), return status. */
|
||||
-grub_vbe_status_t
|
||||
+grub_vbe_status_t
|
||||
grub_vbe_bios_get_scanline_length (grub_uint32_t *length)
|
||||
{
|
||||
struct grub_bios_int_registers regs;
|
||||
@@ -377,7 +377,7 @@ grub_vbe_bios_get_scanline_length (grub_uint32_t *length)
|
||||
}
|
||||
|
||||
/* Call VESA BIOS 0x4f07 to set display start, return status. */
|
||||
-static grub_vbe_status_t
|
||||
+static grub_vbe_status_t
|
||||
grub_vbe_bios_set_display_start (grub_uint32_t x, grub_uint32_t y)
|
||||
{
|
||||
struct grub_bios_int_registers regs;
|
||||
@@ -390,7 +390,7 @@ grub_vbe_bios_set_display_start (grub_uint32_t x, grub_uint32_t y)
|
||||
regs.edx = y;
|
||||
regs.eax = 0x4f07;
|
||||
/* BL = 80h, Set Display Start during Vertical Retrace. */
|
||||
- regs.ebx = 0x0080;
|
||||
+ regs.ebx = 0x0080;
|
||||
regs.flags = GRUB_CPU_INT_FLAGS_DEFAULT;
|
||||
grub_bios_interrupt (0x10, ®s);
|
||||
|
||||
@@ -401,7 +401,7 @@ grub_vbe_bios_set_display_start (grub_uint32_t x, grub_uint32_t y)
|
||||
}
|
||||
|
||||
/* Call VESA BIOS 0x4f07 to get display start, return status. */
|
||||
-grub_vbe_status_t
|
||||
+grub_vbe_status_t
|
||||
grub_vbe_bios_get_display_start (grub_uint32_t *x,
|
||||
grub_uint32_t *y)
|
||||
{
|
||||
@@ -419,7 +419,7 @@ grub_vbe_bios_get_display_start (grub_uint32_t *x,
|
||||
}
|
||||
|
||||
/* Call VESA BIOS 0x4f0a. */
|
||||
-grub_vbe_status_t
|
||||
+grub_vbe_status_t
|
||||
grub_vbe_bios_get_pm_interface (grub_uint16_t *segment, grub_uint16_t *offset,
|
||||
grub_uint16_t *length)
|
||||
{
|
||||
@@ -896,7 +896,7 @@ vbe2videoinfo (grub_uint32_t mode,
|
||||
case GRUB_VBE_MEMORY_MODEL_YUV:
|
||||
mode_info->mode_type |= GRUB_VIDEO_MODE_TYPE_YUV;
|
||||
break;
|
||||
-
|
||||
+
|
||||
case GRUB_VBE_MEMORY_MODEL_DIRECT_COLOR:
|
||||
mode_info->mode_type |= GRUB_VIDEO_MODE_TYPE_RGB;
|
||||
break;
|
||||
@@ -923,10 +923,10 @@ vbe2videoinfo (grub_uint32_t mode,
|
||||
break;
|
||||
case 8:
|
||||
mode_info->bytes_per_pixel = 1;
|
||||
- break;
|
||||
+ break;
|
||||
case 4:
|
||||
mode_info->bytes_per_pixel = 0;
|
||||
- break;
|
||||
+ break;
|
||||
}
|
||||
|
||||
if (controller_info.version >= 0x300)
|
||||
@@ -976,7 +976,7 @@ grub_video_vbe_iterate (int (*hook) (const struct grub_video_mode_info *info, vo
|
||||
|
||||
static grub_err_t
|
||||
grub_video_vbe_setup (unsigned int width, unsigned int height,
|
||||
- grub_video_mode_type_t mode_type,
|
||||
+ grub_video_mode_type_t mode_type,
|
||||
grub_video_mode_type_t mode_mask)
|
||||
{
|
||||
grub_uint16_t *p;
|
||||
@@ -1193,7 +1193,7 @@ grub_video_vbe_print_adapter_specific_info (void)
|
||||
controller_info.version & 0xFF,
|
||||
controller_info.oem_software_rev >> 8,
|
||||
controller_info.oem_software_rev & 0xFF);
|
||||
-
|
||||
+
|
||||
/* The total_memory field is in 64 KiB units. */
|
||||
grub_printf_ (N_(" total memory: %d KiB\n"),
|
||||
(controller_info.total_memory << 6));
|
||||
diff --git a/grub-core/video/i386/pc/vga.c b/grub-core/video/i386/pc/vga.c
|
||||
index b2f776c99..50d0b5e02 100644
|
||||
--- a/grub-core/video/i386/pc/vga.c
|
||||
+++ b/grub-core/video/i386/pc/vga.c
|
||||
@@ -48,7 +48,7 @@ static struct
|
||||
int back_page;
|
||||
} framebuffer;
|
||||
|
||||
-static unsigned char
|
||||
+static unsigned char
|
||||
grub_vga_set_mode (unsigned char mode)
|
||||
{
|
||||
struct grub_bios_int_registers regs;
|
||||
@@ -182,10 +182,10 @@ grub_video_vga_setup (unsigned int width, unsigned int height,
|
||||
|
||||
is_target = 1;
|
||||
err = grub_video_fb_set_active_render_target (framebuffer.render_target);
|
||||
-
|
||||
+
|
||||
if (err)
|
||||
return err;
|
||||
-
|
||||
+
|
||||
err = grub_video_fb_set_palette (0, GRUB_VIDEO_FBSTD_NUMCOLORS,
|
||||
grub_video_fbstd_colors);
|
||||
|
||||
diff --git a/grub-core/video/ieee1275.c b/grub-core/video/ieee1275.c
|
||||
index 17a3dbbb5..f8cf94d96 100644
|
||||
--- a/grub-core/video/ieee1275.c
|
||||
+++ b/grub-core/video/ieee1275.c
|
||||
@@ -234,7 +234,7 @@ grub_video_ieee1275_setup (unsigned int width, unsigned int height,
|
||||
/* TODO. */
|
||||
return grub_error (GRUB_ERR_IO, "can't set mode %dx%d", width, height);
|
||||
}
|
||||
-
|
||||
+
|
||||
err = grub_video_ieee1275_fill_mode_info (dev, &framebuffer.mode_info);
|
||||
if (err)
|
||||
{
|
||||
@@ -261,7 +261,7 @@ grub_video_ieee1275_setup (unsigned int width, unsigned int height,
|
||||
|
||||
grub_video_ieee1275_set_palette (0, framebuffer.mode_info.number_of_colors,
|
||||
grub_video_fbstd_colors);
|
||||
-
|
||||
+
|
||||
return err;
|
||||
}
|
||||
|
||||
diff --git a/grub-core/video/radeon_fuloong2e.c b/grub-core/video/radeon_fuloong2e.c
|
||||
index b4da34b5e..40917acb7 100644
|
||||
--- a/grub-core/video/radeon_fuloong2e.c
|
||||
+++ b/grub-core/video/radeon_fuloong2e.c
|
||||
@@ -75,7 +75,7 @@ find_card (grub_pci_device_t dev, grub_pci_id_t pciid, void *data)
|
||||
if (((class >> 16) & 0xffff) != GRUB_PCI_CLASS_SUBCLASS_VGA
|
||||
|| pciid != 0x515a1002)
|
||||
return 0;
|
||||
-
|
||||
+
|
||||
*found = 1;
|
||||
|
||||
addr = grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESS_REG0);
|
||||
@@ -139,7 +139,7 @@ grub_video_radeon_fuloong2e_setup (unsigned int width, unsigned int height,
|
||||
framebuffer.mapped = 1;
|
||||
|
||||
/* Prevent garbage from appearing on the screen. */
|
||||
- grub_memset (framebuffer.ptr, 0x55,
|
||||
+ grub_memset (framebuffer.ptr, 0x55,
|
||||
framebuffer.mode_info.height * framebuffer.mode_info.pitch);
|
||||
|
||||
#ifndef TEST
|
||||
@@ -152,7 +152,7 @@ grub_video_radeon_fuloong2e_setup (unsigned int width, unsigned int height,
|
||||
return err;
|
||||
|
||||
err = grub_video_fb_set_active_render_target (framebuffer.render_target);
|
||||
-
|
||||
+
|
||||
if (err)
|
||||
return err;
|
||||
|
||||
diff --git a/grub-core/video/radeon_yeeloong3a.c b/grub-core/video/radeon_yeeloong3a.c
|
||||
index 52614feb6..48631c181 100644
|
||||
--- a/grub-core/video/radeon_yeeloong3a.c
|
||||
+++ b/grub-core/video/radeon_yeeloong3a.c
|
||||
@@ -74,7 +74,7 @@ find_card (grub_pci_device_t dev, grub_pci_id_t pciid, void *data)
|
||||
if (((class >> 16) & 0xffff) != GRUB_PCI_CLASS_SUBCLASS_VGA
|
||||
|| pciid != 0x96151002)
|
||||
return 0;
|
||||
-
|
||||
+
|
||||
*found = 1;
|
||||
|
||||
addr = grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESS_REG0);
|
||||
@@ -137,7 +137,7 @@ grub_video_radeon_yeeloong3a_setup (unsigned int width, unsigned int height,
|
||||
#endif
|
||||
|
||||
/* Prevent garbage from appearing on the screen. */
|
||||
- grub_memset (framebuffer.ptr, 0,
|
||||
+ grub_memset (framebuffer.ptr, 0,
|
||||
framebuffer.mode_info.height * framebuffer.mode_info.pitch);
|
||||
|
||||
#ifndef TEST
|
||||
@@ -150,7 +150,7 @@ grub_video_radeon_yeeloong3a_setup (unsigned int width, unsigned int height,
|
||||
return err;
|
||||
|
||||
err = grub_video_fb_set_active_render_target (framebuffer.render_target);
|
||||
-
|
||||
+
|
||||
if (err)
|
||||
return err;
|
||||
|
||||
diff --git a/grub-core/video/readers/png.c b/grub-core/video/readers/png.c
|
||||
index 0157ff742..54dfedf43 100644
|
||||
--- a/grub-core/video/readers/png.c
|
||||
+++ b/grub-core/video/readers/png.c
|
||||
@@ -916,7 +916,7 @@ grub_png_convert_image (struct grub_png_data *data)
|
||||
}
|
||||
return;
|
||||
}
|
||||
-
|
||||
+
|
||||
if (data->is_gray)
|
||||
{
|
||||
switch (data->bpp)
|
||||
diff --git a/grub-core/video/readers/tga.c b/grub-core/video/readers/tga.c
|
||||
index 7cb9d1d2a..a9ec3a1b6 100644
|
||||
--- a/grub-core/video/readers/tga.c
|
||||
+++ b/grub-core/video/readers/tga.c
|
||||
@@ -127,7 +127,7 @@ tga_load_palette (struct tga_data *data)
|
||||
|
||||
if (len > sizeof (data->palette))
|
||||
len = sizeof (data->palette);
|
||||
-
|
||||
+
|
||||
if (grub_file_read (data->file, &data->palette, len)
|
||||
!= (grub_ssize_t) len)
|
||||
return grub_errno;
|
||||
diff --git a/grub-core/video/sis315_init.c b/grub-core/video/sis315_init.c
|
||||
index ae5c1419c..09c3c7bbe 100644
|
||||
--- a/grub-core/video/sis315_init.c
|
||||
+++ b/grub-core/video/sis315_init.c
|
||||
@@ -1,4 +1,4 @@
|
||||
-static const struct { grub_uint8_t reg; grub_uint8_t val; } sr_dump [] =
|
||||
+static const struct { grub_uint8_t reg; grub_uint8_t val; } sr_dump [] =
|
||||
{
|
||||
{ 0x28, 0x81 },
|
||||
{ 0x2a, 0x00 },
|
||||
diff --git a/grub-core/video/sis315pro.c b/grub-core/video/sis315pro.c
|
||||
index 22a0c85a6..4d2f9999a 100644
|
||||
--- a/grub-core/video/sis315pro.c
|
||||
+++ b/grub-core/video/sis315pro.c
|
||||
@@ -103,7 +103,7 @@ find_card (grub_pci_device_t dev, grub_pci_id_t pciid, void *data)
|
||||
if (((class >> 16) & 0xffff) != GRUB_PCI_CLASS_SUBCLASS_VGA
|
||||
|| pciid != GRUB_SIS315PRO_PCIID)
|
||||
return 0;
|
||||
-
|
||||
+
|
||||
*found = 1;
|
||||
|
||||
addr = grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESS_REG0);
|
||||
@@ -218,7 +218,7 @@ grub_video_sis315pro_setup (unsigned int width, unsigned int height,
|
||||
|
||||
#ifndef TEST
|
||||
/* Prevent garbage from appearing on the screen. */
|
||||
- grub_memset (framebuffer.ptr, 0,
|
||||
+ grub_memset (framebuffer.ptr, 0,
|
||||
framebuffer.mode_info.height * framebuffer.mode_info.pitch);
|
||||
grub_arch_sync_dma_caches (framebuffer.ptr,
|
||||
framebuffer.mode_info.height
|
||||
@@ -231,7 +231,7 @@ grub_video_sis315pro_setup (unsigned int width, unsigned int height,
|
||||
| GRUB_VGA_IO_MISC_EXTERNAL_CLOCK_0
|
||||
| GRUB_VGA_IO_MISC_28MHZ
|
||||
| GRUB_VGA_IO_MISC_ENABLE_VRAM_ACCESS
|
||||
- | GRUB_VGA_IO_MISC_COLOR,
|
||||
+ | GRUB_VGA_IO_MISC_COLOR,
|
||||
GRUB_VGA_IO_MISC_WRITE + GRUB_MACHINE_PCI_IO_BASE);
|
||||
|
||||
grub_vga_sr_write (0x86, 5);
|
||||
@@ -335,7 +335,7 @@ grub_video_sis315pro_setup (unsigned int width, unsigned int height,
|
||||
{
|
||||
if (read_sis_cmd (0x5) != 0xa1)
|
||||
write_sis_cmd (0x86, 0x5);
|
||||
-
|
||||
+
|
||||
write_sis_cmd (read_sis_cmd (0x20) | 0xa1, 0x20);
|
||||
write_sis_cmd (read_sis_cmd (0x1e) | 0xda, 0x1e);
|
||||
|
||||
diff --git a/grub-core/video/sm712.c b/grub-core/video/sm712.c
|
||||
index 10c46eb65..65f59f84b 100644
|
||||
--- a/grub-core/video/sm712.c
|
||||
+++ b/grub-core/video/sm712.c
|
||||
@@ -167,7 +167,7 @@ enum
|
||||
GRUB_SM712_CR_SHADOW_VGA_VBLANK_START = 0x46,
|
||||
GRUB_SM712_CR_SHADOW_VGA_VBLANK_END = 0x47,
|
||||
GRUB_SM712_CR_SHADOW_VGA_VRETRACE_START = 0x48,
|
||||
- GRUB_SM712_CR_SHADOW_VGA_VRETRACE_END = 0x49,
|
||||
+ GRUB_SM712_CR_SHADOW_VGA_VRETRACE_END = 0x49,
|
||||
GRUB_SM712_CR_SHADOW_VGA_OVERFLOW = 0x4a,
|
||||
GRUB_SM712_CR_SHADOW_VGA_CELL_HEIGHT = 0x4b,
|
||||
GRUB_SM712_CR_SHADOW_VGA_HDISPLAY_END = 0x4c,
|
||||
@@ -375,7 +375,7 @@ find_card (grub_pci_device_t dev, grub_pci_id_t pciid, void *data)
|
||||
if (((class >> 16) & 0xffff) != GRUB_PCI_CLASS_SUBCLASS_VGA
|
||||
|| pciid != GRUB_SM712_PCIID)
|
||||
return 0;
|
||||
-
|
||||
+
|
||||
*found = 1;
|
||||
|
||||
addr = grub_pci_make_address (dev, GRUB_PCI_REG_ADDRESS_REG0);
|
||||
@@ -471,7 +471,7 @@ grub_video_sm712_setup (unsigned int width, unsigned int height,
|
||||
|
||||
#if !defined (TEST) && !defined(GENINIT)
|
||||
/* Prevent garbage from appearing on the screen. */
|
||||
- grub_memset ((void *) framebuffer.cached_ptr, 0,
|
||||
+ grub_memset ((void *) framebuffer.cached_ptr, 0,
|
||||
framebuffer.mode_info.height * framebuffer.mode_info.pitch);
|
||||
#endif
|
||||
|
||||
@@ -482,7 +482,7 @@ grub_video_sm712_setup (unsigned int width, unsigned int height,
|
||||
grub_sm712_sr_write (0x2, 0x6b);
|
||||
grub_sm712_write_reg (0, GRUB_VGA_IO_PIXEL_MASK);
|
||||
grub_sm712_sr_write (GRUB_VGA_SR_RESET_ASYNC, GRUB_VGA_SR_RESET);
|
||||
- grub_sm712_write_reg (GRUB_VGA_IO_MISC_NEGATIVE_VERT_POLARITY
|
||||
+ grub_sm712_write_reg (GRUB_VGA_IO_MISC_NEGATIVE_VERT_POLARITY
|
||||
| GRUB_VGA_IO_MISC_NEGATIVE_HORIZ_POLARITY
|
||||
| GRUB_VGA_IO_MISC_UPPER_64K
|
||||
| GRUB_VGA_IO_MISC_EXTERNAL_CLOCK_0
|
||||
@@ -694,7 +694,7 @@ grub_video_sm712_setup (unsigned int width, unsigned int height,
|
||||
for (i = 0; i < ARRAY_SIZE (dda_lookups); i++)
|
||||
grub_sm712_write_dda_lookup (i, dda_lookups[i].compare, dda_lookups[i].dda,
|
||||
dda_lookups[i].vcentering);
|
||||
-
|
||||
+
|
||||
/* Undocumented */
|
||||
grub_sm712_cr_write (0, 0x9c);
|
||||
grub_sm712_cr_write (0, 0x9d);
|
||||
diff --git a/grub-core/video/video.c b/grub-core/video/video.c
|
||||
index 983424107..8937da745 100644
|
||||
--- a/grub-core/video/video.c
|
||||
+++ b/grub-core/video/video.c
|
||||
@@ -491,13 +491,13 @@ parse_modespec (const char *current_mode, int *width, int *height, int *depth)
|
||||
current_mode);
|
||||
|
||||
param++;
|
||||
-
|
||||
+
|
||||
*width = grub_strtoul (value, 0, 0);
|
||||
if (grub_errno != GRUB_ERR_NONE)
|
||||
return grub_error (GRUB_ERR_BAD_ARGUMENT,
|
||||
N_("invalid video mode specification `%s'"),
|
||||
current_mode);
|
||||
-
|
||||
+
|
||||
/* Find height value. */
|
||||
value = param;
|
||||
param = grub_strchr(param, 'x');
|
||||
@@ -513,13 +513,13 @@ parse_modespec (const char *current_mode, int *width, int *height, int *depth)
|
||||
{
|
||||
/* We have optional color depth value. */
|
||||
param++;
|
||||
-
|
||||
+
|
||||
*height = grub_strtoul (value, 0, 0);
|
||||
if (grub_errno != GRUB_ERR_NONE)
|
||||
return grub_error (GRUB_ERR_BAD_ARGUMENT,
|
||||
N_("invalid video mode specification `%s'"),
|
||||
current_mode);
|
||||
-
|
||||
+
|
||||
/* Convert color depth value. */
|
||||
value = param;
|
||||
*depth = grub_strtoul (value, 0, 0);
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -1,204 +0,0 @@
|
||||
From 91d16e415b79f5080fa2bcc21bff6471f6be9f08 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Axtens <dja@axtens.net>
|
||||
Date: Tue, 6 Jul 2021 14:02:55 +1000
|
||||
Subject: [PATCH] video/readers/png: Abort sooner if a read operation fails
|
||||
|
||||
Fuzzing revealed some inputs that were taking a long time, potentially
|
||||
forever, because they did not bail quickly upon encountering an I/O error.
|
||||
|
||||
Try to catch I/O errors sooner and bail out.
|
||||
|
||||
Signed-off-by: Daniel Axtens <dja@axtens.net>
|
||||
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
|
||||
Upstream: d5caac8ab79d068ad9a41030c772d03a4d4fbd7b
|
||||
[Thomas: needed to cherry-pick
|
||||
e623866d9286410156e8b9d2c82d6253a1b22d08, which fixes CVE-2021-3695]
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
grub-core/video/readers/png.c | 55 ++++++++++++++++++++++++++++++-----
|
||||
1 file changed, 47 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/grub-core/video/readers/png.c b/grub-core/video/readers/png.c
|
||||
index 54dfedf43..d715c4629 100644
|
||||
--- a/grub-core/video/readers/png.c
|
||||
+++ b/grub-core/video/readers/png.c
|
||||
@@ -142,6 +142,7 @@ static grub_uint8_t
|
||||
grub_png_get_byte (struct grub_png_data *data)
|
||||
{
|
||||
grub_uint8_t r;
|
||||
+ grub_ssize_t bytes_read = 0;
|
||||
|
||||
if ((data->inside_idat) && (data->idat_remain == 0))
|
||||
{
|
||||
@@ -175,7 +176,14 @@ grub_png_get_byte (struct grub_png_data *data)
|
||||
}
|
||||
|
||||
r = 0;
|
||||
- grub_file_read (data->file, &r, 1);
|
||||
+ bytes_read = grub_file_read (data->file, &r, 1);
|
||||
+
|
||||
+ if (bytes_read != 1)
|
||||
+ {
|
||||
+ grub_error (GRUB_ERR_BAD_FILE_TYPE,
|
||||
+ "png: unexpected end of data");
|
||||
+ return 0;
|
||||
+ }
|
||||
|
||||
if (data->inside_idat)
|
||||
data->idat_remain--;
|
||||
@@ -231,15 +239,16 @@ grub_png_decode_image_palette (struct grub_png_data *data,
|
||||
if (len == 0)
|
||||
return GRUB_ERR_NONE;
|
||||
|
||||
- for (i = 0; 3 * i < len && i < 256; i++)
|
||||
+ grub_errno = GRUB_ERR_NONE;
|
||||
+ for (i = 0; 3 * i < len && i < 256 && grub_errno == GRUB_ERR_NONE; i++)
|
||||
for (j = 0; j < 3; j++)
|
||||
data->palette[i][j] = grub_png_get_byte (data);
|
||||
- for (i *= 3; i < len; i++)
|
||||
+ for (i *= 3; i < len && grub_errno == GRUB_ERR_NONE; i++)
|
||||
grub_png_get_byte (data);
|
||||
|
||||
grub_png_get_dword (data);
|
||||
|
||||
- return GRUB_ERR_NONE;
|
||||
+ return grub_errno;
|
||||
}
|
||||
|
||||
static grub_err_t
|
||||
@@ -256,9 +265,13 @@ grub_png_decode_image_header (struct grub_png_data *data)
|
||||
return grub_error (GRUB_ERR_BAD_FILE_TYPE, "png: invalid image size");
|
||||
|
||||
color_bits = grub_png_get_byte (data);
|
||||
+ if (grub_errno != GRUB_ERR_NONE)
|
||||
+ return grub_errno;
|
||||
data->is_16bit = (color_bits == 16);
|
||||
|
||||
color_type = grub_png_get_byte (data);
|
||||
+ if (grub_errno != GRUB_ERR_NONE)
|
||||
+ return grub_errno;
|
||||
|
||||
/* According to PNG spec, no other types are valid. */
|
||||
if ((color_type & ~(PNG_COLOR_MASK_ALPHA | PNG_COLOR_MASK_COLOR))
|
||||
@@ -340,14 +353,20 @@ grub_png_decode_image_header (struct grub_png_data *data)
|
||||
if (grub_png_get_byte (data) != PNG_COMPRESSION_BASE)
|
||||
return grub_error (GRUB_ERR_BAD_FILE_TYPE,
|
||||
"png: compression method not supported");
|
||||
+ if (grub_errno != GRUB_ERR_NONE)
|
||||
+ return grub_errno;
|
||||
|
||||
if (grub_png_get_byte (data) != PNG_FILTER_TYPE_BASE)
|
||||
return grub_error (GRUB_ERR_BAD_FILE_TYPE,
|
||||
"png: filter method not supported");
|
||||
+ if (grub_errno != GRUB_ERR_NONE)
|
||||
+ return grub_errno;
|
||||
|
||||
if (grub_png_get_byte (data) != PNG_INTERLACE_NONE)
|
||||
return grub_error (GRUB_ERR_BAD_FILE_TYPE,
|
||||
"png: interlace method not supported");
|
||||
+ if (grub_errno != GRUB_ERR_NONE)
|
||||
+ return grub_errno;
|
||||
|
||||
/* Skip crc checksum. */
|
||||
grub_png_get_dword (data);
|
||||
@@ -449,7 +468,7 @@ grub_png_get_huff_code (struct grub_png_data *data, struct huff_table *ht)
|
||||
int code, i;
|
||||
|
||||
code = 0;
|
||||
- for (i = 0; i < ht->max_length; i++)
|
||||
+ for (i = 0; i < ht->max_length && grub_errno == GRUB_ERR_NONE; i++)
|
||||
{
|
||||
code = (code << 1) + grub_png_get_bits (data, 1);
|
||||
if (code < ht->maxval[i])
|
||||
@@ -504,8 +523,14 @@ grub_png_init_dynamic_block (struct grub_png_data *data)
|
||||
grub_uint8_t lens[DEFLATE_HCLEN_MAX];
|
||||
|
||||
nl = DEFLATE_HLIT_BASE + grub_png_get_bits (data, 5);
|
||||
+ if (grub_errno != GRUB_ERR_NONE)
|
||||
+ return grub_errno;
|
||||
nd = DEFLATE_HDIST_BASE + grub_png_get_bits (data, 5);
|
||||
+ if (grub_errno != GRUB_ERR_NONE)
|
||||
+ return grub_errno;
|
||||
nb = DEFLATE_HCLEN_BASE + grub_png_get_bits (data, 4);
|
||||
+ if (grub_errno != GRUB_ERR_NONE)
|
||||
+ return grub_errno;
|
||||
|
||||
if ((nl > DEFLATE_HLIT_MAX) || (nd > DEFLATE_HDIST_MAX) ||
|
||||
(nb > DEFLATE_HCLEN_MAX))
|
||||
@@ -533,7 +558,7 @@ grub_png_init_dynamic_block (struct grub_png_data *data)
|
||||
data->dist_offset);
|
||||
|
||||
prev = 0;
|
||||
- for (i = 0; i < nl + nd; i++)
|
||||
+ for (i = 0; i < nl + nd && grub_errno == GRUB_ERR_NONE; i++)
|
||||
{
|
||||
int n, code;
|
||||
struct huff_table *ht;
|
||||
@@ -721,17 +746,21 @@ grub_png_read_dynamic_block (struct grub_png_data *data)
|
||||
len = cplens[n];
|
||||
if (cplext[n])
|
||||
len += grub_png_get_bits (data, cplext[n]);
|
||||
+ if (grub_errno != GRUB_ERR_NONE)
|
||||
+ return grub_errno;
|
||||
|
||||
n = grub_png_get_huff_code (data, &data->dist_table);
|
||||
dist = cpdist[n];
|
||||
if (cpdext[n])
|
||||
dist += grub_png_get_bits (data, cpdext[n]);
|
||||
+ if (grub_errno != GRUB_ERR_NONE)
|
||||
+ return grub_errno;
|
||||
|
||||
pos = data->wp - dist;
|
||||
if (pos < 0)
|
||||
pos += WSIZE;
|
||||
|
||||
- while (len > 0)
|
||||
+ while (len > 0 && grub_errno == GRUB_ERR_NONE)
|
||||
{
|
||||
data->slide[data->wp] = data->slide[pos];
|
||||
grub_png_output_byte (data, data->slide[data->wp]);
|
||||
@@ -759,7 +788,11 @@ grub_png_decode_image_data (struct grub_png_data *data)
|
||||
int final;
|
||||
|
||||
cmf = grub_png_get_byte (data);
|
||||
+ if (grub_errno != GRUB_ERR_NONE)
|
||||
+ return grub_errno;
|
||||
flg = grub_png_get_byte (data);
|
||||
+ if (grub_errno != GRUB_ERR_NONE)
|
||||
+ return grub_errno;
|
||||
|
||||
if ((cmf & 0xF) != Z_DEFLATED)
|
||||
return grub_error (GRUB_ERR_BAD_FILE_TYPE,
|
||||
@@ -774,7 +807,11 @@ grub_png_decode_image_data (struct grub_png_data *data)
|
||||
int block_type;
|
||||
|
||||
final = grub_png_get_bits (data, 1);
|
||||
+ if (grub_errno != GRUB_ERR_NONE)
|
||||
+ return grub_errno;
|
||||
block_type = grub_png_get_bits (data, 2);
|
||||
+ if (grub_errno != GRUB_ERR_NONE)
|
||||
+ return grub_errno;
|
||||
|
||||
switch (block_type)
|
||||
{
|
||||
@@ -790,7 +827,7 @@ grub_png_decode_image_data (struct grub_png_data *data)
|
||||
grub_png_get_byte (data);
|
||||
grub_png_get_byte (data);
|
||||
|
||||
- for (i = 0; i < len; i++)
|
||||
+ for (i = 0; i < len && grub_errno == GRUB_ERR_NONE; i++)
|
||||
grub_png_output_byte (data, grub_png_get_byte (data));
|
||||
|
||||
break;
|
||||
@@ -1045,6 +1082,8 @@ grub_png_decode_png (struct grub_png_data *data)
|
||||
|
||||
len = grub_png_get_dword (data);
|
||||
type = grub_png_get_dword (data);
|
||||
+ if (grub_errno != GRUB_ERR_NONE)
|
||||
+ break;
|
||||
data->next_offset = data->file->offset + len + 4;
|
||||
|
||||
switch (type)
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -1,34 +0,0 @@
|
||||
From e170edd18fcfdd9e6f91ba750fd022cef8d43cd4 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Axtens <dja@axtens.net>
|
||||
Date: Tue, 6 Jul 2021 14:13:40 +1000
|
||||
Subject: [PATCH] video/readers/png: Refuse to handle multiple image headers
|
||||
|
||||
This causes the bitmap to be leaked. Do not permit multiple image headers.
|
||||
|
||||
Signed-off-by: Daniel Axtens <dja@axtens.net>
|
||||
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
|
||||
Upstream: 166a4d61448f74745afe1dac2f2cfb85d04909bf
|
||||
[Thomas: needed to cherry-pick
|
||||
e623866d9286410156e8b9d2c82d6253a1b22d08, which fixes CVE-2021-3695]
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
grub-core/video/readers/png.c | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/grub-core/video/readers/png.c b/grub-core/video/readers/png.c
|
||||
index d715c4629..35ae553c8 100644
|
||||
--- a/grub-core/video/readers/png.c
|
||||
+++ b/grub-core/video/readers/png.c
|
||||
@@ -258,6 +258,9 @@ grub_png_decode_image_header (struct grub_png_data *data)
|
||||
int color_bits;
|
||||
enum grub_video_blit_format blt;
|
||||
|
||||
+ if (data->image_width || data->image_height)
|
||||
+ return grub_error (GRUB_ERR_BAD_FILE_TYPE, "png: two image headers found");
|
||||
+
|
||||
data->image_width = grub_png_get_dword (data);
|
||||
data->image_height = grub_png_get_dword (data);
|
||||
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -1,173 +0,0 @@
|
||||
From 5b42d132a029c1d245d94c813a45836522b46226 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Axtens <dja@axtens.net>
|
||||
Date: Tue, 6 Jul 2021 18:51:35 +1000
|
||||
Subject: [PATCH] video/readers/png: Drop greyscale support to fix heap
|
||||
out-of-bounds write
|
||||
|
||||
A 16-bit greyscale PNG without alpha is processed in the following loop:
|
||||
|
||||
for (i = 0; i < (data->image_width * data->image_height);
|
||||
i++, d1 += 4, d2 += 2)
|
||||
{
|
||||
d1[R3] = d2[1];
|
||||
d1[G3] = d2[1];
|
||||
d1[B3] = d2[1];
|
||||
}
|
||||
|
||||
The increment of d1 is wrong. d1 is incremented by 4 bytes per iteration,
|
||||
but there are only 3 bytes allocated for storage. This means that image
|
||||
data will overwrite somewhat-attacker-controlled parts of memory - 3 bytes
|
||||
out of every 4 following the end of the image.
|
||||
|
||||
This has existed since greyscale support was added in 2013 in commit
|
||||
3ccf16dff98f (grub-core/video/readers/png.c: Support grayscale).
|
||||
|
||||
Saving starfield.png as a 16-bit greyscale image without alpha in the gimp
|
||||
and attempting to load it causes grub-emu to crash - I don't think this code
|
||||
has ever worked.
|
||||
|
||||
Delete all PNG greyscale support.
|
||||
|
||||
Fixes: CVE-2021-3695
|
||||
|
||||
Signed-off-by: Daniel Axtens <dja@axtens.net>
|
||||
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
|
||||
Upstream: e623866d9286410156e8b9d2c82d6253a1b22d08
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
grub-core/video/readers/png.c | 87 +++--------------------------------
|
||||
1 file changed, 7 insertions(+), 80 deletions(-)
|
||||
|
||||
diff --git a/grub-core/video/readers/png.c b/grub-core/video/readers/png.c
|
||||
index 35ae553c8..a3161e25b 100644
|
||||
--- a/grub-core/video/readers/png.c
|
||||
+++ b/grub-core/video/readers/png.c
|
||||
@@ -100,7 +100,7 @@ struct grub_png_data
|
||||
|
||||
unsigned image_width, image_height;
|
||||
int bpp, is_16bit;
|
||||
- int raw_bytes, is_gray, is_alpha, is_palette;
|
||||
+ int raw_bytes, is_alpha, is_palette;
|
||||
int row_bytes, color_bits;
|
||||
grub_uint8_t *image_data;
|
||||
|
||||
@@ -296,13 +296,13 @@ grub_png_decode_image_header (struct grub_png_data *data)
|
||||
data->bpp = 3;
|
||||
else
|
||||
{
|
||||
- data->is_gray = 1;
|
||||
- data->bpp = 1;
|
||||
+ return grub_error (GRUB_ERR_BAD_FILE_TYPE,
|
||||
+ "png: color type not supported");
|
||||
}
|
||||
|
||||
if ((color_bits != 8) && (color_bits != 16)
|
||||
&& (color_bits != 4
|
||||
- || !(data->is_gray || data->is_palette)))
|
||||
+ || !data->is_palette))
|
||||
return grub_error (GRUB_ERR_BAD_FILE_TYPE,
|
||||
"png: bit depth must be 8 or 16");
|
||||
|
||||
@@ -331,7 +331,7 @@ grub_png_decode_image_header (struct grub_png_data *data)
|
||||
}
|
||||
|
||||
#ifndef GRUB_CPU_WORDS_BIGENDIAN
|
||||
- if (data->is_16bit || data->is_gray || data->is_palette)
|
||||
+ if (data->is_16bit || data->is_palette)
|
||||
#endif
|
||||
{
|
||||
data->image_data = grub_calloc (data->image_height, data->row_bytes);
|
||||
@@ -899,27 +899,8 @@ grub_png_convert_image (struct grub_png_data *data)
|
||||
int shift;
|
||||
int mask = (1 << data->color_bits) - 1;
|
||||
unsigned j;
|
||||
- if (data->is_gray)
|
||||
- {
|
||||
- /* Generic formula is
|
||||
- (0xff * i) / ((1U << data->color_bits) - 1)
|
||||
- but for allowed bit depth of 1, 2 and for it's
|
||||
- equivalent to
|
||||
- (0xff / ((1U << data->color_bits) - 1)) * i
|
||||
- Precompute the multipliers to avoid division.
|
||||
- */
|
||||
-
|
||||
- const grub_uint8_t multipliers[5] = { 0xff, 0xff, 0x55, 0x24, 0x11 };
|
||||
- for (i = 0; i < (1U << data->color_bits); i++)
|
||||
- {
|
||||
- grub_uint8_t col = multipliers[data->color_bits] * i;
|
||||
- palette[i][0] = col;
|
||||
- palette[i][1] = col;
|
||||
- palette[i][2] = col;
|
||||
- }
|
||||
- }
|
||||
- else
|
||||
- grub_memcpy (palette, data->palette, 3 << data->color_bits);
|
||||
+
|
||||
+ grub_memcpy (palette, data->palette, 3 << data->color_bits);
|
||||
d1c = d1;
|
||||
d2c = d2;
|
||||
for (j = 0; j < data->image_height; j++, d1c += data->image_width * 3,
|
||||
@@ -957,60 +938,6 @@ grub_png_convert_image (struct grub_png_data *data)
|
||||
return;
|
||||
}
|
||||
|
||||
- if (data->is_gray)
|
||||
- {
|
||||
- switch (data->bpp)
|
||||
- {
|
||||
- case 4:
|
||||
- /* 16-bit gray with alpha. */
|
||||
- for (i = 0; i < (data->image_width * data->image_height);
|
||||
- i++, d1 += 4, d2 += 4)
|
||||
- {
|
||||
- d1[R4] = d2[3];
|
||||
- d1[G4] = d2[3];
|
||||
- d1[B4] = d2[3];
|
||||
- d1[A4] = d2[1];
|
||||
- }
|
||||
- break;
|
||||
- case 2:
|
||||
- if (data->is_16bit)
|
||||
- /* 16-bit gray without alpha. */
|
||||
- {
|
||||
- for (i = 0; i < (data->image_width * data->image_height);
|
||||
- i++, d1 += 4, d2 += 2)
|
||||
- {
|
||||
- d1[R3] = d2[1];
|
||||
- d1[G3] = d2[1];
|
||||
- d1[B3] = d2[1];
|
||||
- }
|
||||
- }
|
||||
- else
|
||||
- /* 8-bit gray with alpha. */
|
||||
- {
|
||||
- for (i = 0; i < (data->image_width * data->image_height);
|
||||
- i++, d1 += 4, d2 += 2)
|
||||
- {
|
||||
- d1[R4] = d2[1];
|
||||
- d1[G4] = d2[1];
|
||||
- d1[B4] = d2[1];
|
||||
- d1[A4] = d2[0];
|
||||
- }
|
||||
- }
|
||||
- break;
|
||||
- /* 8-bit gray without alpha. */
|
||||
- case 1:
|
||||
- for (i = 0; i < (data->image_width * data->image_height);
|
||||
- i++, d1 += 3, d2++)
|
||||
- {
|
||||
- d1[R3] = d2[0];
|
||||
- d1[G3] = d2[0];
|
||||
- d1[B3] = d2[0];
|
||||
- }
|
||||
- break;
|
||||
- }
|
||||
- return;
|
||||
- }
|
||||
-
|
||||
{
|
||||
/* Only copy the upper 8 bit. */
|
||||
#ifndef GRUB_CPU_WORDS_BIGENDIAN
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -1,44 +0,0 @@
|
||||
From 43a7d9cb829467993ba683a26c980fcfdaa924c8 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Axtens <dja@axtens.net>
|
||||
Date: Tue, 6 Jul 2021 23:25:07 +1000
|
||||
Subject: [PATCH] video/readers/png: Avoid heap OOB R/W inserting huff table
|
||||
items
|
||||
|
||||
In fuzzing we observed crashes where a code would attempt to be inserted
|
||||
into a huffman table before the start, leading to a set of heap OOB reads
|
||||
and writes as table entries with negative indices were shifted around and
|
||||
the new code written in.
|
||||
|
||||
Catch the case where we would underflow the array and bail.
|
||||
|
||||
Fixes: CVE-2021-3696
|
||||
|
||||
Signed-off-by: Daniel Axtens <dja@axtens.net>
|
||||
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
|
||||
Upstream: 210245129c932dc9e1c2748d9d35524fb95b5042
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
grub-core/video/readers/png.c | 7 +++++++
|
||||
1 file changed, 7 insertions(+)
|
||||
|
||||
diff --git a/grub-core/video/readers/png.c b/grub-core/video/readers/png.c
|
||||
index a3161e25b..d7ed5aa6c 100644
|
||||
--- a/grub-core/video/readers/png.c
|
||||
+++ b/grub-core/video/readers/png.c
|
||||
@@ -438,6 +438,13 @@ grub_png_insert_huff_item (struct huff_table *ht, int code, int len)
|
||||
for (i = len; i < ht->max_length; i++)
|
||||
n += ht->maxval[i];
|
||||
|
||||
+ if (n > ht->num_values)
|
||||
+ {
|
||||
+ grub_error (GRUB_ERR_BAD_FILE_TYPE,
|
||||
+ "png: out of range inserting huffman table item");
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
for (i = 0; i < n; i++)
|
||||
ht->values[ht->num_values - i] = ht->values[ht->num_values - i - 1];
|
||||
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -1,78 +0,0 @@
|
||||
From 6be7ccfcc33da513de66f71de63fdc129fa019c2 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Axtens <dja@axtens.net>
|
||||
Date: Wed, 7 Jul 2021 15:38:19 +1000
|
||||
Subject: [PATCH] video/readers/jpeg: Block int underflow -> wild pointer write
|
||||
|
||||
Certain 1 px wide images caused a wild pointer write in
|
||||
grub_jpeg_ycrcb_to_rgb(). This was caused because in grub_jpeg_decode_data(),
|
||||
we have the following loop:
|
||||
|
||||
for (; data->r1 < nr1 && (!data->dri || rst);
|
||||
data->r1++, data->bitmap_ptr += (vb * data->image_width - hb * nc1) * 3)
|
||||
|
||||
We did not check if vb * width >= hb * nc1.
|
||||
|
||||
On a 64-bit platform, if that turns out to be negative, it will underflow,
|
||||
be interpreted as unsigned 64-bit, then be added to the 64-bit pointer, so
|
||||
we see data->bitmap_ptr jump, e.g.:
|
||||
|
||||
0x6180_0000_0480 to
|
||||
0x6181_0000_0498
|
||||
^
|
||||
~--- carry has occurred and this pointer is now far away from
|
||||
any object.
|
||||
|
||||
On a 32-bit platform, it will decrement the pointer, creating a pointer
|
||||
that won't crash but will overwrite random data.
|
||||
|
||||
Catch the underflow and error out.
|
||||
|
||||
Fixes: CVE-2021-3697
|
||||
|
||||
Signed-off-by: Daniel Axtens <dja@axtens.net>
|
||||
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
|
||||
Upstream: 22a3f97d39f6a10b08ad7fd1cc47c4dcd10413f6
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
grub-core/video/readers/jpeg.c | 10 +++++++++-
|
||||
1 file changed, 9 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/grub-core/video/readers/jpeg.c b/grub-core/video/readers/jpeg.c
|
||||
index e31602f76..1d256af01 100644
|
||||
--- a/grub-core/video/readers/jpeg.c
|
||||
+++ b/grub-core/video/readers/jpeg.c
|
||||
@@ -23,6 +23,7 @@
|
||||
#include <grub/mm.h>
|
||||
#include <grub/misc.h>
|
||||
#include <grub/bufio.h>
|
||||
+#include <grub/safemath.h>
|
||||
|
||||
GRUB_MOD_LICENSE ("GPLv3+");
|
||||
|
||||
@@ -639,6 +640,7 @@ static grub_err_t
|
||||
grub_jpeg_decode_data (struct grub_jpeg_data *data)
|
||||
{
|
||||
unsigned c1, vb, hb, nr1, nc1;
|
||||
+ unsigned stride_a, stride_b, stride;
|
||||
int rst = data->dri;
|
||||
|
||||
vb = 8 << data->log_vs;
|
||||
@@ -650,8 +652,14 @@ grub_jpeg_decode_data (struct grub_jpeg_data *data)
|
||||
return grub_error(GRUB_ERR_BAD_FILE_TYPE,
|
||||
"jpeg: attempted to decode data before start of stream");
|
||||
|
||||
+ if (grub_mul(vb, data->image_width, &stride_a) ||
|
||||
+ grub_mul(hb, nc1, &stride_b) ||
|
||||
+ grub_sub(stride_a, stride_b, &stride))
|
||||
+ return grub_error (GRUB_ERR_BAD_FILE_TYPE,
|
||||
+ "jpeg: cannot decode image with these dimensions");
|
||||
+
|
||||
for (; data->r1 < nr1 && (!data->dri || rst);
|
||||
- data->r1++, data->bitmap_ptr += (vb * data->image_width - hb * nc1) * 3)
|
||||
+ data->r1++, data->bitmap_ptr += stride * 3)
|
||||
for (c1 = 0; c1 < nc1 && (!data->dri || rst);
|
||||
c1++, rst--, data->bitmap_ptr += hb * 3)
|
||||
{
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -1,56 +0,0 @@
|
||||
From cadde7e36b8797060ac8cdf7cca7d8e1e09697e6 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Axtens <dja@axtens.net>
|
||||
Date: Mon, 20 Dec 2021 19:41:21 +1100
|
||||
Subject: [PATCH] net/ip: Do IP fragment maths safely
|
||||
|
||||
We can receive packets with invalid IP fragmentation information. This
|
||||
can lead to rsm->total_len underflowing and becoming very large.
|
||||
|
||||
Then, in grub_netbuff_alloc(), we add to this very large number, which can
|
||||
cause it to overflow and wrap back around to a small positive number.
|
||||
The allocation then succeeds, but the resulting buffer is too small and
|
||||
subsequent operations can write past the end of the buffer.
|
||||
|
||||
Catch the underflow here.
|
||||
|
||||
Fixes: CVE-2022-28733
|
||||
|
||||
Signed-off-by: Daniel Axtens <dja@axtens.net>
|
||||
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
|
||||
Upstream: 3e4817538de828319ba6d59ced2fbb9b5ca13287
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
grub-core/net/ip.c | 10 +++++++++-
|
||||
1 file changed, 9 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/grub-core/net/ip.c b/grub-core/net/ip.c
|
||||
index ea5edf8f1..74e4e8b06 100644
|
||||
--- a/grub-core/net/ip.c
|
||||
+++ b/grub-core/net/ip.c
|
||||
@@ -25,6 +25,7 @@
|
||||
#include <grub/net/netbuff.h>
|
||||
#include <grub/mm.h>
|
||||
#include <grub/priority_queue.h>
|
||||
+#include <grub/safemath.h>
|
||||
#include <grub/time.h>
|
||||
|
||||
struct iphdr {
|
||||
@@ -512,7 +513,14 @@ grub_net_recv_ip4_packets (struct grub_net_buff *nb,
|
||||
{
|
||||
rsm->total_len = (8 * (grub_be_to_cpu16 (iph->frags) & OFFSET_MASK)
|
||||
+ (nb->tail - nb->data));
|
||||
- rsm->total_len -= ((iph->verhdrlen & 0xf) * sizeof (grub_uint32_t));
|
||||
+
|
||||
+ if (grub_sub (rsm->total_len, (iph->verhdrlen & 0xf) * sizeof (grub_uint32_t),
|
||||
+ &rsm->total_len))
|
||||
+ {
|
||||
+ grub_dprintf ("net", "IP reassembly size underflow\n");
|
||||
+ return GRUB_ERR_NONE;
|
||||
+ }
|
||||
+
|
||||
rsm->asm_netbuff = grub_netbuff_alloc (rsm->total_len);
|
||||
if (!rsm->asm_netbuff)
|
||||
{
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -1,50 +0,0 @@
|
||||
From 6bb49bda656e1121fd303cf3e69709172e267718 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Axtens <dja@axtens.net>
|
||||
Date: Tue, 8 Mar 2022 18:17:03 +1100
|
||||
Subject: [PATCH] net/http: Fix OOB write for split http headers
|
||||
|
||||
GRUB has special code for handling an http header that is split
|
||||
across two packets.
|
||||
|
||||
The code tracks the end of line by looking for a "\n" byte. The
|
||||
code for split headers has always advanced the pointer just past the
|
||||
end of the line, whereas the code that handles unsplit headers does
|
||||
not advance the pointer. This extra advance causes the length to be
|
||||
one greater, which breaks an assumption in parse_line(), leading to
|
||||
it writing a NUL byte one byte past the end of the buffer where we
|
||||
reconstruct the line from the two packets.
|
||||
|
||||
It's conceivable that an attacker controlled set of packets could
|
||||
cause this to zero out the first byte of the "next" pointer of the
|
||||
grub_mm_region structure following the current_line buffer.
|
||||
|
||||
Do not advance the pointer in the split header case.
|
||||
|
||||
Fixes: CVE-2022-28734
|
||||
|
||||
Signed-off-by: Daniel Axtens <dja@axtens.net>
|
||||
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
|
||||
Upstream: ec6bfd3237394c1c7dbf2fd73417173318d22f4b
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
grub-core/net/http.c | 4 +---
|
||||
1 file changed, 1 insertion(+), 3 deletions(-)
|
||||
|
||||
diff --git a/grub-core/net/http.c b/grub-core/net/http.c
|
||||
index b616cf40b..a19b0a205 100644
|
||||
--- a/grub-core/net/http.c
|
||||
+++ b/grub-core/net/http.c
|
||||
@@ -190,9 +190,7 @@ http_receive (grub_net_tcp_socket_t sock __attribute__ ((unused)),
|
||||
int have_line = 1;
|
||||
char *t;
|
||||
ptr = grub_memchr (nb->data, '\n', nb->tail - nb->data);
|
||||
- if (ptr)
|
||||
- ptr++;
|
||||
- else
|
||||
+ if (ptr == NULL)
|
||||
{
|
||||
have_line = 0;
|
||||
ptr = (char *) nb->tail;
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -1,52 +0,0 @@
|
||||
From 2974684d2f7f85a5c57af8155cc3b70c04ec1d6b Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Axtens <dja@axtens.net>
|
||||
Date: Tue, 8 Mar 2022 19:04:40 +1100
|
||||
Subject: [PATCH] net/http: Error out on headers with LF without CR
|
||||
|
||||
In a similar vein to the previous patch, parse_line() would write
|
||||
a NUL byte past the end of the buffer if there was an HTTP header
|
||||
with a LF rather than a CRLF.
|
||||
|
||||
RFC-2616 says:
|
||||
|
||||
Many HTTP/1.1 header field values consist of words separated by LWS
|
||||
or special characters. These special characters MUST be in a quoted
|
||||
string to be used within a parameter value (as defined in section 3.6).
|
||||
|
||||
We don't support quoted sections or continuation lines, etc.
|
||||
|
||||
If we see an LF that's not part of a CRLF, bail out.
|
||||
|
||||
Fixes: CVE-2022-28734
|
||||
|
||||
Signed-off-by: Daniel Axtens <dja@axtens.net>
|
||||
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
|
||||
Upstream: b26b4c08e7119281ff30d0fb4a6169bd2afa8fe4
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
grub-core/net/http.c | 8 ++++++++
|
||||
1 file changed, 8 insertions(+)
|
||||
|
||||
diff --git a/grub-core/net/http.c b/grub-core/net/http.c
|
||||
index a19b0a205..1fa62b5cb 100644
|
||||
--- a/grub-core/net/http.c
|
||||
+++ b/grub-core/net/http.c
|
||||
@@ -68,7 +68,15 @@ parse_line (grub_file_t file, http_data_t data, char *ptr, grub_size_t len)
|
||||
char *end = ptr + len;
|
||||
while (end > ptr && *(end - 1) == '\r')
|
||||
end--;
|
||||
+
|
||||
+ /* LF without CR. */
|
||||
+ if (end == ptr + len)
|
||||
+ {
|
||||
+ data->errmsg = grub_strdup (_("invalid HTTP header - LF without CR"));
|
||||
+ return GRUB_ERR_NONE;
|
||||
+ }
|
||||
*end = 0;
|
||||
+
|
||||
/* Trailing CRLF. */
|
||||
if (data->in_chunk_len == 1)
|
||||
{
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -1,116 +0,0 @@
|
||||
From 1aefeca0f6304a20c1a3711cb9e89c5fdb901b6b Mon Sep 17 00:00:00 2001
|
||||
From: Zhang Boyang <zhangboyang.id@gmail.com>
|
||||
Date: Fri, 5 Aug 2022 00:51:20 +0800
|
||||
Subject: [PATCH] font: Fix size overflow in grub_font_get_glyph_internal()
|
||||
|
||||
The length of memory allocation and file read may overflow. This patch
|
||||
fixes the problem by using safemath macros.
|
||||
|
||||
There is a lot of code repetition like "(x * y + 7) / 8". It is unsafe
|
||||
if overflow happens. This patch introduces grub_video_bitmap_calc_1bpp_bufsz().
|
||||
It is safe replacement for such code. It has safemath-like prototype.
|
||||
|
||||
This patch also introduces grub_cast(value, pointer), it casts value to
|
||||
typeof(*pointer) then store the value to *pointer. It returns true when
|
||||
overflow occurs or false if there is no overflow. The semantics of arguments
|
||||
and return value are designed to be consistent with other safemath macros.
|
||||
|
||||
Signed-off-by: Zhang Boyang <zhangboyang.id@gmail.com>
|
||||
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
|
||||
Upstream: 9c76ec09ae08155df27cd237eaea150b4f02f532
|
||||
[Thomas: needed to backport 768e1ef2fc159f6e14e7246e4be09363708ac39e,
|
||||
which fixes CVE-2022-2601]
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
grub-core/font/font.c | 17 +++++++++++++----
|
||||
include/grub/bitmap.h | 18 ++++++++++++++++++
|
||||
include/grub/safemath.h | 2 ++
|
||||
3 files changed, 33 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/grub-core/font/font.c b/grub-core/font/font.c
|
||||
index d09bb38d8..876b5b695 100644
|
||||
--- a/grub-core/font/font.c
|
||||
+++ b/grub-core/font/font.c
|
||||
@@ -739,7 +739,8 @@ grub_font_get_glyph_internal (grub_font_t font, grub_uint32_t code)
|
||||
grub_int16_t xoff;
|
||||
grub_int16_t yoff;
|
||||
grub_int16_t dwidth;
|
||||
- int len;
|
||||
+ grub_ssize_t len;
|
||||
+ grub_size_t sz;
|
||||
|
||||
if (index_entry->glyph)
|
||||
/* Return cached glyph. */
|
||||
@@ -766,9 +767,17 @@ grub_font_get_glyph_internal (grub_font_t font, grub_uint32_t code)
|
||||
return 0;
|
||||
}
|
||||
|
||||
- len = (width * height + 7) / 8;
|
||||
- glyph = grub_malloc (sizeof (struct grub_font_glyph) + len);
|
||||
- if (!glyph)
|
||||
+ /* Calculate real struct size of current glyph. */
|
||||
+ if (grub_video_bitmap_calc_1bpp_bufsz (width, height, &len) ||
|
||||
+ grub_add (sizeof (struct grub_font_glyph), len, &sz))
|
||||
+ {
|
||||
+ remove_font (font);
|
||||
+ return 0;
|
||||
+ }
|
||||
+
|
||||
+ /* Allocate and initialize the glyph struct. */
|
||||
+ glyph = grub_malloc (sz);
|
||||
+ if (glyph == NULL)
|
||||
{
|
||||
remove_font (font);
|
||||
return 0;
|
||||
diff --git a/include/grub/bitmap.h b/include/grub/bitmap.h
|
||||
index 5728f8ca3..0d9603f61 100644
|
||||
--- a/include/grub/bitmap.h
|
||||
+++ b/include/grub/bitmap.h
|
||||
@@ -23,6 +23,7 @@
|
||||
#include <grub/symbol.h>
|
||||
#include <grub/types.h>
|
||||
#include <grub/video.h>
|
||||
+#include <grub/safemath.h>
|
||||
|
||||
struct grub_video_bitmap
|
||||
{
|
||||
@@ -79,6 +80,23 @@ grub_video_bitmap_get_height (struct grub_video_bitmap *bitmap)
|
||||
return bitmap->mode_info.height;
|
||||
}
|
||||
|
||||
+/*
|
||||
+ * Calculate and store the size of data buffer of 1bit bitmap in result.
|
||||
+ * Equivalent to "*result = (width * height + 7) / 8" if no overflow occurs.
|
||||
+ * Return true when overflow occurs or false if there is no overflow.
|
||||
+ * This function is intentionally implemented as a macro instead of
|
||||
+ * an inline function. Although a bit awkward, it preserves data types for
|
||||
+ * safemath macros and reduces macro side effects as much as possible.
|
||||
+ *
|
||||
+ * XXX: Will report false overflow if width * height > UINT64_MAX.
|
||||
+ */
|
||||
+#define grub_video_bitmap_calc_1bpp_bufsz(width, height, result) \
|
||||
+({ \
|
||||
+ grub_uint64_t _bitmap_pixels; \
|
||||
+ grub_mul ((width), (height), &_bitmap_pixels) ? 1 : \
|
||||
+ grub_cast (_bitmap_pixels / GRUB_CHAR_BIT + !!(_bitmap_pixels % GRUB_CHAR_BIT), (result)); \
|
||||
+})
|
||||
+
|
||||
void EXPORT_FUNC (grub_video_bitmap_get_mode_info) (struct grub_video_bitmap *bitmap,
|
||||
struct grub_video_mode_info *mode_info);
|
||||
|
||||
diff --git a/include/grub/safemath.h b/include/grub/safemath.h
|
||||
index c17b89bba..bb0f826de 100644
|
||||
--- a/include/grub/safemath.h
|
||||
+++ b/include/grub/safemath.h
|
||||
@@ -30,6 +30,8 @@
|
||||
#define grub_sub(a, b, res) __builtin_sub_overflow(a, b, res)
|
||||
#define grub_mul(a, b, res) __builtin_mul_overflow(a, b, res)
|
||||
|
||||
+#define grub_cast(a, res) grub_add ((a), 0, (res))
|
||||
+
|
||||
#else
|
||||
#error gcc 5.1 or newer or clang 3.8 or newer is required
|
||||
#endif
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -1,83 +0,0 @@
|
||||
From fefba72d17364d6212cfd3be2232f4ce0ba23b82 Mon Sep 17 00:00:00 2001
|
||||
From: Zhang Boyang <zhangboyang.id@gmail.com>
|
||||
Date: Fri, 5 Aug 2022 01:58:27 +0800
|
||||
Subject: [PATCH] font: Fix several integer overflows in
|
||||
grub_font_construct_glyph()
|
||||
|
||||
This patch fixes several integer overflows in grub_font_construct_glyph().
|
||||
Glyphs of invalid size, zero or leading to an overflow, are rejected.
|
||||
The inconsistency between "glyph" and "max_glyph_size" when grub_malloc()
|
||||
returns NULL is fixed too.
|
||||
|
||||
Fixes: CVE-2022-2601
|
||||
|
||||
Reported-by: Zhang Boyang <zhangboyang.id@gmail.com>
|
||||
Signed-off-by: Zhang Boyang <zhangboyang.id@gmail.com>
|
||||
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
|
||||
Upstream: 768e1ef2fc159f6e14e7246e4be09363708ac39e
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
grub-core/font/font.c | 29 +++++++++++++++++------------
|
||||
1 file changed, 17 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/grub-core/font/font.c b/grub-core/font/font.c
|
||||
index 876b5b695..0ff552578 100644
|
||||
--- a/grub-core/font/font.c
|
||||
+++ b/grub-core/font/font.c
|
||||
@@ -1515,6 +1515,7 @@ grub_font_construct_glyph (grub_font_t hinted_font,
|
||||
struct grub_video_signed_rect bounds;
|
||||
static struct grub_font_glyph *glyph = 0;
|
||||
static grub_size_t max_glyph_size = 0;
|
||||
+ grub_size_t cur_glyph_size;
|
||||
|
||||
ensure_comb_space (glyph_id);
|
||||
|
||||
@@ -1531,29 +1532,33 @@ grub_font_construct_glyph (grub_font_t hinted_font,
|
||||
if (!glyph_id->ncomb && !glyph_id->attributes)
|
||||
return main_glyph;
|
||||
|
||||
- if (max_glyph_size < sizeof (*glyph) + (bounds.width * bounds.height + GRUB_CHAR_BIT - 1) / GRUB_CHAR_BIT)
|
||||
+ if (grub_video_bitmap_calc_1bpp_bufsz (bounds.width, bounds.height, &cur_glyph_size) ||
|
||||
+ grub_add (sizeof (*glyph), cur_glyph_size, &cur_glyph_size))
|
||||
+ return main_glyph;
|
||||
+
|
||||
+ if (max_glyph_size < cur_glyph_size)
|
||||
{
|
||||
grub_free (glyph);
|
||||
- max_glyph_size = (sizeof (*glyph) + (bounds.width * bounds.height + GRUB_CHAR_BIT - 1) / GRUB_CHAR_BIT) * 2;
|
||||
- if (max_glyph_size < 8)
|
||||
- max_glyph_size = 8;
|
||||
- glyph = grub_malloc (max_glyph_size);
|
||||
+ if (grub_mul (cur_glyph_size, 2, &max_glyph_size))
|
||||
+ max_glyph_size = 0;
|
||||
+ glyph = max_glyph_size > 0 ? grub_malloc (max_glyph_size) : NULL;
|
||||
}
|
||||
if (!glyph)
|
||||
{
|
||||
+ max_glyph_size = 0;
|
||||
grub_errno = GRUB_ERR_NONE;
|
||||
return main_glyph;
|
||||
}
|
||||
|
||||
- grub_memset (glyph, 0, sizeof (*glyph)
|
||||
- + (bounds.width * bounds.height
|
||||
- + GRUB_CHAR_BIT - 1) / GRUB_CHAR_BIT);
|
||||
+ grub_memset (glyph, 0, cur_glyph_size);
|
||||
|
||||
glyph->font = main_glyph->font;
|
||||
- glyph->width = bounds.width;
|
||||
- glyph->height = bounds.height;
|
||||
- glyph->offset_x = bounds.x;
|
||||
- glyph->offset_y = bounds.y;
|
||||
+ if (bounds.width == 0 || bounds.height == 0 ||
|
||||
+ grub_cast (bounds.width, &glyph->width) ||
|
||||
+ grub_cast (bounds.height, &glyph->height) ||
|
||||
+ grub_cast (bounds.x, &glyph->offset_x) ||
|
||||
+ grub_cast (bounds.y, &glyph->offset_y))
|
||||
+ return main_glyph;
|
||||
|
||||
if (glyph_id->attributes & GRUB_UNICODE_GLYPH_ATTRIBUTE_MIRROR)
|
||||
grub_font_blit_glyph_mirror (glyph, main_glyph,
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -1,93 +0,0 @@
|
||||
From 79bd19e078c5053d800b1b4d3a901083da947e70 Mon Sep 17 00:00:00 2001
|
||||
From: Zhang Boyang <zhangboyang.id@gmail.com>
|
||||
Date: Mon, 24 Oct 2022 08:05:35 +0800
|
||||
Subject: [PATCH] font: Fix an integer underflow in blit_comb()
|
||||
|
||||
The expression (ctx.bounds.height - combining_glyphs[i]->height) / 2 may
|
||||
evaluate to a very big invalid value even if both ctx.bounds.height and
|
||||
combining_glyphs[i]->height are small integers. For example, if
|
||||
ctx.bounds.height is 10 and combining_glyphs[i]->height is 12, this
|
||||
expression evaluates to 2147483647 (expected -1). This is because
|
||||
coordinates are allowed to be negative but ctx.bounds.height is an
|
||||
unsigned int. So, the subtraction operates on unsigned ints and
|
||||
underflows to a very big value. The division makes things even worse.
|
||||
The quotient is still an invalid value even if converted back to int.
|
||||
|
||||
This patch fixes the problem by casting ctx.bounds.height to int. As
|
||||
a result the subtraction will operate on int and grub_uint16_t which
|
||||
will be promoted to an int. So, the underflow will no longer happen. Other
|
||||
uses of ctx.bounds.height (and ctx.bounds.width) are also casted to int,
|
||||
to ensure coordinates are always calculated on signed integers.
|
||||
|
||||
Fixes: CVE-2022-3775
|
||||
|
||||
Reported-by: Daniel Axtens <dja@axtens.net>
|
||||
Signed-off-by: Zhang Boyang <zhangboyang.id@gmail.com>
|
||||
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
|
||||
Upstream: 992c06191babc1e109caf40d6a07ec6fdef427af
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
|
||||
---
|
||||
grub-core/font/font.c | 16 ++++++++--------
|
||||
1 file changed, 8 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/grub-core/font/font.c b/grub-core/font/font.c
|
||||
index 0ff552578..7b1cbde07 100644
|
||||
--- a/grub-core/font/font.c
|
||||
+++ b/grub-core/font/font.c
|
||||
@@ -1206,12 +1206,12 @@ blit_comb (const struct grub_unicode_glyph *glyph_id,
|
||||
ctx.bounds.height = main_glyph->height;
|
||||
|
||||
above_rightx = main_glyph->offset_x + main_glyph->width;
|
||||
- above_righty = ctx.bounds.y + ctx.bounds.height;
|
||||
+ above_righty = ctx.bounds.y + (int) ctx.bounds.height;
|
||||
|
||||
above_leftx = main_glyph->offset_x;
|
||||
- above_lefty = ctx.bounds.y + ctx.bounds.height;
|
||||
+ above_lefty = ctx.bounds.y + (int) ctx.bounds.height;
|
||||
|
||||
- below_rightx = ctx.bounds.x + ctx.bounds.width;
|
||||
+ below_rightx = ctx.bounds.x + (int) ctx.bounds.width;
|
||||
below_righty = ctx.bounds.y;
|
||||
|
||||
comb = grub_unicode_get_comb (glyph_id);
|
||||
@@ -1224,7 +1224,7 @@ blit_comb (const struct grub_unicode_glyph *glyph_id,
|
||||
|
||||
if (!combining_glyphs[i])
|
||||
continue;
|
||||
- targetx = (ctx.bounds.width - combining_glyphs[i]->width) / 2 + ctx.bounds.x;
|
||||
+ targetx = ((int) ctx.bounds.width - combining_glyphs[i]->width) / 2 + ctx.bounds.x;
|
||||
/* CGJ is to avoid diacritics reordering. */
|
||||
if (comb[i].code
|
||||
== GRUB_UNICODE_COMBINING_GRAPHEME_JOINER)
|
||||
@@ -1234,8 +1234,8 @@ blit_comb (const struct grub_unicode_glyph *glyph_id,
|
||||
case GRUB_UNICODE_COMB_OVERLAY:
|
||||
do_blit (combining_glyphs[i],
|
||||
targetx,
|
||||
- (ctx.bounds.height - combining_glyphs[i]->height) / 2
|
||||
- - (ctx.bounds.height + ctx.bounds.y), &ctx);
|
||||
+ ((int) ctx.bounds.height - combining_glyphs[i]->height) / 2
|
||||
+ - ((int) ctx.bounds.height + ctx.bounds.y), &ctx);
|
||||
if (min_devwidth < combining_glyphs[i]->width)
|
||||
min_devwidth = combining_glyphs[i]->width;
|
||||
break;
|
||||
@@ -1308,7 +1308,7 @@ blit_comb (const struct grub_unicode_glyph *glyph_id,
|
||||
/* Fallthrough. */
|
||||
case GRUB_UNICODE_STACK_ATTACHED_ABOVE:
|
||||
do_blit (combining_glyphs[i], targetx,
|
||||
- -(ctx.bounds.height + ctx.bounds.y + space
|
||||
+ -((int) ctx.bounds.height + ctx.bounds.y + space
|
||||
+ combining_glyphs[i]->height), &ctx);
|
||||
if (min_devwidth < combining_glyphs[i]->width)
|
||||
min_devwidth = combining_glyphs[i]->width;
|
||||
@@ -1316,7 +1316,7 @@ blit_comb (const struct grub_unicode_glyph *glyph_id,
|
||||
|
||||
case GRUB_UNICODE_COMB_HEBREW_DAGESH:
|
||||
do_blit (combining_glyphs[i], targetx,
|
||||
- -(ctx.bounds.height / 2 + ctx.bounds.y
|
||||
+ -((int) ctx.bounds.height / 2 + ctx.bounds.y
|
||||
+ combining_glyphs[i]->height / 2), &ctx);
|
||||
if (min_devwidth < combining_glyphs[i]->width)
|
||||
min_devwidth = combining_glyphs[i]->width;
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -1,61 +0,0 @@
|
||||
From 7fd5feff97c4b1f446f8fcf6d37aca0c64e7c763 Mon Sep 17 00:00:00 2001
|
||||
From: Javier Martinez Canillas <javierm@redhat.com>
|
||||
Date: Fri, 11 Jun 2021 21:36:16 +0200
|
||||
Subject: [PATCH] fs/ext2: Ignore checksum seed incompat feature
|
||||
|
||||
This incompat feature is used to denote that the filesystem stored its
|
||||
metadata checksum seed in the superblock. This is used to allow tune2fs
|
||||
changing the UUID on a mounted metdata_csum filesystem without having
|
||||
to rewrite all the disk metadata. However, the GRUB doesn't use the
|
||||
metadata checksum at all. So, it can just ignore this feature if it
|
||||
is enabled. This is consistent with the GRUB filesystem code in general
|
||||
which just does a best effort to access the filesystem's data.
|
||||
|
||||
The checksum seed incompat feature has to be removed from the ignore
|
||||
list if the support for metadata checksum verification is added to the
|
||||
GRUB ext2 driver later.
|
||||
|
||||
Suggested-by: Eric Sandeen <esandeen@redhat.com>
|
||||
Suggested-by: Lukas Czerner <lczerner@redhat.com>
|
||||
Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
|
||||
Reviewed-by: Lukas Czerner <lczerner@redhat.com>
|
||||
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
|
||||
Upstream: 7fd5feff97c4b1f446f8fcf6d37aca0c64e7c763
|
||||
Signed-off-by: Jens Maus <mail@jens-maus.de>
|
||||
---
|
||||
grub-core/fs/ext2.c | 10 ++++++++--
|
||||
1 file changed, 8 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/grub-core/fs/ext2.c b/grub-core/fs/ext2.c
|
||||
index e7dd78e66..4953a1591 100644
|
||||
--- a/grub-core/fs/ext2.c
|
||||
+++ b/grub-core/fs/ext2.c
|
||||
@@ -103,6 +103,7 @@ GRUB_MOD_LICENSE ("GPLv3+");
|
||||
#define EXT4_FEATURE_INCOMPAT_64BIT 0x0080
|
||||
#define EXT4_FEATURE_INCOMPAT_MMP 0x0100
|
||||
#define EXT4_FEATURE_INCOMPAT_FLEX_BG 0x0200
|
||||
+#define EXT4_FEATURE_INCOMPAT_CSUM_SEED 0x2000
|
||||
#define EXT4_FEATURE_INCOMPAT_ENCRYPT 0x10000
|
||||
|
||||
/* The set of back-incompatible features this driver DOES support. Add (OR)
|
||||
@@ -123,10 +124,15 @@ GRUB_MOD_LICENSE ("GPLv3+");
|
||||
* mmp: Not really back-incompatible - was added as such to
|
||||
* avoid multiple read-write mounts. Safe to ignore for this
|
||||
* RO driver.
|
||||
+ * checksum seed: Not really back-incompatible - was added to allow tools
|
||||
+ * such as tune2fs to change the UUID on a mounted metadata
|
||||
+ * checksummed filesystem. Safe to ignore for now since the
|
||||
+ * driver doesn't support checksum verification. However, it
|
||||
+ * has to be removed from this list if the support is added later.
|
||||
*/
|
||||
#define EXT2_DRIVER_IGNORED_INCOMPAT ( EXT3_FEATURE_INCOMPAT_RECOVER \
|
||||
- | EXT4_FEATURE_INCOMPAT_MMP)
|
||||
-
|
||||
+ | EXT4_FEATURE_INCOMPAT_MMP \
|
||||
+ | EXT4_FEATURE_INCOMPAT_CSUM_SEED)
|
||||
|
||||
#define EXT3_JOURNAL_MAGIC_NUMBER 0xc03b3998U
|
||||
|
||||
--
|
||||
2.34.1
|
||||
|
||||
@@ -1,60 +0,0 @@
|
||||
From 2e9fa73a040462b81bfbfe56c0bc7ad2d30b446b Mon Sep 17 00:00:00 2001
|
||||
From: Theodore Ts'o <tytso@mit.edu>
|
||||
Date: Tue, 30 Aug 2022 22:41:59 -0400
|
||||
Subject: [PATCH] fs/ext2: Ignore the large_dir incompat feature
|
||||
|
||||
Recently, ext4 added the large_dir feature, which adds support for
|
||||
a 3 level htree directory support.
|
||||
|
||||
The GRUB supports existing file systems with htree directories by
|
||||
ignoring their existence, and since the index nodes for the hash tree
|
||||
look like deleted directory entries (by design), the GRUB can simply do
|
||||
a brute force O(n) linear search of directories. The same is true for
|
||||
3 level deep htrees indicated by large_dir feature flag.
|
||||
|
||||
Hence, it is safe for the GRUB to ignore the large_dir incompat feature.
|
||||
|
||||
Fixes: https://savannah.gnu.org/bugs/?61606
|
||||
|
||||
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
|
||||
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
|
||||
Upstream: 2e9fa73a040462b81bfbfe56c0bc7ad2d30b446b
|
||||
Signed-off-by: Jens Maus <mail@jens-maus.de>
|
||||
---
|
||||
grub-core/fs/ext2.c | 10 +++++++++-
|
||||
1 file changed, 9 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/grub-core/fs/ext2.c b/grub-core/fs/ext2.c
|
||||
index 0989e26e1..e1cc5e62a 100644
|
||||
--- a/grub-core/fs/ext2.c
|
||||
+++ b/grub-core/fs/ext2.c
|
||||
@@ -104,6 +104,7 @@ GRUB_MOD_LICENSE ("GPLv3+");
|
||||
#define EXT4_FEATURE_INCOMPAT_MMP 0x0100
|
||||
#define EXT4_FEATURE_INCOMPAT_FLEX_BG 0x0200
|
||||
#define EXT4_FEATURE_INCOMPAT_CSUM_SEED 0x2000
|
||||
+#define EXT4_FEATURE_INCOMPAT_LARGEDIR 0x4000 /* >2GB or 3 level htree */
|
||||
#define EXT4_FEATURE_INCOMPAT_ENCRYPT 0x10000
|
||||
|
||||
/* The set of back-incompatible features this driver DOES support. Add (OR)
|
||||
@@ -129,10 +130,17 @@ GRUB_MOD_LICENSE ("GPLv3+");
|
||||
* checksummed filesystem. Safe to ignore for now since the
|
||||
* driver doesn't support checksum verification. However, it
|
||||
* has to be removed from this list if the support is added later.
|
||||
+ * large_dir: Not back-incompatible given that the GRUB ext2 driver does
|
||||
+ * not implement EXT2_FEATURE_COMPAT_DIR_INDEX. If the GRUB
|
||||
+ * eventually supports the htree feature (aka dir_index)
|
||||
+ * it should support 3 level htrees and then move
|
||||
+ * EXT4_FEATURE_INCOMPAT_LARGEDIR to
|
||||
+ * EXT2_DRIVER_SUPPORTED_INCOMPAT.
|
||||
*/
|
||||
#define EXT2_DRIVER_IGNORED_INCOMPAT ( EXT3_FEATURE_INCOMPAT_RECOVER \
|
||||
| EXT4_FEATURE_INCOMPAT_MMP \
|
||||
- | EXT4_FEATURE_INCOMPAT_CSUM_SEED)
|
||||
+ | EXT4_FEATURE_INCOMPAT_CSUM_SEED \
|
||||
+ | EXT4_FEATURE_INCOMPAT_LARGEDIR)
|
||||
|
||||
#define EXT3_JOURNAL_MAGIC_NUMBER 0xc03b3998U
|
||||
|
||||
--
|
||||
2.34.1
|
||||
|
||||
@@ -34,25 +34,6 @@ GRUB2_IGNORE_CVES += CVE-2020-15705
|
||||
GRUB2_IGNORE_CVES += CVE-2021-3981
|
||||
# vulnerability is specific to the SUSE distribution
|
||||
GRUB2_IGNORE_CVES += CVE-2021-46705
|
||||
# 0005-loader-efi-chainloader-Use-grub_loader_set_ex.patch
|
||||
GRUB2_IGNORE_CVES += CVE-2022-28736
|
||||
# 0006-kern-efi-sb-Reject-non-kernel-files-in-the-shim_lock.patch
|
||||
GRUB2_IGNORE_CVES += CVE-2022-28735
|
||||
# 0010-video-readers-png-Drop-greyscale-support-to-fix-heap.patch
|
||||
GRUB2_IGNORE_CVES += CVE-2021-3695
|
||||
# 0011-video-readers-png-Avoid-heap-OOB-R-W-inserting-huff-.patch
|
||||
GRUB2_IGNORE_CVES += CVE-2021-3696
|
||||
# 0012-video-readers-jpeg-Block-int-underflow-wild-pointer-.patch
|
||||
GRUB2_IGNORE_CVES += CVE-2021-3697
|
||||
# 0013-net-ip-Do-IP-fragment-maths-safely.patch
|
||||
GRUB2_IGNORE_CVES += CVE-2022-28733
|
||||
# 0014-net-http-Fix-OOB-write-for-split-http-headers.patch
|
||||
# 0015-net-http-Error-out-on-headers-with-LF-without-CR.patch
|
||||
GRUB2_IGNORE_CVES += CVE-2022-28734
|
||||
# 0017-font-Fix-several-integer-overflows-in-grub_font_cons.patch
|
||||
GRUB2_IGNORE_CVES += CVE-2022-2601
|
||||
# 0018-font-Fix-an-integer-underflow-in-blit_comb.patch
|
||||
GRUB2_IGNORE_CVES += CVE-2022-3775
|
||||
|
||||
ifeq ($(BR2_TARGET_GRUB2_INSTALL_TOOLS),y)
|
||||
GRUB2_INSTALL_TARGET = YES
|
||||
|
||||
@@ -0,0 +1,52 @@
|
||||
Use CROSS_COMPILE as compiler name and stop using libc
|
||||
|
||||
Signed-off-by: Alexandre Belloni <abelloni@adeneo-embedded.com>
|
||||
---
|
||||
makerule/lpc32xx/make.lpc32xx.gnu | 22 +++++++++++-----------
|
||||
1 files changed, 11 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/makerule/lpc32xx/make.lpc32xx.gnu b/makerule/lpc32xx/make.lpc32xx.gnu
|
||||
index 1014c28..3277d99 100644
|
||||
--- a/makerule/lpc32xx/make.lpc32xx.gnu
|
||||
+++ b/makerule/lpc32xx/make.lpc32xx.gnu
|
||||
@@ -27,19 +27,19 @@ CFLAGS += -mno-sched-prolog -fno-hosted -mno-thumb-interwork -ffunction-sectio
|
||||
CFLAGS += -I$(CSP_INC_DIR) -I$(BSP_INC_DIR) -I$(GEN_INC_DIR)
|
||||
AFLAGS = -mcpu=arm926ej-s
|
||||
AFLAGS += -I$(CSP_INC_DIR) -I$(BSP_INC_DIR) -I$(GEN_INC_DIR)
|
||||
-CC = arm-none-eabi-gcc
|
||||
-AS = arm-none-eabi-as
|
||||
-AR = arm-none-eabi-ar -r
|
||||
-LD = arm-none-eabi-gcc
|
||||
-NM = arm-none-eabi-nm
|
||||
-OBJDUMP = arm-none-eabi-objdump
|
||||
-OBJCOPY = arm-none-eabi-objcopy
|
||||
-READELF = arm-none-eabi-readelf
|
||||
+CC = $(CROSS_COMPILE)gcc
|
||||
+AS = $(CROSS_COMPILE)as
|
||||
+AR = $(CROSS_COMPILE)ar -r
|
||||
+LD = $(CROSS_COMPILE)gcc
|
||||
+NM = $(CROSS_COMPILE)nm
|
||||
+OBJDUMP = $(CROSS_COMPILE)objdump
|
||||
+OBJCOPY = $(CROSS_COMPILE)objcopy
|
||||
+READELF = $(CROSS_COMPILE)readelf
|
||||
LDFLAGS += -Wl,--gc-sections
|
||||
|
||||
LK = -static
|
||||
LK += -Wl,--start-group $(TARGET_CSP_LIB) $(TARGET_BSP_LIB) $(TARGET_GEN_LIB)
|
||||
-LK += -lgcc -lc -lg -lm -lstdc++ -lsupc++
|
||||
+LK += -nostdlib -lgcc #-lc -lg -lm -lstdc++ -lsupc++
|
||||
LK += -Wl,--end-group
|
||||
MAP = -Xlinker -Map -Xlinker
|
||||
LDESC = -Xlinker -T
|
||||
@@ -47,6 +47,6 @@ ENTRY = -e
|
||||
BIN = -bin
|
||||
EXT = .elf
|
||||
LEXT =
|
||||
-ELFTOREC =arm-none-eabi-objcopy -O srec --strip-all --verbose
|
||||
-ELFTOBIN =arm-none-eabi-objcopy -I elf32-littlearm -O binary --strip-all --verbose
|
||||
+ELFTOREC = $(OBJCOPY) -O srec --strip-all --verbose
|
||||
+ELFTOBIN = $(OBJCOPY) -I elf32-littlearm -O binary --strip-all --verbose
|
||||
REC =.srec
|
||||
--
|
||||
1.7.7.3
|
||||
|
||||
@@ -0,0 +1,969 @@
|
||||
Remove duplicated files to stop the linker from complaining about duplicate
|
||||
symbols
|
||||
|
||||
Signed-off-by: Alexandre Belloni <abelloni@adeneo-embedded.com>
|
||||
---
|
||||
--- a/csps/lpc32xx/bsps/fdi3250/startup/examples/s1l/sysapi_timer.c 2011-10-05 19:10:37.000000000 +0200
|
||||
+++ /dev/null 2012-01-01 16:39:47.918907000 +0100
|
||||
@@ -1,212 +0,0 @@
|
||||
-/***********************************************************************
|
||||
- * $Id:: sysapi_timer.c 3394 2010-05-06 17:56:27Z usb10132 $
|
||||
- *
|
||||
- * Project: Time support functions
|
||||
- *
|
||||
- * Description:
|
||||
- * Implements the following functions required for the S1L API
|
||||
- * time_init
|
||||
- * time_reset
|
||||
- * time_start
|
||||
- * time_stop
|
||||
- * time_get
|
||||
- * time_get_rate
|
||||
- *
|
||||
- ***********************************************************************
|
||||
- * Software that is described herein is for illustrative purposes only
|
||||
- * which provides customers with programming information regarding the
|
||||
- * products. This software is supplied "AS IS" without any warranties.
|
||||
- * NXP Semiconductors assumes no responsibility or liability for the
|
||||
- * use of the software, conveys no license or title under any patent,
|
||||
- * copyright, or mask work right to the product. NXP Semiconductors
|
||||
- * reserves the right to make changes in the software without
|
||||
- * notification. NXP Semiconductors also make no representation or
|
||||
- * warranty that such application will be suitable for the specified
|
||||
- * use without further testing or modification.
|
||||
- **********************************************************************/
|
||||
-
|
||||
-#include "s1l_sys_inf.h"
|
||||
-#include "lpc32xx_intc_driver.h"
|
||||
-#include "lpc32xx_timer_driver.h"
|
||||
-
|
||||
-static UNS_64 base_rate;
|
||||
-static INT_32 tdev = 0;
|
||||
-
|
||||
-/***********************************************************************
|
||||
- *
|
||||
- * Function: time_init
|
||||
- *
|
||||
- * Purpose: Initializes time system
|
||||
- *
|
||||
- * Processing: Initializes the system timer.
|
||||
- *
|
||||
- * Parameters: None
|
||||
- *
|
||||
- * Outputs: None
|
||||
- *
|
||||
- * Returns: 0 if the init failed, otherwise non-zero
|
||||
- *
|
||||
- * Notes: None
|
||||
- *
|
||||
- **********************************************************************/
|
||||
-INT_32 time_init(void)
|
||||
-{
|
||||
- TMR_PSCALE_SETUP_T pscale;
|
||||
-
|
||||
- /* Open timer driver */
|
||||
- if (tdev == 0)
|
||||
- {
|
||||
- tdev = timer_open((void *) TIMER_CNTR0, 0);
|
||||
- if (tdev != 0)
|
||||
- {
|
||||
- /* Use a prescale count to 100000 */
|
||||
- pscale.ps_tick_val = 100000;
|
||||
- pscale.ps_us_val = 0; /* Not needed when ps_tick_val != 0 */
|
||||
- timer_ioctl(tdev, TMR_SETUP_PSCALE, (INT_32) &pscale);
|
||||
-
|
||||
- /* Get timer clock rate */
|
||||
- base_rate = (UNS_64) timer_ioctl(tdev, TMR_GET_STATUS,
|
||||
- TMR_GET_CLOCK);
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- return tdev;
|
||||
-}
|
||||
-
|
||||
-/***********************************************************************
|
||||
- *
|
||||
- * Function: time_reset
|
||||
- *
|
||||
- * Purpose: Resets system timer
|
||||
- *
|
||||
- * Processing:
|
||||
- * See function.
|
||||
- *
|
||||
- * Parameters: None
|
||||
- *
|
||||
- * Outputs: None
|
||||
- *
|
||||
- * Returns: Nothing
|
||||
- *
|
||||
- * Notes: None
|
||||
- *
|
||||
- **********************************************************************/
|
||||
-void time_reset(void)
|
||||
-{
|
||||
- if (tdev != 0)
|
||||
- {
|
||||
- timer_ioctl(tdev, TMR_RESET, 1);
|
||||
- }
|
||||
-}
|
||||
-
|
||||
-/***********************************************************************
|
||||
- *
|
||||
- * Function: time_start
|
||||
- *
|
||||
- * Purpose: Starts system timer
|
||||
- *
|
||||
- * Processing:
|
||||
- * See function.
|
||||
- *
|
||||
- * Parameters: None
|
||||
- *
|
||||
- * Outputs: None
|
||||
- *
|
||||
- * Returns: Nothing
|
||||
- *
|
||||
- * Notes: None
|
||||
- *
|
||||
- **********************************************************************/
|
||||
-void time_start(void)
|
||||
-{
|
||||
- if (tdev != 0)
|
||||
- {
|
||||
- timer_ioctl(tdev, TMR_ENABLE, 1);
|
||||
- }
|
||||
-}
|
||||
-
|
||||
-/***********************************************************************
|
||||
- *
|
||||
- * Function: time_stop
|
||||
- *
|
||||
- * Purpose: Stops system timer
|
||||
- *
|
||||
- * Processing:
|
||||
- * See function.
|
||||
- *
|
||||
- * Parameters: None
|
||||
- *
|
||||
- * Outputs: None
|
||||
- *
|
||||
- * Returns: Nothing
|
||||
- *
|
||||
- * Notes: None
|
||||
- *
|
||||
- **********************************************************************/
|
||||
-void time_stop(void)
|
||||
-{
|
||||
- if (tdev != 0)
|
||||
- {
|
||||
- timer_ioctl(tdev, TMR_ENABLE, 0);
|
||||
- }
|
||||
-}
|
||||
-
|
||||
-/***********************************************************************
|
||||
- *
|
||||
- * Function: time_get
|
||||
- *
|
||||
- * Purpose: Returns current system time value
|
||||
- *
|
||||
- * Processing:
|
||||
- * See function.
|
||||
- *
|
||||
- * Parameters: None
|
||||
- *
|
||||
- * Outputs: None
|
||||
- *
|
||||
- * Returns: The number of ticks of the timer counter
|
||||
- *
|
||||
- * Notes: None
|
||||
- *
|
||||
- **********************************************************************/
|
||||
-UNS_64 time_get(void)
|
||||
-{
|
||||
- TMR_COUNTS_T tcounts;
|
||||
- UNS_64 ticks = 0;
|
||||
-
|
||||
- if (tdev != 0)
|
||||
- {
|
||||
- timer_ioctl(tdev, TMR_GET_COUNTS, (INT_32) &tcounts);
|
||||
-
|
||||
- /* Compute number of timer ticks */
|
||||
- ticks = (UNS_64) tcounts.count_val * 100000;
|
||||
- ticks = ticks + (UNS_64) tcounts.ps_count_val;
|
||||
- }
|
||||
-
|
||||
- return ticks;
|
||||
-}
|
||||
-
|
||||
-/***********************************************************************
|
||||
- *
|
||||
- * Function: time_get_rate
|
||||
- *
|
||||
- * Purpose:
|
||||
- * Returns base tick rate (ticks per second) of the time counter
|
||||
- *
|
||||
- * Processing:
|
||||
- * See function.
|
||||
- *
|
||||
- * Parameters: None
|
||||
- *
|
||||
- * Outputs: None
|
||||
- *
|
||||
- * Returns: The timer tick rate (in ticks per second)
|
||||
- *
|
||||
- * Notes: None
|
||||
- *
|
||||
- **********************************************************************/
|
||||
-UNS_64 time_get_rate(void)
|
||||
-{
|
||||
- return base_rate;
|
||||
-}
|
||||
-
|
||||
--- a/csps/lpc32xx/bsps/fdi3250/startup/examples/s1l/sys_mmu_cmd_group.c 2011-10-05 19:10:37.000000000 +0200
|
||||
+++ /dev/null 2012-01-01 16:39:47.918907000 +0100
|
||||
@@ -1,746 +0,0 @@
|
||||
-/***********************************************************************
|
||||
- * $Id:: sys_mmu_cmd_group.c 3430 2010-05-07 17:39:08Z usb10132 $
|
||||
- *
|
||||
- * Project: Command processor for peek, poke, dump, and fill
|
||||
- *
|
||||
- * Description:
|
||||
- * Processes commands from the command prompt
|
||||
- *
|
||||
- ***********************************************************************
|
||||
- * Software that is described herein is for illustrative purposes only
|
||||
- * which provides customers with programming information regarding the
|
||||
- * products. This software is supplied "AS IS" without any warranties.
|
||||
- * NXP Semiconductors assumes no responsibility or liability for the
|
||||
- * use of the software, conveys no license or title under any patent,
|
||||
- * copyright, or mask work right to the product. NXP Semiconductors
|
||||
- * reserves the right to make changes in the software without
|
||||
- * notification. NXP Semiconductors also make no representation or
|
||||
- * warranty that such application will be suitable for the specified
|
||||
- * use without further testing or modification.
|
||||
- **********************************************************************/
|
||||
-
|
||||
-#include "lpc_arm922t_cp15_driver.h"
|
||||
-#include "lpc_string.h"
|
||||
-#include "startup.h"
|
||||
-#include "s1l_cmds.h"
|
||||
-#include "s1l_sys_inf.h"
|
||||
-
|
||||
-/* dcache command */
|
||||
-BOOL_32 cmd_dcache(void);
|
||||
-static UNS_32 cmd_dcache_plist[] =
|
||||
-{
|
||||
- (PARSE_TYPE_STR), /* The "dcache" command */
|
||||
- (PARSE_TYPE_DEC | PARSE_TYPE_END)
|
||||
-};
|
||||
-static CMD_ROUTE_T core_dcache_cmd =
|
||||
-{
|
||||
- (UNS_8 *) "dcache",
|
||||
- cmd_dcache,
|
||||
- (UNS_8 *) "Enables, disables, or flushes data cache",
|
||||
- (UNS_8 *) "dcache [0(disable), 1(enable), 2(flush)]",
|
||||
- cmd_dcache_plist,
|
||||
- NULL
|
||||
-};
|
||||
-
|
||||
-/* icache command */
|
||||
-BOOL_32 cmd_icache(void);
|
||||
-static UNS_32 cmd_icache_plist[] =
|
||||
-{
|
||||
- (PARSE_TYPE_STR), /* The "icache" command */
|
||||
- (PARSE_TYPE_DEC | PARSE_TYPE_END)
|
||||
-};
|
||||
-static CMD_ROUTE_T core_icache_cmd =
|
||||
-{
|
||||
- (UNS_8 *) "icache",
|
||||
- cmd_icache,
|
||||
- (UNS_8 *) "Enables or disables instruction cache",
|
||||
- (UNS_8 *) "icache [0(disable), 1(enable)]",
|
||||
- cmd_icache_plist,
|
||||
- NULL
|
||||
-};
|
||||
-
|
||||
-/* inval command */
|
||||
-BOOL_32 cmd_inval(void);
|
||||
-static UNS_32 cmd_inval_plist[] =
|
||||
-{
|
||||
- (PARSE_TYPE_STR | PARSE_TYPE_END) /* The "inval" command */
|
||||
-};
|
||||
-static CMD_ROUTE_T core_inval_cmd =
|
||||
-{
|
||||
- (UNS_8 *) "inval",
|
||||
- cmd_inval,
|
||||
- (UNS_8 *) "Flushes data cache and invalidates instruction cache",
|
||||
- (UNS_8 *) "inval",
|
||||
- cmd_inval_plist,
|
||||
- NULL
|
||||
-};
|
||||
-
|
||||
-/* mmuenab command */
|
||||
-BOOL_32 cmd_mmuenab(void);
|
||||
-static UNS_32 cmd_mmuenab_plist[] =
|
||||
-{
|
||||
- (PARSE_TYPE_STR), /* The "mmuenab" command */
|
||||
- (PARSE_TYPE_DEC | PARSE_TYPE_END)
|
||||
-};
|
||||
-static CMD_ROUTE_T core_mmuenab_cmd =
|
||||
-{
|
||||
- (UNS_8 *) "mmuenab",
|
||||
- cmd_mmuenab,
|
||||
- (UNS_8 *) "Enables or disables the MMU",
|
||||
- (UNS_8 *) "mmuenab [0(disable), 1(enable)]",
|
||||
- cmd_mmuenab_plist,
|
||||
- NULL
|
||||
-};
|
||||
-
|
||||
-/* map command */
|
||||
-BOOL_32 cmd_map(void);
|
||||
-static UNS_32 cmd_map_plist[] =
|
||||
-{
|
||||
- (PARSE_TYPE_STR), /* The "map" command */
|
||||
- (PARSE_TYPE_HEX),
|
||||
- (PARSE_TYPE_HEX),
|
||||
- (PARSE_TYPE_DEC),
|
||||
- (PARSE_TYPE_DEC | PARSE_TYPE_END),
|
||||
-};
|
||||
-static CMD_ROUTE_T core_map_cmd =
|
||||
-{
|
||||
- (UNS_8 *) "map",
|
||||
- cmd_map,
|
||||
- (UNS_8 *) "Maps a range of physical address sections to virtual addresses",
|
||||
- (UNS_8 *) "map [virt hex addr][phy hex addr][sections][0(uncached), 1(cached), 2(unmap)]",
|
||||
- cmd_map_plist,
|
||||
- NULL
|
||||
-};
|
||||
-
|
||||
-/* mmuinfo command */
|
||||
-static BOOL_32 cmd_mmuinfo(void);
|
||||
-static UNS_32 cmd_mmuinfo_plist[] =
|
||||
-{
|
||||
- (PARSE_TYPE_STR | PARSE_TYPE_END) /* The "mmuinfo" command */
|
||||
-};
|
||||
-static CMD_ROUTE_T core_mmuinfo_cmd =
|
||||
-{
|
||||
- (UNS_8 *) "mmuinfo",
|
||||
- cmd_mmuinfo,
|
||||
- (UNS_8 *) "Dumps page table and MMU info",
|
||||
- (UNS_8 *) "mmuinfo",
|
||||
- cmd_mmuinfo_plist,
|
||||
- NULL
|
||||
-};
|
||||
-
|
||||
-/* MMU group */
|
||||
-static GROUP_LIST_T mmu_group =
|
||||
-{
|
||||
- (UNS_8 *) "mmu", /* mmu group */
|
||||
- (UNS_8 *) "MMU command group",
|
||||
- NULL,
|
||||
- NULL
|
||||
-};
|
||||
-
|
||||
-static UNS_8 enabled_msg [] =" enabled";
|
||||
-static UNS_8 disabled_msg [] =" disabled";
|
||||
-static UNS_8 dcache_msg[] = "Data cache";
|
||||
-static UNS_8 icache_msg[] = "Instruction cache";
|
||||
-static UNS_8 pagetab_msg[] = "Page table at address: ";
|
||||
-static UNS_8 slist_msg[] = "Type Virt Phy fl Size";
|
||||
-static UNS_8 mmu_msg [] ="MMU";
|
||||
-static UNS_8 cpage_msg[] = "Coarse page:";
|
||||
-static UNS_8 fpage_msg[] = "Fine page :";
|
||||
-static UNS_8 sect_msg[] = "Section :";
|
||||
-static UNS_8 mbytes_msg[] = "M";
|
||||
-static UNS_8 map1_err_msg[] =
|
||||
- "Error : section addresses must be aligned on a 32-bit boundary";
|
||||
-static UNS_8 map2_err_msg[] =
|
||||
- "Error : Number of sections exceeds address range of device";
|
||||
-static UNS_8 phya_msg[] = "Virtual address ";
|
||||
-static UNS_8 mapped_msg[] = " mapped to physical address ";
|
||||
-static UNS_8 unmapped_msg[] = " unmapped from physical address ";
|
||||
-static UNS_8 cached_msg[] = " (cached)";
|
||||
-static UNS_8 inval_msg[] = " invalidated";
|
||||
-static UNS_8 caches_msg [] ="Caches";
|
||||
-static UNS_8 flushed_msg[] = " flushed";
|
||||
-
|
||||
-/***********************************************************************
|
||||
- *
|
||||
- * Function: show_section
|
||||
- *
|
||||
- * Purpose: Display section information
|
||||
- *
|
||||
- * Processing:
|
||||
- * See function.
|
||||
- *
|
||||
- * Parameters:
|
||||
- * mmu_reg : MMU settings for this section
|
||||
- * virt_addr : Starting virtual address for this section
|
||||
- * segs : Number of 1M segments for this section
|
||||
- *
|
||||
- * Outputs: None
|
||||
- *
|
||||
- * Returns: Nothing
|
||||
- *
|
||||
- * Notes: None
|
||||
- *
|
||||
- **********************************************************************/
|
||||
-static void show_section(UNS_32 mmu_reg,
|
||||
- UNS_32 virt_addr,
|
||||
- UNS_32 segs)
|
||||
-{
|
||||
- UNS_8 straddr [16];
|
||||
- UNS_32 mmu_phy;
|
||||
-
|
||||
- if ((mmu_reg & ARM922T_L1D_TYPE_PG_SN_MASK) !=
|
||||
- ARM922T_L1D_TYPE_FAULT)
|
||||
- {
|
||||
- if ((mmu_reg & ARM922T_L1D_TYPE_PG_SN_MASK) ==
|
||||
- ARM922T_L1D_TYPE_CPAGE)
|
||||
- {
|
||||
- term_dat_out(cpage_msg);
|
||||
- }
|
||||
- else if ((mmu_reg & ARM922T_L1D_TYPE_PG_SN_MASK) ==
|
||||
- ARM922T_L1D_TYPE_FPAGE)
|
||||
- {
|
||||
- term_dat_out(fpage_msg);
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- term_dat_out(sect_msg);
|
||||
- }
|
||||
-
|
||||
- /* Compute virtual address */
|
||||
- str_makehex(straddr, virt_addr, 8);
|
||||
- term_dat_out(straddr);
|
||||
- term_dat_out((UNS_8 *) " ");
|
||||
-
|
||||
- /* Compute mapped physical address */
|
||||
- if ((mmu_reg & ARM922T_L1D_TYPE_PG_SN_MASK) ==
|
||||
- ARM922T_L1D_TYPE_SECTION)
|
||||
- {
|
||||
- mmu_phy = mmu_reg & 0xFFF00000;
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- /* Don't compute addresses for non-sections */
|
||||
- mmu_phy = 0;
|
||||
- }
|
||||
- str_makehex(straddr, mmu_phy, 8);
|
||||
- term_dat_out(straddr);
|
||||
- term_dat_out((UNS_8 *) " ");
|
||||
-
|
||||
- /* MMU flags */
|
||||
- if ((mmu_reg & ARM922T_L1D_BUFFERABLE) != 0)
|
||||
- {
|
||||
- term_dat_out((UNS_8 *) "b");
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- term_dat_out((UNS_8 *) " ");
|
||||
- }
|
||||
- if ((mmu_reg & ARM922T_L1D_CACHEABLE) != 0)
|
||||
- {
|
||||
- term_dat_out((UNS_8 *) "c");
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- term_dat_out((UNS_8 *) " ");
|
||||
- }
|
||||
- term_dat_out((UNS_8 *) " ");
|
||||
-
|
||||
- /* Displays used megabytes */
|
||||
- str_makedec(straddr, segs);
|
||||
- term_dat_out(straddr);
|
||||
- term_dat_out_crlf(mbytes_msg);
|
||||
- }
|
||||
-}
|
||||
-
|
||||
-/***********************************************************************
|
||||
- *
|
||||
- * Function: mmu_dumpinfo
|
||||
- *
|
||||
- * Purpose: Display MMU info
|
||||
- *
|
||||
- * Processing:
|
||||
- * Display the MMU information, including enable status, cache
|
||||
- * status, and page table.
|
||||
- *
|
||||
- * Parameters: None
|
||||
- *
|
||||
- * Outputs: None
|
||||
- *
|
||||
- * Returns: TRUE if the command was processed, otherwise FALSE
|
||||
- *
|
||||
- * Notes: None
|
||||
- *
|
||||
- **********************************************************************/
|
||||
-static BOOL_32 mmu_dumpinfo(void)
|
||||
-{
|
||||
- UNS_32 segsz, last_mmu_reg, mmu_vrt, mmu_reg, mmu_vrtsav = 0, *pt;
|
||||
- UNS_32 mlast_mmu_reg, mmmu_reg;
|
||||
- int idx;
|
||||
- UNS_8 hexaddr [16];
|
||||
-
|
||||
- term_dat_out(mmu_msg);
|
||||
- if (cp15_mmu_enabled() == FALSE)
|
||||
- {
|
||||
- term_dat_out_crlf(disabled_msg);
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- term_dat_out_crlf(enabled_msg);
|
||||
-
|
||||
- /* Get MMU control register word */
|
||||
- mmu_reg = cp15_get_mmu_control_reg();
|
||||
-
|
||||
- /* Instruction cache status */
|
||||
- term_dat_out(icache_msg);
|
||||
- if ((mmu_reg & ARM922T_MMU_CONTROL_I) == 0)
|
||||
- {
|
||||
- term_dat_out_crlf(disabled_msg);
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- term_dat_out_crlf(enabled_msg);
|
||||
- }
|
||||
-
|
||||
- /* Data cache status */
|
||||
- term_dat_out(dcache_msg);
|
||||
- if ((mmu_reg & ARM922T_MMU_CONTROL_C) == 0)
|
||||
- {
|
||||
- term_dat_out_crlf(disabled_msg);
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- term_dat_out_crlf(enabled_msg);
|
||||
- }
|
||||
-
|
||||
- term_dat_out(pagetab_msg);
|
||||
- mmu_reg = (UNS_32) cp15_get_ttb();
|
||||
- str_makehex(hexaddr, mmu_reg, 8);
|
||||
- term_dat_out_crlf(hexaddr);
|
||||
- term_dat_out_crlf(slist_msg);
|
||||
-
|
||||
- /* Process MMU table - assume that the physical and
|
||||
- virtual locations of table are the same */
|
||||
- pt = (UNS_32 *) mmu_reg;
|
||||
- mmu_vrt = 0x0;
|
||||
- segsz = 0xFFFFFFFF;
|
||||
- last_mmu_reg = mlast_mmu_reg = 0xFFFFFFFF;
|
||||
- for (idx = 0; idx < 4096; idx++)
|
||||
- {
|
||||
- mmu_reg = *pt;
|
||||
- mmmu_reg = (mmu_reg & (ARM922T_L1D_TYPE_PG_SN_MASK |
|
||||
- ARM922T_L1D_BUFFERABLE | ARM922T_L1D_CACHEABLE));
|
||||
- segsz = segsz + 1;
|
||||
-
|
||||
- if ((last_mmu_reg != 0xFFFFFFFF) &&
|
||||
- (mlast_mmu_reg != mmmu_reg))
|
||||
- {
|
||||
- show_section(last_mmu_reg, mmu_vrtsav, segsz);
|
||||
- segsz = 0;
|
||||
- }
|
||||
-
|
||||
- if (mlast_mmu_reg != mmmu_reg)
|
||||
- {
|
||||
- mmu_vrtsav = mmu_vrt;
|
||||
- last_mmu_reg = mmu_reg;
|
||||
- mlast_mmu_reg = mmmu_reg;
|
||||
- }
|
||||
-
|
||||
- pt++;
|
||||
- mmu_vrt += 0x00100000;
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- return TRUE;
|
||||
-}
|
||||
-
|
||||
-/***********************************************************************
|
||||
- *
|
||||
- * Function: mmu_dumpmap
|
||||
- *
|
||||
- * Purpose: Map a virtual address range to a physical range
|
||||
- *
|
||||
- * Processing:
|
||||
- * From the input addresses and number of sections, generate the
|
||||
- * appropriate entries in the page table.
|
||||
- *
|
||||
- * Parameters: None
|
||||
- *
|
||||
- * Outputs: None
|
||||
- *
|
||||
- * Returns: TRUE if the command was processed, otherwise FALSE
|
||||
- *
|
||||
- * Notes: None
|
||||
- *
|
||||
- **********************************************************************/
|
||||
-static BOOL_32 mmu_dumpmap(UNS_32 vrt,
|
||||
- UNS_32 phy,
|
||||
- UNS_32 sections,
|
||||
- UNS_32 cache)
|
||||
-{
|
||||
- BOOL_32 processed = FALSE;
|
||||
- UNS_32 mmu_phy, mmu_vrt, tmp1 = 0, tmp2, *pt;
|
||||
- UNS_8 hexaddr [16];
|
||||
-
|
||||
- /* Verify address boundaries are sectional */
|
||||
- mmu_vrt = vrt & ~ARM922T_L2D_SN_BASE_MASK;
|
||||
- mmu_phy = phy & ~ARM922T_L2D_SN_BASE_MASK;
|
||||
- if ((mmu_vrt != 0) || (mmu_phy != 0))
|
||||
- {
|
||||
- term_dat_out_crlf(map1_err_msg);
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- /* Verify that address range and section count will not
|
||||
- exceed address range of device */
|
||||
- tmp1 = vrt >> 20;
|
||||
- tmp1 = (tmp1 + sections) - 1;
|
||||
- tmp2 = phy >> 20;
|
||||
- tmp2 = (tmp2 + sections) - 1;
|
||||
- if ((tmp1 < 4096) && (tmp2 < 4096))
|
||||
- {
|
||||
- /* Good address range and good section count */
|
||||
- processed = TRUE;
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- term_dat_out_crlf(map2_err_msg);
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- /* Generate static part of MMU word */
|
||||
- if (cache == 0)
|
||||
- {
|
||||
- /* Section mapped with cache disabled */
|
||||
- tmp1 = ARM922T_L1D_TYPE_SECTION;
|
||||
- }
|
||||
- else if (cache == 1)
|
||||
- {
|
||||
- /* Section mapped with cache enabled */
|
||||
- tmp1 = (ARM922T_L1D_BUFFERABLE | ARM922T_L1D_CACHEABLE |
|
||||
- ARM922T_L1D_TYPE_SECTION);
|
||||
- }
|
||||
- else if (cache == 2)
|
||||
- {
|
||||
- /* Section unmapped */
|
||||
- tmp1 = ARM922T_L1D_TYPE_FAULT;
|
||||
- }
|
||||
- tmp1 |= ARM922T_L1D_AP_ALL;
|
||||
-
|
||||
- /* Offset into page table for virtual address */
|
||||
- tmp2 = (vrt >> 20);
|
||||
- pt = cp15_get_ttb() + tmp2;
|
||||
-
|
||||
- /* Loop until all sections are complete */
|
||||
- while ((sections > 0) && (processed == TRUE))
|
||||
- {
|
||||
- /* Add in physical address */
|
||||
- tmp2 = tmp1 | (phy & ARM922T_L2D_SN_BASE_MASK);
|
||||
-
|
||||
- /* Save new section descriptor for virtual address */
|
||||
- *pt = tmp2;
|
||||
-
|
||||
- /* Output message shown the map */
|
||||
- term_dat_out(phya_msg);
|
||||
- str_makehex(hexaddr, phy, 8);
|
||||
- term_dat_out(hexaddr);
|
||||
- if (cache == 2)
|
||||
- {
|
||||
- term_dat_out(unmapped_msg);
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- term_dat_out(mapped_msg);
|
||||
- }
|
||||
- str_makehex(hexaddr, vrt, 8);
|
||||
- term_dat_out(hexaddr);
|
||||
- if (cache == 1)
|
||||
- {
|
||||
- term_dat_out(cached_msg);
|
||||
- }
|
||||
- term_dat_out_crlf((UNS_8 *) "");
|
||||
-
|
||||
- /* Next section and page table entry*/
|
||||
- phy += 0x00100000;
|
||||
- vrt += 0x00100000;
|
||||
- pt++;
|
||||
- sections--;
|
||||
- }
|
||||
-
|
||||
- return processed;
|
||||
-}
|
||||
-
|
||||
-/***********************************************************************
|
||||
- *
|
||||
- * Function: cmd_mmuinfo
|
||||
- *
|
||||
- * Purpose: Display MMU information
|
||||
- *
|
||||
- * Processing:
|
||||
- * See function.
|
||||
- *
|
||||
- * Parameters: None
|
||||
- *
|
||||
- * Outputs: None
|
||||
- *
|
||||
- * Returns: TRUE if the command was processed, otherwise FALSE
|
||||
- *
|
||||
- * Notes: None
|
||||
- *
|
||||
- **********************************************************************/
|
||||
-static BOOL_32 cmd_mmuinfo(void)
|
||||
-{
|
||||
- mmu_dumpinfo();
|
||||
-
|
||||
- return TRUE;
|
||||
-}
|
||||
-
|
||||
-/***********************************************************************
|
||||
- *
|
||||
- * Function: cmd_map
|
||||
- *
|
||||
- * Purpose: Map a physical address region to a virtual region
|
||||
- *
|
||||
- * Processing:
|
||||
- * See function.
|
||||
- *
|
||||
- * Parameters: None
|
||||
- *
|
||||
- * Outputs: None
|
||||
- *
|
||||
- * Returns: TRUE if the command was processed, otherwise FALSE
|
||||
- *
|
||||
- * Notes: None
|
||||
- *
|
||||
- **********************************************************************/
|
||||
-BOOL_32 cmd_map(void)
|
||||
-{
|
||||
- UNS_32 phy, virt, sects, ce = 0;
|
||||
-
|
||||
- /* Get arguments */
|
||||
- virt = cmd_get_field_val(1);
|
||||
- phy = cmd_get_field_val(2);
|
||||
- sects = cmd_get_field_val(3);
|
||||
- ce = cmd_get_field_val(4);
|
||||
-
|
||||
- if (ce <= 2)
|
||||
- {
|
||||
- mmu_dumpmap(virt, phy, sects, ce);
|
||||
- }
|
||||
-
|
||||
- return TRUE;
|
||||
-}
|
||||
-
|
||||
-/***********************************************************************
|
||||
- *
|
||||
- * Function: cmd_inval
|
||||
- *
|
||||
- * Purpose: MMU cache flush and invalidate
|
||||
- *
|
||||
- * Processing:
|
||||
- * See function.
|
||||
- *
|
||||
- * Parameters: None
|
||||
- *
|
||||
- * Outputs: None
|
||||
- *
|
||||
- * Returns: TRUE if the command was processed, otherwise FALSE
|
||||
- *
|
||||
- * Notes: None
|
||||
- *
|
||||
- **********************************************************************/
|
||||
-BOOL_32 cmd_inval(void)
|
||||
-{
|
||||
- dcache_flush();
|
||||
- icache_inval();
|
||||
- term_dat_out(caches_msg);
|
||||
- term_dat_out(inval_msg);
|
||||
-
|
||||
- return TRUE;
|
||||
-}
|
||||
-
|
||||
-/***********************************************************************
|
||||
- *
|
||||
- * Function: cmd_dcache
|
||||
- *
|
||||
- * Purpose: MMU data cache enable and disable
|
||||
- *
|
||||
- * Processing:
|
||||
- * If the value passed in the parser is 1, enable the data cache,
|
||||
- * otherwise disable the data cache.
|
||||
- *
|
||||
- * Parameters: None
|
||||
- *
|
||||
- * Outputs: None
|
||||
- *
|
||||
- * Returns: TRUE if the command was processed, otherwise FALSE
|
||||
- *
|
||||
- * Notes: None
|
||||
- *
|
||||
- **********************************************************************/
|
||||
-BOOL_32 cmd_dcache(void)
|
||||
-{
|
||||
- UNS_32 cenable;
|
||||
- UNS_8 *ppar;
|
||||
-
|
||||
- /* Get argument */
|
||||
- cenable = cmd_get_field_val(1);
|
||||
-
|
||||
- switch (cenable)
|
||||
- {
|
||||
- case 0:
|
||||
- dcache_flush();
|
||||
- cp15_set_dcache(0);
|
||||
- ppar = disabled_msg;
|
||||
- break;
|
||||
-
|
||||
- case 1:
|
||||
- cp15_invalidate_cache();
|
||||
- cp15_set_dcache(1);
|
||||
- ppar = enabled_msg;
|
||||
- break;
|
||||
-
|
||||
- case 2:
|
||||
- default:
|
||||
- dcache_flush();
|
||||
- ppar = flushed_msg;
|
||||
- break;
|
||||
- }
|
||||
-
|
||||
- term_dat_out(dcache_msg);
|
||||
- term_dat_out_crlf(ppar);
|
||||
-
|
||||
- return TRUE;
|
||||
-}
|
||||
-
|
||||
-/***********************************************************************
|
||||
- *
|
||||
- * Function: cmd_icache
|
||||
- *
|
||||
- * Purpose: MMU instruction cache enable and disable
|
||||
- *
|
||||
- * Processing:
|
||||
- * If the value passed in the parser is 1, enable the instruction
|
||||
- * cache, otherwise disable the instruction cache.
|
||||
- *
|
||||
- * Parameters: None
|
||||
- *
|
||||
- * Outputs: None
|
||||
- *
|
||||
- * Returns: TRUE if the command was processed, otherwise FALSE
|
||||
- *
|
||||
- * Notes: None
|
||||
- *
|
||||
- **********************************************************************/
|
||||
-BOOL_32 cmd_icache(void)
|
||||
-{
|
||||
- UNS_32 cenable;
|
||||
- UNS_8 *ppar;
|
||||
-
|
||||
- /* Get argument */
|
||||
- cenable = cmd_get_field_val(1);
|
||||
-
|
||||
- if (cenable == 1)
|
||||
- {
|
||||
- dcache_flush();
|
||||
- cp15_invalidate_cache();
|
||||
- cp15_set_icache(1);
|
||||
- ppar = enabled_msg;
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- cp15_set_icache(0);
|
||||
- ppar = disabled_msg;
|
||||
- }
|
||||
-
|
||||
- term_dat_out(icache_msg);
|
||||
- term_dat_out_crlf(ppar);
|
||||
-
|
||||
- return TRUE;
|
||||
-}
|
||||
-
|
||||
-
|
||||
-/***********************************************************************
|
||||
- *
|
||||
- * Function: cmd_mmuenab
|
||||
- *
|
||||
- * Purpose: Enable or disable MMU
|
||||
- *
|
||||
- * Processing:
|
||||
- * See function.
|
||||
- *
|
||||
- * Parameters: None
|
||||
- *
|
||||
- * Outputs: None
|
||||
- *
|
||||
- * Returns: TRUE if the command was processed, otherwise FALSE
|
||||
- *
|
||||
- * Notes: None
|
||||
- *
|
||||
- **********************************************************************/
|
||||
-BOOL_32 cmd_mmuenab(void)
|
||||
-{
|
||||
- UNS_8 *ppar;
|
||||
- UNS_32 cenable;
|
||||
-
|
||||
- term_dat_out_crlf((UNS_8 *) "Warning: Changing MMU status on "
|
||||
- " cached and buffered code can cause system crashes.");
|
||||
-
|
||||
- /* Get argument */
|
||||
- cenable = cmd_get_field_val(1);
|
||||
-
|
||||
- if (cenable == 1)
|
||||
- {
|
||||
- if ((cp15_get_mmu_control_reg() & ARM922T_MMU_CONTROL_C) != 0)
|
||||
- {
|
||||
- cp15_invalidate_cache();
|
||||
- }
|
||||
-
|
||||
- cp15_set_mmu(1);
|
||||
- ppar = enabled_msg;
|
||||
- }
|
||||
- else
|
||||
- {
|
||||
- cp15_dcache_flush();
|
||||
- cp15_write_buffer_flush();
|
||||
- cp15_invalidate_cache();
|
||||
- cp15_set_mmu(0);
|
||||
- ppar = disabled_msg;
|
||||
- }
|
||||
-
|
||||
- term_dat_out(mmu_msg);
|
||||
- term_dat_out_crlf(ppar);
|
||||
-
|
||||
- return TRUE;
|
||||
-}
|
||||
-
|
||||
-/***********************************************************************
|
||||
- *
|
||||
- * Function: mmu_cmd_group_init
|
||||
- *
|
||||
- * Purpose: Initialize MMU command group
|
||||
- *
|
||||
- * Processing:
|
||||
- * See function.
|
||||
- *
|
||||
- * Parameters: None
|
||||
- *
|
||||
- * Outputs: None
|
||||
- *
|
||||
- * Returns: Nothin
|
||||
- *
|
||||
- * Notes: None
|
||||
- *
|
||||
- **********************************************************************/
|
||||
-void mmu_cmd_group_init(void)
|
||||
-{
|
||||
- /* Add MMU group */
|
||||
- cmd_add_group(&mmu_group);
|
||||
-
|
||||
- /* Add commands to the MMU group */
|
||||
- cmd_add_new_command(&mmu_group, &core_dcache_cmd);
|
||||
- cmd_add_new_command(&mmu_group, &core_icache_cmd);
|
||||
- cmd_add_new_command(&mmu_group, &core_inval_cmd);
|
||||
- cmd_add_new_command(&mmu_group, &core_mmuenab_cmd);
|
||||
- cmd_add_new_command(&mmu_group, &core_map_cmd);
|
||||
- cmd_add_new_command(&mmu_group, &core_mmuinfo_cmd);
|
||||
-}
|
||||
@@ -0,0 +1,188 @@
|
||||
Fix compilation and eabi issues
|
||||
|
||||
Since we are not linking with libc anymore, we need to define our own memset,
|
||||
strlen and memcpy. Also, as we are using a *libc compiler, we need to "handle"
|
||||
exceptions (mostly division by 0) by defining raise() and
|
||||
__aeabi_unwind_cpp_pr0.
|
||||
|
||||
Signed-off-by: Alexandre Belloni <abelloni@adeneo-embedded.com>
|
||||
---
|
||||
csps/lpc32xx/bsps/ea3250/source/libnosys_gnu.c | 41 +++++++++++++++++++++++
|
||||
csps/lpc32xx/bsps/fdi3250/source/libnosys_gnu.c | 41 +++++++++++++++++++++++
|
||||
csps/lpc32xx/bsps/phy3250/source/libnosys_gnu.c | 41 +++++++++++++++++++++++
|
||||
3 files changed, 123 insertions(+), 0 deletions(-)
|
||||
|
||||
diff --git a/csps/lpc32xx/bsps/ea3250/source/libnosys_gnu.c b/csps/lpc32xx/bsps/ea3250/source/libnosys_gnu.c
|
||||
index 385b0ab..f1f0a0a 100644
|
||||
--- a/csps/lpc32xx/bsps/ea3250/source/libnosys_gnu.c
|
||||
+++ b/csps/lpc32xx/bsps/ea3250/source/libnosys_gnu.c
|
||||
@@ -25,6 +25,7 @@
|
||||
#include <errno.h>
|
||||
#include <sys/times.h>
|
||||
#include <sys/stat.h>
|
||||
+#include <sys/types.h>
|
||||
|
||||
/* errno definition */
|
||||
#undef errno
|
||||
@@ -125,4 +126,44 @@ int _write(int file, char *ptr, int len){
|
||||
return 0;
|
||||
}
|
||||
|
||||
+void * memset(void * s,int c,size_t count)
|
||||
+{
|
||||
+ char *xs = (char *) s;
|
||||
+
|
||||
+ while (count--)
|
||||
+ *xs++ = c;
|
||||
+
|
||||
+ return s;
|
||||
+}
|
||||
+
|
||||
+
|
||||
+size_t strlen(const char * s)
|
||||
+{
|
||||
+ const char *sc;
|
||||
+
|
||||
+ for (sc = s; *sc != '\0'; ++sc)
|
||||
+ /* nothing */;
|
||||
+ return sc - s;
|
||||
+}
|
||||
+
|
||||
+void * memcpy(void * dest,const void *src,size_t count)
|
||||
+{
|
||||
+ char *tmp = (char *) dest, *s = (char *) src;
|
||||
+
|
||||
+ while (count--)
|
||||
+ *tmp++ = *s++;
|
||||
+
|
||||
+ return dest;
|
||||
+}
|
||||
+
|
||||
+
|
||||
+/* Dummy functions to avoid linker complaints */
|
||||
+void __aeabi_unwind_cpp_pr0(void)
|
||||
+{
|
||||
+};
|
||||
+
|
||||
+void raise(void)
|
||||
+{
|
||||
+};
|
||||
+
|
||||
#endif /*__GNUC__*/
|
||||
diff --git a/csps/lpc32xx/bsps/fdi3250/source/libnosys_gnu.c b/csps/lpc32xx/bsps/fdi3250/source/libnosys_gnu.c
|
||||
index 385b0ab..f1f0a0a 100644
|
||||
--- a/csps/lpc32xx/bsps/fdi3250/source/libnosys_gnu.c
|
||||
+++ b/csps/lpc32xx/bsps/fdi3250/source/libnosys_gnu.c
|
||||
@@ -25,6 +25,7 @@
|
||||
#include <errno.h>
|
||||
#include <sys/times.h>
|
||||
#include <sys/stat.h>
|
||||
+#include <sys/types.h>
|
||||
|
||||
/* errno definition */
|
||||
#undef errno
|
||||
@@ -125,4 +126,44 @@ int _write(int file, char *ptr, int len){
|
||||
return 0;
|
||||
}
|
||||
|
||||
+void * memset(void * s,int c,size_t count)
|
||||
+{
|
||||
+ char *xs = (char *) s;
|
||||
+
|
||||
+ while (count--)
|
||||
+ *xs++ = c;
|
||||
+
|
||||
+ return s;
|
||||
+}
|
||||
+
|
||||
+
|
||||
+size_t strlen(const char * s)
|
||||
+{
|
||||
+ const char *sc;
|
||||
+
|
||||
+ for (sc = s; *sc != '\0'; ++sc)
|
||||
+ /* nothing */;
|
||||
+ return sc - s;
|
||||
+}
|
||||
+
|
||||
+void * memcpy(void * dest,const void *src,size_t count)
|
||||
+{
|
||||
+ char *tmp = (char *) dest, *s = (char *) src;
|
||||
+
|
||||
+ while (count--)
|
||||
+ *tmp++ = *s++;
|
||||
+
|
||||
+ return dest;
|
||||
+}
|
||||
+
|
||||
+
|
||||
+/* Dummy functions to avoid linker complaints */
|
||||
+void __aeabi_unwind_cpp_pr0(void)
|
||||
+{
|
||||
+};
|
||||
+
|
||||
+void raise(void)
|
||||
+{
|
||||
+};
|
||||
+
|
||||
#endif /*__GNUC__*/
|
||||
diff --git a/csps/lpc32xx/bsps/phy3250/source/libnosys_gnu.c b/csps/lpc32xx/bsps/phy3250/source/libnosys_gnu.c
|
||||
index cfdb674..6b50c60 100644
|
||||
--- a/csps/lpc32xx/bsps/phy3250/source/libnosys_gnu.c
|
||||
+++ b/csps/lpc32xx/bsps/phy3250/source/libnosys_gnu.c
|
||||
@@ -25,6 +25,7 @@
|
||||
#include <errno.h>
|
||||
#include <sys/times.h>
|
||||
#include <sys/stat.h>
|
||||
+#include <sys/types.h>
|
||||
|
||||
/* errno definition */
|
||||
#undef errno
|
||||
@@ -125,4 +126,44 @@ int _write(int file, char *ptr, int len){
|
||||
return 0;
|
||||
}
|
||||
|
||||
+void * memset(void * s,int c,size_t count)
|
||||
+{
|
||||
+ char *xs = (char *) s;
|
||||
+
|
||||
+ while (count--)
|
||||
+ *xs++ = c;
|
||||
+
|
||||
+ return s;
|
||||
+}
|
||||
+
|
||||
+
|
||||
+size_t strlen(const char * s)
|
||||
+{
|
||||
+ const char *sc;
|
||||
+
|
||||
+ for (sc = s; *sc != '\0'; ++sc)
|
||||
+ /* nothing */;
|
||||
+ return sc - s;
|
||||
+}
|
||||
+
|
||||
+void * memcpy(void * dest,const void *src,size_t count)
|
||||
+{
|
||||
+ char *tmp = (char *) dest, *s = (char *) src;
|
||||
+
|
||||
+ while (count--)
|
||||
+ *tmp++ = *s++;
|
||||
+
|
||||
+ return dest;
|
||||
+}
|
||||
+
|
||||
+
|
||||
+/* Dummy functions to avoid linker complaints */
|
||||
+void __aeabi_unwind_cpp_pr0(void)
|
||||
+{
|
||||
+};
|
||||
+
|
||||
+void raise(void)
|
||||
+{
|
||||
+};
|
||||
+
|
||||
#endif /*__GNUC__*/
|
||||
--
|
||||
1.7.7.3
|
||||
|
||||
@@ -0,0 +1,521 @@
|
||||
Use slashes instead of backslashes
|
||||
|
||||
Signed-off-by: Alexandre Belloni <abelloni@adeneo-embedded.com>
|
||||
---
|
||||
.../bsps/common/examples/buildfiles/makefile | 10 +++---
|
||||
.../startup/examples/burners/makefile.burner | 16 +++++-----
|
||||
csps/lpc32xx/bsps/ea3250/source/makefile | 10 +++---
|
||||
csps/lpc32xx/bsps/fdi3250/source/makefile | 12 ++++----
|
||||
csps/lpc32xx/bsps/phy3250/examples/makefile | 2 +-
|
||||
csps/lpc32xx/bsps/phy3250/source/makefile | 2 +-
|
||||
.../examples/Burners/nor/kickstart/makefile | 2 +-
|
||||
.../startup/examples/Burners/nor/norerase/makefile | 2 +-
|
||||
.../startup/examples/Burners/nor/s1lapp/makefile | 2 +-
|
||||
.../examples/Burners/spi/kickstart/makefile | 2 +-
|
||||
csps/lpc32xx/source/makefile | 10 +++---
|
||||
lpc/source/makefile | 10 +++---
|
||||
makefile | 2 +-
|
||||
makerule/common/make.rules.environment | 30 ++++++++++----------
|
||||
makerule/lpc32xx/make.lpc32xx.gnu | 2 +-
|
||||
makerule/lpc32xx/make.lpc32xx.iar | 12 ++++----
|
||||
makerule/lpc32xx/make.lpc32xx.keil | 6 ++--
|
||||
makerule/lpc32xx/make.lpc32xx.rvw | 2 +-
|
||||
18 files changed, 67 insertions(+), 67 deletions(-)
|
||||
|
||||
diff --git a/csps/lpc32xx/bsps/common/examples/buildfiles/makefile b/csps/lpc32xx/bsps/common/examples/buildfiles/makefile
|
||||
index cf4977c..1da2201 100644
|
||||
--- a/csps/lpc32xx/bsps/common/examples/buildfiles/makefile
|
||||
+++ b/csps/lpc32xx/bsps/common/examples/buildfiles/makefile
|
||||
@@ -25,16 +25,16 @@
|
||||
#
|
||||
########################################################################
|
||||
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\$(CSP)\make.$(CSP).$(TOOL)
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/$(CSP)/make.$(CSP).$(TOOL)
|
||||
|
||||
########################################################################
|
||||
#
|
||||
# Pick up the assembler and C source files in the directory
|
||||
#
|
||||
########################################################################
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.ftypes
|
||||
-AFLAGS +=-I..\Include
|
||||
-CFLAGS +=-I..\Include
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.ftypes
|
||||
+AFLAGS +=-I../Include
|
||||
+CFLAGS +=-I../Include
|
||||
|
||||
########################################################################
|
||||
#
|
||||
@@ -42,6 +42,6 @@ CFLAGS +=-I..\Include
|
||||
#
|
||||
########################################################################
|
||||
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.build
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.build
|
||||
|
||||
|
||||
diff --git a/csps/lpc32xx/bsps/common/startup/examples/burners/makefile.burner b/csps/lpc32xx/bsps/common/startup/examples/burners/makefile.burner
|
||||
index fca3947..18bd703 100644
|
||||
--- a/csps/lpc32xx/bsps/common/startup/examples/burners/makefile.burner
|
||||
+++ b/csps/lpc32xx/bsps/common/startup/examples/burners/makefile.burner
|
||||
@@ -22,9 +22,9 @@
|
||||
#
|
||||
########################################################################
|
||||
|
||||
-COMMON_BASE := $(NXPMCU_SOFTWARE)\csps\$(CSP)\bsps\common
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\$(CSP)\make.$(CSP).$(TOOL)
|
||||
-include $(COMMON_BASE)\startup\examples\buildfiles\make.env
|
||||
+COMMON_BASE := $(NXPMCU_SOFTWARE)/csps/$(CSP)/bsps/common
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/$(CSP)/make.$(CSP).$(TOOL)
|
||||
+include $(COMMON_BASE)/startup/examples/buildfiles/make.env
|
||||
|
||||
########################################################################
|
||||
# ARM Realview
|
||||
@@ -38,7 +38,7 @@ AFLAGS += --predefine "USE_ALL_STACKS SETL {TRUE}"
|
||||
#AFLAGS += --predefine "RW_RELOC SETL {TRUE}"
|
||||
|
||||
# This runs from IRAM
|
||||
-LDSCRIPT =$(COMMON_BASE)\startup\examples\buildfiles\ldscript_iram_rvw.ld
|
||||
+LDSCRIPT =$(COMMON_BASE)/startup/examples/buildfiles/ldscript_iram_rvw.ld
|
||||
LDFLAGS = --remove
|
||||
MAP = --map --info=totals,sizes,unused --symbols --list
|
||||
endif
|
||||
@@ -55,7 +55,7 @@ AFLAGS += --predefine "USE_ALL_STACKS SETL {TRUE}"
|
||||
#AFLAGS += --predefine "RW_RELOC SETL {TRUE}"
|
||||
|
||||
# This runs from IRAM
|
||||
-LDSCRIPT =$(COMMON_BASE)\startup\examples\buildfiles\ldscript_iram_rvw.ld
|
||||
+LDSCRIPT =$(COMMON_BASE)/startup/examples/buildfiles/ldscript_iram_rvw.ld
|
||||
LDFLAGS = --remove
|
||||
MAP = --map --info=totals,sizes,unused --symbols --list
|
||||
endif
|
||||
@@ -72,7 +72,7 @@ AFLAGS += --defsym USE_ALL_STACKS=1
|
||||
#AFLAGS += --defsym RW_RELOC=1
|
||||
|
||||
# This runs from IRAM
|
||||
-LDSCRIPT =$(COMMON_BASE)\startup\examples\buildfiles\ldscript_iram_gnu.ld
|
||||
+LDSCRIPT =$(COMMON_BASE)/startup/examples/buildfiles/ldscript_iram_gnu.ld
|
||||
|
||||
endif
|
||||
|
||||
@@ -108,7 +108,7 @@ endif
|
||||
# Pick up the assembler and C source files in the directory
|
||||
#
|
||||
########################################################################
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.ftypes
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.ftypes
|
||||
|
||||
########################################################################
|
||||
#
|
||||
@@ -157,6 +157,6 @@ endif
|
||||
#
|
||||
########################################################################
|
||||
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.build
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.build
|
||||
|
||||
.PHONY: debug bin
|
||||
diff --git a/csps/lpc32xx/bsps/ea3250/source/makefile b/csps/lpc32xx/bsps/ea3250/source/makefile
|
||||
index 7cada25..2899b20 100644
|
||||
--- a/csps/lpc32xx/bsps/ea3250/source/makefile
|
||||
+++ b/csps/lpc32xx/bsps/ea3250/source/makefile
|
||||
@@ -22,16 +22,16 @@
|
||||
#
|
||||
########################################################################
|
||||
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\$(CSP)\make.$(CSP).$(TOOL)
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/$(CSP)/make.$(CSP).$(TOOL)
|
||||
|
||||
########################################################################
|
||||
#
|
||||
# Pick up the assembler and C source files in the directory
|
||||
#
|
||||
########################################################################
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.ftypes
|
||||
-AFLAGS +=-I..\Include
|
||||
-CFLAGS +=-I..\Include
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.ftypes
|
||||
+AFLAGS +=-I../Include
|
||||
+CFLAGS +=-I../Include
|
||||
|
||||
########################################################################
|
||||
#
|
||||
@@ -64,7 +64,7 @@ realclean: lib_realclean
|
||||
#
|
||||
########################################################################
|
||||
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.build
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.build
|
||||
|
||||
.PHONY: all lib_clean lib_realclean
|
||||
|
||||
diff --git a/csps/lpc32xx/bsps/fdi3250/source/makefile b/csps/lpc32xx/bsps/fdi3250/source/makefile
|
||||
index 4e153bb..11e4b63 100644
|
||||
--- a/csps/lpc32xx/bsps/fdi3250/source/makefile
|
||||
+++ b/csps/lpc32xx/bsps/fdi3250/source/makefile
|
||||
@@ -22,16 +22,16 @@
|
||||
#
|
||||
########################################################################
|
||||
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\$(CSP)\make.$(CSP).$(TOOL)
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/$(CSP)/make.$(CSP).$(TOOL)
|
||||
|
||||
########################################################################
|
||||
#
|
||||
# Pick up the assembler and C source files in the directory
|
||||
#
|
||||
########################################################################
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.ftypes
|
||||
-AFLAGS +=-I..\Include
|
||||
-CFLAGS +=-I..\Include
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.ftypes
|
||||
+AFLAGS +=-I../Include
|
||||
+CFLAGS +=-I../Include
|
||||
|
||||
########################################################################
|
||||
#
|
||||
@@ -53,7 +53,7 @@ lib_clean:
|
||||
# delete all targets this Makefile can make and all built libraries
|
||||
# linked in
|
||||
lib_realclean:
|
||||
- -@$(RM) $(BSP_LIB_DIR)\*.a
|
||||
+ -@$(RM) $(BSP_LIB_DIR)/*.a
|
||||
-@$(RMDIR) $(BSP_LIB_DIR)
|
||||
|
||||
clean: lib_clean
|
||||
@@ -65,7 +65,7 @@ realclean: lib_realclean
|
||||
#
|
||||
########################################################################
|
||||
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.build
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.build
|
||||
|
||||
.PHONY: all lib_clean lib_realclean
|
||||
|
||||
diff --git a/csps/lpc32xx/bsps/phy3250/examples/makefile b/csps/lpc32xx/bsps/phy3250/examples/makefile
|
||||
index b939252..e7feaa6 100644
|
||||
--- a/csps/lpc32xx/bsps/phy3250/examples/makefile
|
||||
+++ b/csps/lpc32xx/bsps/phy3250/examples/makefile
|
||||
@@ -25,7 +25,7 @@
|
||||
#
|
||||
########################################################################
|
||||
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\$(CSP)\make.$(CSP).$(TOOL)
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/$(CSP)/make.$(CSP).$(TOOL)
|
||||
|
||||
SUBDIRS = adc dram_self_refresh hstimer hsuart i2c kscan lcd_colorbars
|
||||
SUBDIRS += lcd_tsc mi2c mstimer pwm pwm_simple rtc sdcard sdcard_dma
|
||||
diff --git a/csps/lpc32xx/bsps/phy3250/source/makefile b/csps/lpc32xx/bsps/phy3250/source/makefile
|
||||
index 7c48e7d..750b776 100644
|
||||
--- a/csps/lpc32xx/bsps/phy3250/source/makefile
|
||||
+++ b/csps/lpc32xx/bsps/phy3250/source/makefile
|
||||
@@ -32,7 +32,7 @@ include $(NXPMCU_SOFTWARE)/makerule/$(CSP)/make.$(CSP).$(TOOL)
|
||||
# Pick up the assembler and C source files in the directory
|
||||
#
|
||||
########################################################################
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.ftypes
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.ftypes
|
||||
AFLAGS +=-I../Include
|
||||
CFLAGS +=-I../Include
|
||||
|
||||
diff --git a/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/kickstart/makefile b/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/kickstart/makefile
|
||||
index 01e2b38..526d6cc 100644
|
||||
--- a/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/kickstart/makefile
|
||||
+++ b/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/kickstart/makefile
|
||||
@@ -78,7 +78,7 @@ endif
|
||||
|
||||
########################################################################
|
||||
#
|
||||
-# Compiler\linker specific stuff
|
||||
+# Compiler/linker specific stuff
|
||||
#
|
||||
########################################################################
|
||||
|
||||
diff --git a/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/norerase/makefile b/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/norerase/makefile
|
||||
index ce329f5..e81b8db 100644
|
||||
--- a/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/norerase/makefile
|
||||
+++ b/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/norerase/makefile
|
||||
@@ -77,7 +77,7 @@ endif
|
||||
|
||||
########################################################################
|
||||
#
|
||||
-# Compiler\linker specific stuff
|
||||
+# Compiler/linker specific stuff
|
||||
#
|
||||
########################################################################
|
||||
|
||||
diff --git a/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/s1lapp/makefile b/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/s1lapp/makefile
|
||||
index 4426fc7..196faec 100644
|
||||
--- a/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/s1lapp/makefile
|
||||
+++ b/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/nor/s1lapp/makefile
|
||||
@@ -77,7 +77,7 @@ endif
|
||||
|
||||
########################################################################
|
||||
#
|
||||
-# Compiler\linker specific stuff
|
||||
+# Compiler/linker specific stuff
|
||||
#
|
||||
########################################################################
|
||||
|
||||
diff --git a/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/spi/kickstart/makefile b/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/spi/kickstart/makefile
|
||||
index dc73b64..39fc304 100644
|
||||
--- a/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/spi/kickstart/makefile
|
||||
+++ b/csps/lpc32xx/bsps/phy3250/startup/examples/Burners/spi/kickstart/makefile
|
||||
@@ -78,7 +78,7 @@ endif
|
||||
|
||||
########################################################################
|
||||
#
|
||||
-# Compiler\linker specific stuff
|
||||
+# Compiler/linker specific stuff
|
||||
#
|
||||
########################################################################
|
||||
|
||||
diff --git a/csps/lpc32xx/source/makefile b/csps/lpc32xx/source/makefile
|
||||
index 8e05456..16bd944 100644
|
||||
--- a/csps/lpc32xx/source/makefile
|
||||
+++ b/csps/lpc32xx/source/makefile
|
||||
@@ -25,16 +25,16 @@
|
||||
#
|
||||
########################################################################
|
||||
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\$(CSP)\make.$(CSP).$(TOOL)
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/$(CSP)/make.$(CSP).$(TOOL)
|
||||
|
||||
########################################################################
|
||||
#
|
||||
# Pick up the assembler and C source files in the directory
|
||||
#
|
||||
########################################################################
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.ftypes
|
||||
-AFLAGS +=-I..\Include
|
||||
-CFLAGS +=-I..\Include
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.ftypes
|
||||
+AFLAGS +=-I../Include
|
||||
+CFLAGS +=-I../Include
|
||||
|
||||
|
||||
########################################################################
|
||||
@@ -68,7 +68,7 @@ realclean: lib_realclean
|
||||
#
|
||||
########################################################################
|
||||
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.build
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.build
|
||||
|
||||
.PHONY: all lib_clean lib_realclean
|
||||
|
||||
diff --git a/lpc/source/makefile b/lpc/source/makefile
|
||||
index 2860db9..ae7d612 100644
|
||||
--- a/lpc/source/makefile
|
||||
+++ b/lpc/source/makefile
|
||||
@@ -25,16 +25,16 @@
|
||||
#
|
||||
########################################################################
|
||||
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\$(CSP)\make.$(CSP).$(TOOL)
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/$(CSP)/make.$(CSP).$(TOOL)
|
||||
|
||||
########################################################################
|
||||
#
|
||||
# Pick up the assembler and C source files in the directory
|
||||
#
|
||||
########################################################################
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.ftypes
|
||||
-AFLAGS +=-I..\Include
|
||||
-CFLAGS +=-I..\Include
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.ftypes
|
||||
+AFLAGS +=-I../Include
|
||||
+CFLAGS +=-I../Include
|
||||
|
||||
########################################################################
|
||||
#
|
||||
@@ -67,7 +67,7 @@ realclean: lib_realclean
|
||||
#
|
||||
########################################################################
|
||||
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.build
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.build
|
||||
|
||||
.PHONY: all lib_clean lib_realclean
|
||||
|
||||
diff --git a/makefile b/makefile
|
||||
index 8645fcc..86fa6bc 100644
|
||||
--- a/makefile
|
||||
+++ b/makefile
|
||||
@@ -34,7 +34,7 @@ TARGETS_CLN =gen_clean csp_clean bsp_clean
|
||||
#
|
||||
########################################################################
|
||||
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\$(CSP)\make.$(CSP).$(TOOL)
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/$(CSP)/make.$(CSP).$(TOOL)
|
||||
|
||||
########################################################################
|
||||
#
|
||||
diff --git a/makerule/common/make.rules.environment b/makerule/common/make.rules.environment
|
||||
index d5737fe..4e6df48 100644
|
||||
--- a/makerule/common/make.rules.environment
|
||||
+++ b/makerule/common/make.rules.environment
|
||||
@@ -52,7 +52,7 @@ ASTYLE =astyle --options=$(BUILD_ROOT)/tools/astyle.cfg
|
||||
#
|
||||
########################################################################
|
||||
|
||||
-CSP_LIB_DIR =$(BUILD_ROOT)\csps\$(CSP)\lib
|
||||
+CSP_LIB_DIR =$(BUILD_ROOT)/csps/$(CSP)/lib
|
||||
|
||||
########################################################################
|
||||
#
|
||||
@@ -60,7 +60,7 @@ CSP_LIB_DIR =$(BUILD_ROOT)\csps\$(CSP)\lib
|
||||
#
|
||||
########################################################################
|
||||
|
||||
-BSP_LIB_DIR =$(BUILD_ROOT)\csps\$(CSP)\bsps\$(BSP)\lib
|
||||
+BSP_LIB_DIR =$(BUILD_ROOT)/csps/$(CSP)/bsps/$(BSP)/lib
|
||||
|
||||
########################################################################
|
||||
#
|
||||
@@ -68,7 +68,7 @@ BSP_LIB_DIR =$(BUILD_ROOT)\csps\$(CSP)\bsps\$(BSP)\lib
|
||||
#
|
||||
########################################################################
|
||||
|
||||
-GEN_LIB_DIR =$(BUILD_ROOT)\$(GEN)\lib
|
||||
+GEN_LIB_DIR =$(BUILD_ROOT)/$(GEN)/lib
|
||||
|
||||
########################################################################
|
||||
#
|
||||
@@ -76,9 +76,9 @@ GEN_LIB_DIR =$(BUILD_ROOT)\$(GEN)\lib
|
||||
#
|
||||
########################################################################
|
||||
|
||||
-CSP_DIR =$(BUILD_ROOT)\csps\$(CSP)
|
||||
-CSP_SRC_DIR =$(CSP_DIR)\source
|
||||
-CSP_INC_DIR =$(CSP_DIR)\include
|
||||
+CSP_DIR =$(BUILD_ROOT)/csps/$(CSP)
|
||||
+CSP_SRC_DIR =$(CSP_DIR)/source
|
||||
+CSP_INC_DIR =$(CSP_DIR)/include
|
||||
|
||||
########################################################################
|
||||
#
|
||||
@@ -86,9 +86,9 @@ CSP_INC_DIR =$(CSP_DIR)\include
|
||||
#
|
||||
########################################################################
|
||||
|
||||
-BSP_DIR =$(BUILD_ROOT)\csps\$(CSP)\bsps\$(BSP)
|
||||
-BSP_SRC_DIR =$(BSP_DIR)\source
|
||||
-BSP_INC_DIR =$(BSP_DIR)\include
|
||||
+BSP_DIR =$(BUILD_ROOT)/csps/$(CSP)/bsps/$(BSP)
|
||||
+BSP_SRC_DIR =$(BSP_DIR)/source
|
||||
+BSP_INC_DIR =$(BSP_DIR)/include
|
||||
|
||||
########################################################################
|
||||
#
|
||||
@@ -96,9 +96,9 @@ BSP_INC_DIR =$(BSP_DIR)\include
|
||||
#
|
||||
########################################################################
|
||||
|
||||
-GEN_DIR =$(BUILD_ROOT)\$(GEN)
|
||||
-GEN_SRC_DIR =$(GEN_DIR)\source
|
||||
-GEN_INC_DIR =$(GEN_DIR)\include
|
||||
+GEN_DIR =$(BUILD_ROOT)/$(GEN)
|
||||
+GEN_SRC_DIR =$(GEN_DIR)/source
|
||||
+GEN_INC_DIR =$(GEN_DIR)/include
|
||||
|
||||
########################################################################
|
||||
#
|
||||
@@ -151,6 +151,6 @@ endif
|
||||
#
|
||||
########################################################################
|
||||
|
||||
-TARGET_CSP_LIB =$(CSP_LIB_DIR)\$(CSP_ARCHIVE)
|
||||
-TARGET_BSP_LIB =$(BSP_LIB_DIR)\$(BSP_ARCHIVE)
|
||||
-TARGET_GEN_LIB =$(GEN_LIB_DIR)\$(GEN_ARCHIVE)
|
||||
+TARGET_CSP_LIB =$(CSP_LIB_DIR)/$(CSP_ARCHIVE)
|
||||
+TARGET_BSP_LIB =$(BSP_LIB_DIR)/$(BSP_ARCHIVE)
|
||||
+TARGET_GEN_LIB =$(GEN_LIB_DIR)/$(GEN_ARCHIVE)
|
||||
diff --git a/makerule/lpc32xx/make.lpc32xx.gnu b/makerule/lpc32xx/make.lpc32xx.gnu
|
||||
index 3277d99..d80b98d 100644
|
||||
--- a/makerule/lpc32xx/make.lpc32xx.gnu
|
||||
+++ b/makerule/lpc32xx/make.lpc32xx.gnu
|
||||
@@ -19,7 +19,7 @@
|
||||
# use without further testing or modification.
|
||||
########################################################################
|
||||
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.environment
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.environment
|
||||
|
||||
CPU = arm926ej-s
|
||||
CFLAGS = -mcpu=arm926ej-s -Wall -Os
|
||||
diff --git a/makerule/lpc32xx/make.lpc32xx.iar b/makerule/lpc32xx/make.lpc32xx.iar
|
||||
index 238ebbf..27d163f 100644
|
||||
--- a/makerule/lpc32xx/make.lpc32xx.iar
|
||||
+++ b/makerule/lpc32xx/make.lpc32xx.iar
|
||||
@@ -19,12 +19,12 @@
|
||||
# use without further testing or modification.
|
||||
########################################################################
|
||||
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.environment
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.environment
|
||||
|
||||
-IARBASE = $(IAR_ROOT)\ARM
|
||||
-IARTOOLS = $(IARBASE)\bin
|
||||
-IAR_LIB = $(IARBASE)\lib
|
||||
-IAR_INC = $(IARBASE)\inc
|
||||
+IARBASE = $(IAR_ROOT)/ARM
|
||||
+IARTOOLS = $(IARBASE)/bin
|
||||
+IAR_LIB = $(IARBASE)/lib
|
||||
+IAR_INC = $(IARBASE)/inc
|
||||
CC = iccarm
|
||||
CCP = iccarm
|
||||
AS = iasmarm
|
||||
@@ -36,7 +36,7 @@ CFLAGS += -I"$(IAR_INC)"
|
||||
AFLAGS = --cpu 5TEJ
|
||||
LDFLAGS =
|
||||
LK = "$(TARGET_GEN_LIB)" "$(TARGET_CSP_LIB)" "$(TARGET_BSP_LIB)"
|
||||
-;LK += "$(IAR_LIB)\dl4tpannl8f.r79"
|
||||
+;LK += "$(IAR_LIB)/dl4tpannl8f.r79"
|
||||
MAP = --map
|
||||
LDESC = --config
|
||||
ENTRY = --entry
|
||||
diff --git a/makerule/lpc32xx/make.lpc32xx.keil b/makerule/lpc32xx/make.lpc32xx.keil
|
||||
index dd27583..7334d3f 100644
|
||||
--- a/makerule/lpc32xx/make.lpc32xx.keil
|
||||
+++ b/makerule/lpc32xx/make.lpc32xx.keil
|
||||
@@ -19,7 +19,7 @@
|
||||
# use without further testing or modification.
|
||||
########################################################################
|
||||
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.environment
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.environment
|
||||
|
||||
CC =armcc
|
||||
CCP =armcc
|
||||
@@ -27,11 +27,11 @@ AS =armasm
|
||||
LD =armlink
|
||||
AR =armar -r -s
|
||||
CFLAGS =--arm -O3 -g --device DARMP3 -D__MICROLIB
|
||||
-CFLAGS +=-I$(KEIL_RVCT)\inc -I$(CSP_INC_DIR) -I$(BSP_INC_DIR) -I$(GEN_INC_DIR)
|
||||
+CFLAGS +=-I$(KEIL_RVCT)/inc -I$(CSP_INC_DIR) -I$(BSP_INC_DIR) -I$(GEN_INC_DIR)
|
||||
AFLAGS =--arm --device=DARMP3
|
||||
AFLAGS +=-I$(CSP_INC_DIR) -I$(BSP_INC_DIR) -I$(GEN_INC_DIR)
|
||||
LDFLAGS =--noremove
|
||||
-LK =--device DARMP3 --libpath $(KEIL_RVCT)\lib --scan $(TARGET_CSP_LIB)
|
||||
+LK =--device DARMP3 --libpath $(KEIL_RVCT)/lib --scan $(TARGET_CSP_LIB)
|
||||
LK +=--scan $(TARGET_BSP_LIB)
|
||||
LK +=--scan $(TARGET_GEN_LIB)
|
||||
MAP =--map --list
|
||||
diff --git a/makerule/lpc32xx/make.lpc32xx.rvw b/makerule/lpc32xx/make.lpc32xx.rvw
|
||||
index 59961dd..2419976 100644
|
||||
--- a/makerule/lpc32xx/make.lpc32xx.rvw
|
||||
+++ b/makerule/lpc32xx/make.lpc32xx.rvw
|
||||
@@ -19,7 +19,7 @@
|
||||
# use without further testing or modification.
|
||||
########################################################################
|
||||
|
||||
-include $(NXPMCU_SOFTWARE)\makerule\common\make.rules.environment
|
||||
+include $(NXPMCU_SOFTWARE)/makerule/common/make.rules.environment
|
||||
|
||||
CC =armcc
|
||||
CCP =armcpp
|
||||
--
|
||||
1.7.7.3
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
config BR2_TARGET_LPC32XXCDL
|
||||
bool "LPC32XX CDL (kickstart and S1L)"
|
||||
depends on BR2_arm926t
|
||||
|
||||
if BR2_TARGET_LPC32XXCDL
|
||||
|
||||
config BR2_TARGET_LPC32XXCDL_BOARDNAME
|
||||
string "LPC32xx board name"
|
||||
|
||||
endif #BR2_TARGET_LPC32XXCDL
|
||||
@@ -0,0 +1,2 @@
|
||||
# Locally computed
|
||||
sha256 ded3fa936a96d3fb8188ca6214f57b5208bd49e5416bd69f38bfc810b34197bc lpc32xx_cdl-v2.11.zip
|
||||
@@ -0,0 +1,71 @@
|
||||
################################################################################
|
||||
#
|
||||
# lpc32xxcdl
|
||||
#
|
||||
################################################################################
|
||||
|
||||
LPC32XXCDL_VERSION = 2.11
|
||||
LPC32XXCDL_SOURCE = lpc32xx_cdl-v$(LPC32XXCDL_VERSION).zip
|
||||
LPC32XXCDL_SITE = https://community.nxp.com/pwmxy87654/attachments/pwmxy87654/lpcware-archive/61/2
|
||||
|
||||
LPC32XXCDL_INSTALL_TARGET = NO
|
||||
LPC32XXCDL_INSTALL_IMAGES = YES
|
||||
|
||||
ifeq ($(BR2_TARGET_LPC32XXCDL_BOARDNAME),"ea3250")
|
||||
LPC32XXCDL_KICKSTART = kickstart/nand
|
||||
LPC32XXCDL_KICKSTART_BURNER = nand/kickstart
|
||||
LPC32XXCDL_S1L = s1l
|
||||
LPC32XXCDL_S1L_BURNER = nand/s1lapp
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_TARGET_LPC32XXCDL_BOARDNAME),"phy3250")
|
||||
LPC32XXCDL_KICKSTART = kickstart/kickstart_nand
|
||||
LPC32XXCDL_KICKSTART_BURNER = nand/kickstart
|
||||
LPC32XXCDL_S1L = s1l/s1l_nand_boot
|
||||
LPC32XXCDL_S1L_BURNER = nand/s1lapp
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_TARGET_LPC32XXCDL_BOARDNAME),"fdi3250")
|
||||
LPC32XXCDL_KICKSTART = kickstart/nand
|
||||
LPC32XXCDL_KICKSTART_BURNER = nand/kickstart_jtag
|
||||
LPC32XXCDL_S1L = s1l
|
||||
LPC32XXCDL_S1L_BURNER = nand/s1lapp_jtag
|
||||
endif
|
||||
|
||||
LPC32XXCDL_BUILD_FLAGS = \
|
||||
CROSS_COMPILE=$(TARGET_CROSS) \
|
||||
NXPMCU_WINBASE=$(@D) \
|
||||
NXPMCU_SOFTWARE=$(@D) \
|
||||
BSP=$(BR2_TARGET_LPC32XXCDL_BOARDNAME) \
|
||||
CSP=lpc32xx TOOL=gnu GEN=lpc
|
||||
|
||||
LPC32XXCDL_BOARD_STARTUP_DIR = \
|
||||
csps/lpc32xx/bsps/$(BR2_TARGET_LPC32XXCDL_BOARDNAME)/startup/examples/
|
||||
|
||||
# Source files are with dos newlines, which our patch infrastructure doesn't
|
||||
# handle. Work around it by converting the affected files to unix newlines
|
||||
# before patching
|
||||
define LPC32XXCDL_EXTRACT_CMDS
|
||||
unzip $(LPC32XXCDL_DL_DIR)/$(LPC32XXCDL_SOURCE) -d $(@D)
|
||||
mv $(@D)/lpc3xxx_cdl/* $(@D)
|
||||
rmdir $(@D)/lpc3xxx_cdl/
|
||||
sed -n 's|^[+-]\{3\} [^/]\+\([^ \t]*\)\(.*\)|$(@D)\1|p' \
|
||||
boot/lpc32xxcdl/*.patch| sort -u | xargs $(SED) 's/\x0D$$//'
|
||||
endef
|
||||
|
||||
define LPC32XXCDL_BUILD_CMDS
|
||||
$(MAKE1) $(LPC32XXCDL_BUILD_FLAGS) -C $(@D)
|
||||
$(MAKE1) $(LPC32XXCDL_BUILD_FLAGS) -C $(@D)/$(LPC32XXCDL_BOARD_STARTUP_DIR)/Burners/$(LPC32XXCDL_KICKSTART_BURNER)
|
||||
$(MAKE1) $(LPC32XXCDL_BUILD_FLAGS) -C $(@D)/$(LPC32XXCDL_BOARD_STARTUP_DIR)/$(LPC32XXCDL_KICKSTART)
|
||||
$(MAKE1) $(LPC32XXCDL_BUILD_FLAGS) -C $(@D)/$(LPC32XXCDL_BOARD_STARTUP_DIR)/Burners/$(LPC32XXCDL_S1L_BURNER)
|
||||
$(MAKE1) $(LPC32XXCDL_BUILD_FLAGS) -C $(@D)/$(LPC32XXCDL_BOARD_STARTUP_DIR)/$(LPC32XXCDL_S1L)
|
||||
endef
|
||||
|
||||
define LPC32XXCDL_INSTALL_IMAGES_CMDS
|
||||
cp $(@D)/$(LPC32XXCDL_BOARD_STARTUP_DIR)/Burners/$(LPC32XXCDL_KICKSTART_BURNER)/*gnu.bin $(BINARIES_DIR)
|
||||
cp $(@D)/$(LPC32XXCDL_BOARD_STARTUP_DIR)/$(LPC32XXCDL_KICKSTART)/*gnu.bin $(BINARIES_DIR)
|
||||
cp $(@D)/$(LPC32XXCDL_BOARD_STARTUP_DIR)/Burners/$(LPC32XXCDL_S1L_BURNER)/*gnu.bin $(BINARIES_DIR)
|
||||
cp $(@D)/$(LPC32XXCDL_BOARD_STARTUP_DIR)/$(LPC32XXCDL_S1L)/*gnu.bin $(BINARIES_DIR)
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
||||
@@ -1,49 +0,0 @@
|
||||
From 4796a1eacc6a5ccb623e7d2e46a5196f8335e496 Mon Sep 17 00:00:00 2001
|
||||
From: Baruch Siach <baruch@tkos.co.il>
|
||||
Date: Fri, 11 Aug 2023 11:19:49 +0300
|
||||
Subject: [PATCH] Allow access to low addresses with gcc 12
|
||||
|
||||
gcc 12 added a warning that triggers on access to low addresses. Add a
|
||||
compile option that allows access to lower addresses.
|
||||
|
||||
Add the 'cc_option' macro to avoid the compile option when the compiler
|
||||
does not support it.
|
||||
|
||||
This fixes build with TF-A. TF-A added a similar fix in commit
|
||||
dea23e245fb89.
|
||||
|
||||
See some more details in
|
||||
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105523
|
||||
|
||||
Upstream: https://github.com/MarvellEmbeddedProcessors/mv-ddr-marvell/pull/42
|
||||
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
|
||||
---
|
||||
Makefile | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 3f0dd89a7381..045284c30cbc 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -108,6 +108,10 @@ MV_DDR_VER_CSRC = mv_ddr_build_message.c
|
||||
# create mv_ddr build message and version string source file
|
||||
$(shell $(MV_DDR_ROOT)/scripts/localversion.sh $(MV_DDR_ROOT) $(MV_DDR_VER_CSRC) 2> /dev/null)
|
||||
|
||||
+define cc_option
|
||||
+ $(shell if $(CC) $(1) -c -x c /dev/null -o /dev/null >/dev/null 2>&1; then echo $(1); fi )
|
||||
+endef
|
||||
+
|
||||
# ******************
|
||||
# U-BOOT SPL SUPPORT
|
||||
# ******************
|
||||
@@ -331,6 +335,7 @@ OBJ_DIR ?= $(MV_DDR_ROOT)
|
||||
CFLAGS = -DMV_DDR_ATF -DCONFIG_DDR4
|
||||
CFLAGS += -Wall -Werror -Os -ffreestanding -mlittle-endian -g -gdwarf-2 -nostdinc
|
||||
CFLAGS += -march=armv8-a -fpie
|
||||
+CFLAGS += $(call cc_option, --param=min-pagesize=0)
|
||||
|
||||
# PLATFORM is set in ble/ble.mk
|
||||
ifneq ($(findstring a80x0,$(PLATFORM)),)
|
||||
--
|
||||
2.40.1
|
||||
|
||||
+6
-5
@@ -10,24 +10,25 @@ routines.
|
||||
The mv-ddr-marvell Makefile provides no way to add custom CFLAGS. Patch
|
||||
Makefile to disable stack protection.
|
||||
|
||||
Upstream: not applicable; Buildroot specific
|
||||
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
|
||||
---
|
||||
Upstream status: not applicable; Buildroot specific
|
||||
---
|
||||
Makefile | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 045284c30cbc..9641354bcf86 100644
|
||||
index 3f0dd89a7381..feae75cc16e4 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -336,6 +336,7 @@ CFLAGS = -DMV_DDR_ATF -DCONFIG_DDR4
|
||||
@@ -331,6 +331,7 @@ OBJ_DIR ?= $(MV_DDR_ROOT)
|
||||
CFLAGS = -DMV_DDR_ATF -DCONFIG_DDR4
|
||||
CFLAGS += -Wall -Werror -Os -ffreestanding -mlittle-endian -g -gdwarf-2 -nostdinc
|
||||
CFLAGS += -march=armv8-a -fpie
|
||||
CFLAGS += $(call cc_option, --param=min-pagesize=0)
|
||||
+CFLAGS += -fno-stack-protector
|
||||
|
||||
# PLATFORM is set in ble/ble.mk
|
||||
ifneq ($(findstring a80x0,$(PLATFORM)),)
|
||||
--
|
||||
2.40.1
|
||||
2.35.1
|
||||
|
||||
@@ -19,7 +19,7 @@ choice
|
||||
Select the specific OpenSBI version you want to use
|
||||
|
||||
config BR2_TARGET_OPENSBI_LATEST_VERSION
|
||||
bool "1.3"
|
||||
bool "1.2"
|
||||
|
||||
config BR2_TARGET_OPENSBI_CUSTOM_VERSION
|
||||
bool "Custom version"
|
||||
@@ -57,10 +57,10 @@ endif
|
||||
|
||||
config BR2_TARGET_OPENSBI_VERSION
|
||||
string
|
||||
default "1.3" if BR2_TARGET_OPENSBI_LATEST_VERSION
|
||||
default "1.2" if BR2_TARGET_OPENSBI_LATEST_VERSION
|
||||
default BR2_TARGET_OPENSBI_CUSTOM_VERSION_VALUE \
|
||||
if BR2_TARGET_OPENSBI_CUSTOM_VERSION
|
||||
default "custom" if BR2_TARGET_OPENSBI_CUSTOM_TARBALL
|
||||
default "custom" if BR2_TARGET_OPENSBI_CUSTOM_TARBALL
|
||||
default BR2_TARGET_OPENSBI_CUSTOM_REPO_VERSION \
|
||||
if BR2_TARGET_OPENSBI_CUSTOM_GIT
|
||||
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# locally computed
|
||||
sha256 2c0501eb3475f463b15f5b8531996f64604ea49e0e3ed040ecbd1fc27ecd8c5c opensbi-1.3.tar.gz
|
||||
sha256 8fcbce598a73acc2c7f7d5607d46b9d5107d3ecbede8f68f42631dcfc25ef2b2 opensbi-1.2.tar.gz
|
||||
sha256 82d13fb1bf6bb162629deeea9eb9c117e74548d3b707e478967691fe79a68e21 COPYING.BSD
|
||||
|
||||
@@ -262,15 +262,6 @@ config BR2_TARGET_UBOOT_NEEDS_IMX_FIRMWARE
|
||||
This option makes sure that the i.MX firmwares are copied into
|
||||
the U-Boot source directory.
|
||||
|
||||
config BR2_TARGET_UBOOT_NEEDS_ROCKCHIP_RKBIN
|
||||
bool "U-Boot needs rockchip-rkbin"
|
||||
depends on BR2_PACKAGE_ROCKCHIP_RKBIN
|
||||
help
|
||||
For some Rockchip SoCs U-Boot needs binary blobs from
|
||||
Rockchip.
|
||||
This option makes sure that the needed binary blobs are copied
|
||||
into the U-Boot source directory.
|
||||
|
||||
menu "U-Boot binary format"
|
||||
|
||||
config BR2_TARGET_UBOOT_FORMAT_AIS
|
||||
@@ -404,16 +395,6 @@ config BR2_TARGET_UBOOT_FORMAT_STM32
|
||||
bool "u-boot.stm32"
|
||||
depends on BR2_arm
|
||||
|
||||
if BR2_TARGET_UBOOT_FORMAT_STM32
|
||||
config BR2_TARGET_UBOOT_BUILD_FORMAT_STM32_LEGACY
|
||||
bool "Legacy build (u-boot.stm32 target)"
|
||||
help
|
||||
Select this option if you use U-Boot with version older than
|
||||
2022.01), so that we use the old build target. Otherwise,
|
||||
binman application is called to create the stm32 binary
|
||||
format.
|
||||
endif
|
||||
|
||||
config BR2_TARGET_UBOOT_FORMAT_CUSTOM
|
||||
bool "Custom (specify below)"
|
||||
help
|
||||
|
||||
+1
-20
@@ -133,10 +133,8 @@ endif
|
||||
|
||||
ifeq ($(BR2_TARGET_UBOOT_FORMAT_STM32),y)
|
||||
UBOOT_BINS += u-boot.stm32
|
||||
ifeq ($(BR2_TARGET_UBOOT_BUILD_FORMAT_STM32_LEGACY),y)
|
||||
UBOOT_MAKE_TARGET += u-boot.stm32
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_TARGET_UBOOT_FORMAT_CUSTOM),y)
|
||||
UBOOT_BINS += $(call qstrip,$(BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME))
|
||||
@@ -209,23 +207,6 @@ endef
|
||||
UBOOT_PRE_BUILD_HOOKS += UBOOT_COPY_IMX_FW_FILES
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_TARGET_UBOOT_NEEDS_ROCKCHIP_RKBIN),y)
|
||||
UBOOT_DEPENDENCIES += rockchip-rkbin
|
||||
define UBOOT_INSTALL_UBOOT_ROCKCHIP_BIN
|
||||
$(INSTALL) -D -m 0644 $(@D)/u-boot-rockchip.bin $(BINARIES_DIR)/u-boot-rockchip.bin
|
||||
endef
|
||||
UBOOT_POST_INSTALL_IMAGES_HOOKS += UBOOT_INSTALL_UBOOT_ROCKCHIP_BIN
|
||||
ifneq ($(ROCKCHIP_RKBIN_BL31_FILENAME),)
|
||||
UBOOT_MAKE_OPTS += BL31=$(BINARIES_DIR)/$(notdir $(ROCKCHIP_RKBIN_BL31_FILENAME))
|
||||
endif
|
||||
ifneq ($(ROCKCHIP_RKBIN_TPL_FILENAME),)
|
||||
UBOOT_MAKE_OPTS += ROCKCHIP_TPL=$(BINARIES_DIR)/$(notdir $(ROCKCHIP_RKBIN_TPL_FILENAME))
|
||||
endif
|
||||
ifneq ($(ROCKCHIP_RKBIN_TEE_FILENAME),)
|
||||
UBOOT_MAKE_OPTS += TEE=$(BINARIES_DIR)/$(notdir $(ROCKCHIP_RKBIN_TEE_FILENAME))
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_TARGET_UBOOT_NEEDS_DTC),y)
|
||||
UBOOT_DEPENDENCIES += host-dtc
|
||||
UBOOT_MAKE_OPTS += DTC=$(HOST_DIR)/bin/dtc
|
||||
@@ -236,7 +217,7 @@ UBOOT_DEPENDENCIES += host-python3 host-python-setuptools
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_TARGET_UBOOT_NEEDS_PYLIBFDT),y)
|
||||
UBOOT_DEPENDENCIES += host-python-pylibfdt
|
||||
UBOOT_DEPENDENCIES += host-swig
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_TARGET_UBOOT_NEEDS_PYELFTOOLS),y)
|
||||
|
||||
@@ -38,6 +38,7 @@ BR2_TARGET_UBOOT_NEEDS_OPENSBI=y
|
||||
BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
|
||||
BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot.itb"
|
||||
BR2_TARGET_UBOOT_SPL=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="ARCH_FLAGS=-march=rv64imafdc"
|
||||
BR2_PACKAGE_HOST_DOSFSTOOLS=y
|
||||
BR2_PACKAGE_HOST_GENIMAGE=y
|
||||
BR2_PACKAGE_HOST_MTOOLS=y
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
BR2_arm=y
|
||||
BR2_cortex_a7=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_8=y
|
||||
BR2_GLOBAL_PATCH_DIR="board/arrow/avenger96/patches"
|
||||
BR2_ROOTFS_OVERLAY="board/arrow/avenger96/overlay/"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/stmicroelectronics/common/stm32mp157/post-image.sh"
|
||||
BR2_LINUX_KERNEL=y
|
||||
@@ -18,9 +17,10 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="120M"
|
||||
# BR2_TARGET_ROOTFS_TAR is not set
|
||||
BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
|
||||
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION=y
|
||||
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.5"
|
||||
BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_VERSION_VALUE="v2.2"
|
||||
BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="stm32mp1"
|
||||
BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="STM32MP_SDMMC=1 AARCH32_SP=sp_min DTB_FILE_NAME=stm32mp157a-avenger96.dtb E=0"
|
||||
BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="STM32MP_SDMMC=1 AARCH32_SP=sp_min DTB_FILE_NAME=stm32mp157a-avenger96.dtb"
|
||||
BR2_TARGET_ARM_TRUSTED_FIRMWARE_DEBUG=y
|
||||
BR2_TARGET_ARM_TRUSTED_FIRMWARE_IMAGES="*.stm32"
|
||||
BR2_TARGET_ARM_TRUSTED_FIRMWARE_NEEDS_DTC=y
|
||||
BR2_TARGET_UBOOT=y
|
||||
@@ -30,6 +30,5 @@ BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2020.07"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="stm32mp15_trusted"
|
||||
# BR2_TARGET_UBOOT_FORMAT_BIN is not set
|
||||
BR2_TARGET_UBOOT_FORMAT_STM32=y
|
||||
BR2_TARGET_UBOOT_BUILD_FORMAT_STM32_LEGACY=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="DEVICE_TREE=stm32mp15xx-dhcor-avenger96"
|
||||
BR2_PACKAGE_HOST_GENIMAGE=y
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
BR2_riscv=y
|
||||
BR2_riscv_custom=y
|
||||
BR2_RISCV_ISA_CUSTOM_RVM=y
|
||||
BR2_RISCV_ISA_CUSTOM_RVA=y
|
||||
BR2_RISCV_ISA_CUSTOM_RVF=y
|
||||
BR2_RISCV_ISA_CUSTOM_RVD=y
|
||||
BR2_RISCV_ISA_CUSTOM_RVC=y
|
||||
@@ -40,4 +39,3 @@ BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,starfive-tech,u-boot,64e
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="starfive_vic7100_beagle_v_smode"
|
||||
BR2_PACKAGE_HOST_GENIMAGE=y
|
||||
BR2_PACKAGE_HOST_JH71XX_TOOLS=y
|
||||
BR2_GLOBAL_PATCH_DIR="board/beaglev/patches"
|
||||
|
||||
@@ -15,7 +15,7 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/ci20/genimage.cfg"
|
||||
# kernel
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.254"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.4.58"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="ci20"
|
||||
BR2_LINUX_KERNEL_INSTALL_TARGET=y
|
||||
|
||||
|
||||
@@ -37,6 +37,7 @@ BR2_PACKAGE_HOST_MTOOLS=y
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_BOARDNAME="mx6qsabresd"
|
||||
BR2_TARGET_UBOOT_FORMAT_IMX=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_GIT=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,nxp-imx,uboot-imx,lf-5.10.y-1.0.0)/uboot-imx-lf-5.10.y-1.0.0.tar.gz"
|
||||
BR2_TARGET_UBOOT_NEEDS_DTC=y
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
BR2_aarch64=y
|
||||
BR2_ARM_FPU_VFPV3=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
|
||||
BR2_GLOBAL_PATCH_DIR="board/freescale/common/patches"
|
||||
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc1"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/imx8-bootloader-prepare.sh board/freescale/common/imx/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="${UBOOT_DIR}/arch/arm/dts/imx8mm-evk.dtb"
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
BR2_aarch64=y
|
||||
BR2_ARM_FPU_VFPV3=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
|
||||
BR2_GLOBAL_PATCH_DIR="board/freescale/common/patches"
|
||||
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc1"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/imx8-bootloader-prepare.sh board/freescale/common/imx/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="${UBOOT_DIR}/arch/arm/dts/imx8mn-ddr4-evk.dtb"
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
BR2_aarch64=y
|
||||
BR2_ARM_FPU_VFPV3=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
|
||||
BR2_GLOBAL_PATCH_DIR="board/freescale/common/patches"
|
||||
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc1"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/imx8-bootloader-prepare.sh board/freescale/common/imx/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="${UBOOT_DIR}/arch/arm/dts/imx8mp-evk.dtb"
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
BR2_aarch64=y
|
||||
BR2_ARM_FPU_VFPV3=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
|
||||
BR2_GLOBAL_PATCH_DIR="board/freescale/common/patches"
|
||||
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/imx8-bootloader-prepare.sh board/freescale/common/imx/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="${UBOOT_DIR}/arch/arm/dts/imx8mq-evk.dtb"
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
BR2_aarch64=y
|
||||
BR2_ARM_FPU_VFPV4=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
|
||||
BR2_GLOBAL_PATCH_DIR="board/freescale/common/patches"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/imx8-bootloader-prepare.sh board/freescale/common/imx/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="${UBOOT_DIR}/arch/arm/dts/fsl-imx8qm-mek.dtb"
|
||||
BR2_LINUX_KERNEL=y
|
||||
|
||||
@@ -2,7 +2,6 @@ BR2_aarch64=y
|
||||
BR2_cortex_a35=y
|
||||
BR2_ARM_FPU_VFPV3=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
|
||||
BR2_GLOBAL_PATCH_DIR="board/freescale/common/patches"
|
||||
BR2_TARGET_GENERIC_GETTY_PORT="ttyLP0"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/imx8-bootloader-prepare.sh board/freescale/common/imx/post-image.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="${UBOOT_DIR}/arch/arm/dts/fsl-imx8qxp-mek.dtb"
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user