Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8025cfad10 | ||
|
|
9446c4a7b6 | ||
|
|
0189f41ecc | ||
|
|
3232298f1e | ||
|
|
aa6e00367f | ||
|
|
93d44d9571 | ||
|
|
02dd429870 | ||
|
|
fbdad6a5ff | ||
|
|
93b506f337 | ||
|
|
cfaf4ec64f | ||
|
|
b25cfba01e | ||
|
|
a07e9f253d | ||
|
|
1781226e5c | ||
|
|
cb7d10bcbe | ||
|
|
7f0dac0234 | ||
|
|
2a6404684e | ||
|
|
7f23520319 | ||
|
|
0ece37e28d | ||
|
|
5306eebf3b | ||
|
|
fc2aef38ee | ||
|
|
2d95bb06f0 | ||
|
|
a5c1c1d884 | ||
|
|
a708a811c1 | ||
|
|
f5dac8fc40 | ||
|
|
81a2daef27 | ||
|
|
c1fab37709 | ||
|
|
802dba0f97 | ||
|
|
242cc8c7de | ||
|
|
754dc7b1b4 | ||
|
|
1c15acd6bc | ||
|
|
13cf1ba623 | ||
|
|
ba339be0f7 | ||
|
|
65a935c50c | ||
|
|
8117ff67d0 | ||
|
|
a5145ca1f8 | ||
|
|
6fab42da90 | ||
|
|
5c3c5a6bbd | ||
|
|
e5e171093f | ||
|
|
5c2a942eb0 | ||
|
|
f1b72dd33d | ||
|
|
904966909d | ||
|
|
7959fe04b5 | ||
|
|
b825bbd100 | ||
|
|
9543cb3285 | ||
|
|
32dc4feacc | ||
|
|
ab0507cd5a | ||
|
|
af738be309 | ||
|
|
69d9cdfcc7 | ||
|
|
95741c08f1 | ||
|
|
6cee24af53 | ||
|
|
5c7130f970 | ||
|
|
7e86856d69 | ||
|
|
8e4bf44aad | ||
|
|
cec14f3328 | ||
|
|
d2b0ce01ba | ||
|
|
f87fe6d419 | ||
|
|
6b82c00c5d | ||
|
|
02b2c66ffc | ||
|
|
f29a5497f5 | ||
|
|
aa658bec37 | ||
|
|
410c9f01ed | ||
|
|
7660792c1e | ||
|
|
2554f30194 | ||
|
|
6ce7cd546b | ||
|
|
8716d50651 | ||
|
|
b649f233ea | ||
|
|
d9c4e693a1 | ||
|
|
5a8b764cd8 | ||
|
|
644110a921 | ||
|
|
8c84c53a15 | ||
|
|
8d44a0369d | ||
|
|
e0b0380de4 | ||
|
|
dacc6751f5 | ||
|
|
2689e6974a | ||
|
|
f7c17b3e02 | ||
|
|
901031eecc | ||
|
|
75a10d935f | ||
|
|
69d1d353d3 | ||
|
|
3f359328bb | ||
|
|
e660b4fe42 | ||
|
|
5380a3f3ae | ||
|
|
61acdc6047 | ||
|
|
9d215d42b9 | ||
|
|
786756e423 | ||
|
|
737d221753 | ||
|
|
8406e06af3 | ||
|
|
de6e600859 | ||
|
|
a23d06e96c | ||
|
|
2bc49f4cb2 | ||
|
|
1bf2cdc30c | ||
|
|
c7dee88ef0 | ||
|
|
35485b3d10 | ||
|
|
71655041dc | ||
|
|
021eba76f0 | ||
|
|
373b98b5a8 | ||
|
|
76b6da9d4f | ||
|
|
898f7adcb1 | ||
|
|
971bf1f768 | ||
|
|
91d669e7a0 | ||
|
|
9581a99263 | ||
|
|
5a03ec843d | ||
|
|
f9a4096917 | ||
|
|
18aa1e8959 | ||
|
|
16f6ba9b96 |
+44
-1592
File diff suppressed because it is too large
Load Diff
@@ -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,169 +1,3 @@
|
||||
2023.05.3, released September 26th, 2023
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Defconfigs: PC x86-64 bios/efi: Needs libelf. Raspberrypi:
|
||||
Also enable HDMI console when systemd is used.
|
||||
|
||||
Updated/fixed packages: agentpp, asterisk, at91dataflashboot,
|
||||
aubio, berkeleydb, bind, bwm-ng, chocolate-doom, clamav,
|
||||
compiler-rt, connman, cpio, cups, dav1d, diffutils, dracut,
|
||||
dt, expect, fail2ban, fio, flite, freerdp, freeswitch,
|
||||
fstrcmp, gcc, gdb, ghostscript, gmp, go, grub2, haproxy,
|
||||
heirloom-mailx, hwloc, icu, intel-microcode, irssi, less,
|
||||
libcoap, libcurl, libglib2, libiec61850, libjxl, libks,
|
||||
libksba, libmodsecurity, libpjsip, libqb, libraw, libssh,
|
||||
libtommath, lldpd, log4cxx, lsof, mdadm, mosquitto, mpd, mpv,
|
||||
mutt, mv-ddr-marvell, ne10, netatalk, network-manager,
|
||||
nftables, nodejs, ntpsec, nut, openblas, openjdk, openjdk-bin,
|
||||
opensc, openssh, pcm-tools, perftest, petitboot, php, pixman,
|
||||
poppler, postgresql, python-django, python-ipython,
|
||||
python-pip, python-pylibfdt, python-tornado, python3, qt5,
|
||||
ramspeed, rtl8189fs, rtl8812au-aircrack-ng, samba4, screen,
|
||||
screenfetch, sngrep, sofia-sip, stellarium, stress-ng,
|
||||
strongswan, sysstat, tar, tcl, uboot, uclibc, vim, webkitgtk,
|
||||
webp, wireshark, xfsprogs, xserver_xorg-server, xterm, yajl,
|
||||
zbar, zxing-cpp
|
||||
|
||||
New packages: xlib_libXpresent
|
||||
|
||||
2023.05.2, released August 31th, 2023
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Toolchains: Correctly mark Bootlin external toolchains as
|
||||
having OpenMP support.
|
||||
|
||||
Arch: Mark Alderlake x86 variants as no AVX512 support.
|
||||
|
||||
Utils: Ensure utils/docker-run correctly supports git
|
||||
worktrees.
|
||||
|
||||
Defconfigs: Beaglebone: U-Boot needs OpenSSL. Beaglebone qt5:
|
||||
Enable support for green wireless variant.
|
||||
|
||||
Updated/fixed packages: arm-trusted-firmware, bind, cairo,
|
||||
cmocka, containerd, crudini, cryptodev-linux, dmidecode,
|
||||
ffmpeg, firmware-imx, gcc, gdb, ghostscript, gkrellm,
|
||||
gnuradio, go, igh-ethercat, iperf3, kodi, libcurl, libopenssl,
|
||||
libssh, libubootenv, libuhttpd, linux-tools, mali-driver,
|
||||
nfs-utils, ntp, openssh, php, pipewire, python-pysmb,
|
||||
python-iniparse, python-iptables, rtl8189es, rtl8189fs,
|
||||
sam-ba, samba4, seatd, shadow, speex,
|
||||
sunxi-mali-utgard-driver, supertuxkart, sysdig, systemd, tor,
|
||||
tpm2-tss, transmission, 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.05.1, released July 17th, 2023
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Defconfigs: Chiliboard, mx53loco: fix build on hosts without
|
||||
openssl development headers.
|
||||
Nitrogen*: fix build on hosts without openssl or pylibfdt.
|
||||
Hifive unleased: Bump OpenSBI to 1.2 to fix a build issue.
|
||||
Raspberrypi: Handle DTB overlays for all variants
|
||||
|
||||
Updated/fixed packages: agentpp, alsa-plugins, assimp, audit,
|
||||
bind, busybox, c-ares, check, cups, dav1d, dbus, fftw,
|
||||
fluidsynth, freetype, fwts, ghostscript, gnupg2, gnuradio,
|
||||
graphicsmagick, gupnp, haproxy, heimdal, hwdata, jhead, kodi,
|
||||
libcap, libgcrypt, libgpg-error, libgtk3, libmdbx, libxslt,
|
||||
mesa3d, mesa3d-demos, mpir, nodejs, php, pkgconf,
|
||||
python-cryptography, python-dbus-fast, python-django,
|
||||
python-docker, python-pyicu, python-requests, python3, qemu,
|
||||
qt6, quickjs, rtl8192eu, samba4, sconeserver, syslog-ng,
|
||||
taglib, tiff, wine, wireshark, xdriver_xf86-video-dummy,
|
||||
xlib_libX11,
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#15643: ERROR: No hash found for linux-6.3.8.tar.xz
|
||||
#15658: hifive_unleashed_defconfig: Linker errors in opensbi-0.9
|
||||
#15661: mx53loco_defconfig: Dependency on OpenSSL missing
|
||||
#15664: Can't compile mesa3d with v3d driver
|
||||
#15673: PKGCONF_SITE in pkgconf.mk points to parked domain
|
||||
#15682: pkgconf: no longer able to download source from...
|
||||
|
||||
2023.05, released June 7th, 2023
|
||||
|
||||
Fixes all over the tree.
|
||||
|
||||
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).
|
||||
|
||||
Defconfigs: QEMU s390x: Bump rootfs size to 120MB to make room
|
||||
for kernel modules.
|
||||
|
||||
Updated/fixed packages: at-spi2-core, go, libdeflate, libjxl,
|
||||
perl-http-message, php, redis
|
||||
|
||||
2023.05-rc3, released June 4th, 2023
|
||||
|
||||
Fixes all over the tree.
|
||||
|
||||
Updated/fixed packages: bird, containerd, earlyoom, gcc,
|
||||
ipython, kexec, kodi-skin-confluence, libcurl, libopenssl,
|
||||
mesa3d, minidlna, mpd, openjdk, openjdk-bin,
|
||||
python-matplotlib, sdl2_net, vdr
|
||||
|
||||
New packages: python-asttokens, python-executing,
|
||||
python-pure-eval, python-stack-data
|
||||
|
||||
2023.05-rc2, released May 28th, 2023
|
||||
|
||||
Fixes all over the tree.
|
||||
|
||||
Updated/fixed packages: busybox, clamav, crudini,
|
||||
kodi-pvr-vbox, libcurl, libmnl, libpqxx, libressl, libssh,
|
||||
llvm, lua, mesa3d, perl-http-message, python-can,
|
||||
python-django, sdl2_mixer, webkitgtk, zfs, znc
|
||||
|
||||
New packages: perl-clone
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#15421: qemu_aarch64_ebbr_defconfig: Missing Linux kernel source..
|
||||
#15581: qemu_ppc_mpc8544ds_defconfig: Fails due to non-working patch
|
||||
|
||||
2023.05-rc1, released May 15th, 2023
|
||||
|
||||
Fixes all over the tree and new features.
|
||||
|
||||
Toolchain:
|
||||
- glibc update to 2.37, uClibc-ng updated to 1.0.43
|
||||
- suppoert 6.2.x / 6.3.x kernel headers
|
||||
|
||||
Infrastucture:
|
||||
- go: Ensure go versions of os/user and net are used for
|
||||
static builds so CGO is not used
|
||||
|
||||
- rust / cargo: Correctly split up rust flags for host and
|
||||
target builds
|
||||
|
||||
New defconfigs: STM32F769 discovery
|
||||
|
||||
New packages: petitboot, python-evdev, python-hwdata,
|
||||
python-pyproject-hooks, shadow
|
||||
|
||||
Removed packages: atk, at-spi2-atk, optee-benchmark,
|
||||
python-pep517
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#14356: cronstamp jobs are not performed with bumped version of...
|
||||
#15191: pc_x86_64_efi_defconfig doesn't run on real hardware
|
||||
#15306: glibc build fails in Docker container
|
||||
#15321: docker-engine now requires libseccomp by default
|
||||
#15376: Libiconv config
|
||||
#15461: QtVirtualKeyboard segfaults
|
||||
|
||||
2023.02.1, released May 9th, 2023
|
||||
|
||||
Important / security related fixes.
|
||||
@@ -334,31 +168,6 @@
|
||||
#15301: Selecting NAND Flash boot media (NAND_BOOT) breaks the uboot..
|
||||
#15331: Warning on python-flit-core license when generating legal info
|
||||
|
||||
2022.11.3, released March 18th, 2023
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Updated/fixed packages: ace, apache, apr, apr-util, asterisk,
|
||||
at91dataflashboot, audit, bash, bind, bridge-utils, clamav,
|
||||
dmalloc, efivar, erlang, exfat, exfat-utils, f2fs-tools, gcc,
|
||||
gdal, gensio, gerbera, git, glslsandbox-player, go, haproxy,
|
||||
hawktracer, intel-gmmlib, ipmiutil, less, libblockdev,
|
||||
libcurl, libev, libgcrypt, libglfw, libmad, libmdbx,
|
||||
libmodsecurity, libolm, libpjsip, lirc-tools,
|
||||
lttng-babeltrace, mender, mpv, mutt, mxs-bootlets, netsurf,
|
||||
ntpsec, nut, opensbi, opus, paho-mqtt-c, pcm-tools, php,
|
||||
pistache, proftpd, proxychains-ng, pulseaudio,
|
||||
python-cryptography, python-django, python-m2crypto,
|
||||
python-numpy, python-werkzeug, qemu, quazip, quickjs,
|
||||
rockchip-mali, rsync, s6-linux-utils, sudo, tiff, uacme, uqmi,
|
||||
webkitgtk, wilc-driver, wpa_supplicant, wpewebkit,
|
||||
xdriver_xf86-video-qxl, znc
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#15306: glibc build fails in Docker container
|
||||
#15361: Buildroot linking error on Apple Silicon
|
||||
|
||||
2022.11.2, released March 1st, 2023
|
||||
|
||||
Important / security related fixes.
|
||||
@@ -977,39 +786,6 @@
|
||||
#14731: BR2_PACKAGE_IOSTAT
|
||||
#14751: LVM2 Outdated Link
|
||||
|
||||
2022.02.12, released May 5th, 2023
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Updated/fixed packages: agentpp, apache, ca-certificates,
|
||||
containerd, coremark, dcron, eudev, ffmpeg, git,
|
||||
intel-microcode, kexec, lcdproc, libmicrohttpd, libosmium,
|
||||
libxml2, linux-tools, matio, osm2pgsql, poppler, postgresql,
|
||||
protozero, python-web2py, runc, s390-tools, samba4, snmppp,
|
||||
sudo, tcpdump, uclibc, vim, webkitgtk, wpewebkit,
|
||||
xserver_xorg-server
|
||||
|
||||
2022.02.11, released March 19th, 2023
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
Updated/fixed packages: apache, apr, apr-util, asterisk,
|
||||
at91dataflashboot, audit, bash, bind, bridge-utils, clamav,
|
||||
dmalloc, exfat, exfat-utils, f2fs-tools, gcc, git,
|
||||
glslsandbox-player, go, haproxy, intel-gmmlib, ipmiutil, less,
|
||||
libblockdev, libcurl, libev, libgcrypt, libmad, libmdbx,
|
||||
libmodsecurity, libolm, libpjsip, lttng-babeltrace, mender,
|
||||
mpv, mutt, mxs-bootlets, opensbi, opus, paho-mqtt-c,
|
||||
pcm-tools, php, proxychains-ng, python-django,
|
||||
python-m2crypto, python-werkzeug, quazip, quickjs,
|
||||
rockchip-mali, rsync, sudo, tiff, uacme, uqmi, webkitgtk,
|
||||
wpebackend-fdo, wpewebkit, xdriver_xf86-video-qxl, znc
|
||||
|
||||
Issues resolved (http://bugs.uclibc.org):
|
||||
|
||||
#15306: glibc build fails in Docker container
|
||||
#15361: Buildroot linking error on Apple Silicon
|
||||
|
||||
2022.02.10, released March 1st, 2023
|
||||
|
||||
Important / security related fixes.
|
||||
|
||||
@@ -65,7 +65,7 @@ config BR2_NEEDS_HOST_JAVA
|
||||
|
||||
# Hidden boolean selected by pre-built packages for x86, when they
|
||||
# need to run on x86-64 machines (example: pre-built external
|
||||
# toolchains, binary tools, etc.).
|
||||
# toolchains, binary tools like SAM-BA, etc.).
|
||||
config BR2_HOSTARCH_NEEDS_IA32_LIBS
|
||||
bool
|
||||
|
||||
|
||||
@@ -144,40 +144,6 @@ endif
|
||||
|
||||
###############################################################################
|
||||
|
||||
comment "Legacy options removed in 2023.05"
|
||||
|
||||
config BR2_KERNEL_HEADERS_6_2
|
||||
bool "kernel headers version 6.2.x are no longer supported"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
Version 6.2.x of the Linux kernel headers are no longer
|
||||
maintained upstream and are now removed.
|
||||
|
||||
config BR2_PACKAGE_ATK
|
||||
bool "atk removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
atk is now part of at-spi2-core.
|
||||
|
||||
config BR2_PACKAGE_AT_SPI2_ATK
|
||||
bool "at-spi2-atk removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
at-spi2-atk is now part of at-spi2-core.
|
||||
|
||||
config BR2_PACKAGE_OPTEE_BENCHMARK
|
||||
bool "optee-benchmark has been removed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
optee-benchmark is no longer maintained upstream.
|
||||
|
||||
config BR2_PACAKGE_OPENFPGALOADER_CMSIS
|
||||
bool "openfpgaloader cmsis option name fixed"
|
||||
select BR2_LEGACY
|
||||
help
|
||||
A typo on BR2_PACAKGE_OPENFPGALOADER_CMSIS was fixed by
|
||||
renaming the option to BR2_PACKAGE_OPENFPGALOADER_CMSIS.
|
||||
|
||||
comment "Legacy options removed in 2023.02"
|
||||
|
||||
config BR2_PACKAGE_PUGIXML_HEADER_ONLY
|
||||
|
||||
+46
-56
@@ -311,7 +311,7 @@ F: package/taskd/
|
||||
N: Benjamin Kamath <kamath.ben@gmail.com>
|
||||
F: package/lapack/
|
||||
|
||||
N: Bernd Kuhls <bernd@kuhls.net>
|
||||
N: Bernd Kuhls <bernd.kuhls@t-online.de>
|
||||
F: package/alsa-lib/
|
||||
F: package/alsa-utils/
|
||||
F: package/apache/
|
||||
@@ -321,19 +321,19 @@ F: package/apr-util/
|
||||
F: package/bcg729/
|
||||
F: package/bento4/
|
||||
F: package/bitcoin/
|
||||
F: package/bluez-tools/
|
||||
F: package/boinc/
|
||||
F: package/clamav/
|
||||
F: package/dav1d/
|
||||
F: package/dht/
|
||||
F: package/dovecot/
|
||||
F: package/dovecot-pigeonhole/
|
||||
F: package/dtv-scan-tables/
|
||||
F: package/ethtool/
|
||||
F: package/eudev/
|
||||
F: package/exim/
|
||||
F: package/fetchmail/
|
||||
F: package/ffmpeg/
|
||||
F: package/flac/
|
||||
F: package/flatbuffers/
|
||||
F: package/freeswitch/
|
||||
F: package/freeswitch-mod-bcg729/
|
||||
F: package/freetype/
|
||||
@@ -341,10 +341,13 @@ F: package/fstrcmp/
|
||||
F: package/ghostscript/
|
||||
F: package/giflib/
|
||||
F: package/gkrellm/
|
||||
F: package/gli/
|
||||
F: package/glmark2/
|
||||
F: package/gpsd/
|
||||
F: package/gptfdisk/
|
||||
F: package/hddtemp/
|
||||
F: package/hdparm/
|
||||
F: package/hddtemp/
|
||||
F: package/inih/
|
||||
F: package/intel-gmmlib/
|
||||
F: package/intel-mediadriver/
|
||||
F: package/intel-mediasdk/
|
||||
@@ -352,7 +355,6 @@ F: package/intel-microcode/
|
||||
F: package/jsoncpp/
|
||||
F: package/kodi*
|
||||
F: package/lame/
|
||||
F: package/lcms2/
|
||||
F: package/leafnode2/
|
||||
F: package/libaacs/
|
||||
F: package/libasplib/
|
||||
@@ -360,7 +362,6 @@ F: package/libass/
|
||||
F: package/libbdplus/
|
||||
F: package/libbluray/
|
||||
F: package/libbroadvoice/
|
||||
F: package/libcap/
|
||||
F: package/libcdio/
|
||||
F: package/libcec/
|
||||
F: package/libcodec2/
|
||||
@@ -373,7 +374,6 @@ F: package/libdvdnav/
|
||||
F: package/libdvdread/
|
||||
F: package/libebur128/
|
||||
F: package/libfreeglut/
|
||||
F: package/libfribidi/
|
||||
F: package/libg7221/
|
||||
F: package/libglew/
|
||||
F: package/libglfw/
|
||||
@@ -396,27 +396,21 @@ F: package/libsidplay2/
|
||||
F: package/libsilk/
|
||||
F: package/libsndfile/
|
||||
F: package/libsoundtouch/
|
||||
F: package/libsquish/
|
||||
F: package/libudfread/
|
||||
F: package/libunibreak/
|
||||
F: package/liburiparser/
|
||||
F: package/libutp/
|
||||
F: package/libuv/
|
||||
F: package/libva/
|
||||
F: package/libva-intel-driver/
|
||||
F: package/libva-utils/
|
||||
F: package/libvorbis/
|
||||
F: package/libvpx/
|
||||
F: package/libyuv/
|
||||
F: package/linux-firmware/
|
||||
F: package/mc/
|
||||
F: package/mesa3d/
|
||||
F: package/minidlna/
|
||||
F: package/mjpg-streamer/
|
||||
F: package/mpg123/
|
||||
F: package/ntp/
|
||||
F: package/nut/
|
||||
F: package/opus/
|
||||
F: package/pciutils/
|
||||
F: package/perl-crypt-openssl-guess/
|
||||
F: package/perl-crypt-openssl-random/
|
||||
F: package/perl-crypt-openssl-rsa/
|
||||
@@ -435,34 +429,33 @@ F: package/perl-io-html/
|
||||
F: package/perl-lwp-mediatypes/
|
||||
F: package/perl-mail-dkim/
|
||||
F: package/perl-mailtools/
|
||||
F: package/perl-netaddr-ip/
|
||||
F: package/perl-net-dns/
|
||||
F: package/perl-net-http/
|
||||
F: package/perl-netaddr-ip/
|
||||
F: package/perl-timedate/
|
||||
F: package/perl-uri/
|
||||
F: package/perl-www-robotrules/
|
||||
F: package/php/
|
||||
F: package/pixman/
|
||||
F: package/pngquant/
|
||||
F: package/pppd/
|
||||
F: package/privoxy/
|
||||
F: package/pound/
|
||||
F: package/pure-ftpd/
|
||||
F: package/python-couchdb/
|
||||
F: package/python-cssutils/
|
||||
F: package/python-glslang/
|
||||
F: package/python-mako/
|
||||
F: package/python-mwclient/
|
||||
F: package/python-mwscrape/
|
||||
F: package/python-mwscrape2slob/
|
||||
F: package/python-mako/
|
||||
F: package/python-oauthlib/
|
||||
F: package/python-pyicu/
|
||||
F: package/python-pylru/
|
||||
F: package/python-requests-oauthlib/
|
||||
F: package/python-slob/
|
||||
F: package/rrdtool/
|
||||
F: package/rsync/
|
||||
F: package/rtmpdump/
|
||||
F: package/samba4/
|
||||
F: package/sofia-sip/
|
||||
F: package/softether/
|
||||
F: package/spandsp/
|
||||
F: package/sqlite/
|
||||
F: package/stellarium/
|
||||
@@ -472,10 +465,13 @@ F: package/tor/
|
||||
F: package/transmission/
|
||||
F: package/tvheadend/
|
||||
F: package/unixodbc/
|
||||
F: package/utf8proc/
|
||||
F: package/vdr/
|
||||
F: package/vdr-plugin-vnsiserver/
|
||||
F: package/vlc/
|
||||
F: package/wget/
|
||||
F: package/wireless-regdb/
|
||||
F: package/wireless_tools/
|
||||
F: package/vnstat/
|
||||
F: package/waylandpp/
|
||||
F: package/x11r7/
|
||||
F: package/x264/
|
||||
F: package/x265/
|
||||
F: package/xmrig/
|
||||
@@ -647,7 +643,7 @@ F: package/odroidc2-firmware/
|
||||
N: Daniel J. Leach <dleach@belcan.com>
|
||||
F: package/dacapo/
|
||||
|
||||
N: Daniel Lang <dalang@gmx.at>
|
||||
N: Daniel Lang <d.lang@abatec.at>
|
||||
F: package/atkmm/
|
||||
F: package/atkmm2_28/
|
||||
F: package/cairomm/
|
||||
@@ -661,13 +657,12 @@ F: package/libsigc2/
|
||||
F: package/paho-mqtt-cpp/
|
||||
F: package/pangomm/
|
||||
F: package/pangomm2_46/
|
||||
F: package/sam-ba/
|
||||
|
||||
N: Damien Lanson <damien@kal-host.com>
|
||||
F: package/libvdpau/
|
||||
F: package/log4cpp/
|
||||
|
||||
N: Damien Le Moal <dlemoal@kernel.org>
|
||||
N: Damien Le Moal <damien.lemoal@wdc.com>
|
||||
F: package/python-kflash/
|
||||
F: board/canaan/
|
||||
F: configs/canaan_kd233_defconfig
|
||||
@@ -707,10 +702,8 @@ F: package/xinetd/
|
||||
|
||||
N: Dario Binacchi <dario.binacchi@amarulasolutions.com>
|
||||
F: board/bsh/
|
||||
F: board/stmicroelectronics/stm32f769-disco/
|
||||
F: configs/imx8mn_bsh_smm_s2_defconfig
|
||||
F: configs/imx8mn_bsh_smm_s2_pro_defconfig
|
||||
F: configs/stm32f769_disco_sd_defconfig
|
||||
F: package/sscep/
|
||||
F: package/uuu/
|
||||
|
||||
@@ -867,8 +860,9 @@ F: package/szip/
|
||||
N: Esben Haabendal <esben@haabendal.dk>
|
||||
F: package/python-kiwisolver/
|
||||
|
||||
N: Etienne Carriere <etienne.carriere@foss.st.com>
|
||||
N: Etienne Carriere <etienne.carriere@linaro.org>
|
||||
F: boot/optee-os/
|
||||
F: package/optee-benchmark/
|
||||
F: package/optee-client/
|
||||
F: package/optee-examples/
|
||||
F: package/optee-test/
|
||||
@@ -1019,7 +1013,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>
|
||||
@@ -1156,14 +1149,9 @@ F: package/webp/
|
||||
F: package/xapian/
|
||||
|
||||
N: Giulio Benetti <giulio.benetti@benettiengineering.com>
|
||||
F: board/bananapi/bananapi-m2-ultra/
|
||||
F: board/freescale/imx6ullevk/
|
||||
F: board/olimex/a*
|
||||
F: configs/amarula_vyasa_rk3288_defconfig
|
||||
F: configs/asus_tinker_rk3288_defconfig
|
||||
F: configs/bananapi_m2_ultra_defconfig
|
||||
F: configs/freescale_imx6ullevk_defconfig
|
||||
F: configs/imx6ullevk_defconfig
|
||||
F: configs/olimex_a*
|
||||
F: package/at/
|
||||
F: package/binutils/
|
||||
@@ -1417,11 +1405,11 @@ F: package/python-multidict/
|
||||
F: package/python-mypy-extensions/
|
||||
F: package/python-outcome/
|
||||
F: package/python-pathspec/
|
||||
F: package/python-pep517/
|
||||
F: package/python-pycares/
|
||||
F: package/python-pydyf/
|
||||
F: package/python-pypa-build/
|
||||
F: package/python-pyphen/
|
||||
F: package/python-pyproject-hooks/
|
||||
F: package/python-rtoml/
|
||||
F: package/python-selenium/
|
||||
F: package/python-snappy/
|
||||
@@ -1625,7 +1613,21 @@ N: José Luis Salvador Rufo <salvador.joseluis@gmail.com>
|
||||
F: package/zfs/
|
||||
F: support/testing/tests/package/test_zfs.py
|
||||
|
||||
N: José Pekkarinen <jose.pekkarinen@unikie.com>
|
||||
F: package/alfred/
|
||||
F: package/avocado/
|
||||
F: package/bmx7/
|
||||
F: package/opensc/
|
||||
F: package/python-aexpect/
|
||||
F: package/python-alembic/
|
||||
F: package/python-lark/
|
||||
F: package/softhsm2/
|
||||
F: support/testing/tests/package/sample_python_aexpect.py
|
||||
F: support/testing/tests/package/test_avocado.py
|
||||
F: support/testing/tests/package/test_python_aexpect.py
|
||||
|
||||
N: Joseph Kogut <joseph.kogut@gmail.com>
|
||||
F: package/at-spi2-atk/
|
||||
F: package/at-spi2-core/
|
||||
F: package/clang/
|
||||
F: package/earlyoom/
|
||||
@@ -1705,14 +1707,12 @@ F: package/kexec/
|
||||
F: package/libjxl/
|
||||
F: package/octave/
|
||||
F: package/ola/
|
||||
F: package/openblas/
|
||||
F: package/openmpi/
|
||||
F: package/perftest/
|
||||
F: package/ptm2human/
|
||||
F: package/python-distro/
|
||||
F: package/python-gnupg/
|
||||
F: package/python-hkdf/
|
||||
F: package/python-hwdata/
|
||||
F: package/python-magic-wormhole/
|
||||
F: package/python-magic-wormhole-mailbox-server/
|
||||
F: package/python-magic-wormhole-transit-relay/
|
||||
@@ -1725,36 +1725,25 @@ F: package/z3/
|
||||
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_pyalsa.py
|
||||
F: support/testing/tests/package/sample_python_spake2.py
|
||||
F: support/testing/tests/package/test_ddrescue.py
|
||||
F: support/testing/tests/package/test_ddrescue/
|
||||
F: support/testing/tests/package/test_gnupg2.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_lsof.py
|
||||
F: support/testing/tests/package/test_mtools.py
|
||||
F: support/testing/tests/package/test_ncdu.py
|
||||
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_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_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_z3.py
|
||||
F: support/testing/tests/package/test_z3/
|
||||
|
||||
@@ -1811,9 +1800,6 @@ F: package/aircrack-ng/
|
||||
N: Laurent Charpentier <laurent_pubs@yahoo.com>
|
||||
F: package/open-lldp/
|
||||
|
||||
N: Laurent Vivier <laurent@vivier.eu>
|
||||
F: package/petitboot/
|
||||
|
||||
N: Lee Jones <lee.jones@linaro.org>
|
||||
F: boot/afboot-stm32/
|
||||
|
||||
@@ -1872,7 +1858,6 @@ F: configs/zynqmp_zcu106_defconfig
|
||||
F: package/agentpp/
|
||||
F: package/exim/
|
||||
F: package/libpjsip/
|
||||
F: package/linux-tools/linux-tool-usbtools.mk.in
|
||||
F: package/qpid-proton/
|
||||
F: package/rtl8188eu/
|
||||
F: package/snmppp/
|
||||
@@ -2078,6 +2063,11 @@ F: package/protobuf/
|
||||
F: package/re2/
|
||||
F: package/spdlog/
|
||||
|
||||
N: Michael Rommel <rommel@layer-7.net>
|
||||
F: package/knock/
|
||||
F: package/python-crc16/
|
||||
F: package/python-pyzmq/
|
||||
|
||||
N: Michael Trimarchi <michael@amarulasolutions.com>
|
||||
F: board/bsh/
|
||||
F: configs/imx8mn_bsh_smm_s2_defconfig
|
||||
@@ -2137,11 +2127,12 @@ N: Neal Frager <neal.frager@amd.com>
|
||||
F: board/versal/
|
||||
F: board/zynq/
|
||||
F: board/zynqmp/
|
||||
F: board/zynqmp/kria/
|
||||
F: configs/versal_vck190_defconfig
|
||||
F: configs/zynq_zc706_defconfig
|
||||
F: configs/zynqmp_kria_kv260_defconfig
|
||||
F: configs/zynqmp_zcu102_defconfig
|
||||
F: configs/zynqmp_zcu106_defconfig
|
||||
F: configs/zynqmp_kria_kv260_defconfig
|
||||
F: package/bootgen/
|
||||
F: package/versal-firmware/
|
||||
|
||||
@@ -2405,7 +2396,7 @@ F: package/tree/
|
||||
N: Pieter De Gendt <pieter.degendt@gmail.com>
|
||||
F: package/libvips/
|
||||
|
||||
N: Pieterjan Camerlynck <pieterjanca@gmail.com>
|
||||
N: Pieterjan Camerlynck <pieterjan.camerlynck@gmail.com>
|
||||
F: package/libdvbpsi/
|
||||
F: package/mraa/
|
||||
F: package/synergy/
|
||||
@@ -2450,7 +2441,6 @@ F: support/testing/tests/package/test_python_rsa.py
|
||||
F: support/testing/tests/package/test_python_s3transfer.py
|
||||
|
||||
N: Raphael Pavlidis <raphael.pavlidis@gmail.com>
|
||||
F: package/shadow/
|
||||
F: package/slirp4netns/
|
||||
F: package/sway/
|
||||
F: package/x11r7/xwayland/
|
||||
|
||||
@@ -90,9 +90,9 @@ all:
|
||||
.PHONY: all
|
||||
|
||||
# Set and export the version string
|
||||
export BR2_VERSION := 2023.05.3
|
||||
export BR2_VERSION := 2023.02.1
|
||||
# Actual time the release is cut (for reproducible builds)
|
||||
BR2_VERSION_EPOCH = 1695764000
|
||||
BR2_VERSION_EPOCH = 1683664000
|
||||
|
||||
# Save running make version since it's clobbered by the make package
|
||||
RUNNING_MAKE_VERSION := $(MAKE_VERSION)
|
||||
@@ -123,7 +123,7 @@ endif
|
||||
noconfig_targets := menuconfig nconfig gconfig xconfig config oldconfig randconfig \
|
||||
defconfig %_defconfig allyesconfig allnoconfig alldefconfig syncconfig release \
|
||||
randpackageconfig allyespackageconfig allnopackageconfig \
|
||||
print-version olddefconfig distclean manual manual-% check-package
|
||||
print-version olddefconfig distclean manual manual-% check-package check-flake8
|
||||
|
||||
# Some global targets do not trigger a build, but are used to collect
|
||||
# metadata, or do various checks. When such targets are triggered,
|
||||
@@ -1249,6 +1249,13 @@ release:
|
||||
print-version:
|
||||
@echo $(BR2_VERSION_FULL)
|
||||
|
||||
check-flake8:
|
||||
$(Q)git ls-tree -r --name-only HEAD \
|
||||
| xargs file \
|
||||
| grep 'Python script' \
|
||||
| cut -d':' -f1 \
|
||||
| xargs -- python3 -m flake8 --statistics
|
||||
|
||||
check-package:
|
||||
$(Q)./utils/check-package `git ls-tree -r --name-only HEAD` \
|
||||
--ignore-list=$(TOPDIR)/.checkpackageignore
|
||||
|
||||
@@ -450,6 +450,7 @@ config BR2_x86_alderlake
|
||||
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_11
|
||||
config BR2_x86_rocketlake
|
||||
bool "rocketlake"
|
||||
|
||||
@@ -3,14 +3,14 @@ ARM software simulator of the AArch64 architecture.
|
||||
|
||||
First, one has to download the AArch64 software simulator from:
|
||||
|
||||
https://armkeil.blob.core.windows.net/developer/Files/downloads/ecosystem-models/Foundation_Platform_11.20_15_Linux64.tgz
|
||||
https://silver.arm.com/download/download.tm?pv=4807186
|
||||
|
||||
Then, use the arm_foundationv8_defconfig configuration to build your
|
||||
Buildroot system.
|
||||
|
||||
Finally, boot your system with:
|
||||
|
||||
${LOCATION_OF_FOUNDATIONV8_SIMULATOR}/models/Linux64_GCC-9.3/Foundation_Platform \
|
||||
${LOCATION_OF_FOUNDATIONV8_SIMULATOR}/models/Linux64_GCC-6.4/Foundation_Platform \
|
||||
--image output/images/linux-system.axf \
|
||||
--block-device output/images/rootfs.ext2 \
|
||||
--network=nat \
|
||||
|
||||
+160
@@ -0,0 +1,160 @@
|
||||
From 3878b941c6bde84e29b2725e4261d85bea828752 Mon Sep 17 00:00:00 2001
|
||||
From: Michael Trimarchi <michael@amarulasolutions.com>
|
||||
Date: Sun, 22 May 2022 15:22:08 +0200
|
||||
Subject: [PATCH] include/configs: Remove rootwait=1 to all the affected boards
|
||||
|
||||
rootwait=1 is not a valid kernel boot parameters. According
|
||||
to the documenation is only rootwait
|
||||
|
||||
rootwait [KNL] Wait (indefinitely) for root device to show up.
|
||||
Useful for devices that are detected asynchronously
|
||||
(e.g. USB and MMC devices).
|
||||
|
||||
Fix:
|
||||
Unknown kernel command line parameters "rootwait=1", will be passed to user space.
|
||||
|
||||
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
|
||||
Reviewed-by: Heiko Schocher <hs@denx.de>
|
||||
Link: https://patchwork.ozlabs.org/project/uboot/patch/20220520110013.32811-1-michael@amarulasolutions.com/
|
||||
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
|
||||
---
|
||||
include/configs/am335x_evm.h | 2 +-
|
||||
include/configs/am43xx_evm.h | 2 +-
|
||||
include/configs/baltos.h | 2 +-
|
||||
include/configs/chiliboard.h | 2 +-
|
||||
include/configs/etamin.h | 2 +-
|
||||
include/configs/imx8mn_bsh_smm_s2.h | 2 +-
|
||||
include/configs/siemens-am33x-common.h | 4 ++--
|
||||
include/configs/ti_armv7_keystone2.h | 2 +-
|
||||
include/environment/ti/nand.h | 2 +-
|
||||
9 files changed, 10 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/include/configs/am335x_evm.h b/include/configs/am335x_evm.h
|
||||
index fd5b209a52db..f301a6dc835b 100644
|
||||
--- a/include/configs/am335x_evm.h
|
||||
+++ b/include/configs/am335x_evm.h
|
||||
@@ -34,7 +34,7 @@
|
||||
"root=${nandroot} " \
|
||||
"rootfstype=${nandrootfstype}\0" \
|
||||
"nandroot=ubi0:rootfs rw ubi.mtd=NAND.file-system,2048\0" \
|
||||
- "nandrootfstype=ubifs rootwait=1\0" \
|
||||
+ "nandrootfstype=ubifs rootwait\0" \
|
||||
"nandboot=echo Booting from nand ...; " \
|
||||
"run nandargs; " \
|
||||
"nand read ${fdtaddr} NAND.u-boot-spl-os; " \
|
||||
diff --git a/include/configs/am43xx_evm.h b/include/configs/am43xx_evm.h
|
||||
index 5057441f7506..1f5c3cd04e88 100644
|
||||
--- a/include/configs/am43xx_evm.h
|
||||
+++ b/include/configs/am43xx_evm.h
|
||||
@@ -166,7 +166,7 @@
|
||||
"root=${nandroot} " \
|
||||
"rootfstype=${nandrootfstype}\0" \
|
||||
"nandroot=ubi0:rootfs rw ubi.mtd=NAND.file-system,4096\0" \
|
||||
- "nandrootfstype=ubifs rootwait=1\0" \
|
||||
+ "nandrootfstype=ubifs rootwait\0" \
|
||||
"nandboot=echo Booting from nand ...; " \
|
||||
"run nandargs; " \
|
||||
"nand read ${fdtaddr} NAND.u-boot-spl-os; " \
|
||||
diff --git a/include/configs/baltos.h b/include/configs/baltos.h
|
||||
index b881d8c03fd7..7b43741fde7c 100644
|
||||
--- a/include/configs/baltos.h
|
||||
+++ b/include/configs/baltos.h
|
||||
@@ -37,7 +37,7 @@
|
||||
"root=${nandroot} " \
|
||||
"rootfstype=${nandrootfstype}\0" \
|
||||
"nandroot=ubi0:rootfs rw ubi.mtd=5\0" \
|
||||
- "nandrootfstype=ubifs rootwait=1\0" \
|
||||
+ "nandrootfstype=ubifs rootwait\0" \
|
||||
"nandboot=echo Booting from nand ...; " \
|
||||
"run nandargs; " \
|
||||
"setenv loadaddr 0x84000000; " \
|
||||
diff --git a/include/configs/chiliboard.h b/include/configs/chiliboard.h
|
||||
index 82acda595f09..8bad0f9ac4b6 100644
|
||||
--- a/include/configs/chiliboard.h
|
||||
+++ b/include/configs/chiliboard.h
|
||||
@@ -20,7 +20,7 @@
|
||||
"root=${nandroot} " \
|
||||
"rootfstype=${nandrootfstype}\0" \
|
||||
"nandroot=ubi0:rootfs rw ubi.mtd=NAND.file-system\0" \
|
||||
- "nandrootfstype=ubifs rootwait=1\0" \
|
||||
+ "nandrootfstype=ubifs rootwait\0" \
|
||||
"nandboot=echo Booting from nand ...; " \
|
||||
"run nandargs; " \
|
||||
"nand read ${fdt_addr} NAND.u-boot-spl-os; " \
|
||||
diff --git a/include/configs/etamin.h b/include/configs/etamin.h
|
||||
index 9cf93924df93..1c0a86d1ed10 100644
|
||||
--- a/include/configs/etamin.h
|
||||
+++ b/include/configs/etamin.h
|
||||
@@ -113,7 +113,7 @@
|
||||
"nand_active_ubi_vol=rootfs_a\0" \
|
||||
"rootfs_name=rootfs\0" \
|
||||
"kernel_name=uImage\0"\
|
||||
- "nand_root_fs_type=ubifs rootwait=1\0" \
|
||||
+ "nand_root_fs_type=ubifs rootwait\0" \
|
||||
"nand_args=run bootargs_defaults;" \
|
||||
"mtdparts default;" \
|
||||
"setenv ${partitionset_active} true;" \
|
||||
diff --git a/include/configs/imx8mn_bsh_smm_s2.h b/include/configs/imx8mn_bsh_smm_s2.h
|
||||
index d09c2ab01610..0dc514f00684 100644
|
||||
--- a/include/configs/imx8mn_bsh_smm_s2.h
|
||||
+++ b/include/configs/imx8mn_bsh_smm_s2.h
|
||||
@@ -22,7 +22,7 @@
|
||||
"root=${nandroot} " \
|
||||
"rootfstype=${nandrootfstype}\0" \
|
||||
"nandroot=ubi0:root rw ubi.mtd=nandrootfs\0" \
|
||||
- "nandrootfstype=ubifs rootwait=1\0" \
|
||||
+ "nandrootfstype=ubifs rootwait\0" \
|
||||
"nandboot=echo Booting from nand ...; " \
|
||||
"run nandargs; " \
|
||||
"nand read ${fdt_addr_r} nanddtb; " \
|
||||
diff --git a/include/configs/siemens-am33x-common.h b/include/configs/siemens-am33x-common.h
|
||||
index 08c4d52d658f..9f1a6cd51b40 100644
|
||||
--- a/include/configs/siemens-am33x-common.h
|
||||
+++ b/include/configs/siemens-am33x-common.h
|
||||
@@ -237,7 +237,7 @@
|
||||
"nand_active_ubi_vol=rootfs_a\0" \
|
||||
"nand_active_ubi_vol_A=rootfs_a\0" \
|
||||
"nand_active_ubi_vol_B=rootfs_b\0" \
|
||||
- "nand_root_fs_type=ubifs rootwait=1\0" \
|
||||
+ "nand_root_fs_type=ubifs rootwait\0" \
|
||||
"nand_src_addr=0x280000\0" \
|
||||
"nand_src_addr_A=0x280000\0" \
|
||||
"nand_src_addr_B=0x780000\0" \
|
||||
@@ -314,7 +314,7 @@
|
||||
"nand_active_ubi_vol=rootfs_a\0" \
|
||||
"rootfs_name=rootfs\0" \
|
||||
"kernel_name=uImage\0"\
|
||||
- "nand_root_fs_type=ubifs rootwait=1\0" \
|
||||
+ "nand_root_fs_type=ubifs rootwait\0" \
|
||||
"nand_args=run bootargs_defaults;" \
|
||||
"mtdparts default;" \
|
||||
"setenv ${partitionset_active} true;" \
|
||||
diff --git a/include/configs/ti_armv7_keystone2.h b/include/configs/ti_armv7_keystone2.h
|
||||
index 57f013cbf846..133daecf7164 100644
|
||||
--- a/include/configs/ti_armv7_keystone2.h
|
||||
+++ b/include/configs/ti_armv7_keystone2.h
|
||||
@@ -180,7 +180,7 @@
|
||||
"sf write ${loadaddr} 0 ${filesize}\0" \
|
||||
"burn_uboot_nand=nand erase 0 0x100000; " \
|
||||
"nand write ${loadaddr} 0 ${filesize}\0" \
|
||||
- "args_all=setenv bootargs console=ttyS0,115200n8 rootwait=1 " \
|
||||
+ "args_all=setenv bootargs console=ttyS0,115200n8 rootwait " \
|
||||
KERNEL_MTD_PARTS \
|
||||
"args_net=setenv bootargs ${bootargs} rootfstype=nfs " \
|
||||
"root=/dev/nfs rw nfsroot=${serverip}:${nfs_root}," \
|
||||
diff --git a/include/environment/ti/nand.h b/include/environment/ti/nand.h
|
||||
index 11dcefcc41ca..7d00afa2b10f 100644
|
||||
--- a/include/environment/ti/nand.h
|
||||
+++ b/include/environment/ti/nand.h
|
||||
@@ -14,7 +14,7 @@
|
||||
"root=${nandroot} " \
|
||||
"rootfstype=${nandrootfstype}\0" \
|
||||
"nandroot=ubi0:rootfs rw ubi.mtd=NAND.file-system,2048\0" \
|
||||
- "nandrootfstype=ubifs rootwait=1\0" \
|
||||
+ "nandrootfstype=ubifs rootwait\0" \
|
||||
"nandboot=echo Booting from nand ...; " \
|
||||
"run nandargs; " \
|
||||
"nand read ${fdtaddr} NAND.u-boot-spl-os; " \
|
||||
--
|
||||
2.32.0
|
||||
|
||||
@@ -2,7 +2,7 @@ i.MX8MN BSH SMM S2
|
||||
==================
|
||||
|
||||
This tutorial describes how to use the predefined Buildroot
|
||||
configuration for the i.MX8MN BSH SMM S2 board.
|
||||
configuration for the i.MX8MN BSH SMM S2 PRO board.
|
||||
|
||||
Building
|
||||
--------
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -15,7 +15,6 @@ CONFIG_IP_NF_FILTER=y
|
||||
CONFIG_CFG80211=m
|
||||
CONFIG_CFG80211_WEXT=y
|
||||
CONFIG_MAC80211=m
|
||||
CONFIG_PCI=y
|
||||
CONFIG_DEVTMPFS=y
|
||||
CONFIG_DEVTMPFS_MOUNT=y
|
||||
CONFIG_VIRTIO_BLK=y
|
||||
@@ -64,10 +63,7 @@ CONFIG_DRM_I915=y
|
||||
CONFIG_DRM_QXL=y
|
||||
CONFIG_DRM_BOCHS=y
|
||||
CONFIG_DRM_VIRTIO_GPU=y
|
||||
CONFIG_FB=y
|
||||
CONFIG_FIRMWARE_EDID=y
|
||||
CONFIG_FB_VESA=y
|
||||
CONFIG_FB_EFI=y
|
||||
CONFIG_SOUND=y
|
||||
CONFIG_SND=y
|
||||
CONFIG_SND_HDA_INTEL=y
|
||||
|
||||
@@ -2,5 +2,5 @@ set default="0"
|
||||
set timeout="5"
|
||||
|
||||
menuentry "Buildroot" {
|
||||
linux /Image root=PARTLABEL=root rootwait
|
||||
linux /Image root=/dev/sda2 rootwait console=ttyAMA0
|
||||
}
|
||||
|
||||
@@ -31,5 +31,5 @@ CONFIG_PARTITION_TYPE_GUID=y
|
||||
CONFIG_RNG_OPTEE=y
|
||||
CONFIG_RTC_EMULATION=y
|
||||
CONFIG_SCMI_FIRMWARE=y
|
||||
CONFIG_SYS_TEXT_BASE=0x60000000
|
||||
CONFIG_TEE=y
|
||||
CONFIG_TEXT_BASE=0x60000000
|
||||
|
||||
+20
-10
@@ -1,7 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
QEMU_BOARD_DIR="$(dirname "$0")"
|
||||
DEFCONFIG_NAME="$(basename "$2")"
|
||||
QEMU_BOARD_DIR="$(dirname $0)"
|
||||
DEFCONFIG_NAME="$(basename $2)"
|
||||
README_FILES="${QEMU_BOARD_DIR}/*/readme.txt"
|
||||
START_QEMU_SCRIPT="${BINARIES_DIR}/start-qemu.sh"
|
||||
|
||||
@@ -12,8 +12,7 @@ fi
|
||||
|
||||
# Search for "# qemu_*_defconfig" tag in all readme.txt files.
|
||||
# Qemu command line on multilines using back slash are accepted.
|
||||
# shellcheck disable=SC2086 # glob over each readme file
|
||||
QEMU_CMD_LINE="$(sed -r ':a; /\\$/N; s/\\\n//; s/\t/ /; ta; /# '"${DEFCONFIG_NAME}"'$/!d; s/#.*//' ${README_FILES})"
|
||||
QEMU_CMD_LINE=$(sed -r ':a; /\\$/N; s/\\\n//; s/\t/ /; ta; /# '${DEFCONFIG_NAME}'$/!d; s/#.*//' ${README_FILES})
|
||||
|
||||
if [ -z "${QEMU_CMD_LINE}" ]; then
|
||||
# No Qemu cmd line found, can't test.
|
||||
@@ -42,10 +41,21 @@ case ${DEFCONFIG_NAME} in
|
||||
;;
|
||||
esac
|
||||
|
||||
sed -e "s|@SERIAL_ARGS@|${SERIAL_ARGS}|g" \
|
||||
-e "s|@DEFAULT_ARGS@|${DEFAULT_ARGS}|g" \
|
||||
-e "s|@QEMU_CMD_LINE@|${QEMU_CMD_LINE}|g" \
|
||||
-e "s|@HOST_DIR@|${HOST_DIR}|g" \
|
||||
<"${QEMU_BOARD_DIR}/start-qemu.sh.in" \
|
||||
>"${START_QEMU_SCRIPT}"
|
||||
cat <<-_EOF_ > "${START_QEMU_SCRIPT}"
|
||||
#!/bin/sh
|
||||
(
|
||||
BINARIES_DIR="\${0%/*}/"
|
||||
cd \${BINARIES_DIR}
|
||||
|
||||
if [ "\${1}" = "serial-only" ]; then
|
||||
EXTRA_ARGS='${SERIAL_ARGS}'
|
||||
else
|
||||
EXTRA_ARGS='${DEFAULT_ARGS}'
|
||||
fi
|
||||
|
||||
export PATH="${HOST_DIR}/bin:\${PATH}"
|
||||
exec ${QEMU_CMD_LINE} \${EXTRA_ARGS}
|
||||
)
|
||||
_EOF_
|
||||
|
||||
chmod +x "${START_QEMU_SCRIPT}"
|
||||
|
||||
+53
@@ -0,0 +1,53 @@
|
||||
From a0919e3177295f4aaa9006915adcddc31788d809 Mon Sep 17 00:00:00 2001
|
||||
From: Ben Hutchings <ben@decadent.org.uk>
|
||||
Date: Wed, 26 Dec 2018 00:00:40 +0000
|
||||
Subject: [PATCH] powerpc: Fix -mcpu= options for SPE-only compiler
|
||||
|
||||
GCC for Debian's "powerpcspe" architecture only supports 32-bit
|
||||
SPE targets, and using -mcpu=powerpc or -mcpu=powerpc64 is a fatal
|
||||
error.
|
||||
|
||||
* Change the test for a biarch compiler to pass both the -m32 and -m64
|
||||
options, so that it doesn't catch 32-bit-only compilers
|
||||
* Add an ifdef CONFIG_PPC64 around the 64-bit CPU option definitions
|
||||
|
||||
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
|
||||
[Romain: Patch from Debian repository:
|
||||
https://salsa.debian.org/kernel-team/linux/-/blob/buster/debian/patches/bugfix/powerpc/powerpc-fix-mcpu-options-for-spe-only-compiler.patch]
|
||||
Signed-off-by: Romain Naour <romain.naour@gmail.com>
|
||||
---
|
||||
arch/powerpc/Makefile | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile
|
||||
index 5c8c06215dd4..e3dbea6d7ae0 100644
|
||||
--- a/arch/powerpc/Makefile
|
||||
+++ b/arch/powerpc/Makefile
|
||||
@@ -12,7 +12,7 @@
|
||||
# Rewritten by Cort Dougan and Paul Mackerras
|
||||
#
|
||||
|
||||
-HAS_BIARCH := $(call cc-option-yn, -m32)
|
||||
+HAS_BIARCH := $(call cc-option-yn, -m32 -m64)
|
||||
|
||||
# Set default 32 bits cross compilers for vdso and boot wrapper
|
||||
CROSS32_COMPILE ?=
|
||||
@@ -164,6 +164,7 @@ CFLAGS-$(CONFIG_PPC32) += $(call cc-option, $(MULTIPLEWORD))
|
||||
|
||||
CFLAGS-$(CONFIG_PPC32) += $(call cc-option,-mno-readonly-in-sdata)
|
||||
|
||||
+ifdef CONFIG_PPC64
|
||||
ifdef CONFIG_PPC_BOOK3S_64
|
||||
ifdef CONFIG_CPU_LITTLE_ENDIAN
|
||||
CFLAGS-$(CONFIG_GENERIC_CPU) += -mcpu=power8
|
||||
@@ -175,6 +176,7 @@ endif
|
||||
else
|
||||
CFLAGS-$(CONFIG_GENERIC_CPU) += -mcpu=powerpc64
|
||||
endif
|
||||
+endif
|
||||
|
||||
ifdef CONFIG_FUNCTION_TRACER
|
||||
CC_FLAGS_FTRACE := -pg
|
||||
--
|
||||
2.17.1
|
||||
|
||||
@@ -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,28 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
BINARIES_DIR="${0%/*}/"
|
||||
# shellcheck disable=SC2164
|
||||
cd "${BINARIES_DIR}"
|
||||
|
||||
mode_serial=false
|
||||
mode_sys_qemu=false
|
||||
while [ "$1" ]; do
|
||||
case "$1" in
|
||||
--serial-only|serial-only) mode_serial=true; shift;;
|
||||
--use-system-qemu) mode_sys_qemu=true; shift;;
|
||||
--) shift; break;;
|
||||
*) echo "unknown option: $1" >&2; exit 1;;
|
||||
esac
|
||||
done
|
||||
|
||||
if ${mode_serial}; then
|
||||
EXTRA_ARGS='@SERIAL_ARGS@'
|
||||
else
|
||||
EXTRA_ARGS='@DEFAULT_ARGS@'
|
||||
fi
|
||||
|
||||
if ! ${mode_sys_qemu}; then
|
||||
export PATH="@HOST_DIR@/bin:${PATH}"
|
||||
fi
|
||||
|
||||
exec @QEMU_CMD_LINE@ ${EXTRA_ARGS} "$@"
|
||||
@@ -7,7 +7,6 @@ image boot.vfat {
|
||||
"rpi-firmware/config.txt",
|
||||
"rpi-firmware/fixup.dat",
|
||||
"rpi-firmware/start.elf",
|
||||
"rpi-firmware/overlays",
|
||||
"zImage"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,7 +7,6 @@ image boot.vfat {
|
||||
"rpi-firmware/config.txt",
|
||||
"rpi-firmware/fixup.dat",
|
||||
"rpi-firmware/start.elf",
|
||||
"rpi-firmware/overlays",
|
||||
"zImage"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,12 +8,4 @@ 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
|
||||
|
||||
# exnsure overlays exists for genimage
|
||||
mkdir -p "${BINARIES_DIR}/rpi-firmware/overlays"
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
CONFIG_RISCV_SBI_V01=y
|
||||
CONFIG_HVC_RISCV_SBI=y
|
||||
CONFIG_SERIAL_EARLYCON_RISCV_SBI=y
|
||||
@@ -2,3 +2,7 @@
|
||||
|
||||
# Kernel is built without devpts support
|
||||
sed -i '/^devpts/d' ${TARGET_DIR}/etc/fstab
|
||||
|
||||
# Kernel is built without network support
|
||||
rm -f ${TARGET_DIR}/etc/init.d/S40network
|
||||
rm -rf ${TARGET_DIR}/etc/network/
|
||||
|
||||
@@ -95,6 +95,10 @@ CONFIG_STM32_MDMA=y
|
||||
CONFIG_SYNC_FILE=y
|
||||
# CONFIG_VIRTIO_MENU is not set
|
||||
# CONFIG_VHOST_MENU is not set
|
||||
CONFIG_IIO=y
|
||||
CONFIG_IIO_BUFFER=y
|
||||
CONFIG_IIO_TRIGGERED_BUFFER=y
|
||||
CONFIG_IIO_STM32_TIMER_TRIGGER=y
|
||||
# CONFIG_FILE_LOCKING is not set
|
||||
# CONFIG_DNOTIFY is not set
|
||||
# CONFIG_INOTIFY_USER is not set
|
||||
|
||||
@@ -1,4 +0,0 @@
|
||||
label stm32f769-disco-buildroot
|
||||
kernel /zImage
|
||||
devicetree /stm32f769-disco.dtb
|
||||
append console=ttySTM0,115200 root=/dev/mmcblk0p2 rw rootfstype=ext2 rootwait earlyprintk consoleblank=0 ignore_loglevel
|
||||
@@ -1,18 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
OUTPUT_DIR=$1
|
||||
|
||||
if ! test -d "${OUTPUT_DIR}" ; then
|
||||
echo "ERROR: no output directory specified."
|
||||
echo "Usage: $0 OUTPUT_DIR"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
"${OUTPUT_DIR}"/host/bin/openocd -f board/stm32f769i-disco.cfg \
|
||||
-c "init" \
|
||||
-c "reset init" \
|
||||
-c "flash probe 0" \
|
||||
-c "flash info 0" \
|
||||
-c "flash write_image erase ${OUTPUT_DIR}/images/u-boot.bin 0x08000000" \
|
||||
-c "reset run" \
|
||||
-c "shutdown"
|
||||
@@ -1,27 +0,0 @@
|
||||
image boot.vfat {
|
||||
vfat {
|
||||
files = {
|
||||
"zImage",
|
||||
"stm32f769-disco.dtb",
|
||||
"extlinux"
|
||||
}
|
||||
}
|
||||
|
||||
size = 16M
|
||||
}
|
||||
|
||||
image sdcard.img {
|
||||
hdimage {
|
||||
}
|
||||
|
||||
partition u-boot {
|
||||
partition-type = 0xC
|
||||
image = "boot.vfat"
|
||||
}
|
||||
|
||||
partition rootfs {
|
||||
partition-type = 0x83
|
||||
image = "rootfs.ext2"
|
||||
size = 32M
|
||||
}
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
# CONFIG_XIP_KERNEL is not set
|
||||
@@ -1,7 +0,0 @@
|
||||
#!/bin/sh
|
||||
BOARD_DIR="$(dirname "$0")"
|
||||
|
||||
# Kernel is built without devpts support
|
||||
sed -i '/^devpts/d' "${TARGET_DIR}"/etc/fstab
|
||||
|
||||
install -m 0644 -D "${BOARD_DIR}"/extlinux.conf "${BINARIES_DIR}"/extlinux/extlinux.conf
|
||||
@@ -1,32 +0,0 @@
|
||||
STM32F769 Discovery
|
||||
===================
|
||||
|
||||
This tutorial describes how to use the predefined Buildroot
|
||||
configuration for the STM32F769 Discovery evaluation platform.
|
||||
|
||||
Building
|
||||
--------
|
||||
|
||||
make stm32f769_disco_sd_defconfig
|
||||
make
|
||||
|
||||
Flashing
|
||||
--------
|
||||
|
||||
./board/stmicroelectronics/stm32f769-disco/flash_sd.sh output/
|
||||
|
||||
It will flash the U-boot bootloader.
|
||||
|
||||
Creating SD card
|
||||
----------------
|
||||
|
||||
Buildroot prepares an"sdcard.img" image in the output/images/ directory,
|
||||
ready to be dumped on a SD card. Launch the following command as root:
|
||||
|
||||
dd if=output/images/sdcard.img of=/dev/<your-sd-device>
|
||||
|
||||
*** WARNING! This will destroy all the card content. Use with care! ***
|
||||
|
||||
For details about the medium image layout and its content, see the
|
||||
definition in board/stmicroelectronics/stm32f769-disco/genimage.cfg.
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -3,6 +3,6 @@
|
||||
# genimage will need to find the extlinux.conf
|
||||
# in the binaries directory
|
||||
|
||||
BOARD_DIR="$(dirname "$0")"
|
||||
BOARD_DIR="$(dirname $0)"
|
||||
|
||||
install -m 0644 -D "${BOARD_DIR}/extlinux.conf" "${BINARIES_DIR}/extlinux.conf"
|
||||
install -m 0644 -D $BOARD_DIR/extlinux.conf $BINARIES_DIR/extlinux.conf
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
#!/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.
|
||||
|
||||
FIRST_DT=$(sed -n \
|
||||
's/^BR2_LINUX_KERNEL_INTREE_DTS_NAME="\([a-z0-9\-]*\).*"$/\1/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_DIR="$(dirname $0)"
|
||||
|
||||
support/scripts/genimage.sh -c "${BOARD_DIR}/genimage.cfg"
|
||||
support/scripts/genimage.sh -c $BOARD_DIR/genimage.cfg
|
||||
|
||||
@@ -1,16 +1,12 @@
|
||||
#!/bin/sh
|
||||
|
||||
# This is a temporary work around for generating kv260 u-boot.itb.
|
||||
# The problem is there is no way to currently configure u-boot to apply
|
||||
# the carrier board dtb overlay during build, so all kv260 carrier board
|
||||
# The problem is there is no way to currently configure u-boot to apply
|
||||
# the carrier board dtb overlay during build, so all kv260 carrier board
|
||||
# drivers are missing.
|
||||
# This will be removed when u-boot can build the kv260 u-boot.itb natively.
|
||||
|
||||
UBOOT_DIR="$4"
|
||||
UBOOT_DIR=$4
|
||||
|
||||
fdtoverlay -o "${UBOOT_DIR}/fit-dtb.blob" \
|
||||
-i "${UBOOT_DIR}/arch/arm/dts/zynqmp-smk-k26-revA.dtb" \
|
||||
"${UBOOT_DIR}/arch/arm/dts/zynqmp-sck-kv-g-revB.dtbo"
|
||||
|
||||
"${UBOOT_DIR}/tools/mkimage" -E -f "${UBOOT_DIR}/u-boot.its" \
|
||||
-B 0x8 "${BINARIES_DIR}/u-boot.itb"
|
||||
fdtoverlay -o ${UBOOT_DIR}/fit-dtb.blob -i ${UBOOT_DIR}/arch/arm/dts/zynqmp-smk-k26-revA.dtb ${UBOOT_DIR}/arch/arm/dts/zynqmp-sck-kv-g-revB.dtbo
|
||||
${UBOOT_DIR}/tools/mkimage -E -f ${UBOOT_DIR}/u-boot.its -B 0x8 ${BINARIES_DIR}/u-boot.itb
|
||||
|
||||
@@ -3,13 +3,14 @@
|
||||
# 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"
|
||||
label linux
|
||||
kernel /Image
|
||||
devicetree /system.dtb
|
||||
append console="${CONSOLE}" root="/dev/${ROOT}" rw rootwait
|
||||
append console=${CONSOLE} root=/dev/${ROOT} rw rootwait
|
||||
__HEADER_EOF
|
||||
|
||||
@@ -6,10 +6,10 @@
|
||||
|
||||
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_DIR="$(dirname $0)"
|
||||
|
||||
support/scripts/genimage.sh -c "${BOARD_DIR}/genimage.cfg"
|
||||
support/scripts/genimage.sh -c $BOARD_DIR/genimage.cfg
|
||||
|
||||
@@ -129,27 +129,6 @@ config BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL32_OPTEE
|
||||
|
||||
endchoice
|
||||
|
||||
config BR2_TARGET_ARM_TRUSTED_FIRMWARE_BAREBOX_AS_BL33
|
||||
bool "Use Barebox as BL33"
|
||||
depends on BR2_TARGET_BAREBOX
|
||||
help
|
||||
This option allows to embed the Barebox generic BL33 image in
|
||||
the ARM Trusted Firmware. It ensures that the Barebox package
|
||||
gets built before ATF, and that the appropriate BL33
|
||||
variable pointing to the generic bl33 image is passed
|
||||
when building ATF.
|
||||
|
||||
if BR2_TARGET_ARM_TRUSTED_FIRMWARE_BAREBOX_AS_BL33
|
||||
|
||||
config BR2_TARGET_ARM_TRUSTED_FIRMWARE_BAREBOX_BL33_IMAGE
|
||||
string "Barebox BL33 image name"
|
||||
default "*-generic-bl33.img"
|
||||
help
|
||||
Name of the Barebox BL33 image to include in ATF, it must
|
||||
have been installed to BINARIES_DIR by the Barebox package.
|
||||
|
||||
endif
|
||||
|
||||
config BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33
|
||||
bool "Use U-Boot as BL33"
|
||||
depends on BR2_TARGET_UBOOT
|
||||
|
||||
@@ -105,12 +105,6 @@ ARM_TRUSTED_FIRMWARE_MAKE_OPTS += AARCH32_SP=optee
|
||||
endif
|
||||
endif # BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL32_OPTEE
|
||||
|
||||
ifeq ($(BR2_TARGET_ARM_TRUSTED_FIRMWARE_BAREBOX_AS_BL33),y)
|
||||
ARM_TRUSTED_FIRMWARE_BAREBOX_BIN = $(call qstrip,$(BR2_TARGET_ARM_TRUSTED_FIRMWARE_BAREBOX_BL33_IMAGE))
|
||||
ARM_TRUSTED_FIRMWARE_MAKE_OPTS += BL33=$(BINARIES_DIR)/$(ARM_TRUSTED_FIRMWARE_BAREBOX_BIN)
|
||||
ARM_TRUSTED_FIRMWARE_DEPENDENCIES += barebox
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_TARGET_ARM_TRUSTED_FIRMWARE_EDK2_AS_BL33),y)
|
||||
ARM_TRUSTED_FIRMWARE_DEPENDENCIES += edk2
|
||||
# Since the flash device name vary between platforms, we use the variable
|
||||
|
||||
@@ -1,77 +0,0 @@
|
||||
From aa57ce632c629fe72ff417e261e0f5bfd8db6bab Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Vincent=20Stehl=C3=A9?= <vincent.stehle@arm.com>
|
||||
Date: Tue, 4 Jul 2023 16:14:02 +0200
|
||||
Subject: [PATCH] build(tools): avoid unnecessary link
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
In their respective makefiles, cert_create, encrypt_fw and fiptool
|
||||
depend on the --openssl phony target as a prerequisite. This forces
|
||||
those tools to be re-linked each time.
|
||||
|
||||
Move the dependencies on the --openssl target from the tools to their
|
||||
makefiles all targets, to avoid unnecessary linking while preserving the
|
||||
OpenSSL version printing done in the --openssl targets when in debug.
|
||||
|
||||
Fixes: cf2dd17ddda2 ("refactor(security): add OpenSSL 1.x compatibility")
|
||||
Signed-off-by: Vincent Stehlé <vincent.stehle@arm.com>
|
||||
Change-Id: I98a3ab30f36dffc253cecaaf3a57d2712522135d
|
||||
Upstream: https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/commit/?id=aa57ce632c629fe72ff417e261e0f5bfd8db6bab
|
||||
---
|
||||
tools/cert_create/Makefile | 4 ++--
|
||||
tools/encrypt_fw/Makefile | 4 ++--
|
||||
tools/fiptool/Makefile | 4 ++--
|
||||
3 files changed, 6 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/tools/cert_create/Makefile b/tools/cert_create/Makefile
|
||||
index 042e844626..b911d19d2b 100644
|
||||
--- a/tools/cert_create/Makefile
|
||||
+++ b/tools/cert_create/Makefile
|
||||
@@ -85,9 +85,9 @@ HOSTCC ?= gcc
|
||||
|
||||
.PHONY: all clean realclean --openssl
|
||||
|
||||
-all: ${BINARY}
|
||||
+all: --openssl ${BINARY}
|
||||
|
||||
-${BINARY}: --openssl ${OBJECTS} Makefile
|
||||
+${BINARY}: ${OBJECTS} Makefile
|
||||
@echo " HOSTLD $@"
|
||||
@echo 'const char build_msg[] = "Built : "__TIME__", "__DATE__; \
|
||||
const char platform_msg[] = "${PLAT_MSG}";' | \
|
||||
diff --git a/tools/encrypt_fw/Makefile b/tools/encrypt_fw/Makefile
|
||||
index 2939b142be..924e5febab 100644
|
||||
--- a/tools/encrypt_fw/Makefile
|
||||
+++ b/tools/encrypt_fw/Makefile
|
||||
@@ -65,9 +65,9 @@ HOSTCC ?= gcc
|
||||
|
||||
.PHONY: all clean realclean --openssl
|
||||
|
||||
-all: ${BINARY}
|
||||
+all: --openssl ${BINARY}
|
||||
|
||||
-${BINARY}: --openssl ${OBJECTS} Makefile
|
||||
+${BINARY}: ${OBJECTS} Makefile
|
||||
@echo " HOSTLD $@"
|
||||
@echo 'const char build_msg[] = "Built : "__TIME__", "__DATE__;' | \
|
||||
${HOSTCC} -c ${HOSTCCFLAGS} -xc - -o src/build_msg.o
|
||||
diff --git a/tools/fiptool/Makefile b/tools/fiptool/Makefile
|
||||
index 2ebee33931..4bdebd9235 100644
|
||||
--- a/tools/fiptool/Makefile
|
||||
+++ b/tools/fiptool/Makefile
|
||||
@@ -68,9 +68,9 @@ DEPS := $(patsubst %.o,%.d,$(OBJECTS))
|
||||
|
||||
.PHONY: all clean distclean --openssl
|
||||
|
||||
-all: ${PROJECT}
|
||||
+all: --openssl ${PROJECT}
|
||||
|
||||
-${PROJECT}: --openssl ${OBJECTS} Makefile
|
||||
+${PROJECT}: ${OBJECTS} Makefile
|
||||
@echo " HOSTLD $@"
|
||||
${Q}${HOSTCC} ${OBJECTS} -o $@ ${LDLIBS}
|
||||
@${ECHO_BLANK_LINE}
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -1,77 +0,0 @@
|
||||
From aa57ce632c629fe72ff417e261e0f5bfd8db6bab Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Vincent=20Stehl=C3=A9?= <vincent.stehle@arm.com>
|
||||
Date: Tue, 4 Jul 2023 16:14:02 +0200
|
||||
Subject: [PATCH] build(tools): avoid unnecessary link
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
In their respective makefiles, cert_create, encrypt_fw and fiptool
|
||||
depend on the --openssl phony target as a prerequisite. This forces
|
||||
those tools to be re-linked each time.
|
||||
|
||||
Move the dependencies on the --openssl target from the tools to their
|
||||
makefiles all targets, to avoid unnecessary linking while preserving the
|
||||
OpenSSL version printing done in the --openssl targets when in debug.
|
||||
|
||||
Fixes: cf2dd17ddda2 ("refactor(security): add OpenSSL 1.x compatibility")
|
||||
Signed-off-by: Vincent Stehlé <vincent.stehle@arm.com>
|
||||
Change-Id: I98a3ab30f36dffc253cecaaf3a57d2712522135d
|
||||
Upstream: https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/commit/?id=aa57ce632c629fe72ff417e261e0f5bfd8db6bab
|
||||
---
|
||||
tools/cert_create/Makefile | 4 ++--
|
||||
tools/encrypt_fw/Makefile | 4 ++--
|
||||
tools/fiptool/Makefile | 4 ++--
|
||||
3 files changed, 6 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/tools/cert_create/Makefile b/tools/cert_create/Makefile
|
||||
index 042e844626..b911d19d2b 100644
|
||||
--- a/tools/cert_create/Makefile
|
||||
+++ b/tools/cert_create/Makefile
|
||||
@@ -85,9 +85,9 @@ HOSTCC ?= gcc
|
||||
|
||||
.PHONY: all clean realclean --openssl
|
||||
|
||||
-all: ${BINARY}
|
||||
+all: --openssl ${BINARY}
|
||||
|
||||
-${BINARY}: --openssl ${OBJECTS} Makefile
|
||||
+${BINARY}: ${OBJECTS} Makefile
|
||||
@echo " HOSTLD $@"
|
||||
@echo 'const char build_msg[] = "Built : "__TIME__", "__DATE__; \
|
||||
const char platform_msg[] = "${PLAT_MSG}";' | \
|
||||
diff --git a/tools/encrypt_fw/Makefile b/tools/encrypt_fw/Makefile
|
||||
index 2939b142be..924e5febab 100644
|
||||
--- a/tools/encrypt_fw/Makefile
|
||||
+++ b/tools/encrypt_fw/Makefile
|
||||
@@ -65,9 +65,9 @@ HOSTCC ?= gcc
|
||||
|
||||
.PHONY: all clean realclean --openssl
|
||||
|
||||
-all: ${BINARY}
|
||||
+all: --openssl ${BINARY}
|
||||
|
||||
-${BINARY}: --openssl ${OBJECTS} Makefile
|
||||
+${BINARY}: ${OBJECTS} Makefile
|
||||
@echo " HOSTLD $@"
|
||||
@echo 'const char build_msg[] = "Built : "__TIME__", "__DATE__;' | \
|
||||
${HOSTCC} -c ${HOSTCCFLAGS} -xc - -o src/build_msg.o
|
||||
diff --git a/tools/fiptool/Makefile b/tools/fiptool/Makefile
|
||||
index 2ebee33931..4bdebd9235 100644
|
||||
--- a/tools/fiptool/Makefile
|
||||
+++ b/tools/fiptool/Makefile
|
||||
@@ -68,9 +68,9 @@ DEPS := $(patsubst %.o,%.d,$(OBJECTS))
|
||||
|
||||
.PHONY: all clean distclean --openssl
|
||||
|
||||
-all: ${PROJECT}
|
||||
+all: --openssl ${PROJECT}
|
||||
|
||||
-${PROJECT}: --openssl ${OBJECTS} Makefile
|
||||
+${PROJECT}: ${OBJECTS} Makefile
|
||||
@echo " HOSTLD $@"
|
||||
${Q}${HOSTCC} ${OBJECTS} -o $@ ${LDLIBS}
|
||||
@${ECHO_BLANK_LINE}
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
BOOT_WRAPPER_AARCH64_VERSION = 9f26a1c1f27bd6b5b66c265114848007fc22e4aa
|
||||
BOOT_WRAPPER_AARCH64_VERSION = 8d5a765251d9113c3c0f9fa14de42a9e7486fe8a
|
||||
BOOT_WRAPPER_AARCH64_SITE = https://git.kernel.org/pub/scm/linux/kernel/git/mark/boot-wrapper-aarch64.git
|
||||
BOOT_WRAPPER_AARCH64_SITE_METHOD = git
|
||||
BOOT_WRAPPER_AARCH64_LICENSE = BSD-3-Clause
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -27,10 +27,6 @@ config BR2_TARGET_GRUB2
|
||||
Amongst others, GRUB2 offers EFI support, which GRUB Legacy
|
||||
doesn't provide.
|
||||
|
||||
The file boot/grub2/grub.cfg is used by default as the Grub
|
||||
configuration file. It can be overridden using a rootfs
|
||||
overlay or post-build script.
|
||||
|
||||
For additional notes on using Grub 2 with Buildroot, see
|
||||
boot/grub2/readme.txt
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
From f5871e1f3650d6c8a032928cb5d8ca00c275c377 Mon Sep 17 00:00:00 2001
|
||||
From: Alistair Francis <alistair.francis@wdc.com>
|
||||
Date: Fri, 15 Feb 2019 14:57:41 -0800
|
||||
Subject: [PATCH] Makefile: Don't specify mabi or march
|
||||
|
||||
To avoid
|
||||
can't link double-float modules with soft-float modules
|
||||
errors when building 32-bit openSBI don't specify mabi or march.
|
||||
|
||||
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
|
||||
---
|
||||
Makefile | 2 --
|
||||
1 file changed, 2 deletions(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index ae68f55..10851fc 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -145,7 +145,6 @@ GENFLAGS += $(firmware-genflags-y)
|
||||
CFLAGS = -g -Wall -Werror -nostdlib -fno-strict-aliasing -O2
|
||||
CFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls
|
||||
CFLAGS += -mno-save-restore -mstrict-align
|
||||
-CFLAGS += -mabi=$(PLATFORM_RISCV_ABI) -march=$(PLATFORM_RISCV_ISA)
|
||||
CFLAGS += -mcmodel=$(PLATFORM_RISCV_CODE_MODEL)
|
||||
CFLAGS += $(GENFLAGS)
|
||||
CFLAGS += $(platform-cflags-y)
|
||||
@@ -158,7 +157,6 @@ CPPFLAGS += $(firmware-cppflags-y)
|
||||
ASFLAGS = -g -Wall -nostdlib -D__ASSEMBLY__
|
||||
ASFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls
|
||||
ASFLAGS += -mno-save-restore -mstrict-align
|
||||
-ASFLAGS += -mabi=$(PLATFORM_RISCV_ABI) -march=$(PLATFORM_RISCV_ISA)
|
||||
ASFLAGS += -mcmodel=$(PLATFORM_RISCV_CODE_MODEL)
|
||||
ASFLAGS += $(GENFLAGS)
|
||||
ASFLAGS += $(platform-asflags-y)
|
||||
--
|
||||
2.20.1
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
From e389d5fbc296e496db15368b2b621e0f178f7f34 Mon Sep 17 00:00:00 2001
|
||||
From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
||||
Date: Sat, 8 May 2021 21:28:10 +0200
|
||||
Subject: [PATCH] Makefile: unconditionally disable SSP
|
||||
|
||||
Though -nostdlib is passed in {C,+AS,DTSCPP}FLAGS, -fno-stack-protector
|
||||
must also be passed to avoid linking errors related to undefined
|
||||
references to '__stack_chk_guard' and '__stack_chk_fail' if toolchain
|
||||
enforces -fstack-protector.
|
||||
|
||||
Fixes:
|
||||
- https://gitlab.com/kubu93/buildroot/-/jobs/1247043359
|
||||
|
||||
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
||||
[Upstream status: https://github.com/riscv/opensbi/pull/211]
|
||||
---
|
||||
Makefile | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index eeffe6b..1419360 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -203,7 +203,7 @@ GENFLAGS += $(libsbiutils-genflags-y)
|
||||
GENFLAGS += $(platform-genflags-y)
|
||||
GENFLAGS += $(firmware-genflags-y)
|
||||
|
||||
-CFLAGS = -g -Wall -Werror -ffreestanding -nostdlib -fno-strict-aliasing -O2
|
||||
+CFLAGS = -g -Wall -Werror -ffreestanding -nostdlib -fno-stack-protector -fno-strict-aliasing -O2
|
||||
CFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls
|
||||
CFLAGS += -mno-save-restore -mstrict-align
|
||||
CFLAGS += -mabi=$(PLATFORM_RISCV_ABI) -march=$(PLATFORM_RISCV_ISA)
|
||||
@@ -217,7 +217,7 @@ CPPFLAGS += $(GENFLAGS)
|
||||
CPPFLAGS += $(platform-cppflags-y)
|
||||
CPPFLAGS += $(firmware-cppflags-y)
|
||||
|
||||
-ASFLAGS = -g -Wall -nostdlib -D__ASSEMBLY__
|
||||
+ASFLAGS = -g -Wall -nostdlib -fno-stack-protector -D__ASSEMBLY__
|
||||
ASFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls
|
||||
ASFLAGS += -mno-save-restore -mstrict-align
|
||||
ASFLAGS += -mabi=$(PLATFORM_RISCV_ABI) -march=$(PLATFORM_RISCV_ISA)
|
||||
@@ -236,7 +236,7 @@ MERGEFLAGS += -r
|
||||
MERGEFLAGS += -b elf$(PLATFORM_RISCV_XLEN)-littleriscv
|
||||
MERGEFLAGS += -m elf$(PLATFORM_RISCV_XLEN)lriscv
|
||||
|
||||
-DTSCPPFLAGS = $(CPPFLAGS) -nostdinc -nostdlib -fno-builtin -D__DTS__ -x assembler-with-cpp
|
||||
+DTSCPPFLAGS = $(CPPFLAGS) -nostdinc -nostdlib -fno-stack-protector -fno-builtin -D__DTS__ -x assembler-with-cpp
|
||||
|
||||
# Setup functions for compilation
|
||||
define dynamic_flags
|
||||
--
|
||||
2.30.2
|
||||
|
||||
@@ -19,7 +19,7 @@ choice
|
||||
Select the specific OpenSBI version you want to use
|
||||
|
||||
config BR2_TARGET_OPENSBI_LATEST_VERSION
|
||||
bool "1.2"
|
||||
bool "0.9"
|
||||
|
||||
config BR2_TARGET_OPENSBI_CUSTOM_VERSION
|
||||
bool "Custom version"
|
||||
@@ -57,7 +57,7 @@ endif
|
||||
|
||||
config BR2_TARGET_OPENSBI_VERSION
|
||||
string
|
||||
default "1.2" if BR2_TARGET_OPENSBI_LATEST_VERSION
|
||||
default "0.9" 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
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
# locally computed
|
||||
sha256 8fcbce598a73acc2c7f7d5607d46b9d5107d3ecbede8f68f42631dcfc25ef2b2 opensbi-1.2.tar.gz
|
||||
sha256 60f995cb3cd03e3cf5e649194d3395d0fe67499fd960a36cf7058a4efde686f0 opensbi-0.9.tar.gz
|
||||
sha256 82d13fb1bf6bb162629deeea9eb9c117e74548d3b707e478967691fe79a68e21 COPYING.BSD
|
||||
|
||||
@@ -18,7 +18,7 @@ choice
|
||||
Select the version of OP-TEE OS you want to use
|
||||
|
||||
config BR2_TARGET_OPTEE_OS_LATEST
|
||||
bool "3.21.0"
|
||||
bool "3.19.0"
|
||||
depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS
|
||||
select BR2_TARGET_OPTEE_OS_NEEDS_PYTHON_CRYPTOGRAPHY
|
||||
help
|
||||
@@ -70,7 +70,7 @@ endif
|
||||
|
||||
config BR2_TARGET_OPTEE_OS_VERSION
|
||||
string
|
||||
default "3.21.0" if BR2_TARGET_OPTEE_OS_LATEST
|
||||
default "3.19.0" if BR2_TARGET_OPTEE_OS_LATEST
|
||||
default "custom" if BR2_TARGET_OPTEE_OS_CUSTOM_TARBALL
|
||||
default BR2_TARGET_OPTEE_OS_CUSTOM_REPO_VERSION \
|
||||
if BR2_TARGET_OPTEE_OS_CUSTOM_GIT
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# From https://github.com/OP-TEE/optee_os/archive/3.21.0/optee-os-3.21.0.tar.gz
|
||||
sha256 92a16e841b0bdb4bfcb1c20b6a1bd3309092203d534ed167dfdb5a5f395bf60b optee-os-3.21.0.tar.gz
|
||||
# From https://github.com/OP-TEE/optee_os/archive/3.19.0/optee-os-3.19.0.tar.gz
|
||||
sha256 5e0c03bbc4d106f262a6bd33333c002c3380205ae6b82334aa7b644721ff7868 optee-os-3.19.0.tar.gz
|
||||
# Locally computed
|
||||
sha256 1247ee90858f4037b6cac63cbffddfed435d0d73c631b37d78c1e6e6ab3e5d1a LICENSE
|
||||
|
||||
@@ -492,8 +492,6 @@ config BR2_TARGET_UBOOT_ZYNQMP_PMUFW
|
||||
(e.g. http://...), and it will be downloaded and used from
|
||||
the download directory.
|
||||
|
||||
The PMU firmware binary can be either in ELF or BIN format.
|
||||
|
||||
If empty, the generated boot.bin will not contain a PMU
|
||||
firmware.
|
||||
|
||||
|
||||
+1
-2
@@ -209,7 +209,6 @@ endif
|
||||
|
||||
ifeq ($(BR2_TARGET_UBOOT_NEEDS_DTC),y)
|
||||
UBOOT_DEPENDENCIES += host-dtc
|
||||
UBOOT_MAKE_OPTS += DTC=$(HOST_DIR)/bin/dtc
|
||||
endif
|
||||
|
||||
ifeq ($(BR2_TARGET_UBOOT_NEEDS_PYTHON3),y)
|
||||
@@ -217,7 +216,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)
|
||||
|
||||
@@ -2,13 +2,13 @@ BR2_arm=y
|
||||
BR2_cortex_a5=y
|
||||
BR2_ARM_ENABLE_VFP=y
|
||||
BR2_ARM_INSTRUCTIONS_THUMB2=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y
|
||||
BR2_SYSTEM_DHCP="eth0"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/acmesystems/acqua-a5/genimage.cfg"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.27"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.90"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="sama5"
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="board/acmesystems/acqua-a5/at91-sama5d3_acqua.dts"
|
||||
|
||||
@@ -2,13 +2,13 @@ BR2_arm=y
|
||||
BR2_cortex_a5=y
|
||||
BR2_ARM_ENABLE_VFP=y
|
||||
BR2_ARM_INSTRUCTIONS_THUMB2=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y
|
||||
BR2_SYSTEM_DHCP="eth0"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/acmesystems/acqua-a5/genimage.cfg"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.27"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.90"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="sama5"
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_DTS_PATH="board/acmesystems/acqua-a5/at91-sama5d3_acqua.dts"
|
||||
|
||||
@@ -1,16 +1,15 @@
|
||||
BR2_aarch64=y
|
||||
# Linux headers same as kernel, a 6.1 series
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y
|
||||
# Linux headers same as kernel, a 5.16 series
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_16=y
|
||||
BR2_TARGET_GENERIC_GETTY_PORT="ttyAMA0"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.13"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.16.20"
|
||||
BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="arm/foundation-v8-gicv3-psci"
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
|
||||
BR2_TARGET_ROOTFS_EXT2=y
|
||||
BR2_TARGET_ROOTFS_EXT2_SIZE="128M"
|
||||
# BR2_TARGET_ROOTFS_TAR is not set
|
||||
BR2_TARGET_BOOT_WRAPPER_AARCH64=y
|
||||
BR2_TARGET_BOOT_WRAPPER_AARCH64_DTS="arm/foundation-v8-gicv3-psci"
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
BR2_arm=y
|
||||
BR2_cortex_a7=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_18=y
|
||||
BR2_TARGET_GENERIC_ISSUE="Welcome to Bananapi M2 Ultra"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="support/scripts/genimage.sh"
|
||||
BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/bananapi/bananapi-m2-ultra/genimage.cfg"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.12"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.18.12"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="sunxi"
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun8i-r40-bananapi-m2-ultra"
|
||||
@@ -16,7 +16,7 @@ BR2_TARGET_ROOTFS_EXT2_4=y
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.01"
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2021.10"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="bananapi_m2_berry"
|
||||
BR2_TARGET_UBOOT_NEEDS_DTC=y
|
||||
BR2_TARGET_UBOOT_NEEDS_PYTHON3=y
|
||||
|
||||
@@ -20,7 +20,7 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="-c board/beaglebone/genimage.cfg"
|
||||
# Kernel
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,beagleboard,linux,5.10.162-ti-r59)/linux-5.10.162-ti-r59.tar.gz"
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,beagleboard,linux,5.10.162-ti-r56)/linux-5.10.162-ti-r56.tar.gz"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="omap2plus"
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="am335x-evm am335x-bone am335x-boneblack am335x-bonegreen am335x-evmsk am335x-boneblue am335x-boneblack-wireless am335x-bonegreen-wireless"
|
||||
@@ -34,10 +34,9 @@ BR2_TARGET_ROOTFS_EXT2_4=y
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.04"
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.10"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="am335x_evm"
|
||||
BR2_TARGET_UBOOT_NEEDS_DTC=y
|
||||
BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
|
||||
# BR2_TARGET_UBOOT_FORMAT_BIN is not set
|
||||
BR2_TARGET_UBOOT_FORMAT_IMG=y
|
||||
BR2_TARGET_UBOOT_SPL=y
|
||||
|
||||
@@ -15,7 +15,7 @@ BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,beagleboard,linux,4.19.7
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="omap2plus"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/beaglebone/linux-sgx.fragment"
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="am335x-evm am335x-bone am335x-boneblack am335x-bonegreen am335x-evmsk am335x-boneblue am335x-boneblack-wireless am335x-bonegreen-wireless"
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="am335x-evm am335x-bone am335x-boneblack am335x-bonegreen am335x-evmsk am335x-boneblue am335x-boneblack-wireless"
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
|
||||
BR2_PACKAGE_FBV=y
|
||||
BR2_PACKAGE_QT5=y
|
||||
|
||||
@@ -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,11 +1,11 @@
|
||||
BR2_arm=y
|
||||
BR2_cortex_a7=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
|
||||
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0"
|
||||
BR2_ROOTFS_POST_IMAGE_SCRIPT="board/freescale/common/imx/post-image.sh"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,nxp-imx,linux-imx,lf-5.15.71-2.2.0)/linux-imx-lf-5.15.71-2.2.0.tar.gz"
|
||||
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,nxp-imx,linux-imx,lf-5.10.y-1.0.0)/linux-imx-lf-5.10.y-1.0.0.tar.gz"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="imx_v7"
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6ull-14x14-evk"
|
||||
@@ -15,9 +15,8 @@ BR2_TARGET_ROOTFS_EXT2_4=y
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_BOARDNAME="mx6ull_14x14_evk"
|
||||
BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,nxp-imx,uboot-imx,lf-5.15.71-2.2.0)/uboot-imx-lf-5.15.71-2.2.0.tar.gz"
|
||||
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
|
||||
BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
|
||||
BR2_TARGET_UBOOT_FORMAT_IMX=y
|
||||
BR2_PACKAGE_HOST_DOSFSTOOLS=y
|
||||
BR2_PACKAGE_HOST_GENIMAGE=y
|
||||
|
||||
@@ -18,7 +18,6 @@ BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.01"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="chiliboard"
|
||||
BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
|
||||
BR2_TARGET_UBOOT_FORMAT_IMG=y
|
||||
BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
|
||||
BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="spl/u-boot-spl.bin"
|
||||
|
||||
@@ -38,7 +38,7 @@ BR2_LINUX_KERNEL_INSTALL_TARGET=y
|
||||
# Bootloader
|
||||
BR2_TARGET_OPENSBI=y
|
||||
BR2_TARGET_OPENSBI_CUSTOM_VERSION=y
|
||||
BR2_TARGET_OPENSBI_CUSTOM_VERSION_VALUE="1.2"
|
||||
BR2_TARGET_OPENSBI_CUSTOM_VERSION_VALUE="0.9"
|
||||
BR2_TARGET_OPENSBI_PLAT="generic"
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
|
||||
|
||||
@@ -3,8 +3,8 @@ BR2_arm=y
|
||||
BR2_cortex_a7=y
|
||||
BR2_ARM_FPU_NEON_VFPV4=y
|
||||
|
||||
# Linux headers same as kernel, a 6.1 series
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y
|
||||
# Linux headers same as kernel, a 5.14 series
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_14=y
|
||||
|
||||
# system
|
||||
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0"
|
||||
@@ -12,7 +12,7 @@ BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0"
|
||||
# kernel
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.12"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.14.14"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="imx_v6_v7"
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx6ull-14x14-evk"
|
||||
@@ -22,10 +22,10 @@ BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_BOARDNAME="mx6ull_14x14_evk"
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.01"
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2021.10"
|
||||
BR2_TARGET_UBOOT_FORMAT_DTB_IMX=y
|
||||
BR2_TARGET_UBOOT_NEEDS_DTC=y
|
||||
BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
|
||||
BR2_TARGET_UBOOT_FORMAT_DTB_IMX=y
|
||||
|
||||
# required tools to create the SD card image
|
||||
BR2_PACKAGE_HOST_DOSFSTOOLS=y
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
BR2_aarch64=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y
|
||||
BR2_GLOBAL_PATCH_DIR="board/bsh/imx8mn-bsh-smm-s2/patches"
|
||||
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc3"
|
||||
BR2_ROOTFS_POST_BUILD_SCRIPT="board/bsh/imx8mn-bsh-smm-s2/post-build.sh"
|
||||
BR2_LINUX_KERNEL=y
|
||||
@@ -27,7 +28,7 @@ BR2_TARGET_ARM_TRUSTED_FIRMWARE_DEBUG=y
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.04"
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.07"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="imx8mn_bsh_smm_s2"
|
||||
BR2_TARGET_UBOOT_NEEDS_DTC=y
|
||||
BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y
|
||||
|
||||
@@ -28,7 +28,7 @@ BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES="IMX_BOOT_UART_BASE=0x30a60
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.04"
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.07"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="imx8mn_bsh_smm_s2pro"
|
||||
BR2_TARGET_UBOOT_NEEDS_DTC=y
|
||||
BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y
|
||||
|
||||
@@ -19,12 +19,12 @@ BR2_ROOTFS_POST_SCRIPT_ARGS="-c $(BINARIES_DIR)/genimage.cfg"
|
||||
BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y
|
||||
|
||||
# Linux headers same as kernel, a 5.10 series
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_16=y
|
||||
|
||||
# Kernel
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.14"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.16.1"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="sunxi"
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="sun4i-a10-pcduino"
|
||||
@@ -40,7 +40,7 @@ BR2_TARGET_ROOTFS_EXT2_4=y
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.01"
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.01"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="Linksprite_pcDuino"
|
||||
BR2_TARGET_UBOOT_NEEDS_DTC=y
|
||||
BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
BR2_arm=y
|
||||
BR2_cortex_a8=y
|
||||
|
||||
# Linux headers same as kernel, a 6.1 series
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y
|
||||
# Linux headers same as kernel, a 5.10 series
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_10=y
|
||||
|
||||
# System
|
||||
BR2_TARGET_GENERIC_GETTY_PORT="ttymxc0"
|
||||
@@ -22,14 +22,13 @@ BR2_TARGET_ROOTFS_EXT2_4=y
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_BOARDNAME="mx53loco"
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2023.01"
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2021.01"
|
||||
BR2_TARGET_UBOOT_FORMAT_IMX=y
|
||||
BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
|
||||
|
||||
# Kernel
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.20"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.10.9"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="imx_v6_v7"
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="imx53-qsb imx53-qsrb"
|
||||
|
||||
@@ -28,7 +28,6 @@ BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot/archive/c2042594.tar.gz"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="nitrogen6sx"
|
||||
BR2_TARGET_UBOOT_FORMAT_IMX=y
|
||||
BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
|
||||
BR2_PACKAGE_HOST_UBOOT_TOOLS=y
|
||||
BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT=y
|
||||
BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="board/boundarydevices/common/boot.cmd"
|
||||
|
||||
@@ -27,7 +27,6 @@ BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot/archive/c2042594.tar.gz"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="nitrogen6q"
|
||||
BR2_TARGET_UBOOT_FORMAT_IMX=y
|
||||
BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
|
||||
BR2_PACKAGE_HOST_UBOOT_TOOLS=y
|
||||
BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT=y
|
||||
BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="board/boundarydevices/common/boot.cmd"
|
||||
|
||||
@@ -27,7 +27,6 @@ BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-boot/archive/c2042594.tar.gz"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="nitrogen7"
|
||||
BR2_TARGET_UBOOT_FORMAT_IMX=y
|
||||
BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
|
||||
BR2_PACKAGE_HOST_UBOOT_TOOLS=y
|
||||
BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT=y
|
||||
BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="board/boundarydevices/common/boot.cmd"
|
||||
|
||||
@@ -44,7 +44,6 @@ BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-b
|
||||
BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
|
||||
BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot-nodtb.bin"
|
||||
BR2_TARGET_UBOOT_NEEDS_DTC=y
|
||||
BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y
|
||||
BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
|
||||
BR2_TARGET_UBOOT_SPL=y
|
||||
|
||||
|
||||
@@ -44,7 +44,6 @@ BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-b
|
||||
BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
|
||||
BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot-nodtb.bin"
|
||||
BR2_TARGET_UBOOT_NEEDS_DTC=y
|
||||
BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y
|
||||
BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
|
||||
BR2_TARGET_UBOOT_SPL=y
|
||||
|
||||
|
||||
@@ -44,7 +44,6 @@ BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="https://github.com/boundarydevices/u-b
|
||||
BR2_TARGET_UBOOT_FORMAT_CUSTOM=y
|
||||
BR2_TARGET_UBOOT_FORMAT_CUSTOM_NAME="u-boot-nodtb.bin"
|
||||
BR2_TARGET_UBOOT_NEEDS_DTC=y
|
||||
BR2_TARGET_UBOOT_NEEDS_PYLIBFDT=y
|
||||
BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
|
||||
BR2_TARGET_UBOOT_SPL=y
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user