sysutils/u-boot: Update to 2026.10
The project does not publish release tarballs on ftp.denx.de anymore, fetch
newer releases from its GitLab instance. Older slave ports can still pin a
tarball release.
Use the new rkbin blobs for the RK3568 and RK3588 boards.
Mark u-boot-beaglebone as broken: am335x does not resolve SYS_LOAD_ADDR and
TEXT_BASE through the kconfig merge and the build hangs.
sysutils/u-boot: Allow building with different openssl
Add ssl to USES and export the needed variables so u-boot can be built
with openssl from ports.
PR: 279531
all: remove explicit versions in USES=python for "3.x+"
The logic in USES=python will automatically convert this to 3.8+ by
itself.
Adjust two ports that only had Python 3.7 mentioned but build fine
on Python 3.8 too.
finance/quickfix: mark BROKEN with PYTHON
libtool: compile: c++ -DHAVE_CONFIG_H -I. -I../.. -I -I. -I.. -I../.. -I../C++
-DLIBICONV_PLUG -DPYTHON_MAJOR_VERSION=3 -Wno-unused-variable
-Wno-maybe-uninitialized -O2 -pipe -DLIBICONV_PLUG -fstack-protector-strong
-fno-strict-aliasing -DLIBICONV_PLUG -Wall -ansi
-Wno-unused-command-line-argument -Wpointer-arith -Wwrite-strings
-Wno-overloaded-virtual -Wno-deprecated-declarations -Wno-deprecated -std=c++0x
-MT _quickfix_la-QuickfixPython.lo -MD -MP -MF
.deps/_quickfix_la-QuickfixPython.Tpo -c QuickfixPython.cpp -fPIC -DPIC -o
.libs/_quickfix_la-QuickfixPython.o
warning: unknown warning option '-Wno-maybe-uninitialized'; did you mean
'-Wno-uninitialized'? [-Wunknown-warning-option]
QuickfixPython.cpp:175:11: fatal error: 'Python.h' file not found
^~~~~~~~~~
1 warning and 1 error generated.
Reviewed by: portmgr, vishwin, yuri
Differential Revision: <https://reviews.freebsd.org/D40568>
sysutils/u-boot-sifive-fu740: Add upstream DTS patch for DA9063 RTC support
This allows the DA9063 RTC driver to probe and attach (and exposes other
MFD children too, but we don't have drivers for them). It also includes
a couple of miscellaneous improvements synced from the Linux DTS,
fixing the compatible string for the on-board QSPI flash and adding the
card detect GPIO for the QSPI SD card.
Reviewed by: manu
Approved by: manu (uboot, ports)
Differential Revision: https://reviews.freebsd.org/D36556
Fix WWW in parent/child ports
Many of the WWW are overwritten later which means the wrong value
is used. This did not happen before where the children were either
a) just using the pkg-descr from the parents
b) or had their own separate pkg-descr with custom WWW
Use WWW?= in parents when the child's WWW is different.
Children that use the same WWW as the parent can just inherit it,
i.e., the child WWW can be removed.
Approved by: portmgr (implicit)
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
sysutils/u-boot: Bring back usb patch
The patch is still needed at least on rockchip platform where
we probably don't do everything correctly for usb bring up.
This is also needed is the next boot stage is usb.
Reported by: kevans
sysutils/u-boot-*: Add patch to fix MMC ordering
For FreeBSD we use a dtb overlay that switches between the sdhost and
the sdhci controller for sd card.
Recent changes in u-boot device model changed device numbering and the
sd card controller became "mmc2" for our setup which isn't accounted for
in the possible boot devices.
Patch isn't accepted yet upstream but bring this patch in for our ports anyway.
sysutils/u-boot-master: Test for broken u-boot only if FAMILY is defined
Otherwise the u-boot-master metaport throw an error.
Reported by: dvl
Fixes: ebfb1beaef02d
sysutils/u-boot-*: Remove ubldr support
We have been using loader.efi on armv7 for a long time now.
Remove support for booting with ubldr and the needed patches that were
never upstreamed.
While here add CONFIG_EFI_GRUB_ARM32_WORKAROUND=y in the Fragment as it's
needed to have the cache flushed for us when loader.efi is started.
sysutils/atf: Update to v2.4
Bump u-boot ports that depends on it.
While here update the metadata and pkg-descr for the allwinner64 family so
u-boot is put in an alternate location that doesn't conflict with GPT
partitions.
u-boot-sopine-spi: Add new port
While the u-boot-sopine port can boot from SPI on the Pine64-LTS and Sopine
module the env is saved and read from the eMMC.
This is a modified sopine u-boot that only read and store the env in the spi
flash available on thoses boards.
Additionally there is also a sopine-spi-flasher.img that can be burnt on a
sdcard
and when booted it will program the spi flash.
sysutils/u-boot-*: Update to 2020.10
This also add two patches :
- The first one is for rockpro64, a commit upstream made the spi flash
not detected anymore. The issue is still discussed with upstream so for
now add a local patch.
- The second disabled shutting down usb controllers when
calling efi_exit_boot_service.
It somehow make u-boot hang but only when doing netboot and of course
only on some boards so it's a weird issue.
This is also a local patch for now as I still need to look deeper.
u-boot: Fix targets that uses malloc.h
Add a local patch that replace malloc.h with stdlib.h.
As there is current discution to make this file usable again don't bother
with upstream for now.
sysutils/u-boot: Update to 2020.04
While here use python3 for it as it now works.
Two slave ports have been marked broken :
u-boot-pandaboard and u-boot-duovero
Both of those boards have ~0 users in FreeBSD so if you are one of
those raise your hand.
sysutils/u-boot-rpi{3,4}: Add patch to fix PSCI stub reservation
For the traditional spin table setup, only the lowest page needs
to be reserved. However, our PSCI stubs are slightly bigger and occupy
a little over one page. These patches, already sent upstream, allow a
variable number of initial pages to be reserved for the SMP stubs. We
then set the values for these in our fragment to '2' to reserve the first
and second page.
Approved by: koobs (mentor)
Approved by: manu (uboot, maintainer)
MFH: 2020Q1
Differential Revision: https://reviews.freebsd.org/D24085
sysutils/u-boot-rock64: Add two DRAM related patches
Add two new patches related to DRAM controller initialization.
This allow us to use SPL+TPL from mainline u-boot and not relying
on RockChip miniloader anymore.
Thanks to jmcneill@NetBSD.Org for the tip.
u-boot: Update to v2019.10
Update u-boot to its latest version.
For RK3399 we now use SPL+TPL from u-boot, no need for RockChip blob.
Remove one efi related patch that isn't needed anymore.
Tested-on: Pine64-LTS, Rock64, Rockpro64, BBB, RPI2, OrangePi One
sysutils/u-boot: rk3399: Set only for arch
RK3399 uboots uses RockChip binaries to create the image, thoses tools
are only for amd64.
Reported by: pkg-fallout
sysutils/u-boot-firefly-rk3399: Bump portrevision as we now use miniloader
Since we now use the miniloader instead of SPL bump portrevision for this port.
sysutils/u-boot-rockpro64: Add new u-boot port for Pine64 RockPro64 board
This use the DDR blob and miniloader from RockChip + trust FW + ATF + u-boot
proper.
sysutils/u-boot-rock64: Add new port for u-boot for the Pine64 Rock64 board
And add support for building RK3328 u-boot in u-boot-master.
This use the rockchip DDR blob + ATF + u-boot-spl and u-boot proper.
sysutils/u-boot: Update to 2019.07
Remove one patch for RockChip RK3399 that was upstream.
Add a patch for storage api to remove SCSI. Allwinner A20 was converted
to DM_SCSI upstream and we don't have a good way to do what the api code
was doing (only had a brief look). This patch will probably be upstreamed
once I've found a better way. For now this means that you cannot boot from
SCSI drives using ubldr, using loader.efi will still work. Only Allwinner A20
boards are affected by this.
u-boot: Fix efi booting for arm32
arm32 needs its cache cleared before booting the kernel.
This isn't the case anymore in u-boot since they use efi_start_image.
Add a local patch until I resolv the issue upstream.
u-boot-firefly-rk3399: Add a u-boot port for this board
This is a ARM64 board with a RockChip RK3399 SoC.
Add support for RK3399 to the u-boot-master port. No METADATA are created
for now as this u-boot is split in two file and we don't support this scheme
yet.
Two patch are needed :
- One to allow booting u-boot proper from the same source as the DTS (accepted
and merge upstream)
- One to have the BL31 (ATF binary) path in a environment variable instead of
in the source directory (accepted upstream).
Add a new atf-master master port.
ARM Arm Trusted Framework (sometimes called TF-A for reasons ...) provides
a reference implementation of secure world software for Armv7-A and Armv8-A,
including a Secure Monitor executing at Exception Level 3 (EL3).
We had a port for Alwinner A64/H5 chip, but we need to introduced more ports.
So convert this to a master/slave port scheme like u-boot.
atf-allwinner is now badly named, when it was introduced it only support A64,
now it both support A64 and H5 and there is another ATF platform for H6.
Rename it with the platform name
sysutils/u-boot: Update to 2018.11
Tested-On: RPI*
Tested-On: OrangePi One
Tested-On: Pine*
sysutils/u-boot-pinebook: Update to latest upstream patches
All those patches have been merged upstream but have not made into the
latest u-boot release, add them here as they have bugfixes and hardware support
improvement.
Approved by: bapt (mentor)
Differential Revision: https://reviews.freebsd.org/D18312,
https://reviews.freebsd.org/D18314
sysutils/u-boot-pinebook: Add ports for this board
Patches are comming upstream and I've personnally runned the wip branch
for a long time. So it's time that other people can enjoy FreeBSD on the
pinebook.
Approved by: bapt (mentor)
Differential Revision: https://reviews.freebsd.org/D17410
u-boot: Update to v2018.09
Tested On: RPI*
Tested On: OrangePi One
Tested On: Pine64(-LTS)
Approved by: bapt (mentor)
Differential Revision: https://reviews.freebsd.org/D17213
sysutils/u-boot-master: Set the correct files for ALLWINNER64 family
Use the correct names for the ALLWINNER64 family, files are the same as
the ALLWINNER one so no harm was done, but now it's correct.
Reported by: jmg
Approved by: bapt (implicit)
sysutils/u-boot-master etc.: u-boot Improvement for 2018.07
- Add metadata for IMX6 family
- While here rename the riotboard family to IMX6 as it should have been
- Remove the cache patches, they aren't needed anymore.
I should have checked that with the 2018.07 update
- beaglebone use a custom bootcmd that calls envboot, this command will try
to load and source the file boot.scr (u-boot script) from the mmc.
For some reason it seems to corrupts some memory or something because
loading and executing ubldr.bin after running this command will either
hang or cause an exception on undefined instruction.
I'll check with upstream but in the meantime use a special fragment
that redefine the bootcmd.
Note that since u-boot will load the environment from the eMMC, one need
to 'env default -f -a; saveenv' to have the bootcmd variable correctly
redefined.
Reviewed by: imp
Approved by: imp
Differential Revision: https://reviews.freebsd.org/D16599
Minor cleanup of u-boot's patches
Move to using the 'raw' patches for those patches that are currently
in u-boot's upstream landing zone. Move to using a u-boot directory
since the numeric names aren't very u-boot specific and might
conflict. Bump PORTREVISION out of an abundance of caution.
Differential Review: https://reviews.freebsd.org/D16409
u-boot: Update checksum for patch 939129
r475103 update u-boot to the newest version but it seems that I had
an old cached version of this patch.
Pointy Hat to: myself
PR: 229965
Approved by: imp (implicit)
u-boot: Update to v2018.07
This add:
- Explicit Depency on bison
- Remove the DTC= on MAKE_ARGS as we use the BINARY_ALIAS already
- metadata variables
- Add cache cmds and disable secure boot
- All RPI uses some special fragments to enable OF_BOARD.
This makes u-boot using the DTB loaded by the firmware instead of
using it's own.
- For patches accepted but not in mainline due to timing issue use patchwork
directly instead of putting files in the port
- All armv7 boards are EFI enabled and boot in secure mode
(Only the first 15 lines of the commit message are shown above )
u-boot: Update to v2018.01
- Track upstream directly We cannot build u-boot directly on FreeBSD as
it needs gmake, gsed etc ... Earlier update dealt with that using
BINARY_ALIAS to avoid patching. The cache patches have been sent upstream
(a V2 is needed as some arch don't have those functions) so put them in
the ports tree for now. This is the only patches needed to build a
u-boot for armv6/armv7/arm64 so do not use the freebsd github fork anymore
as they will go away soon.
- We now use boot.scr (converted with mkimage from sysutils/u-boot-tools)
instead of patching u-boot. U-Boot have two way for dealing with distribution
one is boot scripts and the other is extlinux. extlinux will be harder as we
use raw binary for ubldr and use go $address, this cannot fail and the boot
process could be in a bad state so this is something that upstream doesn't
want to merge in mainline. boot script are easy to write and compile and
(Only the first 15 lines of the commit message are shown above )
u-boot: Move allwinner 64 bits dep to u-boot-master
We have more than one Allwinner 64bits SoC u-boot ports now
and others are coming.
Move the dependencies into the u-boot-master ports.
While here, switch maintainer on u-boot-pine64 and u-boot-sopine
to uboot@ as discussed with imp@ and brd@
Reviewed by: imp (maintainer)
Approved by: imp
Differential Revision: https://reviews.freebsd.org/D13450
Update the u-boot-rpi port to use the u-boot-master port.
This also bring u-boot to version 2017.09 and the firmware files are no
longer in this port but in sysutils/rpi-firmware.
Also I'm stepping in as maintainer.
Tested On: RPI-B, RPI0v1.2, RPI0v1.3
Reviewed by: imp
Approved by: imp
Differential Revision: https://reviews.freebsd.org/D13048
This update u-boot for :
Allwinner boards
Beaglebone Black
Zync boards
For changes on the U-Boot sidesee the changes on their release notes.
For changes on this ports :
Use BINARY_ALIAS for gsed
Add PYTHON=${PYTHON_CMD} to MAKE_ARGS
Add patch from Andrew Turner to export GPT partition in EFI
Tested On: Pine64, OrangePi One, BananaPi M2, BeagleBone Black
Reviewed by: imp (maintainer)
Approved by: imp
Changes to prepare for aarch64 support
o Generalize support for different architectures.
o Add specific support for aarch64
o Add ALLWINNER64 as a new family using aarch64, but no ports use it yet.
o CROSS_COMPILE is the string to pass to u-boot
o COMPILER is the FreeBSD port (we assume gcc since that works better
typically than clang).
Submitted by: Emmanuel Vadot (the aarch64 bits, hacked by me to be generic)
Port-wise change :
- Dependancy on swig30 has been changed for swig13.
swig13 install itself as 'swig' and it seems that some generated
file in u-boot is calling directly this binary.
- Remove shebangfix for binman.py
shebangfix cannot work with binman.py as the shebang is
'#!/usr/bin/env python2' and the regex in Mk/Uses/shebangfix.mk
can't handle this
- Move to the FreeBSD u-boot repo
- Insist on dtc >= 1.4 (also works with the BSDL version in the tree,
if it is new enough), but drop the requirement that it's a port.
U-Boot wise:
- Too many changes, a lot of fixes, a lot of new boards etc ...
Tested-On: OrangePi-One, BananaPiM2, A13-Olinuxino, BeagleBone Black
Submitted by: Emmanuel Vadot
Update to my v2017.01.00.1 release.
This eliminates use of fdtget by pointing the build at the right swig
for the ports we're using. The dtc port is still required for its
libfdt.