Change from "y" to "m"
Before
[ 2.423992] rtc-hym8563 1-0051: no valid clock/calendar values available
[ 2.424718] rtc-hym8563 1-0051: registered as rtc0
[ 2.425770] rtc-hym8563 1-0051: no valid clock/calendar values available
[ 2.425789] rtc-hym8563 1-0051: hctosys: unable to read the hardware clock
[ 3.817166] rk808-rtc rk808-rtc.5.auto: registered as rtc1
After
[ 3.790107] rk808-rtc rk808-rtc.5.auto: registered as rtc0
[ 3.801742] rk808-rtc rk808-rtc.5.auto: setting system clock to 2017-08-05T09:48:13 UTC (1501926493)
[ 3.919628] rtc-hym8563 1-0051: registered as rtc1
Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
* always use http for apt repos
* pass possible proxy arguments to docker
* populate lower-case env variables with upper-case ones if not set otherwise
* correct system patch used for aliasing on Allwinner A10, A13 and A20 to ensure consistent allocation of device IDs
* Re-introduce spi overlays for each bus so that when used in conjuction with a device driver overlay, the pins are correctly muxed into SPI mode
* Ensure SPI overlay patches are applied
* Fix typo in patch name
* Move alias patches further down series.conf to ensure they are only called after the intial overlay creation
* Rephrase subject heading to improve clarity
* Fix interface aliases on Allwinner A10 for I2C, SPI and UART
* Fix interface aliases on Allwinner A13 for I2C and UART
* Fix interface aliases on Allwinner A20 for I2C, SPI and UART
* Fix SPI 2 pin names in line with latest revision of the Allwinner A10 device tree
* Fix SPI 2 pin names in line with latest revision of the Allwinner A20 device tree
* Create overlays for each bus on the Allwinner A20 so that the corresponding pins can be set into spi mode
* Create overlays for each bus on the Allwinner A10 so that the corresponding pins can be set into spi mode
* Condense alias path corrections into the intial overlay creation patch instead of applying a further patch on topof it to enact these corrections
* Remove references to our no longer needed addtional overlays
* rename to include 'arm-dts..' for consistency with other dts related patches
* Fix mistake in SPI overlay patches naming which leads to build failure
* Fix typo in application of spi2 overlay that was leading to compilation failure
* Amend the assigned aliases in overlay creation so that the kernel correctly maps the bus/port number to match the physical hardware numbering
* Update pin labels for SPI 2 to use current names as defined in sun4i-a10.dtsi and sun7i-a20.dtsi. fixed typo in sun5i-a13-spi-spidev as compatibility field should be sun5i-a13
* Re-introduce compilation of spi bus overlays on Allwinner A10 and A20 SOCs which are necessary to ensure that the pins are correctly muxed into spi mode
- fixes: unrecognized option '-Wl,--no-warn-rwx-segment'
- add a patch to atf that removes the unrecognized linker options
Signed-off-by: Martin Schmiedel <Martin.Schmiedel@tq-group.com>
Follow conventional `if-then-else-fi` constructions by not having `else` followed by semicolon. Hush is accepting, but other commonly used shells do not accept this.
- UUID boot does not seem to work on PocketBeagle 2.
- So specify the block device path instead.
- Also without rootwait, the boot will fail.
Signed-off-by: Ayush Singh <ayush@beagleboard.org>
The current script can overwrite drivers which are set as built-in in
the board-specific config. This is not desirable.
Add a check to ensure we do not convert built-in stuff into modules.
Signed-off-by: Ayush Singh <ayush@beagleboard.org>
This was introduced in 6.2 but was removed from the kernel code
in 6.15.
We are currently building cores for sunxi starting from 6.6.
Therefore, a simple replacement without conditions.
If the array exists in this location, initializing an empty array
will destroy all the data that was stored in it.
Do not initialize an empty KERNEL_DRIVERS_SKIP array if it exists.
This allows us to create an array anywhere in the script,
including the user configuration, in a secure way.
This is tested on a tinkerboard 2s.
The u-boot dts for tb2 contains other fixes, and the major ones are:
- add missing basic gpio-fan node
- usb-c altmode fix, dts part
- we've too much logic in `chroot_sdcard_apt_get()` we need to re-use
for eg debfoster or any extensions that need to manipulate the apt
cache (which is handled via mounts in that function)
- `chroot_sdcard_apt_get()` now accepts a `chroot_command` env var,
defaulting to `apt-get`
- `chroot_sdcard_custom_with_apt_logic()` splits the params and calls
`chroot_command=... chroot_sdcard_apt_get ...` allowing for custom
calls
Use all parameters to display_alert()
```
[🐳|🌱] Running in container [ Adding provisions for container building ]
[🐳|🌱] Adding package to 'host_dependencies' [ python3-setuptools ]
[🐳|🌱] Python2 not available on host release 'noble' [ ancient u-boot versions might/will fail to build ]
```
- aimed at nanopi-r2s and nanopineo3
- impacts:
- boards (re)using 'nanopi-r2s-rk3328_defconfig' (rk3328)
and:
- boards using U-Boot v2022.04 or
- boards using U-Boot v2022.07
- added explicit dependency on python3-setuptools as (at least) U-Boot
v2022.04 and v2022.07 fail building due to missing 'distutils' for
boards that use U-Boot v2022.04 or v2022.07
- similar to e9708b8c33, but for the Blade3
- this reverts d048673c00 just for the Blade3
- there is little to be gained from .10 anyway on those machines (IMHO)
- it is still vendor 2017.09 after all, dunno why Radxa calls them "2024.x"
- 7s+ -> 3s
- by using `enable_extensions_with_hostdeps_builtin_and_user "add_host_dependencies" "host_dependencies_known"` instead of `enable_all_extensions_builtin_and_user`
- UMS mode (use the black USB port)
- Boot order: SD -> NVMe -> SATA -> USB -> eMMC
- Flash LEDs in preboot
- Networking stuff
- Lots of FS's and compression methods
* helios4: fix wake-on-lan (wol)
- added ethtool package
- enable wol on all ethernet interfaces
- support common systemd.net-naming-schemes (ethX/endX/enoX)
* Update helios4-wol.service
Removed test code.
* Update helios4-wol.service
Fix bug after retesting.
From the Kconfig:
```
Preload default EDID (Extended Display Identification Data)
branded by Linux Foundation that exposes display modes up
to 4k@30Hz, which have best compatibility with HDMI transmitters.
Enabling this option is recommended for a non-production use-cases.
It will make driver usable out-of-the-box.
For a higher display modes you will need to load customized EDID
from userspace using v4l2-ctl tool or by other means.
Without enabling this option driver will be practically
non-functional until EDID will be loaded from userspace.
Which is a wanted behavior when using this driver in a
commercial product that should utilize own branded EDID.
```
On v2025.01 and v2025.04 I get the following error
starting USB...
Bus usb@ff500000: dwc3_meson_gxl_get_phys: usb2 ports: 1
probe failed, error -114
No USB controllers found
So revert back to v2024.10 until sorted.
Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
ATF is currently built in Debug mode for K3 family of devices. This is
due to the fact that K3 Armbian images have been experimental so far.
However, there is work underway to make Armbian a production-capable
environment. Therefore, drop the DEBUG=1 flag from the ATF build
command.
Signed-off-by: Suhaas Joshi <s-joshi@ti.com>
Presently, in k3 devices, we are setting TEE=bl31.bin. However TEE
should be set to OPTEE, not ATF.
Therefore, do the following:
* clone and compile OPTEE
* add variables for OPTEE platform and `make` arguments in all k3
board configs
* use the compiled binary as TEE to compile U-Boot
Signed-off-by: Suhaas Joshi <s-joshi@ti.com>
Currently `current` picks 6.6.y kernel baseline, and `edge` picks
upstream's 6.12.y tree.
Make `current` pick the current SDK release (which, at the moment, is at
11.00.09 baseline), and make `edge` pick the latest un-released RC's
from TI's tree.
`current` is what most people will use, therefore it should be the same
as our official and tested release. `edge` can be either cutting-edge
(latest RC) or bleeding-edge (latest commit on cicd branch). For now,
keep it cutting-edge.
Signed-off-by: Suhaas Joshi <s-joshi@ti.com>
- Added FDT resize/trim to allow big DT and overlays and still use
configured load addresses in case `setexpr` not available
- Moved FDT resize and next load address alignment
- Added filename information to load instructions
- Moved all "global" variable determinations to the top of the
bootscript
https://github.com/armbian/build/issues/8178
- Add switch to turn avoidance on/off
- Increment base address before alignment to resolve the oboe
- oboe observed in U-Boot v2021.04 and in particular with DT loading
- Updated names to reflect function better.
- Followed coding style of rest of the file, e.g. `test` instead of `itest` and `if ... ; then`.
- If `setexpr` fails, use configured addresses - either the ones defined in boot.cmd or set by armbianEnv.txt.
Changes to align with standard beagle images.
- extlinux.conf is much more flexible than uEnv.txt, specially when
having multiple kernel for development - menu entries are valuable for recovery
- typical beagleboard Debian images have been using extlinux.conf for
a while.
Signed-off-by: Ayush Singh <ayush@beagleboard.org>
Co-authored-by: Andrei Aldea <7153954+Grippy98@users.noreply.github.com>
using this extension allows for activation of the APA armbian package
archive and installation of the provided binary packages at image
creation time from within the Armbian Build Framework.
The goal of APA is to simplify maintenance of Armbian Core by moving
dependency logic and other packaging information into a separate space
and handle that meta-data with the proper distribution-creation and
-publication tools. Currently, much of this is done with fragile bash
scripting in Armbian Core instead.
https://github.com/armbian/apa
- **CHANGE**: This version tries to boot SD first (thus SD -> USB -> NVMe -> eMMC); before it would boot USB before SD
- as Armbian u-boot is possibly deployed to SPI, try to make as compatible as possible; eg enable squashfs support
- enable `setexpr` and `fileenv`, used by HAOS
- HAOS already has support for booting VIM3 from NVMe: https://github.com/home-assistant/operating-system/pull/3784
- borrowed `fileenv` patch from v2025.01 to .04
- Similar treatment that `odroidm1` got in https://github.com/armbian/build/pull/7769
- note: I will be leaving my VIM3 behind in the other side of the globe, so this is my last chance to test
* Update rock-4se.csc
Update the version of U-boot used with rock 4 se.
Tested locally on my board after building an armbian image.
ubuntu@rock-4se:~$ strings /dev/mmcblk1 | grep U-Boot
U-Boot SPL 2025.04-armbian-2025.04-S3482-P4a0b-H3d34-Va9af-Bb703-R448a (Apr 22 2025 - 10:05:17 +0000)
U-Boot phase
U-Boot
FIT image for U-Boot with bl31 (TF-A)
* Use BOOTCONFIG="rock-4se-rk3399_defconfig" and remove BOOTPATCHDIR
* Removed old comment
* Update rock-4se.csc
Revert BOOTCONFIG and update BOOT_FDT_FILE="rk3399-rock-4se.dtd"
* Update rock-4se.csc
Set BOOTCONFIG="rock-4se-rk3399_defconfig"
When RTL8152 USB network is enabled as build-in, it will throw out warnings such as:
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8156b-2.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8156a-2.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8153c-1.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8153b-2.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8153a-4.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8153a-3.fw for built-in driver r8152
W: Possible missing firmware /lib/firmware/rtl_nic/rtl8153a-2.fw for built-in driver r8152
This should prevent this while keep driver as module.
I don't know. This doesn't feel right. The package exists in Jammy, Noble and Bookworm in both amd64 and arm64 variants so should be good...though it is probably not needed in all constellations.
Still it is part of the toolchain and not generic packages. If this gets merged as it is this should be revisited.
- Fix dram, mmc for h616.
- The prefix is missing if we use OF_UPSTREAM
- upstream: arm64: sun50i-h616: sync with sunxi-6.12 kernel
- upstream: arm64: Add sun50i-h618-bananapi-m4-berry.dts
- change name of /etc/kernel/postinst.d/z51-raspi-firmware and check for distribution in runtime. This will prevent conflict with raspi-firmware on Debian, while Ubuntu don't have that.
- install packages depending on Distribution. Ubuntu gets what it was, while Debian gets different packages, mirroed from official Rpi bookwork repo: raspi-firmware raspberrypi-sys-mods bluez-firmware bluez
- bump EDGE kernel to 6.14.y
At this stage, the desktops are functioning normally.
The Ethernet is working; module dwmac-sun8i.
WiFi\Bluetooth - the rtl8821cu module is loaded and
can be configured.
This adds fixed +16Gb of resize, which doesn't make image any bigger, but when importing this as is, it might be better to not start without any free space. Now its 16Gb - cca. 600Mb.
- we might want to have different welcome colors for stable and nightly images
- this adds another branding option alongside with VENDOR, VENDORURL, VENDORSUPPORT, ...
add some missing configs and fix update-initramfs
problems by switching to build-in for some modules
- USB_ONBOARD_DEV now build-in
- ARM_IMX_BUS_DEVFREQ now build-in
Signed-off-by: Martin Schmiedel <Martin.Schmiedel@tq-group.com>
fix: /usr/lib/armbian/armbian-firstlogin: line 406:
break: only meaningful in a `for', `while', or `until' loop
Signed-off-by: Martin Schmiedel <Martin.Schmiedel@tq-group.com>
fan53555 driver doesn't accept "tcs,tcs452x" as a compatible, it should
be "tcs,tcs4525" instead.
This change fixes CPUFREQ on CB2 on 6.12
Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
- this reverts d048673c00 just for the Meko's
- there is little to be gained from .10 anyway on those machines (IMHO)
- it is still vendor 2017.09 after all, dunno why Radxa calls them "2024.x"
- some boards have u-boot auto-detect the board variant, and thus we unset `BOOT_FDT_FILE`
- but grub needs to know...
- so introduce a `GRUB_FDT_FILE` that is checked in case `BOOT_FDT_FILE` is not set
- this way we can keep u-boot autodetecting and grub happy
- preserve BOOT_FDT_FILE into GRUB_FDT_FILE for `nanopct6`/`nanopct6-lts`
While it is unusual to run both NetworkManager and systemd-networkd
simultaneiously and doing so can cause startup problems, there is
nothing inherently wrong with doing so: the services are not
incompatible and some people run both, each managing different
interfaces.
The Armbian build framework enables one or the other but not both.
Therefore, if both are enabled at first login, it is probably because
the user has manually modified the image. In this case, trust that the
user knows what they are doing and don't disable one of them.
NetworkManager and systemd-networkd should never both be enabled
at the same time. In this case, disable systemd-networkd, with
message to the user that this is being done.
Avoid waiting for the NetworkManager-wait-online or
systemd-networkd-wait-online service to complete in the midst of
prompting for root account password.
software-properties-common was dropped from Debian Unstable
and may or may not come back according to its maintainer.
It provides the add-apt-repository binary.
c.f. https://github.com/wimpysworld/deb-get/issues/1215
Drop policykit-1 from common packages to include, it is only a
transitional package to pkexec and polkitd and has been dropped from
Debian Testing/Unstable and Ubuntu Plucky. Add pkexec and polkitd as
replacement.
it was dropped from debian unstable and hence trixie and ubuntu plucky. The
kerneloops.org website has been gone for about 5 years already so while the
package is still available for example in jammy, it is completely useless
in 2025.
- https://bugs.debian.org/953172
- https://bugs.launchpad.net/ubuntu/+bug/1930877
When starting a GPU with a power domain, it is necessary
to additionally control the switching on and off of the clock
in the GPU driver.
The driver is currently waiting for a response when it is
turned on, but it is not there, and this causes the OS to freeze.
The complete set will be added later after testing.
* Create rk3588-orangepi-5-ultra.dts
* Create orangepi5-ultra.csc
* fixups
* add notes
* fix u-boot compilation
* Update to v7 patch series
https://patchwork.kernel.org/project/linux-arm-kernel/cover/20250222193332.1761-1-honyuenkwun@gmail.com/
* Update rk3588-orangepi-5-ultra.dts
While I don't fully understand either the `kernel-dtb` command nor the dt syntax itself for some reason the `nophandles` version stripped more than actually phandles. Lets see what happens this way.
* Delete patch/kernel/integrate-6.15/0001-tools-Makefile-remove-pci-target.patch
* disable OPTEE
c81f89ca90
- Replace `armbian.list` with `armbian.sources`. This holds the same
information in a newer format, deb822.
- Replace HTTP with HTTPS for Armbian repositories.
- python3-pip implies a very old setuptools (which is system-wide and takes precedence)
- python3-dev implies python3-distutils (which is long deprecated)
- get-pip.py allows us to version pip in requirements.txt just like everything else
- in the end this fixes the conundrum with pylibfdt / dtschema on Jammy
- and, finally, the setuptools we specify in requirements.txt will be actually used
* rock-3a - fix formatting of gpio-line-names
properly format gpio-line-names, following the example from Trevor Woerner for his contribution to the radxa-zero-3 dt.
Also fix a wrong pin number
* fix applying
The extcon-usbc-virtual-pd driver requests the detection GPIO with the flag GPIOD_OUT_LOW, which leads to a failure in gpiod_to_irq and consequently causes the driver loading to fail.
This issue can be fixed by changing GPIOD_OUT_LOW to either GPIOD_IN or GPIOD_ASIS.
This patch opts to change GPIOD_OUT_LOW to GPIOD_ASIS, as this is a less invasive approach. For devices intending to use this driver, it's also necessary to set the pinctrl property of the detection GPIO to input mode in the dts file.
- as Armbian u-boot is possibly deployed to SPI (replacing Petitboot),
try to make as compatible as possible; eg enable squashfs support
- in this case, `setexpr` and `fileenv` are used by HAOS
- found `fileenv` here 049e1a1949
Signed-off-by: Ricardo Pardini <ricardo@pardini.net>
This reverts commit a3dac432fc.
USB patch for 6.12.y needs rework - its a bit more work as code has been moved around kernel tree. TBD after 25.2 release.
Follow change from radxa 738cda44532c324e07296c95751e3083fa95f282.
Change with command:
sed -i "/CONFIG_OPTEE/d" patch/u-boot/legacy/u-boot-radxa-rk35xx/defconfig/*
- turns out `pahole` for `vmlinux` can take multiple gigabytes of RAM to run successfully
- I can't simply decide based on available RAM, as that would make .config hashes mismatch
- thus, introduce:
- default is to enable BTF; if on low-ram host, error out unless KERNEL_BTF=yes is passed
- if KERNEL_BTF=no is passed, the BTF debug info is always disabled
- if KERNEL_BTF=yes is passed, then a warning is produced, but BTF is still enabled
- the magic number "6451 MiB" was determined empirically (and is probably bs)
- switch MOTD download to new central location https://github.armbian.com/
- move cronjob for MOTD download from weekly to daily
- change mord defaults, remove clear from defaults
* Add MXQ target. Copy HDMI fix from odroid-c1.
* meson8, MXQ: add boot from usb support, configurable dtb
* MXQ: remove boot logo
Built-in U-BOOT is used, so the logo will not be displayed anyway.
* meson: kernel update: legacy -> 6.6, current -> 6.12
* Change Odroid C1 and Onecloud to community supported as build now passes
---------
Co-authored-by: Igor Pecovnik <igor@armbian.com>
Scanning accesspoints requires an activated wifi device.
Networkd does not activate it (only NetworkManager does so).
As a result, firstlogin is not able to configure and use wifi on minimal
images, as only Server and Desktop images have NetworkManeger installed.
Activating the wifi device using "ip link set ${WIFI_DEVICE} up" before
scanning fixes this.
(And can safely be done - there is no problem activating it multiple
times, as it is the case with NetworkManager installed.)
- Replace creation of `armbian-config.list` with
`armbian-config.sources`. This holds the same information in a newer
format, deb822. This does not affect `armbian.list`.
See also: https://github.com/armbian/configng/pull/407
Overlay for testing purposes:
There is a strange interaction between that ethernet adapter and the rtc
(it runs better -but still not well- with the ethernet adapter enabled).
Contains rewritten dts, based on decompiled dtb from original Klipad50
(as similiar as possible to original).
Kernel defconfig taken from MKSPI (replaced "mkspi" with "mksklipad50")
While syncing with upstream Linux helios64 dts for 6.9 I missed
the diff for the helios64 status led label (upstream was
helios64:green:status instead of Armbian helios64::status) and
thus broke armbian helios64-heartbeat-led.service.
This commit restores the Armbian label helios64::status to let
helios64-heartbeat-led.service starts.
Fixes: cbaf67f00 ("Sync helios64 to its updated 6.9 dts")
Signed-off-by: Alban Browaeys <alban.browaeys@gmail.com>
- this allows us to drop a bunch of code needed for 2025.01
- UMS works out of the box (simple dr_mode = peripheral change enough)
- USB3 Type-A port works out of the box
- SPI works out of the box
This makes:
W: Possible missing firmware /lib/firmware/regulatory.db for built-in driver cfg80211
W: Possible missing firmware /lib/firmware/regulatory.db.p7s for built-in driver cfg80211
go away.
Since v5.11, Linux upstream commit 8b5c2b45b8f0 disabled the internal pull-down
for the strobe line explicitly instead of leaving it in its default
state (the opposite of Rockchip Kernel which force enable this intrnal
pulldown by default) thus causing I/O errors in HS400 mode for various
eMMC modules (the ones that did not have an external pulldown on the
strobe line likely).
Discussed upstream and the choice has been made to keep this
behavior as it has been there for too long and reverting might break
other boards http://lists.infradead.org/pipermail/linux-rockchip/2024-April/046416.html
HS400 for helios64 was disabled in commit 5f2e23e90
"Disabled hs400 on Helios64 (hopefully only temporarily) (#3126)"
but for 5.10.63 (ie before the above commit disabled internal pulldown).
Back then I had bisected the emmc I/O issue to a double init of the emmc
regulator introduced while adding deferred support to the regulator driver
core, ie commit 06653ebc0ad2 "regulator: core: resolve supply for boot-on/always-on regulators"
in 5.10.60. But due to the new default for the strobe line internal pulldown
introduced in 5.11, when this double voltage regulator init issue was fixed likely by
8a866d527ac0 "regulator: core: Resolve supply name earlier to prevent double-init"
in Linux 6.1.
* add nanopi-r3s.csc board config
* Nanopi R3S - add uboot patch
* Nanopi R3S - add dts
* fix bogus patch header
* Migrate to new patch series
Source & credits https://patchwork.ozlabs.org/project/uboot/list/?series=438193
I still need to figure out how to convert a patch series from patchwork in a way so the build framework doesn't complain about headers and magic and whatever. So a few hundreds of header lines have been replaced with something generic.
Applies and builds fine now against current stable v2024.10
* Create board-nanopi-r3s-fix-leds.patch
Thx https://github.com/armbian/build/pull/7556#issuecomment-2615110100
* Rename board-nanopi-r3s-fix-leds.patch to xx-board-nanopi-r3s-fix-leds.patch
* add new patch
- post_family_tweaks_bsp_ is called during the build of armbian-bsp-cli-xxx
- the cli package is built separately on the build server
- comparisons to build parameters such as DESKTOP_ENVIRONMENT do not work
Signed-off-by: Martin Schmiedel <Martin.Schmiedel@tq-group.com>
Now that upstream U-Boot has support for building K3 boot artifacts
we can drop using the ti-u-boot fork. Switch to v2025.01 and
adjust file names and add new dependencies as needed.
Option "--connect-timeout" used to determine external IP covers only
connection phase. Curl may "hans" in a different phase and this makes
login to the system impossible if MOTD "header" module enabled.
Using "--max-time" is more reliable and prevents hanging for hours.
Fixes issue https://github.com/armbian/build/issues/7753
Signed-off-by: Uladzimir Bely <wiselord1983@gmail.com>
- also LEDs, networking, more supported compression methods...
- copypasta reigns supreme. refactor is coming, just not today
- also hack the u-boot dtsi for consistent-with-Linux-mainline-DT mmc/sd numbering
- also LEDs, networking, more supported compression methods...
- copypasta reigns supreme. refactor is coming, just not today
- also hack the u-boot dtsi for consistent-with-Linux-mainline-DT mmc/sd numbering
- this was previously a separate patch in 2024.10
In the current main branch, workflow update-tools includes the content
of the upstream release notes in the created GitHub Issue. This
triggers a notification to every upstream contributor mentioned in the
release note. This also creates a cross-reference link to our GitHub
Issue (reporting that our dependency is not up-to-date) in every
upstream issue and pull request. The information that we need to
update our dependency is not relavant to the upstream contributors,
issues, and pull requests at all. We should avoid this situation.
In the first place, we do not need to include a copy of the upstream
release note. We can just put a link to the upstream release note.
Currently, we anyway hide the content in the <details> tag and require
the reader to press the button. The user experience is not so
different from pressing a link and visiting the upstream release note.
- we need to run the hooks _before_ running oldconfig, otherwise it is too late
- drop `kernel_config_check_and_repair()` since it won't ever detect anything now
* Refactor armbian-config into install as external package
- https://github.armbian.com/configng repository is always present
- package can still be removed from the install list
Since this tool will have deeper integration with Armbian, we should probably drop possibility to remove the tool from the list.
* Enable armbian-config as extension
2025-01-20 14:23:28 +01:00
4474 changed files with 836811 additions and 777503 deletions
- name:Update ${{ matrix.tool.VERSION_VAR}} in script
# @TODO Make sure that the version is actually higher, not lower (the 'latest' tag does not neccessarily mean that the version is higher!)
@@ -106,13 +99,6 @@ jobs:
body:|
Bump [${{ matrix.tool.PROJECT_NAME}}](https://github.com/${{ matrix.tool.PROJECT_NAME }}) from ${{ steps.get-version-current.outputs.version_current }} to ${{ steps.get-version-latest.outputs.version_latest }} by bumping `${{ matrix.tool.VERSION_VAR}}` in `${{ matrix.tool.VAR_FILE}}`.
<details><summary><b>Release notes</b></summary>
<p><em>Sourced from <a href="https://github.com/${{ matrix.tool.PROJECT_NAME }}/releases">${{ matrix.tool.PROJECT_NAME }}'s releases</a>.
<br>Please note that this only shows the release notes for the latest release.</em></p>
- at least 2GB of memory and ~35GB of disk space for VM, container or baremetal installation
-[Armbian / Ubuntu Jammy 22.04.x](https://github.com/armbian/sdk) for native building or any Docker capable Linux for containerised
- Windows 10/11 with WSL2 subsystem running Ubuntu Jammy 22.04.x
- x86_64 / aarch64 / riscv64 machine
- at least 8GB (less for non-[BTF](https://docs.kernel.org/bpf/btf.html) builds) of memory and ~50GB of disk space for VM, container, or bare-metal installation
-**Armbian / Ubuntu Jammy 22.04.x** for native building or any Docker capable Linux for containerised
UEFI_EDK2_BOARD_ID="nanopc-cm3588-nas" # This _only_ used for uefi-edk2-rk3588 extension; cm3588-nas was introduced in v0.12 of edk2-porting/edk2-rk3588
function post_family_tweaks__cm3588_nas_udev_naming_audios() {
@@ -46,7 +46,7 @@ function post_family_config__cm3588_nas_use_mainline_uboot() {
declare -g BOOTBRANCH="tag:v2025.01"
declare -g BOOTPATCHDIR="v2025.01"
declare -g BOOTDIR="u-boot-${BOARD}" # do not share u-boot directory
unset uboot_custom_postprocess write_uboot_platform write_uboot_platform_mtd # Disable stuff from rockchip64_common; we're using binman here which does all the work
# Just use the binman-provided u-boot-rockchip.bin, which is ready-to-go
unset uboot_custom_postprocess write_uboot_platform write_uboot_platform_mtd # disable stuff from rockchip64_common; we're using binman here which does all the work already
unset uboot_custom_postprocess write_uboot_platform write_uboot_platform_mtd # disable stuff from rockchip64_common; we're using binman here which does all the work already
# Just use the binman-provided u-boot-rockchip.bin, which is ready-to-go
@@ -51,8 +58,16 @@ function post_family_config_branch_edge__nanopct6_use_mainline_uboot() {
}
}
# U-boot 2025.04+ can detect and set fdtfile automatically across T6 and T6-LTS boards.
# So if using mainline u-boot, unset BOOT_FDT_FILE to let u-boot handle it.
# That way, both variants can boot from the same image; lets keep the -lts board file for vendor kernel/u-boot.
function post_family_config__t6_and_t6_lts_auto_dtb_name_via_uboot_detection() {
[[ "${BRANCH}" == "vendor" ]] && return 0 # Not for 'vendor' branch, which uses 2017.09 vendor u-boot from Radxa
unset BOOT_FDT_FILE
}
function pre_config_uboot_target__nanoptc6_patch_uboot_dtsi_for_ums() {
[[ "${BRANCH}" != "edge" ]] && return 0
[[ "${BRANCH}" == "vendor" ]] && return 0 # Not for 'vendor' branch, which uses 2017.09 vendor u-boot from Radxa
display_alert "u-boot for ${BOARD}" "u-boot: add to u-boot dtsi for UMS" "info" # avoid a patch, just append to the dtsi file
cat <<- EOD >> arch/arm/dts/rk3588-nanopc-t6-u-boot.dtsi # Append to the t6 u-boot dtsi file with stuff for enabling gadget/otg/peripheral mode
@@ -61,32 +76,10 @@ function pre_config_uboot_target__nanoptc6_patch_uboot_dtsi_for_ums() {
# Pull in a newer upstream/dts, which has a fix for the USB3 Type-A (host); this enables booting high speed USB3 devices (https://github.com/torvalds/linux/commit/a6ae420439dc47a58550a6e61e596e9dd1562caf)
# See https://docs.u-boot.org/en/latest/develop/devicetree/control.html#resyncing-with-devicetree-rebasing
# @TODO this probably can be removed for 2025.04
function pre_config_uboot_target__nanoptc6_patch_uboot_dtsi_for_ums() {
[[ "${BRANCH}" != "edge" ]] && return 0
display_alert "u-boot for ${BOARD}/${BRANCH}" "u-boot: pull in upstream/dts for UMS" "info"
# Need to specify params and envs so git doesn't break when commiter/author/gpg/HOME/etc is unset.
declare -a common_envs=("HOME=${HOME}" "PATH=${PATH}")
declare -a git_params=("-c" "commit.gpgsign=false")
declare -a commit_params=(--author="${MAINTAINER} <${MAINTAINERMAIL}>")
declare -a commit_envs=("GIT_COMMITTER_NAME=${MAINTAINER}" "GIT_COMMITTER_EMAIL=${MAINTAINERMAIL}" "GIT_AUTHOR_NAME=${MAINTAINER}" "GIT_AUTHOR_EMAIL=${MAINTAINERMAIL}")
run_host_command_logged env -i "${common_envs[@]@Q}" "${commit_envs[@]@Q}" git "${git_params[@]@Q}" commit "${commit_params[@]@Q}" -m "'commit pre update OF upstream so that tree is clean'" || true
display_alert "u-boot for ${BOARD}/${BRANCH}" "u-boot: running tools/update-subtree.sh" "info"
run_host_command_logged env -i "${common_envs[@]@Q}" "${commit_envs[@]@Q}" bash tools/update-subtree.sh pull dts v6.13-rc5-dts "||" true # do not fail as conflicts are expected
run_host_command_logged env -i "${common_envs[@]@Q}" "${commit_envs[@]@Q}" git "${git_params[@]@Q}" commit "${commit_params[@]@Q}" -m "'Update OF upstream to v6.13-rc5-dts and accept theirs on all conflicts'"
}
# "rockchip-common: boot SD card first, then NVMe, then mmc"
@@ -102,7 +95,7 @@ function pre_config_uboot_target__nanopct6_patch_rockchip_common_boot_order() {
}
function post_config_uboot_target__extra_configs_for_nanopct6_mainline_environment_in_spi() {
[[ "${BRANCH}" != "edge" ]] && return 0
[[ "${BRANCH}" == "vendor" ]] && return 0 # Not for 'vendor' branch, which uses 2017.09 vendor u-boot from Radxa
display_alert "u-boot for ${BOARD}/${BRANCH}" "u-boot: enable board-specific configs (env in SPI)" "info"
unset uboot_custom_postprocess write_uboot_platform write_uboot_platform_mtd # disable stuff from rockchip64_common; we're using binman here which does all the work already
# Just use the binman-provided u-boot-rockchip.bin, which is ready-to-go
# The upstream DTs (kernel 6.13 / u-boot 2025.01) are in flux and different
# let's just patch to normalize the SD and eMMC order as in mainline Linux DT: https://github.com/torvalds/linux/blob/master/arch/arm64/boot/dts/rockchip/rk3588s-nanopi-r6.dtsi#L14-L15
function pre_config_uboot_target__r6c_patch_uboot_dtsi_for_sd_emmc_order() {
display_alert "u-boot for ${BOARD}" "u-boot: add to u-boot dtsi for SD=mmc0 and eMMC=mmc1" "info"
unset uboot_custom_postprocess write_uboot_platform write_uboot_platform_mtd # disable stuff from rockchip64_common; we're using binman here which does all the work already
# Just use the binman-provided u-boot-rockchip.bin, which is ready-to-go
# The upstream DTs (kernel 6.13 / u-boot 2025.01) are in flux and different
# let's just patch to normalize the SD and eMMC order as in mainline Linux DT: https://github.com/torvalds/linux/blob/master/arch/arm64/boot/dts/rockchip/rk3588s-nanopi-r6.dtsi#L14-L15
function pre_config_uboot_target__r6s_patch_uboot_dtsi_for_sd_emmc_order() {
display_alert "u-boot for ${BOARD}" "u-boot: add to u-boot dtsi for SD=mmc0 and eMMC=mmc1" "info"
unset uboot_custom_postprocess write_uboot_platform write_uboot_platform_mtd # disable stuff from rockchip64_common; we're using binman here which does all the work already
# Just use the binman-provided u-boot-rockchip.bin, which is ready-to-go
unset uboot_custom_postprocess write_uboot_platform write_uboot_platform_mtd # disable stuff from rockchip64_common; we're using binman here which does all the work already
# Just use the binman-provided u-boot-rockchip.bin, which is ready-to-go
unset uboot_custom_postprocess write_uboot_platform write_uboot_platform_mtd # disable stuff from rockchip64_common; we're using binman here which does all the work already
# Just use the binman-provided u-boot-rockchip.bin, which is ready-to-go
# A better equivalent to patching a defconfig, do changes to .config via code.
# For UMS/RockUSB to work in u-boot, &usb_host0_xhci { dr_mode = "otg" } is required. See 0002-board-rockchip-ODROID-M1-override-kernel-DT-for-xhci-otg-dr_mode.patch
function post_config_uboot_target__extra_configs_for_quartz64a() {
unset uboot_custom_postprocess write_uboot_platform write_uboot_platform_mtd # disable stuff from rockchip64_common; we're using binman here which does all the work already
@@ -37,16 +47,7 @@ function post_family_config_branch_edge__rock-3a_use_mainline_uboot() {
}
}
function post_family_config__rock3a_uboot_add_sata_target() {
display_alert "$BOARD" "Configuring ($BOARD) standard and sata uboot target map" "info"
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.