Compare commits

...

416 Commits

Author SHA1 Message Date
hzy
b2ed798e7a Let linux-image depends linux-dtb
For bootable/workable kernel, dtb is necessary.
2023-05-28 23:34:48 +08:00
Igor
d147e5a9a7 Bump version 2023-05-27 21:30:17 +02:00
Igor
a615a66468 Enable riscv64 arch for i3
Signed-off-by: Igor <igor@armbian.com>
2023-05-27 12:15:17 +02:00
Igor
6af50cfcdd Set stable version
Signed-off-by: Igor <igor@armbian.com>
2023-05-27 12:15:17 +02:00
Ricardo Pardini
8f6b7fb370 bananapim5/bananapim2s: point BOOTPATCHDIR directly to board folder, as to escape the patch in the parent folder 2023-05-27 12:15:04 +02:00
boyi
ce002b2240 bananapim5/bananapim2s: adding patches to boards for nvme/scsi, but not USB 2023-05-27 12:15:04 +02:00
Igor
a581e7044f Enable T6 build config 2023-05-27 11:00:53 +02:00
Vyacheslav Bocharov
672bd5393a Revert "BPI-CM4 IO: RTW88: Realtek 8822CS SDIO Wireless Support"
This reverts commit 3f169bcae2.
2023-05-26 14:07:04 +02:00
Igor
0449601213 Disable wireless driver for d1 legacy kernel as it breaks compilation
Target is not supported
2023-05-26 09:26:24 +02:00
Patrick Yavitz
3f169bcae2 BPI-CM4 IO: RTW88: Realtek 8822CS SDIO Wireless Support
Additional driver support:
Realtek 8822BS SDIO wireless network adapter
Realtek 8822BU USB wireless network adapter
Realtek 8822CS SDIO wireless network adapter
Realtek 8822CU USB wireless network adapter
Realtek 8821CS SDIO wireless network adapter
Realtek 8821CU USB wireless network adapter

Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
2023-05-26 07:37:28 +02:00
Igor
88e5af7b3c Change Khadas Edge 2 board status 2023-05-26 07:35:29 +02:00
Ricardo Pardini
9d90dcd3d4 drivers_network: uwe5622: park-link-v6.2-only.patch only for 6.2.y 2023-05-26 07:35:05 +02:00
Ricardo Pardini
930e363990 starfive/edge: bump 6.1.23 to 6.1.y; rebase to v6.1.30; hammer dma,pwm patches; update .config 2023-05-26 07:25:29 +02:00
amazingfate
f76dc54932 use step_wise as the default thermal governor for rockchip-rk3588 legacy 2023-05-26 07:24:28 +02:00
AGM1968
e08645740b arm64-dts-allwinner-h616-Add-efuse_xlate-cpu-frequency-scaling-v1_6_2 2023-05-26 07:22:51 +02:00
amazingfate
798b518f1b update rk35xx-legacy to 5.10 rkr4 2023-05-26 10:25:17 +08:00
Ricardo Pardini
c825966857 pipeline: targets-compositor: force variable BETA the same for all targets, reading from param/env passed to prepare/gha-matrix step
- this way it's consistent across all artifacts and images
- debs-to-repo-download: fix: use DEB_STORAGE instead of hardcoding output/debs (so BETA=yes works)

also:
- fix `Duplicate oci_target` message in mapper-oci-uptodate
2023-05-25 19:30:40 +02:00
Ricardo Pardini
31131fe14e bsp-cli/BETA: fixes for bsp-cli bootscript hashing; don't normalize bootscript vars; debugging for BETA=yes/no stuff
also:
- get rid of comments and `SUBREVISION` and `RC` variables
- better debugging in calculate_hash_for_variables() do_normalize_src_path=yes/no
- tag a few places where output/debs might wrong in face of BETA=yes/no
2023-05-25 19:30:40 +02:00
amazingfate
316c4117dd update kernel of rockchip-rk3588 legacy to rkr4 2023-05-25 14:04:26 +08:00
Igor
cb8b309a91 Disable rtl8723cs for bcm2711 family as its currently broken and as its not needed there anyway 2023-05-25 06:21:11 +02:00
Igor
84a458b861 Reenable wifi 2023-05-25 06:19:21 +02:00
Igor
a710553138 Temporally disable broken wireless / bluetooth driver from patch/misc/wireless-rtl8723cs/
@paolosabatino

Also bump Allwinner
2023-05-25 06:19:21 +02:00
Ricardo Pardini
10855677e5 rockchip64/edge 6.3.y: fix broadcom bt serdev hack for 6.3.4 2023-05-25 05:09:49 +02:00
Ricardo Pardini
38bda3ac57 drivers_network: wireless-driver-for-uwe5622-park-link-v6.1-post: fix for 6.1.30 2023-05-25 05:09:49 +02:00
Ricardo Pardini
848f176a52 rockchip64/current 6.1.y: fix broadcom bt serdev hack for 6.1.30 2023-05-25 05:09:49 +02:00
Ricardo Pardini
e1e3e3c02c drivers_network: rtl8723cs bt: disable landed patches in 6.1.30/6.3.4; keep for 6.2, which is EOL 2023-05-25 05:09:49 +02:00
Paolo Sabatino
bff4dfee52 fix rk322x and rockchip 32bit patches for kernel 6.1 2023-05-25 00:48:38 +02:00
Brent Roman
d2b49456de switched from using ifconfig to ip command to set mac address of wlan 2023-05-24 19:29:42 +02:00
Ricardo Pardini
97362fd408 artifacts (all): implement DONT_BUILD_ARTIFACTS=any (so we don't need to list them all for CI image builds) 2023-05-24 19:24:01 +02:00
Ricardo Pardini
0a5740040e rootfs-to-image: find, warn, and remove dangling symlinks in FAT32 /boot 2023-05-24 19:23:37 +02:00
Ricardo Pardini
15fcc0bb00 artifacts: introduce calculate_hash_for_variables() which normalizes the input; use in kernel/uboot/etc
- some hashed variables might contain "${SRC}", so hashes never match, unless built in Docker
  - this strips away SRC from all vars and adds debugging so we can detect more later.
- `artifact-uboot`: include more variables into hash, for ATF & rk stuff
- `artifact-armbian-desktop`:
  - hashed vars actually contain /armbian in different context, skip normalization in this case
  - include results of relevant aggregation into artifact_input_variables
    - otherwise: desktops with different appgroups/configs lead to build failures in pipeline
    - will cause warnings in JSON preparation step, if more than one appgroups/config combo is targeted, since repo can only have one
2023-05-24 19:23:08 +02:00
Ricardo Pardini
940d0e740c image: sanity check: warn if any deb artifacts' actually-installed version does not match artifact-built version
- this catches problems with outdated/crazy repos, customize doing stupid things, wrong pinning, etc
2023-05-24 19:22:51 +02:00
Ricardo Pardini
14a3ec01d0 khadas-edge2: switch to rockchip-rk3588 legacy kernel; add bluetooth-hciattach for working bluetooth
- most of the work done by @monkaBlyat
2023-05-24 19:22:22 +02:00
Ricardo Pardini
5f458c9183 mekotronics (all boards): use new bluetooth-hciattach extension 2023-05-24 19:22:22 +02:00
Ricardo Pardini
a9cc0620ec bluetooth-hciattach: new generic extension to facilitate adding hciattach systemd service, given the correct params 2023-05-24 19:22:22 +02:00
schwar3kat
7036b0492b Orangepi-r1plus-lts-fix-NIC-logical-names 2023-05-24 19:21:56 +02:00
Ricardo Pardini
0cf457b2ef kernel: drivers: wireless-rtl8723du-6.3.patch: don't patch the same thing twice 2023-05-24 19:21:42 +02:00
Ricardo Pardini
93263c4719 rockchip64/edge 6.3.y: update .config - no actual changes 2023-05-24 19:21:31 +02:00
Ricardo Pardini
1cdab8b1cf rockchip64/edge 6.3.y: rebase against v6.3.3, do archeology for missing mbox'es 2023-05-24 19:21:31 +02:00
Ricardo Pardini
fde9ca206e rockchip64/edge 6.3.y: manually fix Radxa E25/CM3 patches 2023-05-24 19:21:31 +02:00
Ricardo Pardini
5200172a37 rock-5a: add support for Rock-5A, WiP, using rockchip-rk3588 - by @amazingfate 2023-05-24 19:21:20 +02:00
Ricardo Pardini
fa21a75d00 rockchip64/current 6.1.y: fix broken Radxa E25 patch from #5165
- drop the common dtsi changes
2023-05-24 19:21:09 +02:00
Ricardo Pardini
52710b3363 git/docker: bsp-cli: fix BUILD_REPOSITORY_URL and BUILD_REPOSITORY_COMMIT under Docker; fixes AR-1750 2023-05-24 19:20:57 +02:00
Ricardo Pardini
03810833ef sunxi 6.1 and 6.2: disable broken ov5640 patches (some kind of camera?)
- most of those were already disabled on 6.2, now some more patches on top also broke.
- it works up to 6.1.15, but 6.1.16 broke it; `megi`'s tree is still sitting at 6.1.12.
2023-05-24 19:20:48 +02:00
Igor
8ebe1b9112 Forgot to change execution bit to postinst script 2023-05-23 17:14:42 +02:00
Igor
aba5df4689 Remove postinst manipulation as its not needed. SKEL is copied at user creation, psd at first run
Also fix executing bit at armbian-firstlogin script
2023-05-23 16:34:56 +02:00
Ricardo Pardini
7d72d18bb0 git-ref2info: source.denx.de is a GitLab instance, add it to the selector; fixes #5168 2023-05-23 16:34:40 +02:00
Ricardo Pardini
b8bea3edb9 rockchip-rk3588-legacy: switch to 48-bit virtual address; enable more eBPF/net stuff
- enable more eBPF/net stuff for Cilium
- switch to 48-bit virtual addresses, so we're tcmalloc compatible
  - see https://github.com/cilium/cilium/issues/17467
  - see https://github.com/envoyproxy/envoy/issues/15235#issuecomment-850516622
2023-05-23 16:34:18 +02:00
Ricardo Pardini
10a0a3e454 rpi4b/bcm2711: introduce RPI_DEBUG_CONSOLE=yes which at once disables bt, enables uart, and adds ttyAMA0 2023-05-23 16:33:59 +02:00
Muhammed Efe Çetin
214cafb264 Enable INNOLUX_AFJ101_BA2131 panel on rk3588 legacy kernel 2023-05-23 16:33:42 +02:00
Igor
bf30e06358 Remove motd spam after installing fake ubuntu advantage tools 2023-05-23 16:33:25 +02:00
Paolo Sabatino
59363d5a0f rk3399: fix again OrangePi 4 LTS sdcard detection 2023-05-21 19:29:28 +02:00
Igor
526070d866 Remove /etc/legal from conf_files to prevent prompt at upgrade
Signed-off-by: Igor <igor@armbian.com>
2023-05-21 17:06:54 +02:00
Ricardo Pardini
6acf58bcb8 armbian-zsh: use fixed commit for ohmyzsh; was using very high traffic 'master' branch
- upstream has no branches, no tags, only way to quiesce this is via `commit:<sha1>`
2023-05-21 16:18:57 +02:00
Ricardo Pardini
30eb5323f2 prepare-host: refactor disk space check; test "${DEST}" and "${SRC}/cache", no longer "${SRC}" 2023-05-21 16:18:35 +02:00
Ricardo Pardini
89a7cc971b grub: fixes for wallpaper / gfxmode / submenu /etc
- Debian working
- Ubuntu's grub needs more work
2023-05-21 16:18:20 +02:00
amazingfate
ea952814d1 change radxa uboot branch to next-dev 2023-05-21 14:01:21 +02:00
Ricardo Pardini
09e82fe25e meson64-edge (6.2.y): rebase & update .config to 6.2.16 (EOL); pick chewitt (add t95z+fixes); rework SPI-NOR dtbs
- `meson64`-`edge` (6.2.y): drop old/unused/pre-armbian-next builddeb patch that was leftover
- `meson64`-`edge` (6.2.y): pick & squash from chewitt's tree; new t95z board and its tm1628 driver, fixes for odroidc2, vim3, gxl/gxm SDIO
- `meson64`-`edge` (6.2.y): reword the `-spi` extra DTBs for the N2(+) into more generic for g12; add VIM3/VIM3L which also have same SPI NOR scheme
- `meson64`-`edge` (6.2.y): update .config to 6.2.16; enable `CONFIG_TM1628`
- `meson64`-`edge` (6.2.y): rebase to 6.2.16 after picking chewitt
2023-05-21 14:01:11 +02:00
Ricardo Pardini
7fa05a9b69 utils-dpkgdeb: fix wrong DEBIAN/md5sums generation
- remove the prefix, otherwise a temporary path is included
- don't include DEBIAN/* files themselves
2023-05-21 14:00:15 +02:00
Ricardo Pardini
2e570b9473 initrd: when cache hit, don't preserve perms during deploy, otherwise FAT32 /boot gags 2023-05-21 13:59:26 +02:00
Ricardo Pardini
eb4320f424 odroidm1 / rk3568-odroid: recover overlays from 6.1; update .config; fix patch dir name 2023-05-21 13:58:31 +02:00
Patrick Yavitz
e2791ef1b9 config: boards: bananapicm4io.conf
Added "current" to the KERNEL_TARGET variable.
KERNEL_TARGET="current,edge"

Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
2023-05-21 11:11:25 +02:00
Patrick Yavitz
80e4d37315 patch: kernel: meson64-6.1: add-board-bananapi-cm4-cm4io
Backport: BPI-CM4 CM4IO dts/dtsi

Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
2023-05-21 11:11:25 +02:00
Igor
a3e79a8d7b Disable debugging on packages install 2023-05-21 11:11:18 +02:00
Igor
e67215bd6a URL for riscv64 is different then expected
https://deb.debian.org/debian-ports/pool -> pool-riscv64
2023-05-21 11:11:07 +02:00
Alan
8eeb9379d1 Move rtl8189-disable-debug patch from kernel to misc(drivers_network.sh) 2023-05-19 23:35:49 +02:00
amazingfate
afa8775f3e delete upstream merged patches of rk35xx-5.10 2023-05-19 23:34:49 +02:00
Igor
f1836416d2 Bump sunxi to latest 2023-05-18 22:24:35 +02:00
Igor
46c20606e3 In case we are removing files we need to remove the from conffiles too 2023-05-18 21:44:05 +02:00
Igor
fae54d84ca Change remaining variables of base-files 2023-05-18 20:49:06 +02:00
Ricardo Pardini
1fd5d519d4 introduce armbian-base-files artifact, which downloads & repacks base-files from upstream distro
- bsp-cli: now depends on `base-files (>= ${REVISION})`, this way upgrading the bsp-cli causes our base-files to be installed
  - bsp-cli no longer does gymnastics with /etc/os-release et al, all done in armbian-base-files now
- general/apt-utils.sh: introduce `apt_find_upstream_package_version_and_download_url()`
- base-files: add release to version, in order to comply with repo restrictions (valid repos can't have two different debs with same name and version, md5 must match)
2023-05-18 20:49:06 +02:00
igorpecovnik
c7fc14a7b8 Remove deprecated patches (#5187) 2023-05-18 19:52:36 +02:00
Julian Sikorski
5b3aba795b Update odroidxu4-current to 5.4.243 (#5191) 2023-05-18 19:52:16 +02:00
igorpecovnik
d3c2eaf308 armhf also supports i3wm desktop (#5190) 2023-05-18 19:48:33 +02:00
Tomáš Mozdřeň
65dd6f8aa6 AR-1708 - Improve i3-wm support (#5188) 2023-05-18 13:09:52 +02:00
Jianfeng Liu
97983de408 clean patches for rockchip-rk3588-legacy (#5189) 2023-05-18 11:38:27 +02:00
Ricardo Pardini
e2f32c53f8 export-logs: add GHA output for logs_url (when SHARE_LOG=yes) 2023-05-17 18:06:21 +02:00
krachlatte
45c8587861 Improve SD card compatibility on Radxa E25 (#5165) 2023-05-17 00:55:30 +02:00
Ricardo Pardini
e3a4060595 github-actions: more logging for GHA actions outputs 2023-05-16 20:09:47 +02:00
Ricardo Pardini
27a021d193 oci-oras: retry harder, and sleep for more time, if push failed 2023-05-16 20:09:47 +02:00
Ricardo Pardini
f26a41ff6c rootfs/image: introduce new hook custom_apt_repo() (hashed into rootfs version); deploy different repo components/custom repos depending on rootfs or image
- rationale: we don't want an eternal chicken-egg problem with rootfs vs repo.
  - but, desktop rootfs require some parts of repo. case in point: `system-monitoring-center`
    - so only add certain components of repo (-desktop, -utils) to rootfs so that is honored
- introduce `custom_apt_repo()` hook for extensions to add their repos as well
  - same chicken-egg-avoiding is possible via param `CUSTOM_REPO_WHEN`
2023-05-16 20:09:47 +02:00
Ricardo Pardini
9943e9ee66 artifacts(debs): include DEBIAN/md5sums and a correct Installed-Size: field in DEBIAN/control (for _all_ debs) 2023-05-16 20:09:47 +02:00
Ricardo Pardini
b456554610 artifacts(debs): rationalize "bash hash" creation with new calculate_hash_for_bash_deb_artifact() helper 2023-05-16 20:09:47 +02:00
Ricardo Pardini
eff56a7909 pipeline: debs-to-repo (v7, working with reprepro)
- pipeline: artifacts: use better description for artifacts (artifact_name+artifact_version instead of artifact_final_file_basename)
2023-05-16 20:09:47 +02:00
Ricardo Pardini
52fffdda75 kernel-debs: include "Priority: optional" in all kernel debs (all other packages have it...)
- also for `fake_ubuntu_advantage_tools`
  - also include "Section: " missing for advantage
2023-05-16 20:09:47 +02:00
Ricardo Pardini
807be60c6b artifacts-obtain: deb-tar: don't download .tar again if .debs are in-disk; delete .tar after extracting 2023-05-16 20:09:47 +02:00
Ricardo Pardini
ca46f86dec artifacts: download-artifact CLI. makes sure to only used local .deb, or download from OCI, never build 2023-05-16 20:09:47 +02:00
Ricardo Pardini
1fa54e030d artifacts: include the artifact maps info (debs/packages) both as keys and values in the artifact JSON info
- this is valuable for the debs-to-repo process; we can now know which exact .debs are produced, and all the ways we can refer to them
2023-05-16 20:09:47 +02:00
Ricardo Pardini
234232085d docker: remove dead code 2023-05-16 20:09:47 +02:00
tdleiyao
211ce5ede5 rockchip-rk3566:add new board Panther X2 2023-05-16 19:50:14 +02:00
Igor
f1ab301d38 Bump Allwinner and update associated kernel configs 2023-05-16 19:48:13 +02:00
Igor
de226c1a9a Enable "current" kernel branch for Rock3A
Signed-off-by: Igor <igor@armbian.com>
2023-05-16 19:00:02 +02:00
Ricardo Pardini
88cc3a061f drivers: uwe5622 for 6.3.y, by @paolosabatino 2023-05-16 08:55:33 +02:00
Ricardo Pardini
906ca66430 rockchip64/edge/6.3: rebase/rewrite patches against v6.3.1; do archeology for mbox-less patches; materialize overwrites
- materialized overwrites:
  - `add-board-helios64.patch`
  - `add-board-orangepi-r1-plus.patch`
  - `add-driver-for-Motorcomm-YT85xx+PHYs.patch`
  - `add-board-rk3328-roc-pc.patch`
- not touched: wifi patches, those still require work before rebase is consistent.
  - `wifi-4003-uwe5622-adjust-for-rockchip.patch`
    - this patch is done on top of the wifi drivers patches exclusively, and fails to apply out of tree.
    - we should probably consider moving this into the wifi drivers patch harness, not in the rockchip tree.
2023-05-16 08:55:33 +02:00
Igor Velkov
9b68c4e42a Add support for nilfs2 fs based image
Signed-off-by: Igor Velkov <iav@iav.lv>
2023-05-16 08:51:05 +02:00
Ricardo Pardini
78700cf139 logging/retries: curb CI/GHA warning emitted _for each retry_ 2023-05-15 17:43:25 +02:00
Ricardo Pardini
c351936cb0 binfmts: hide output when loading qemu-arm under aarch64 (some are native, some are emulated, all are good, errors can be ignored) 2023-05-15 17:43:25 +02:00
Ricardo Pardini
1f26121528 logging/rockchip64_common: curb warning about BOOT_SOC vs BOOTCONFIG if BOOTCONFIG is empty or 'none'
- we've enough warnings already
2023-05-15 17:43:25 +02:00
Ricardo Pardini
ceea84ff28 logging: curb warning that always came up when SRC_EXTLINUX=yes
- SRC_EXTLINUX is quite prevalent, no use warning, it was more a debugging marker
2023-05-15 17:43:25 +02:00
Ricardo Pardini
f0f9159faa logging: curb CI/GHA special errors for cascading errors during build failure
- otherwise we get 4 errors for each "error" in CI
  - one for the real error
  - one for "wait for cleanups"
  - one for "Docker build failed"
  - one from GHA itself since command failed (we can't get rid of this)
2023-05-15 17:43:25 +02:00
Ricardo Pardini
25929ea6ac apt_purge_unneeded_packages_and_clean_apt_caches(): count files, don't use du: avoid WARNs when not needed; tolerate 1 file
- 'lock' might or not be there, tolerate 1 file (not 0)
2023-05-15 17:43:25 +02:00
Ricardo Pardini
99e065381a squash more warnings:
- `odroidxu4`'s firmware hook for vendor kernel. such is life, no use warning.
- `sun50iw9`: vendor kernel with extension, proven working, stop warning
- old kernels don't have working headers, it's a fact of life, remove warning
2023-05-15 17:43:25 +02:00
Ricardo Pardini
7025418c8b mt7623: remove packages/extras-buildpkgs/mmc-utils/debian/rules install that does not exist anymore (fixes bananapir2)
- remove ancient `family_tweaks` completely
2023-05-15 17:43:25 +02:00
Ricardo Pardini
d164f6850b rootfs/aggregation/helios64: fix: include PACKAGE_LIST_BOARD_REMOVE (and FAMILY version) into rootfs' artifact_input_variables
- `PACKAGE_LIST_BOARD_REMOVE` is used only in `helios64` board
- the fact is `PACKAGE_LIST_BOARD_REMOVE` removes the packages _from the rootfs_ and not _from the image_
  - this only accounts for that fact, but in the future we should actually change how this works
2023-05-15 17:43:25 +02:00
Igor
35d5ae75ff Add to EDGE to and enable EDGE kernel in board config
Tested for building.
2023-05-15 17:33:03 +02:00
Bochun Bai
9c4f0524e0 add dts patch for kernel 6.1 2023-05-15 17:33:03 +02:00
Bochun Bai
3cb92f6204 add support for NanoPi R4SE 2023-05-15 17:33:03 +02:00
amazingfate
df3c7eb461 use the same patch dir for u-boot from radxa 2023-05-15 17:12:20 +02:00
Igor
8ac568102e Switch Rockchip CURRENT to 6.1.y 2023-05-15 17:12:06 +02:00
Igor
615c7c3e71 Update boot loader on Orangepipluse 2e
Current is a bit unstable, so this can't hurt. Survived several reboots.
2023-05-14 21:29:33 +02:00
Ricardo Pardini
295f95d9f6 rpi4b/legacy: update legacy 5.15 kernel config, no changes 2023-05-14 21:28:58 +02:00
Igor
66c2e769ae Update. Now both boots 2023-05-14 21:28:58 +02:00
Igor
215e3ebd27 Update edge too 2023-05-14 21:28:58 +02:00
Igor
f0236e98f6 Update RPI4 kernel config 2023-05-14 21:28:58 +02:00
Werner
7c24318a28 Create sun8i-v3s.txt 2023-05-09 10:05:58 +02:00
Werner
e62f03dd10 Update sun8i-v3s.conf 2023-05-09 10:05:58 +02:00
hzyitc
76378d313b ISSUE_TEMPLATE: bugreport: Require log URL instand of some parts
The full log make debug easier.
2023-05-09 10:05:46 +02:00
Pander
11c967322d installer prompt fix 2023-05-09 10:05:23 +02:00
Ricardo Pardini
e49d91ec40 popular demand: bring back KERNEL_CONFIGURE=yes *during image build*
- partially revert 6ef394d95d (thus bring back the TUI/dialog for selecting KERNEL_CONFIGURE=yes/no)
- partially revert d890b418c7 (thus bring back the capacity to config & build image in one go)
- stop after configuring kernel, but only if command is `kernel-config`, not regular image-build KERNEL_CONFIGURE=yes
2023-05-09 10:05:09 +02:00
Ricardo Pardini
83e35b1473 binfmts: don't raise warning if qemu-arm failed to load under aarch64 (some are native, some are emulated, all are good)
- reported by @igorpecovnik on Discord, during massive CI build, when armhf builds landed on arm64 builders
2023-05-09 10:04:57 +02:00
Ricardo Pardini
8f14f33f78 logging: squash undue warnings rootfs/aptcache
- rootfs is built with BOARD= so just live with it (idea about this warn was that families might hook rootfs build process)
- count, instead of du, apt caches. seems some empty dirs are reported as "1Mb" by du?
2023-05-09 10:04:57 +02:00
Ricardo Pardini
5316c6685b host-utils: more logging for when junk is found in image apt caches 2023-05-09 10:04:57 +02:00
Ricardo Pardini
b18cd8aaf4 logging: curb some warnings into info's 2023-05-09 10:04:57 +02:00
Ricardo Pardini
ab696d0776 rootfs: bump non-desktop tmpfs_estimated_size from 2000mb to 2300mb (determined empirically, after building all images) 2023-05-09 10:04:57 +02:00
Ricardo Pardini
b7c659c0a9 pipeline: gha: fix IMAGES_ONLY_OUTDATED_ARTIFACTS and SKIP_IMAGES by exporting them so Python can see; tune logging 2023-05-09 10:04:57 +02:00
Ricardo Pardini
637c4fec01 include (clean/real) apt lists in built images; update xapian index during image build, not rootfs; don't leave junk in the rootfs cache
- revert #5139 Revert "Apt lists is needed for synpatic index generation"
  This reverts commit 63e9bd3baa
  - this actually only left junk in rootfs cache for the future to find
2023-05-09 10:04:50 +02:00
Igor
3b6598c3c2 Enable BOOT_SCENARIO="tpl-spl-blob" also on Kedge 2023-05-09 10:04:41 +02:00
Paolo Sabatino
5342449e6b rk322x: add emmc and sdmmc pwrseq 2023-05-08 11:30:19 +02:00
Paolo Sabatino
3b3e3405bc rk3399: minor rework of patches triggering warnings 2023-05-08 11:21:55 +02:00
Ricardo Pardini
a872fe8773 config-prepare: config_pre_main(): try to be more helpful when BRANCH is unset or wrong instead of just "bad KERNEL_MAJOR_MINOR" 2023-05-08 11:21:47 +02:00
Ricardo Pardini
6d3364673a rockchip64_common.inc: fix escaping for test in subshell
- this emits errors early if BRANCH is not set
2023-05-08 11:21:47 +02:00
amazingfate
495d35be49 fix unidiff warning from patches of rockchip64-6.3 2023-05-06 12:55:10 +02:00
amazingfate
85bab47bba bump rockchip64 edge to v6.3 2023-05-06 12:55:10 +02:00
amazingfate
0b5dc0c921 fix uwe5622 for kernel v6.3 2023-05-06 12:55:10 +02:00
Igor
5ce81c6bb8 Fix rockpi-n10 and station-p1 uboot spi image creating 2023-05-06 10:54:55 +02:00
Igor
63e9bd3baa Apt lists is needed for synpatic index generation 2023-05-05 19:37:19 +02:00
amazingfate
8a6d76831a fix rock4 boards uboot spi image creating 2023-05-05 19:36:47 +02:00
Igor
fb328bf4da Move RISCV uefi status to WIP as this is closer to reality 2023-05-05 16:41:52 +02:00
Igor
e62ae0fcd0 Enable SECCOMP on Visionfive2 kernel config
This will fix chrony

https://forum.armbian.com/topic/28142-visionfive-2-chrony-doesnt-run-kernel-missing-seccomp
2023-05-05 12:34:52 +02:00
Michał Dziekoński
7167d5c420 sunxi-6.2 h616: Fix thermal zones (add missing trips) 2023-05-05 12:27:14 +02:00
Michał Dziekoński
613234a75c sunxi-6.1 h616: Fix thermal zones (add missing trips) 2023-05-05 12:27:14 +02:00
Julian Sikorski
f543927a46 Update odroidxu4-current to 5.4.242 2023-05-05 12:26:58 +02:00
amazingfate
5dee9ee935 remove twice declared uboot make targets for rkspi image 2023-05-05 12:25:07 +02:00
amazingfate
cf35a151b3 disable spi flash support on radxa e25 2023-05-05 12:24:51 +02:00
igorpecovnik
730c34f677 Updating text 2023-05-05 12:24:19 +02:00
hzy
2e41d350e8 meson: edge: bump to linux-6.3.y 2023-05-05 12:23:46 +02:00
Igor
97be075d56 Limit execution to main branch only 2023-05-04 16:44:44 +02:00
Ricardo Pardini
de8bbcec11 pipeline: correctly quote params passed over pure strings (eg in the GHA JSON matrixes) so values with spaces are not mangled 2023-05-04 16:08:11 +02:00
Ricardo Pardini
1b36bb63d7 bash_declare_parser: parse space-separated single-quoted array values correctly ('THIS=has space' is a single token, not two) 2023-05-04 16:08:11 +02:00
Ricardo Pardini
875960ddb7 aggregation: armbian_utils.parse_env_for_tokens() now actually does what it said on the box "split by whitespace, line breaks, commas, and semicolons"; add appgroups summary 2023-05-04 16:08:11 +02:00
Ricardo Pardini
1ad9f7cbd2 artifact-rootfs: add desktop info (environment, config_name, appgrous) to artifact_version_reason (so we can debug when I mess up later) 2023-05-04 16:08:11 +02:00
Ricardo Pardini
7c0fb70a2b configdump: alias config-dump, config-dump-json and new config-dump-no-json (bash declare format) 2023-05-04 16:08:11 +02:00
Ricardo Pardini
0ff694cfbd produce_repeat_args_array: @mhoffrog was right, we need to quote repeat params; (here I'm being stubborn and only quoting the ones that have spaces in them) 2023-05-04 16:08:11 +02:00
Pander
9ed24a6e86 extension fake-vcgencmd 2023-05-03 15:10:18 +02:00
Ricardo Pardini
ad05ef1d6c de-EOS prematurely-EOS'ed boards (I hope) 2023-05-03 15:09:56 +02:00
Ricardo Pardini
73e9c89807 docker: fix: always mount .docker/config.json if it exists (in GHA) 2023-05-03 15:09:56 +02:00
Ricardo Pardini
6ef394d95d kernel: get better rid of KERNEL_CONFIGURE, remove UI asking for it, it's now a separate command kernel-config and wouldn't work anyway 2023-05-03 15:09:56 +02:00
Igor
bc5329ec84 Disable pinning policy but while leave example
It should not be needed anymore since we re-pack those packages
https://github.com/armbian/scripts/pull/44/files
2023-05-03 15:09:36 +02:00
AGM1968
250a9c2cc0 h616 Cpu frequency scaling (#5123)
* Add-h616-efuse_xlate-cpu-freq-scaling

* series_additions_h616-cpu-freq-scaling

* series_armbian_changes_h616-cpu-freq-scaling

---------

Co-authored-by: AGM1968 <AGM1968@users.noreply.githib.com>
2023-05-03 09:35:53 +02:00
Ricardo Pardini
724a67d3e5 pipeline: cli: add proper gha- prefix to CLI commands that have something to do with GitHub Actions (thus gha-matrix now, and the new gha-template)
- stop at the correct places for `inventory` and `targets` non-GHA-specific commands
- handle `gha-template` first (and return), since it does not really depend on any info/targets/etc
  - batcat the output for show-off
2023-05-03 07:49:53 +02:00
Ricardo Pardini
23a2b34847 pipeline: add output-gha-workflow-template.py utility, for rendering GHA workflow YAML templates with chunks
- python-tools: add Jinja2. Incredible how we made it this far without it.
- output-gha-workflow-template: a double-templater, first runs jinja with a custom syntax, then "moar magic" to be useful for GHA
2023-05-03 07:49:53 +02:00
Ricardo Pardini
0aac5a4945 pipeline: targets-compositor: whole target can be enabled: no to quickly disable it (as if it wasn't there) 2023-05-03 07:49:53 +02:00
Ricardo Pardini
46cd0a2cfc pipeline: output-gha-matrix: directly GHA-output images-chunk-json-2, images-chunk-not-empty-2, images-chunk-size-2 and artifacts-xxx with no fake entry
- as alternative to the full output, this allows us to skip chunkjobs when they're empty, and hopefully makes GHA-JSON-parsing 10x faster
2023-05-03 07:49:53 +02:00
Ricardo Pardini
d6bdf4221e pipeline: output-gha-matrix: new input.pipeline.gha.runners in the targets.yaml for mapping GHA's runs_on based on name and arch 2023-05-03 07:49:53 +02:00
Ricardo Pardini
4bf98ebfab artifact kernel/uboot: add ARCH to artifact_input_variables; used for (maybe) mapping to runner tags in JSON pipeline 2023-05-03 07:49:53 +02:00
igorpecovnik
ba1a84a5e8 Adjusting ORAS cache location, runners (#5129)
* Move packages to new location
* Adjust build runners
* Switch to OS

Signed-off-by: Igor <igor@armbian.com>
---------

Signed-off-by: Igor <igor@armbian.com>
Co-authored-by: Ricardo Pardini <ricardo@pardini.net>
2023-05-02 11:08:34 +02:00
Vyacheslav Bocharov
64f434ab33 Revert "fix rtl88x2cs compilation for kernel 6.3" as fixed in rtl88x2cs repository.
This reverts commit dc9f751012.
2023-05-02 12:04:51 +03:00
Ricardo Pardini
3767729dc5 rootfs: add artifact name prefix and EXTRA_ROOTFS_NAME suffix (for extensions), yyyymm one-per-month auto-version in place of REVISION for artifact version
- rootfs is not a deb package, and thus not subject to the same strict ordering rules of `artifact_prefix_version`
  - replace with `yyyymm` (`202305`) in version so we get one-per-month automatically
2023-05-01 22:47:12 +02:00
Ricardo Pardini
f992dcd466 git-ref2info: retries for getting Makefile body (https://raw.githubusercontent.com has been failing a lot) 2023-05-01 22:47:03 +02:00
Ricardo Pardini
d890b418c7 kernel/uboot/atf: introduce kernel-patch, uboot-patch, atf-patch, uboot-config, kernel-config CLI commands; enhanced manual patching; block deprecated ways
- all interactive commands now **don't build the artifact** anymore; just patches/.configs are produced and then build ends
  - user is required to put the produced patches in the right place and build again, for full consistency
- split ATF and U-BOOT manual patching process; use CLI command `atf-patch` to patch ATF, and `uboot-patch` to patch u-boot
- non-interactive artifact builds are now 100% sans-stdin
- introduce `uboot-config` CLI command; still experimental, only produces a defconfig and not a patch
- reworked `userpatch_create()` to be (hopefully) more useful:
  - detects a previous patch and offers to apply it before continuing
  - enters a loop showing the diff, and only proceeds when user indicates he's happy with the patch
  - produces `mbox`-formatted patches via `format-patch` and standard Armbian parameters
  - uses MAINTAINER and MAINTAINERMAIL instead of git configuration (so it works in containers)
- don't allow image builds with any patching or configuring _at all_ (it has been deprecated with a warning for months already, and results are inconsistent)
2023-05-01 22:46:55 +02:00
Ricardo Pardini
f860106a2a jetson-nano legacy: give up on this legacy and remove it; fixes #5117 2023-05-01 22:46:43 +02:00
Ricardo Pardini
145ae8472c jetson-nano legacy: try, and fail, to fix this legacy; (does NOT) fixes #5117
- `jetson-nano` `legacy`: kernel config: `CONFIG_SECTION_MISMATCH_WARN_ONLY=y`
- `jetson-nano` `legacy`: add `-mno-outline-atomics` to fix linking
- `jetson-nano` `legacy`: add `xxd` host-dependency
- `jetson-nano` `legacy`: downgrade _a lot_ of gcc errors to allow this legacy to build
2023-05-01 22:46:43 +02:00
Ricardo Pardini
f77edd0591 rtl8822bs: fix: remove binaries (firmware?) being added to kernel driver source and breaking patching; related to #5117 2023-05-01 22:46:43 +02:00
Ricardo Pardini
e74ab59f48 kernel-make: introduce KERNEL_EXTRA_CFLAGS; fill it to add to what's passed to KCFLAGS; related to #5117 2023-05-01 22:46:43 +02:00
Ricardo Pardini
ab0eb4936d macchiatobin-doubleshot: fix u-boot/atf build: export SCP_BL2 had been wrongly converted to declare -g SCP_BL2 when it is in fact required; fixes #5116 2023-05-01 22:46:43 +02:00
Ricardo Pardini
30737fa6f4 rockchip: completely remove legacy branch; fixes #5118
- there's absolutely no point in trying to keep this alive, current/edge are good enough, legacy's abandoned for years and broken
2023-05-01 22:46:43 +02:00
Ricardo Pardini
a84d4f079e rk3399-4.4: remove mbox-confusing long explanation from ancient patch in ancient kernel; possibly fixes #5119 2023-05-01 22:46:43 +02:00
Ricardo Pardini
369eb80f9c driver_uwe5622_allwinner: only apply "pre-6.1" park-link patch if kernel >= 5 (eg: not for rockchip64-legacy); possibly fixes #5120 2023-05-01 22:46:43 +02:00
Ricardo Pardini
84164c4012 rockchip64_common: add explicit make target u-boot.dtb before u-boot.itb in the target map for SPI; fixes #5114
- when `BOOT_SUPPORT_SPI=yes` (and not using the rkspi_loader)
- it seems the makefile target u-boot.itb does not correctly depend on the u-boot.dtb target, and works "by accident" on multicore machines, which are faster and build it fast enough in parallel. this adds u-boot.dtb to the target map, so make's hand is forced to do the right thing.
2023-05-01 22:46:43 +02:00
Ricardo Pardini
91bb00bfa2 artifact-uboot: fix: include UBOOT_TARGET_MAP in variables hash of version 2023-05-01 22:46:43 +02:00
Ricardo Pardini
c692676da7 kernel-debs: postinst/etc: fix: unify is_boot_dev_vfat() function; make work during image build too via env var
- determinining if `/boot` is vfat is more complex than it looks;
  - use a common function to unify across all scripts
- during image build, the kernel install is always done with a non-fat, non-mounted /boot
  - use a special variable passed through the env so unified function can know ahead of time
  - introduce `extra_apt_envs` param to `chroot_sdcard_apt_get()`; array with extra environment vars
- if vfat /boot:
  - `linux-update-symlinks` is not called (Debian would just choke on this)
  - don't even try to symlink Armbian stuff, move instead
- more/better logging board-side (unfortunately mixed in all the set -x debugs)
2023-05-01 22:46:43 +02:00
Ricardo Pardini
f8ddf7f9e2 🔥 JSON info pipeline: v18
- pipeline: add `pipeline` context object to targets; use it to filter artifacts and images to build; warn about oci-name with multiple oci-tags
- pipeline: better error messages when info's fail; show some (out-of-order) progress messages during parallel info gathering
- pipeline: targets-compositor: add `not-eos` inventory
- TARGETS_FILENAME, log all OCI lookups
- SKIP_IMAGES
- IMAGES_ONLY_OUTDATED_ARTIFACTS
- no dash in chunk id in JSON
- pipeline: very initial chunking, using the same outputs
- pipeline: template targets, `items-from-inventory:` inventory expansion, CHECK_OCI=yes, CLEAN_MATRIX=yes, CLEAN_INFO=yes, many fixes
- cli: `inventory` / `targets` / `matrix` / `workflow`
- pipeline: workflow beginnings
- pipeline: general log cleanup + OCI stats / better miss handling
- pipeline: fixes/reorg
- pipeline: catch & log JSON parsing errors
- pipeline: gha matrix: use IMAGE_FILE_ID as job description
- pipeline (delusion): gha workflow output, based on old matrix code
- pipeline: better parsing and reporting of stderr log lines (under `ANSI_COLOR=none`)
- pipeline: mapper-oci-uptodate: use separate positive/negative cache dirs (GHA will only cache positives); cache negs for 5 minutes locally
- pipeline: output-gha-matrix artifacts + images
  - pipeline: output-gha-matrix artifacts + images: "really" and fake 1-item matrix if empty
- pipeline: move files into subdir; update copyright & cleanup
- pipeline: refactor bash jsoninfo driver a bit
- pipeline: outdated-artifact-image-reducer
- pipeline: introduce `target_id` at the compositor, aggregate it at the reducer, carry it over in the artifact info mapper
- pipeline: mapper-oci-uptodate
- pipeline: info-gatherer-artifact, with PRE_PREPARED_HOST
- pipeline: refactor/rename info-gatherer-image.py
- pipeline: beginnings
2023-05-01 22:46:25 +02:00
Paolo Sabatino
9c6829bccb rk322x: patch legacy kernel makefile to compile with recent gcc 2023-04-30 15:04:08 +02:00
Paolo Sabatino
51b884a441 rk322x: fix patches for rk322x legacy kernel 4.4 2023-04-30 15:04:08 +02:00
Paolo Sabatino
7a5cd0b246 rockchip: fix dtbs_install step for overlays 2023-04-29 07:46:18 +02:00
雷耀
873e719a6c treat rk3566 as rk3568 to make "mkimage" work; introduce BOOT_SOC_MKIMAGE 2023-04-28 21:33:12 +02:00
Ricardo Pardini
64f7ff599a uefi/edge: bump to 6.3 2023-04-28 21:32:52 +02:00
Ricardo Pardini
ba413c9b25 bcm2711/grub: add busybox (for initrd grep/sed) so initramfs-growroot works again on Debian
- bcm2711: bomb early when `RELEASE` is set and not supported
2023-04-28 21:32:52 +02:00
Ricardo Pardini
5f2a1af219 bcm2711/edge: bump to 6.3 (rpi4b, RPi Foundation Kernel) 2023-04-28 21:32:52 +02:00
Ricardo Pardini
506189dd8b rockchip-rk3588/edge: bump to 6.3, drop 6.2 patches 2023-04-28 21:32:52 +02:00
Ricardo Pardini
324953f5d7 rk3568-odroid/edge: bump to 6.3 (odroidm1) 2023-04-28 21:32:52 +02:00
Ricardo Pardini
f25fb7c53c virtual-qemu: move to eos (replaced by qemu-uboot-x86 and qemu-uboot-arm64) 2023-04-28 21:32:52 +02:00
Ricardo Pardini
d9f2ec3255 qemu-uboot-arm64/qemu-uboot-x86: split more x86/arm64 differences, add some docs, bump to u-boot 23.04 +update-patches; add arm64 bootscript 2023-04-28 21:32:52 +02:00
Ricardo Pardini
5ad3caefee extensions: introduce u-boot-menu extension, for use with extlinux
- this is using the default Debian/Ubuntu package, we probably should replace that with our own scripts
2023-04-28 21:32:52 +02:00
Ricardo Pardini
3143db5df4 kernel-debs: call linux-update-symlinks in postinst; expected of Debian-compatible kernels
- this handles /vmlinuz etc symlinks (doesn't know about uInitrd, etc)
2023-04-28 21:32:52 +02:00
Ricardo Pardini
2d2fec85d8 initramfs post-update 99-uboot: add verbose logging, no actual changes 2023-04-28 21:32:52 +02:00
Ricardo Pardini
6417a22151 sun50iw9: don't inadvertently override pre-existing hook function name - fixes #5099 2023-04-28 21:32:52 +02:00
Ricardo Pardini
a1788bb95c imx7d (EOS): codeaurora.org is no more, move to nxp-imx's repos for both kernel and u-boot 2023-04-28 21:32:52 +02:00
Ricardo Pardini
01c49e0cf1 grub: keep u-boot stuff if UEFI_GRUB=yes 2023-04-28 21:32:52 +02:00
Ricardo Pardini
59d6690a11 git-ref2info: many fixes for nonstandard repos; try a few different dereference and refs/ combinations in a certain order; remove codeaurora repo handling
- git-ref2info: when resolving SHA1's for 'xxx' tag or branch, try first `refs/heads/xxx`, then just 'xxx'; validate SHA1 with 40-char regexp
  - this works-around Gerrit-style repositories that have a 'refs/for/xxx' ref that gets in the way
  - case in point: https://github.com/hardkernel/u-boot/tree/odroidc-v2011.03 (has both refs/heads/odroidc-v2011.03 and refs/for/odroidc-v2011.03)
- git-ref2info: when processing tags for a SHA1, try both dereference and non-dereferenced, in that order, to get a SHA1
  - this solves old problem reported in #4916: GitHub incorrectly processes dereference requests for tags that are not actually annotated
  - case in point: https://github.com/ayufan-rock64/linux-kernel/releases/tag/4.4.202-1237-rockchip-ayufan
- `codeaurora` is no more, https://bye.codeaurora.org/
2023-04-28 21:32:52 +02:00
Ricardo Pardini
dc9f751012 fix rtl88x2cs compilation for kernel 6.3 2023-04-28 21:32:29 +02:00
Pander
9e5c2ab183 revert vcgencmd addition 2023-04-28 21:04:35 +02:00
Pander
62de7e3523 upgrade vcgencmd without tmp vulnerability and inclusion for bananapim2ultra 2023-04-28 21:04:35 +02:00
Paolo Sabatino
da0ab48b79 rockchip: bump edge kernel to 6.3 2023-04-27 21:31:27 +02:00
Paolo Sabatino
98b6aec554 rk322x: bump edge kernel to 6.3 2023-04-27 21:30:02 +02:00
Paolo Sabatino
0d5fe62403 fix rtl8723cs compilation for kernel 6.3 2023-04-27 21:29:42 +02:00
Paolo Sabatino
8c4a35bfb0 fix rtl88x2bu compilation on kernel 6.3 2023-04-27 21:29:22 +02:00
Paolo Sabatino
f2d9756bb0 fix rtl8812au compilation for kernel 6.3 2023-04-27 21:29:02 +02:00
Paolo Sabatino
c9da5ca219 fix patch 2023-04-27 21:28:10 +02:00
Paolo Sabatino
be0ecb1f16 fix rtl8723du compilation on kernel 6.3 2023-04-27 21:28:10 +02:00
Paolo Sabatino
3e28c86a05 fix rtl8811cu compilation for kernel 6.3 2023-04-27 21:27:49 +02:00
Igor Pecovnik
7c9e85ec25 Bump Allwinner kernels 2023-04-27 07:43:10 +02:00
Igor
94086ff24a Moving to platinum support with cm4
Signed-off-by: Igor <igor@armbian.com>
2023-04-26 11:56:32 +02:00
Igor
37ba149103 Move rock5 to supported 2023-04-26 11:56:32 +02:00
Igor
e9e4d4501c Change two olimex boards to csc, add previously removed radxa zero2 2023-04-26 11:56:32 +02:00
Igor
50e28f4753 Move Radxa zero2 to wip as its not sold yet 2023-04-26 11:56:32 +02:00
Rafal-Hacus
3ed29cdd4e Updated the file extention to reflect on the boards status 2023-04-26 11:56:32 +02:00
Pander
420f16c7ea Installing fake_vcgencmd for Pine64 (#5095) 2023-04-24 16:50:30 +02:00
monkaBlyat
22cab870c8 Disable config_ion for better compatibility with modern android containers like redroid 2023-04-24 14:29:27 +02:00
Ricardo Pardini
b031c686f9 rockchip-rk3588: set ROCKUSB_BLOB for RockUSB Maskrom -> Loader mode 2023-04-24 14:23:21 +02:00
Ricardo Pardini
b3f61a1f7a rockchip-rk3588: add new board mekotronics-r58-minipc.wip (Mekotronics R58 MiniPC, and variants) 2023-04-24 14:23:21 +02:00
Ricardo Pardini
d7a6f80c81 rockchip-rk3588: add new board mekotronics-r58x.wip (Mekotronics R58X) 2023-04-24 14:23:21 +02:00
Ricardo Pardini
e37adb5c8f rockchip-rk3588: add new board mekotronics-r58x-4g.wip (Mekotronics R58X-4G); add u-boot patches 2023-04-24 14:23:21 +02:00
Pander
0d72163868 Fixed execution rights docker.sh 2023-04-22 20:08:26 +02:00
Pander
3c09c2ffbe reduced PNG file size with optipng 2023-04-22 20:08:15 +02:00
Paolo Sabatino
c7740059da rk3328: add patch to enabled pcm5102 DAC on I2S1 bus 2023-04-22 20:08:02 +02:00
Pander
26fb31cfbf require Enter for all promts at first login 2023-04-22 20:07:50 +02:00
Igor
4789113c78 Be more specific which packages to pin as otherwise they are downgraded upon image creation 2023-04-22 20:07:37 +02:00
Igor
9467736a64 Remove doubled swap creation 2023-04-22 10:05:10 +02:00
amazingfate
4266d0bdca rockchip-rk3588: add new board hinlink-h88k 2023-04-22 10:04:58 +02:00
Alban Browaeys
93fb7498c0 Fix helios64 vdd-log supply
vdd-log supply is pwm-supply, not vin-supply.
Fixes vdd-log supply ending up the dummy regulator.

[    1.783479] pwm-regulator vdd-log: Looking up pwm-supply from device tree
[    1.783505] pwm-regulator vdd-log: Looking up pwm-supply property in node /vdd-log failed
[    1.783556] vdd_log: supplied by regulator-dummy

Per https://lore.kernel.org/all/20211227234529.1970281-2-heiko@sntech.de/
there will be no functional change as the supplying regulator is an always-on
fixed-regulator.
2023-04-22 09:57:11 +02:00
Brent Roman
ddfdf75a17 restore RK3308 audio mistakenly removed by 588c2ec17e 2023-04-22 09:56:46 +02:00
Ricardo Pardini
3d2575639d logging: include Repeat Build Args in markdown/ANSI logs 2023-04-21 14:26:33 +02:00
Ricardo Pardini
27d9fdf4bf interactive: sort the params included in Repeat Build Options; don't quote values 2023-04-21 14:26:33 +02:00
Ricardo Pardini
3ffbdfc97c interactive: hide auto-relaunched params from Repeat Build Options 2023-04-21 14:26:33 +02:00
Ricardo Pardini
d0716b65c0 docker/sudo: better control/info over CLI relaunch args; introduce CLI relaunch envs
- allow adding re-launch environments by populating `ARMBIAN_CLI_RELAUNCH_PARAMS` dict
- similar to `ARMBIAN_CLI_RELAUNCH_PARAMS`
- rename/consolidate `()`'s output globals:
  - `ARMBIAN_CLI_FINAL_RELAUNCH_ARGS` (rename)
  - `ARMBIAN_CLI_FINAL_RELAUNCH_ENVS` (new)
    - includes `ARMBIAN_HIDE_REPEAT_PARAMS` automatically
- `sudo`: include envs when relaunching, use bash explicitly
- `docker`: better logging
- `docker`: include envs when relaunching via `--env` args
2023-04-21 14:26:33 +02:00
Ricardo Pardini
9a073d06fb interactive: desktop: use set_interactive_config_value() so user-selected desktop options appear in repeat build args 2023-04-21 14:26:33 +02:00
Markus Hoffrogge
d1252fc0ee interactive: better Repeat Build Options [by @mhoffrog, squashed, rebased]
Add interactive configurations to Repeat Build Options

Simplify function produce_repeat_args_array()

- make use of $ARMBIAN_NON_PARAM_ARGS and $ARMBIAN_PARSED_CMDLINE_PARAMS (associated array)
- quote parameter values to be on the safe side

Move "Repeat Build Options" logs to start-end.sh

- cli-build.sh, start-end.sh:
  - move function function produce_repeat_args_array() to start-end.sh
  - add $WHAT as first arg to produce_repeat_args_array() if
    $WHAT is not empty
  - move early display log of "Repeat Build Options" to
    function main_default_start_build()
  - move last log of "Repeat Build Options" to
    function main_default_end_build()
  - add last log of "Repeat Build Options" to
    LOG_SECTION="repeat_build_options"
2023-04-21 14:26:33 +02:00
Igor Pečovnik
c837ed2c2e Limit execution to branch main 2023-04-21 14:23:13 +02:00
Igor
8a5f07cfba Add Action to execute remote workflow on config changes 2023-04-21 14:23:13 +02:00
amazingfate
97a2e41f62 use common sed for GITHUB_SOURCE replace 2023-04-21 14:21:28 +02:00
Julian Sikorski
014bc261dd Update odroidxu4-current to 5.4.241 2023-04-20 22:31:39 +02:00
Igor
9cdb042199 Bump sunxi to latest version 2023-04-20 16:26:41 +02:00
amazingfate
f81ef8ed21 fix dp alt mode error log message typo 2023-04-20 09:21:55 +02:00
Igor
bc9eb5f14d Fix invalid packages install within families 2023-04-20 09:21:16 +02:00
Igor
0590a70597 Change custom Ubuntu mirror logic
Signed-off-by: Igor <igor@armbian.com>
2023-04-19 20:25:03 +02:00
Ricardo Pardini
2b28f29ebe rootfs/image: avoid apt junk leftover by debootstrap; add warnings and debugs over target cache and general rootfs sizes
- rootfs: rootfs-create: show a summary of the 20 biggest dirs, right before tarring the rootfs (for debugging)
- rootfs: rootfs-create: show usage of caches between first and second stages
- rootfs: rootfs-create: cleanup junk left by `debootstrap` after second stage
- rootfs: rootfs-create: _always_ clean apt stuff at the end
- rename `apt_purge_unneeded_packages()` to `apt_purge_unneeded_packages_and_clean_apt_caches()` for clarity
- image: `apt_purge_unneeded_packages_and_clean_apt_caches()`: warn if apt caches not empty; clean them off, always.
- host-utils: `local_apt_deb_cache_prepare()`: also test the target, warn if not empty
- extension: cleanup-space-final-image: do NOT clean apt stuff. done in core now
- the metric shit-ton of debugs added should help the next person who faces this in the future
2023-04-18 16:27:06 +02:00
Werner
0b90ebc54a Use native xz 2023-04-18 09:29:17 +02:00
Werner
945bb6dff9 Use native xz 2023-04-18 09:29:17 +02:00
amazingfate
115cb80a04 add dockerproxy to accelerate ghcr.io 2023-04-18 09:28:25 +02:00
Ricardo Pardini
321a0cd257 revert: run kernel make through pipetty for _moar colors_ (breaks make menuconfig) 2023-04-18 09:27:38 +02:00
Ricardo Pardini
b73ced7dc0 artifacts: add git SHA1 sanity checking 2023-04-18 09:27:38 +02:00
Ricardo Pardini
8cd830d6e1 memoize-cached: add flock locking to run_memoized() to avoid error when run in parallel 2023-04-18 09:27:38 +02:00
Ricardo Pardini
22059c2669 lib: shellfmt & fix gen-library to match 2023-04-18 09:27:38 +02:00
Ricardo Pardini
ded6d1e319 artifact: rootfs: fix artifact_rootfs_config_dump() with added rootfs pkgs 2023-04-18 09:27:38 +02:00
Igor Pečovnik
bf77c5e8a3 Fix after copy paste 2023-04-18 09:27:09 +02:00
Igor
03a8e8607d Rebuild board selection for generating official images 2023-04-18 09:27:09 +02:00
Werner
283258c8ab sunxi: add support for Wireguard (#5069)
Probably went missing at some point.
2023-04-18 09:04:36 +02:00
Igor
a6897e85a0 Revert "remove apt cache in the rootfs"
This reverts commit 790e673096.
2023-04-17 16:42:36 +02:00
Matthijs Kooijman
da626d1502 armbian-audio-config: Fix muting and controls with spaces
In commit 0aa61abe7 (armbian-audio-config: Massively speed up script)
this script was changed to not call amixer for each control, but just
once for each card, feeding commands for many controls in one invocation
with the `--stdin` option.

In that commit, two errors were introduced:
 - Controls that were intended to be muted were turned on instead. This
   affects the "CD", "Mic" and "Internal Speaker" controls.

   This occured because there is a helper shell function whose arguments
   were renumbered, but the last argument kept the old numbering,
   keeping it always at the default value of "on", even when it should
   have been "mute".

 - Controls with a space in their name would be ignored. In the original
   script, arguments (including these names) were quoted and passed
   separately to the `amixer` command. Now, they are quoted when passed
   to `echo`, but that produces an unstructured line with the quoting
   removed that can no longer be correctly parsed by amixer for names
   with spaces.

This commit fixes both problems be correctly numbering the arguments and
adding an additional layer of quoting.
2023-04-17 13:43:30 +02:00
amazingfate
a0f59bf914 use ghproxy to accelerate memoized_git_ref_to_info 2023-04-17 13:42:53 +02:00
amazingfate
409ce6f362 add ghproxy to GITHUB_MIRROR 2023-04-17 13:42:53 +02:00
amazingfate
790e673096 remove apt cache in the rootfs 2023-04-17 13:42:00 +02:00
Muhammed Efe Çetin
fd6a6dec66 Add support for NanoPi R6S 2023-04-16 16:13:09 +02:00
Igor
730ac1f8ba Create apt priority configuration 2023-04-15 22:48:38 +02:00
Radoslav
88fe8bae61 h3 thermal sensor values fix 2023-04-15 22:47:26 +02:00
Radoslav
55d16b3d26 h3-dth 2023-04-15 22:47:26 +02:00
Radoslav
41260ac309 h3-tve (arm-dts-sun8i-h3-orangepizero-add_tve.patch) 2023-04-15 22:47:26 +02:00
Radoslav
24dcf942f5 OrangePi Zero TV Output kernel patch 2023-04-15 22:47:26 +02:00
Ricardo Pardini
9218401cd8 kernel: fix for 6.3+ linux-headers pkg due to upstream dir change
- extra: run kernel make through `pipetty` for _moar colors_
2023-04-15 22:44:43 +02:00
Ricardo Pardini
a140bf1339 extensions: add v4l2loopback-dkms, very similar to the zfs extension
- Raison d'être: prove `linux-headers` work, at least, minimally
2023-04-15 22:43:33 +02:00
Ricardo Pardini
14286c018c extensions: rkdevflash: switch to using Radxa's fork of rkdeveloptool, which has compile fixes 2023-04-15 22:43:19 +02:00
Ricardo Pardini
f8402a59da extensions: rkdevflash: simplify usage of rkdeveloptool (on Linux only, not Docker) to flash Rockchip images to eMMC 2023-04-15 22:43:19 +02:00
Ricardo Pardini
7ea8e040d0 cli: flash: introduce flash CLI command; introduce hook post_build_image_write 2023-04-15 22:43:06 +02:00
Ricardo Pardini
d59271f903 config: refactor calculate_image_version() out of create_image_from_sdcard_rootfs(), make more flexible, predict IMAGE_FILE_ID during config
- default `IMAGE_INSTALLED_KERNEL_VERSION="generic"` instead of `"linux"`
2023-04-15 22:43:06 +02:00
Ricardo Pardini
664b482b31 artifact: rootfs: fix artifact_rootfs_config_dump() to include all inputs to aggregation
- @TODO: still missing, actually have an EXTRA_ROOTFS_SUFFIX or such, otherwise extensions just pollute the version-space
2023-04-15 22:43:06 +02:00
Ricardo Pardini
953ab276d0 logging: better logging when ANSI_COLOR=none (eg, during info collection) 2023-04-15 22:43:06 +02:00
Ricardo Pardini
ac25ac18be config/extensions: consolidate EXTRA_IMAGE_SUFFIXES array as _the way_ to add to image filename, during configuration
- can add to `EXTRA_IMAGE_SUFFIXES` array during `user_config` or `extension_prepare_config`
- in the end goes into a `EXTRA_IMAGE_SUFFIX` global readonly
- this  simplifies extension code
- we still can't "predict" image names during configuration since it includes the kernel version (6.2.11/generic) which only comes later
2023-04-15 22:43:06 +02:00
Ricardo Pardini
18fa65e6dd artifacts armbian-desktop/armbian-bsp-desktop: fix artifact_base_dir to include ${RELEASE}/ -- otherwise local & remote paths don't match 2023-04-15 22:43:06 +02:00
Ricardo Pardini
d13e3cbff5 artifacts-obtain: add sanity check, after getting remotely, make sure it is indeed available locally 2023-04-15 22:43:06 +02:00
Ricardo Pardini
eb1fe6d7ba artifacts: introduce PRE_PREPARED_HOST=yes: allow running pre-prepared host CLI's for artifacts that require aggregation 2023-04-15 22:43:06 +02:00
Ricardo Pardini
538b8c2b79 artifacts/cli: introduce CLI command artifact-config-dump-json (alias to artifact, but sets CONFIG_DEFS_ONLY=yes)
- if CONFIG_DEFS_ONLY during `obtain_complete_artifact()`, just dump JSON to stdout after calculating version/coordinates
- don't prepare ORAS tooling if CONFIG_DEFS_ONLY
- don't run in standard build (and thus don't prepare_host()) if under CONFIG_DEFS_ONLY
- if CONFIG_DEFS_ONLY, don't run `check_basic_host()`
2023-04-15 22:43:06 +02:00
Ricardo Pardini
439882ce7a extensions/grub: use array for pkg list
- also for the media-sbc clone
2023-04-15 22:43:06 +02:00
Ricardo Pardini
e631e0fc97 patching: python: useful debug log with value of BASE_GIT_TAG 2023-04-15 22:43:06 +02:00
Ricardo Pardini
f6f621b9a1 extensions: don't export, declare -g 2023-04-15 22:43:06 +02:00
Ricardo Pardini
0d276c93e9 bsp-cli/distro-agnostic: introduce KEEP_ORIGINAL_OS_RELEASE=yes so Debian/Ubuntu PRETTY_NAME is left unchanged in /etc/os-release
- useful when downstream software wants exact Debian OS
2023-04-15 22:43:06 +02:00
Ricardo Pardini
c30a907e47 python2: lunar also doesn't have python2 anymore (joins sid and bookworm) 2023-04-15 22:43:06 +02:00
Igor
40fa40ebaa Remove optimisation as it breaks on Debian Bookworm
Minimal images doesn't have any of this anyway ...
2023-04-14 00:39:09 +02:00
Igor
046ba3a121 Starfive kernel has some patch issues ... fixing it to last known working kernel. 2023-04-13 20:46:04 +02:00
Igor
10315c4f74 Bump sunxi and disable broken mvebu patch @heisath 2023-04-13 20:46:04 +02:00
Igor
2ab6272ce4 Add xauth package that should fix RDP related issues 2023-04-13 11:36:16 +02:00
hzy
53b8a4b173 meson: Enable more SDIO and USB Wifi support 2023-04-12 14:59:52 +02:00
hzy
ac5a84b5f6 meson: Refresh config 2023-04-12 14:59:52 +02:00
hzy
8e9548c3a4 meson: Enable some net modules 2023-04-12 14:59:52 +02:00
Thomas McKahan
7a075070a3 enable mipi-dsi on Rockchip 2023-04-12 14:59:39 +02:00
Pander
9f0f296f45 enabled kernel modules pine64 for CSI and camera drivers 2023-04-08 14:35:35 +02:00
amazingfate
43b8bed616 appgroup/office: add libreoffice-gtk3 for ime support 2023-04-08 14:35:15 +02:00
Igor
21ee606778 Changing status 2023-04-08 14:34:26 +02:00
Ricardo Pardini
3ec50ea03c orangepizero2/sun50iw9/legacy: actually use NAME_KERNEL=uImage 2023-04-08 14:33:39 +02:00
Ricardo Pardini
90c5a2743a kernel: introduce new hook pre_package_kernel_image; show vmlinuz file magic before/after hook; add -HK hook hash to kernel artifact version 2023-04-08 14:33:39 +02:00
Ricardo Pardini
871415b7b3 arch configs (all): default, but do not overwrite, KERNEL_IMAGE_TYPE/KERNEL_INSTALL_TYPE/etc: allow board/family to set 2023-04-08 14:33:39 +02:00
Ricardo Pardini
1e61b60cf8 orangepizero2/sun50iw9/legacy: implement pre_package_kernel_image hook to convert vmlinuz to uImage manually; fix legacy u-boot build
- sourceaddr `0x40008000` was found in Xunlong's legacy kernel source squashed into a huge commit. Thanks, Xunlong!
- bring `busybox` dependency with inline hook for legacy u-boot "unix2dos" which is essential
2023-04-08 14:33:39 +02:00
Igor
7505671c80 Bugfix: storing revision and not artefact cache version in release file 2023-04-07 19:26:45 +02:00
Ricardo Pardini
bdab9c1cd7 sun50iw9/legacy: armbian-next'ify, add logging, avoid changing global PATH, use host dtc utility, make write_uboot_platform() verbose 2023-04-07 13:00:09 +02:00
Ricardo Pardini
6f57ba64b6 sunxi-tools: bring in gcc-arm-linux-gnueabi hostdep required for building sunxi's boot stages 2023-04-07 13:00:09 +02:00
Igor
00793be73e Bump sunxi 2023-04-06 14:09:45 +02:00
Igor
839e4940ab Bump Allwinner
Signed-off-by: Igor <igor@armbian.com>
2023-04-06 09:55:15 +02:00
Igor
e1fc9b0a4e Changing status 2023-04-06 09:55:15 +02:00
Igor
d1128a6515 Enable CONFIG_EXFAT_FS on remaining kernels 2023-04-06 09:52:59 +02:00
Ricardo Pardini
369e69a553 artifact-armbian-bsp-cli: hash more variables included in /etc/armbian-release 2023-04-04 09:12:48 +02:00
hzy
9341455567 meson: onecloud: Enable USB0 OTG mode 2023-04-03 21:21:17 +02:00
hzy
1dfc55d74f meson: onecloud: Correct eMMC node 2023-04-03 21:21:17 +02:00
hzy
ae4a1747c1 meson: onecloud: Update GPIO descriptions 2023-04-03 21:21:17 +02:00
hzy
30566d6f96 meson: onecloud: Bugfix: Slow ethernet uplink
Not sure why but PHY's TX delay doesn't work, which cause TX
retransmission and slow uplink. So let's use MAC's TX delay.
2023-04-03 21:21:17 +02:00
hzy
689e7d2a61 meson: onecloud: Resort DTS node 2023-04-03 21:21:17 +02:00
Ricardo Pardini
6b1055dc9d uboot: WiP: introduce UBOOT_CONFIGURE=yes -- saves defconfig to output/ folder, nothing else (no patches, etc) 2023-04-03 21:21:03 +02:00
Ricardo Pardini
9b229f25ad artifact-uboot: add hashes for extension and old-timey -Hooks and -Variables hash (BOOTDELAY et al)
- helper for hashing old-timey hooks: `calculate_hash_for_function_bodies()` in `hash-files.sh` cos I'm lazy
2023-04-03 21:21:03 +02:00
dependabot[bot]
ea4e75a79b build(deps): bump ossf/scorecard-action from 2.1.2 to 2.1.3
Bumps [ossf/scorecard-action](https://github.com/ossf/scorecard-action) from 2.1.2 to 2.1.3.
- [Release notes](https://github.com/ossf/scorecard-action/releases)
- [Changelog](https://github.com/ossf/scorecard-action/blob/main/RELEASE.md)
- [Commits](https://github.com/ossf/scorecard-action/compare/v2.1.2...v2.1.3)

---
updated-dependencies:
- dependency-name: ossf/scorecard-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-03 21:20:48 +02:00
Paolo Sabatino
4d80872e49 rk322x: fix emmc/sdio clock selection 2023-04-03 21:01:38 +02:00
Ricardo Pardini
c4d91fd66f rockchip64_common: refactor: extract BOOT_SPI_RKSPI_LOADER=yes into rock-3a, rock-5b, and orangepi5 (no more such rockchip-rk3588 references in common code) 2023-04-03 11:14:44 +02:00
Julian Sikorski
7ab8245a77 Update odroidxu4-current to 5.4.239 2023-04-01 20:51:31 +02:00
Igor
e986b8c0ee Move lsof package to minimal images as its needed for armbian-install 2023-04-01 20:50:51 +02:00
Igor
e33842ef2c Remove broken font from Ubuntu Lunar
[🐳|🌱] Installing 128 desktop packages [ lunar xfce ]
  [🐳|🔨]   E: Unable to locate package libfontembed1
  [🐳|🔨]   Reading package lists...
  [🐳|🔨]   Building dependency tree...
  [🐳|🔨]   Reading state information...
  [🐳|🔨]   E: Unable to locate package libfontembed1
2023-03-31 13:56:04 +02:00
Igor
b2be0e5a45 Enable non-free-firmware repository for Debian Sid
Addressing:

  [🐳|💥] Error context msg [ Installation of Armbian main packages for sid 3dsupport xfce no failed ]
  Error:  Error context msg Installation of Armbian main packages for sid 3dsupport xfce no failed
  [🐳|🔨]   Reading package lists...
  [🐳|🔨]   Building dependency tree...
  [🐳|🔨]   E: Unable to locate package firmware-sof-signed
2023-03-31 13:21:35 +02:00
Ricardo Pardini
fbc324ec06 artifact-kernel: fix: add -Variables version hashing, including KERNEL_INSTALL_TYPE, KERNEL_IMAGE_TYPE and SRC_LOADADDR amongst others 2023-03-31 12:29:53 +02:00
Ricardo Pardini
6ce9f48885 fix: (uImage change, after #5018): config: fix: replace undue export statements with declare -g; shellfmt 2023-03-31 12:29:53 +02:00
Igor
e599976a35 Bump Allwinner kernels to latest version 2023-03-31 09:45:48 +02:00
Ricardo Pardini
c6e68bf577 meson64: only gxbb and gxl require fetching repo odroidc2-blobs, split hook 2023-03-31 09:37:37 +02:00
Ricardo Pardini
667ac5afb7 odroidn2: bump to 2022.10 u-boot with boot order patch and nothing else; remove old legacy uboot crap (odroidn2 hasn't even had a legacy BRANCH for a while) 2023-03-31 09:37:37 +02:00
Ricardo Pardini
62f5fe1596 config: fix: replace undue export statements with declare -g; shellfmt 2023-03-31 09:37:37 +02:00
Igor Pečovnik
f51a99f1fa distro-agnostic.sh: fix, install armbian-zsh correctly (not armbian-config twice) 2023-03-31 09:12:44 +02:00
Igor Pecovnik
bf801d194b distro-agnostic.sh: bring back BSPFREEZE=yes which now works (somewhat) 2023-03-31 09:12:44 +02:00
Ricardo Pardini
ad56df54ba artifact-armbian-bsp-cli: correctly hash the *sources* of family_tweaks_bsp old-timey hook and post_family_tweaks_bsp extension hooks 2023-03-31 09:12:44 +02:00
Ricardo Pardini
d2bb1f893a extensions: many fixes; allow for dumping the source of hooks, via dump_extension_method_sources_functions() and dump_extension_method_sources_body()
- fix: indent of generated sources
- fix: no reason to source the generated file in a loop. do it once. 20x faster?
- `dump_extension_method_sources_functions "name_of_hook"`: get function definitions (inside braces)
- `dump_extension_method_sources_body "name_of_hook"`: get the function bodies (sans-braces)
2023-03-31 09:12:44 +02:00
Ricardo Pardini
61d85648ea cleaning: stop lying about CLEAN_LEVEL=debs -- now it simply deletes every .deb in the folder (same as =alldebs) 2023-03-31 09:12:44 +02:00
Ricardo Pardini
55af87be8b lib: update library-functions.sh (via bash lib/tools/gen-library.sh) 2023-03-31 09:12:44 +02:00
Ricardo Pardini
f969a5e30f lib: completely remove CHOSEN_xxx, BSP_xxx_NAME, BSPFREEZE=yes 2023-03-31 09:12:44 +02:00
Ricardo Pardini
ed0b406265 lib: fix: replace undue export statements with declare -g 2023-03-31 09:12:44 +02:00
Ricardo Pardini
77921725fb lib: run shellfmt; remove commented-out; no actual changes 2023-03-31 09:12:44 +02:00
Ricardo Pardini
f75b9c110f aggregation: fix: don't eat value if empty during bash_string_multiline(); write end-of-file comment; show aggregation bash results if debugging 2023-03-31 09:12:44 +02:00
Ricardo Pardini
fe7a24885b docker: introduce DOCKER_SKIP_UPDATE=yes to skip updating prebuilt Docker image, only when using 2023-03-31 09:12:44 +02:00
Ricardo Pardini
40c5df55ab docker: introduce ${DOCKER_ARMBIAN_BASE_COORDINATE_PREFIX:-"ghcr.io/armbian/docker-armbian-build:armbian-"} for easy override 2023-03-31 09:12:44 +02:00
Ricardo Pardini
7d90b10f79 configdump: better logging; insert (still unsupported) array/dict raw value and 2do markers into produced dump JSON 2023-03-31 09:12:44 +02:00
Ricardo Pardini
f12015954a distro-agnostic: emit 'info' message before setting root password, otherwise logs are confusing 2023-03-31 09:12:44 +02:00
Ricardo Pardini
d868d76182 artifacts: bsp-cli, bsp-desktop, desktop: rework, with @igorpec
- bsp-cli: does not require aggregation
- bsp-desktop / desktop: requires aggregation
- 'desktop' packaged moved out of 'bsp' folder, it is NOT a bsp
- make consistent naming/folders
- extract .sh generation workflow into 'declare -f' magic functions
- `SHOW_DEBIAN=yes` to bump most of `DEBIAN/xxx` stuff to screen
- artifact armbian-bsp-desktop: use aggregation, require certain vars, CLI forces `BUILD_DESKTOP=yes`; requires BOARD
- artifact armbian-desktop: use aggregation, require certain vars, CLI forces `BUILD_DESKTOP=yes`, not require `BOARD` anymore
- cli: commands: fix artifact aliases, reorder
- desktop/bsp-desktop: add `config_dump` method; fix `artifact_map_debs` ref subdir and name
- artifact bsps: require aggregation to build, not to list what needs to be built
- distro-agnostic: fix install of `armbian-bsp-cli` (not `armbian-bsp`)
- armbian-bsp-cli: add `_config_dump` method, use configuration with aggregation, add required vars check
- distro-specific: fix installation of `fake-ubuntu-advantage-tools`
2023-03-31 09:12:44 +02:00
Ricardo Pardini
55ba084acc configdump: include rudimentary artifact dependency information for config-dump-json (artifact implementations)
- include rudimentary artifact dependency information for config-dump-json: fixes/refactor/cleanup
- artifact-rootfs.sh: include rudimentary artifact dependency information for config-dump-json
- artifact-armbian-(config/plymouth-theme/zsh).sh: include rudimentary artifact dependency information for config-dump-json
- artifact-fake-ubuntu-advantage-tools.sh: include rudimentary artifact dependency information for config-dump-json
2023-03-31 09:12:44 +02:00
Ricardo Pardini
42fc56697b configdump/json-info-boards: revamp, all-JSON now; use_board=yes skip_kernel=no for config; refactor & use new Python bash-declare-to-JSON utility
- use new capture'd vars scheme
- so `./compile.sh BOARD=xxx BRANCH=yyyy config-dump-json | jq .` now works and is consistent/newline tolerant
- introduce internal `skip_host_config=yes` for `prep_conf_main_minimal_ni()` to skip calling `check_basic_host()`
2023-03-31 09:12:44 +02:00
Ricardo Pardini
fc14d62c52 capture: set globals CAPTURED_VARS_NAMES and CAPTURED_VARS_ARRAY (instead of CAPTURED_VARS_ARRAY that was space-delimited); filter and sort last-minute 2023-03-31 09:12:44 +02:00
Ricardo Pardini
fb4477afb8 oras: add --insecure to further retries if we get a failure on first try, to workaround GitHub's March/2023 mess with certificates 2023-03-31 09:12:44 +02:00
Ricardo Pardini
9a74b838ce runners: introduce internal skip_error_info=yes for run_host_command_logged()
- doesn't show nor clear vars `if_error_find_files_sdcard` and `if_error_detail_message`
- used by `chroot_sdcard_apt_get()` which uses `run_host_command_logged()` multiple times, and the first would clear the important/last one
2023-03-31 09:12:44 +02:00
Ricardo Pardini
a77d5f3c70 fix: declare some variables that were leaking into global namespace for no reason
- especially `for VAR in ...` and VAR leaks sans the declare
- rename `fragment_manager_cleanup_file` to `extension_manager_cleanup_file`
2023-03-31 09:12:44 +02:00
Ricardo Pardini
02c561ce0e bat-cat: introduce tooling support for bat (colorized/smart cat), including DEBIAN/xxx syntaxes; cached in Docker image 2023-03-31 09:12:44 +02:00
Ricardo Pardini
b820a4d68f tools: oci-oras/shellcheck: fix, test if binary already in place before considering copying it, but only after BIN is actually defined 2023-03-31 09:12:44 +02:00
Ricardo Pardini
b59447c96e apt-install: install_deb_chroot(): useful logging, when trying to install invalid stuff 2023-03-31 09:12:44 +02:00
Igor
00f849ac71 [AR-1620 + AR-1639 squashed]:: @igorpec's armbian-config/zsh/bsp/desktop/ubuntu-advantage artifacts 2023-03-31 09:12:44 +02:00
Matthijs Kooijman
54636219cc Include alsa-utils in minimal cli builds
This ensures that the armbian-audio-config script actually works in
minimal builds too.

This fixes #5012 (AR-1644)
2023-03-29 23:22:19 +02:00
hzy
2a9279c27d armbian-firstlogin: Make sure that the first charactor of username isn't number 2023-03-29 23:22:04 +02:00
hzy
76ce4c3a3d Fix uImage build 2023-03-30 03:41:28 +08:00
Igor
577d0eaa28 Update sunxi and kernel configs 2023-03-28 15:56:14 +02:00
Igor Pečovnik
765ff69c6e Update README.md 2023-03-28 10:51:41 +02:00
CueMaxX
6aad142ac8 Update boot-sunxi.cmd
'setenv console "display"' in boot-sunxi.cmd & in armbianEnv.txt had the same effect as 'setenv console "both"'.
That was due to a false if-statement in boot-sunxi.cmd:41
Fixed that, so 'setenv console "display"' will not co-enable the serial console anymore.
2023-03-28 10:51:41 +02:00
Werner
80a5607bf5 Add deprecation note (#4845) 2023-03-28 10:51:41 +02:00
Igor
5de120edfe Allow numbers in username 2023-03-27 23:24:35 +02:00
hzy
b850beb50a meson8b: Reorganize patches
Move all patches out from board-special patch folders which is not
supportted now.
2023-03-26 20:54:56 +02:00
hzy
26b8642804 Bugfix: Allow to set empty cmdline params
Fix the following error:
  [🌱] Skip     cmdline param [ 'DESKTOP_APPGROUPS_SELECTED': already set to '(empty)' early ]
2023-03-26 20:54:39 +02:00
Paolo Sabatino
5930e5e536 rk322x: move edge kernel to 6.2 2023-03-24 23:14:09 +01:00
Paolo Sabatino
97c3448983 rockchip: put all rockchip 32 bit into uboot/v2022.04 directory 2023-03-24 23:13:42 +01:00
Paolo Sabatino
191f4c8b67 rk322x: fix old emmc detection on rk322x 2023-03-24 23:13:18 +01:00
Paolo Sabatino
3f704692a7 rockchip: bump edge kernel to 6.2 2023-03-24 23:12:56 +01:00
Julian Sikorski
879805a520 Update odroidxu4-current to 5.4.238 2023-03-22 21:27:16 +01:00
Igor
a01f764195 If OCI_TARGET_BASE is not set, then this override doesn't work 2023-03-22 10:35:36 +01:00
Muhammed Efe Çetin
6bd665eaf4 Naming Audios on OPi5 2023-03-22 07:47:11 +01:00
Markus Hoffrogge
4271d7a17f Fix sunxi uboot redefined warnings on "CONFIG_VIDEO_*"
- wrap CONFIG_VIDEO definitions with if !defined pattern
2023-03-22 07:46:37 +01:00
amazingfate
07f4f48727 naming audio output names of rock5b 2023-03-22 07:46:25 +01:00
Markus Hoffrogge
cca7fe1ff3 Log build runtime in minutes with seconds 2023-03-22 07:44:06 +01:00
Tony
915bd66187 [ rockchip64] second round config migration (#4982)
* [ rockchip64] second round config migration

Recommend all @armbian/boards-rockchip  maintainers double check the resulting configurations, as stated in the PR the level of confusion in the family config logic likely means some boards have unnecessary extra stuff.
2023-03-21 10:40:22 -04:00
Lane Jennison
7be216f4b5 defconfig didnt work use full kernel 2023-03-21 01:04:01 -03:00
Lane Jennison
7869b5488d enable btrfs on midstream kernel 2023-03-21 01:04:01 -03:00
Ricardo Pardini
a13383143c lib/tools/shellcheck.sh: add (very low-bar "error") checks to config/sources and config/boards (keeping lib/ code in custom "critical" level) 2023-03-20 17:54:25 -03:00
Thomas McKahan
6d182e4aaf accidentally wiped out a "fi"
during whitespace cleanup.
2023-03-20 12:22:01 -03:00
Igor
518ccf90cd Add dialog package
Armbian install fails to start on minimal images
2023-03-20 11:35:17 -03:00
Igor
8a27b4a6da Re-enable CONFIG_ARCH_BCM2835 2023-03-20 11:34:25 -03:00
Tony
ee76ad99b0 [ Rockchip64 ]Move board specific configs (#4974) 2023-03-20 10:19:57 -04:00
Igor
7a6dca2f90 Add switch 2023-03-20 13:50:33 +01:00
Markus Hoffrogge
142dec4618 Fix $sduuid being overlapped by a probable emmc device existing
- if $emmccheck is not empty, then exclude this
  from the lookups for $sdblkid
- simplified $sduuid assignment within a single line

closes AR-1611
2023-03-20 13:31:06 +01:00
Markus Hoffrogge
0bd6fea636 Fix $sduuid to be of format UUID=uuid
- this issue was introduced by commit 7e9ebe1
- the variable sduuid is supposed to start with "UUID="
- fixed now by prepending UUID= to $sduuid, if the "raw" $sduuid is not empty

closes AR-1611
2023-03-20 13:31:06 +01:00
Igor
87b8ad6ae7 Bump sunxi to latest versions 2023-03-20 13:30:48 +01:00
SteeManMI
6dc26119c3 Cleanup: Removed two dead links (softlinks whose target doesn't exist) (#4972)
Changes to be committed:
	deleted:    config/desktop/buster/appgroups/programming/sources
	deleted:    patch/kernel/archive/sunxi-5.11/sunxi-5.12
2023-03-20 08:02:20 -04:00
SteeManMI
7b99735c44 Fix patch failures on meson64-current (6.1) (#4973)
Changes to be committed:
	deleted:    patch/kernel/archive/meson64-6.1/board-bananapim5-002-switch-VDDIO_C-pin-to-OP.patch
		- Patch upstreamed in 6.1.16:
			https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/arch/arm64/boot/dts/amlogic/meson-sm1-bananapi-m5.dts?h=v6.1.20&id=58dccc65221c6465a35cb6bb2ff41f2b75b367f0
	modified:   patch/kernel/archive/meson64-6.1/board-bananapim5-003-convert-dts-to-dtsi.patcha
		- Fixed patch due to upstream change in 6.1.16:
			https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/arch/arm64/boot/dts/amlogic/meson-sm1-bananapi-m5.dts?h=v6.1.20&id=e35feeb3fdbe3eeffae5e75123fa44523b5076b8
	deleted:    patch/kernel/archive/meson64-6.1/board-radxa-zero-dts-otg-fix.patch
		- Patch upstreamed in 6.1.16:
			https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts?h=v6.1.20&id=b556778f76f975ccf7f008729b5bc2531c58ea95
	deleted:    patch/kernel/archive/meson64-6.1/general-arm64-dts-amlogic-Make-mmc-host-controller-interrupt.patch
		- Patch upstreamed in 6.1.12:
			https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.20&id=274d9a28527d64a95107a1e62c71632065f0924f
			https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.20&id=222b1070b0fa12be25f9503a503724a899c6326b
			https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.1.20&id=a01ad536becb5d4c001a7d50dc1ca9fa14ef75a8
	modified:   patch/kernel/archive/meson64-6.1/general-meson-mmc-1-arm64-amlogic-mmc-meson-gx-Add-core-tx-rx-eMMC-SD-SD.patch
		- Fixed patch due to upstream change in 6.1.13 by copying the 6.2 version which was already rebased
2023-03-20 07:59:11 -04:00
SteeManMI
010077305c aml-s9xx-box: Move board specific bsp file handling to the board (#4971)
config file from from the family config file

 Changes to be committed:
	modified:   config/boards/aml-s9xx-box.tvb
	modified:   config/sources/families/meson-gxl.conf
2023-03-19 19:13:05 -04:00
Tony
d4a5b9c799 Move Jetson and Pinebook Pro board tweaks to board conf file (#4968)
* Move Jetson board tweaks to board conf file

* Move Pinebook Pro BSP and board tweaks
to PBP config file, decluttering family config
2023-03-19 18:26:18 -04:00
Ricardo Pardini
c146fdf28b kernel-headers: don't try to build objtool if not amd64 target (for real this time) 2023-03-18 21:45:49 +01:00
Paolo Sabatino
989b49ff6b rockchip: enable rtl8723ds kernel module 2023-03-18 21:40:32 +01:00
Igor
d4a7a1c816 Revert "Update export-logs.sh to use primary Armbian paste server (#4936)"
This reverts commit bc62c8cd42.
2023-03-18 21:39:02 +01:00
Ricardo Pardini
994b80a1a1 kernel: postinst: use --nofsroot option to findmnt when finding /boot's filesystem type
- otherwise we might get `/dev/mmcblk2p1[/boot]` when `/boot` is bind-mounted
- `--nofsroot: don't print [/dir] for bind or btrfs mounts`
2023-03-18 07:09:40 -03:00
amazingfate
c21aef6e20 update rk35xx legacy kernel source to github 2023-03-17 08:33:42 +01:00
Ricardo Pardini
4509e3fcf2 kernel-headers: don't try to build objtool if not amd64 target 2023-03-17 08:32:11 +01:00
Ricardo Pardini
8493d91b61 check early (before running any CLI command) for old LIB_TAG usage 2023-03-17 08:32:11 +01:00
Ricardo Pardini
2f4f117000 prepare ORAS tooling early, so we don't get spurious failures "only on first build" 2023-03-17 08:32:11 +01:00
Ricardo Pardini
4e6fd3a507 warn about KERNEL_CONFIGURE=yes being deprecated during image build; instructions on how to do it properly 2023-03-17 08:32:11 +01:00
Ricardo Pardini
630ee512cb stop the build if LIB_TAG is set at all; some users expect it to work while it doesn't 2023-03-17 08:32:11 +01:00
Ricardo Pardini
6b965c605c completely remove any traces of KERNEL_ONLY and exit with error if set 2023-03-17 08:32:11 +01:00
Ricardo Pardini
6d1c5fb8b7 artifact: kernel: use C999999 for .config hash is KERNEL_CONFIGURE=yes; force ignore cache if so 2023-03-17 08:32:11 +01:00
Ricardo Pardini
c8412c8791 compress-checksum: don't compress files ending in .txt, thanks 2023-03-17 08:32:11 +01:00
Ricardo Pardini
91b7b35fa3 rootfs-to-image/distro-agnostic: introduce IMAGE_VERSION, can be used to override VERSION file ($REVISION) just for image filename/issue/os-release 2023-03-17 08:32:11 +01:00
Ricardo Pardini
b16ffd62da odroidxu4/current: set KERNEL_SKIP_MAKEFILE_VERSION=yes 2023-03-17 08:32:11 +01:00
Ricardo Pardini
bf325a4565 artifact: kernel: introduce KERNEL_SKIP_MAKEFILE_VERSION=yes -- for families that patch their kernel's Makefile version; in that case only SHA1 is present in version
- better to withold the info, than to offer wrong info
- eg: `odroidxu4`/`current`
2023-03-17 08:32:11 +01:00
Ricardo Pardini
ff657fcf90 artifacts (all): require prefixing of artifact_version with artifact_prefix_version (which is ${REVISION}--) 2023-03-17 08:32:11 +01:00
Ricardo Pardini
4a1eec83e7 rockchip-rk3588: edge: fix, I messed up move from 6.2-rc7 to 6.2.y 🤦 2023-03-17 08:32:11 +01:00
Ricardo Pardini
032025877c kinetic: desktop: browsers appgroup: remove firefox-esr -- thanks, Ubuntu :-( 2023-03-17 08:32:11 +01:00
Ricardo Pardini
9931350483 docker: fix: pass down OCI_TARGET_BASE to Docker instance automatically 2023-03-17 08:32:11 +01:00
Ricardo Pardini
736fe7ecf4 don't use "bright black" ANSI for logging unless we're running under a known-good terminal (eg, iTerm2)
- giving up on the "bright black" == "gray" thing. There's enough bad default themes out there, and not the first time people (rightfully) complained...
2023-03-17 08:32:11 +01:00
CXM
36de9b7d08 chore: add star history in README.md (#4851)
* chore: add star history in README.md

* Improve project structure list and put it behind collapsable object

---------

Co-authored-by: Igor <igor@armbian.com>
2023-03-15 16:23:54 +01:00
Igor Pečovnik
1fcdf63c4e Look only for bash shebang (#4928)
* Look only for bash shebang

We have some Python scripts now so we need to move that out

* Extend script to cover ignored files and use internal tool for checking the rest

Signed-off-by: Igor <igor@armbian.com>

---------

Signed-off-by: Igor <igor@armbian.com>
2023-03-15 16:22:14 +01:00
Jianfeng Liu
ff38c51de7 add ca-certificates to debootstrap (#4949)
* add ca-certificates to debootstrap

* Remove ca-certificates from main as its present in deboostrap anyway

---------

Co-authored-by: Igor <igor@armbian.com>
2023-03-15 16:21:31 +01:00
SteeManMI
4948417152 Update u-boot-s905x-s912 binary to a new build (#4947)
Previously, the u-boot binary files used to chainload u-boot for the
amlogic tv boxes were the ones produced by balbes150 in his old
tv box builds.  There was no source code for them.
This commit is the first to convert from those old binary files
to newly built ones along with a u-boot patch file and instructions
on how to build/rebuild them.  Eventually this needs to be incorporated into
the build framework to automate it.  But for now one step at a time.

 Changes to be committed:
	new file:   packages/bsp/aml-s9xx-box/boot/build-u-boot/readme.txt
	new file:   packages/bsp/aml-s9xx-box/boot/build-u-boot/u-boot-s905x-s912.patch
	deleted:    packages/bsp/aml-s9xx-box/boot/u-boot-readme.txt
	modified:   packages/bsp/aml-s9xx-box/boot/u-boot-s905x-s912

Co-authored-by: Igor Pečovnik <igor@armbian.com>
2023-03-15 08:30:28 -04:00
886 changed files with 588391 additions and 76023 deletions

View File

@@ -56,17 +56,15 @@ body:
- Other
validations:
required: true
- type: textarea
- type: input
id: logs
attributes:
label: Relevant log output
description: "
Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks.
<h3>
You can find logs in output/debug folder
</h3>
"
render: shell
label: Relevant log URL
description: |
Run with `SHARE_LOG=yes`, at the end of log you will get something like this
```[🌿] Log uploaded, share URL: [ https://paste.armbian.com/xxx ]```
Paste the URL on here.
placeholder: https://paste.armbian.com/xxx
- type: checkboxes
id: terms
attributes:

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

After

Width:  |  Height:  |  Size: 34 KiB

20
.github/workflows/build-board-list.yml vendored Normal file
View File

@@ -0,0 +1,20 @@
name: Rebuild board list in GHA menu
on:
push:
paths:
- 'config/boards/*.*'
branches: [ main ]
jobs:
Run:
name: "Execute workflow"
if: ${{ github.repository_owner == 'Armbian' }}
runs-on: ubuntu-latest
steps:
- name: Repository Dispatch
uses: peter-evans/repository-dispatch@v2
with:
token: ${{ secrets.ACCESS_TOKEN }}
repository: armbian/os
event-type: "Refresh board list"

21
.github/workflows/build-train.yml vendored Normal file
View File

@@ -0,0 +1,21 @@
name: Run build train on config changes
on:
push:
branches:
- 'main'
paths:
- 'config/*.config'
jobs:
Run:
name: "Execute workflow"
if: ${{ github.repository_owner == 'Armbian' }}
runs-on: ubuntu-latest
steps:
- name: Repository Dispatch
uses: peter-evans/repository-dispatch@v2
with:
token: ${{ secrets.ACCESS_TOKEN }}
repository: armbian/os
event-type: "Repository update"

View File

@@ -32,14 +32,25 @@ jobs:
- name: List all changed files
run: |
# use framework internal mechanism for checking `lib` and `extensions` code only one file is passed,
# and source's are followed, thus the whole project is "understood" by shellcheck.
# For example, when checking individual files, one variable might be thought "unused" because it
# is only used in another file, which does not happen when done properly.
bash lib/tools/shellcheck.sh
ret=0
for file in ${{ steps.changed-files.outputs.all_changed_files }}; do
if grep -qE "^#\!/" $file; then
shellcheck --severity=error $file || ret=$?
if [[ ! "${file}" =~ lib/|extensions/|.py|.service|.rules|.network|.netdev ]]; then
if grep -qE "^#\!/.*bash" $file; then
shellcheck --severity=error $file || ret=$?
fi
fi
fi
done
exit $ret

View File

@@ -31,7 +31,7 @@ jobs:
persist-credentials: false
- name: "Run analysis"
uses: ossf/scorecard-action@v2.1.2
uses: ossf/scorecard-action@v2.1.3
with:
results_file: results.sarif
results_format: sarif

1
.gitignore vendored
View File

@@ -22,6 +22,7 @@ ubuntu-*-cloudimg-console.log
.DS_Store
*~
*.swp
/__pycache__/*
# Mainly generated by merge tools like 'meld'
*.orig

View File

@@ -2,17 +2,10 @@
<a href="#build-framework">
<img src=".github/armbian-logo.png" alt="Armbian logo" width="144">
</a><br>
<strong>Armbian Linux Build Framework</strong><br>
<h1 align=center>NEXT GENERATION</h1>
<p align="center">
<a href=https://github.com/armbian/os/releases/latest><img alt="Armbian OS" src="https://img.shields.io/github/actions/workflow/status/armbian/os/build-images.yml?logo=githubactions&label=Build%20Nighlty%20Images&style=for-the-badge&branch=main"></a><br>
( Classic build framework remains on master branch, frozen and unmaintained )<br> <br>
</p>
- in case of troubles, keep using master/v23.02 branch
- PR's are going to <b>main</b> branch, optional to master/v23.02
- do not use master and main in the same folder
<strong>Armbian Linux Build Framework</strong><br><h3>
$${\color{black}NEXT\space \color{red}gen}$$
</h3>
## Table of contents
- [What this project does?](#what-this-project-does)
@@ -24,7 +17,7 @@
- [Support](#support)
- [Contact](#contact)
- [Contributors](#contributors)
- [Sponsors](#sponsors)
- [Partners](#armbian-partners)
- [License](#license)
## What this project does?
@@ -83,10 +76,8 @@ More information:
- [Building Armbian](https://docs.armbian.com/Developer-Guide_Build-Preparation/) — how to start, how to automate;
- [Build options](https://docs.armbian.com/Developer-Guide_Build-Options/) — all build options;
- [Building with Docker](https://docs.armbian.com/Developer-Guide_Building-with-Docker/) — how to build inside container;
- [User configuration](https://docs.armbian.com/Developer-Guide_User-Configurations/) — how to add packages, patches and override sources config;
## Download prebuilt images
- quarterly released **supported** builds — <https://www.armbian.com/download>
@@ -111,11 +102,23 @@ Function | Armbian | Yocto | Buildroot |
## Project structure
<details><summary>Expand</summary>
```text
├── cache Work / cache directory
│   ├── rootfs Compressed userspace packages cache
│   ├── sources Kernel, u-boot and various drivers sources.
│   ├── toolchains External cross compilers from Linaro™ or ARM™
│   ├── aptcache Packages
│   ├── ccache C/C++ compiler
│   ├── docker Docker last pull
│   ├── git-bare Minimal Git
│   ├── git-bundles Full Git
│   ├── initrd Ram disk
│   ├── memoize Git status
│   ├── patch Kernel drivers patch
│   ├── pip Python
│   ├── rootfs Compressed userspaces
│   ├── sources Kernel, u-boot and other sources
│   ├── tools Additional tools like ORAS
│   └── utility
├── config Packages repository configurations
│   ├── targets.conf Board build target configuration
│   ├── boards Board configurations
@@ -128,8 +131,21 @@ Function | Armbian | Yocto | Buildroot |
│   ├── sources Kernel and u-boot sources locations and scripts
│   ├── templates User configuration templates which populate userpatches
│   └── torrents External compiler and rootfs cache torrents
├── extensions extend build system with specific functionality
├── extensions Extend build system with specific functionality
├── lib Main build framework libraries
│   ├── functions
│   │   ├── artifacts
│   │   ├── bsp
│   │   ├── cli
│   │   ├── compilation
│   │   ├── configuration
│   │   ├── general
│   │   ├── host
│   │   ├── image
│   │   ├── logging
│   │   ├── main
│   │   └── rootfs
│   └── tools
├── output Build artifact
│   └── deb Deb packages
│   └── images Bootable images - RAW or compressed
@@ -138,7 +154,7 @@ Function | Armbian | Yocto | Buildroot |
│   └── patch Created patches location
├── packages Support scripts, binary blobs, packages
│   ├── blobs Wallpapers, various configs, closed source bootloaders
│   ├── bsp-cli Automatically added to armbian-bsp-cli package
│   ├── bsp-cli Automatically added to armbian-bsp-cli package
│   ├── bsp-desktop Automatically added to armbian-bsp-desktopo package
│   ├── bsp Scripts and configs overlay for rootfs
│   └── extras-buildpkgs Optional compilation and packaging engine
@@ -160,10 +176,12 @@ Function | Armbian | Yocto | Buildroot |
   ├── misc User: various
   └── u-boot User: universal boot loader patches
```
</details>
## 🙌 Contribution
### You don't need to be a programmer to help!
### You don't need to be a programmer to help!
- The easiest way to help is by "Starring" our repository - it helps more people find our code.
- [Check out our list of volunteer positions](https://forum.armbian.com/staffapplications/) and choose what you want to do ❤️
- [Seed torrents](https://forum.armbian.com/topic/4198-seed-our-torrents/)
@@ -187,16 +205,17 @@ If you want to help with development, you should first review the [Development C
## Support
Support is provided in one of two ways:
- For commercial or prioritized assistance:
- book a an hour of [professional consultation](https://calendly.com/armbian/consultation),
- consider becoming a project partner. Reach us out at https://armbian.com/contact,
- consider becoming a project partner. Reach us out at <https://armbian.com/contact>,
- Alternatively free support is provided via [general project search engine](https://www.armbian.com/search), [documentation](https://docs.armbian.com), [community forums](https://forum.armbian.com/) or [IRC/Discord](https://docs.armbian.com/Community_IRC/). Keep in mind this is mostly provided by our awesome community members in a **best effort** manner and therefore there are no guaranteed solutions.
## Contact
- [Forums](https://forum.armbian.com) for Participate in Armbian
- IRC: `#armbian` on Libera.chat
- Discord: [http://discord.armbian.com](http://discord.armbian.com)
- Discord: [https://discord.gg/armbian](https://discord.gg/armbian)
- Follow [@armbian](https://twitter.com/armbian) on Twitter, [Fosstodon](https://fosstodon.org/@armbian) or [LinkedIn](https://www.linkedin.com/company/armbian).
- Bugs: [issues](https://github.com/armbian/build/issues) / [JIRA](https://armbian.atlassian.net/jira/dashboards/10000)
- Office hours: [Wednesday, 12 midday, 18 afternoon, CET](https://calendly.com/armbian/office-hours)
@@ -219,9 +238,14 @@ Thank you to all the people who already contributed Armbian!
## Armbian Partners
Armbian's partnership program helps to support Armbian and the Armbian community! Please take a moment to familiarize yourself with our Partners:
- [Click here to visit our Partners page!](https://armbian.com/partners)
- [How can I become a Partner?](https://forum.armbian.com/subscriptions)
## Star History
[![Star History Chart](https://api.star-history.com/svg?repos=armbian/build&type=Date)](https://star-history.com/#armbian/build&Date)
## License
This software is published under the GPL-2.0 License license.

View File

@@ -1 +1 @@
23.05.0-trunk
23.08.0-trunk

View File

@@ -44,7 +44,7 @@ logging_init
traps_init
# make sure git considers our build system dir as a safe dir (only if actually building)
[[ "${CONFIG_DEFS_ONLY}" != "yes" ]] && git_ensure_safe_directory "${SRC}"
[[ "${CONFIG_DEFS_ONLY}" != "yes" && "${PRE_PREPARED_HOST}" != "yes" ]] && git_ensure_safe_directory "${SRC}"
# Execute the main CLI entrypoint.
cli_entrypoint "$@"

View File

@@ -10,3 +10,13 @@ FULL_DESKTOP="yes"
ASOUND_STATE="asound.state.mesongx"
BOOT_LOGO="desktop"
SRC_CMDLINE='rootflags=data=writeback console=ttyAML0,115200n8 console=tty0'
function post_family_tweaks__config_aml-s9xx-box_bsp() {
display_alert "$BOARD" "Installing bsp files" "info"
cp -r $SRC/packages/bsp/aml-s9xx-box/boot $SDCARD
install -m 755 $SRC/packages/bsp/aml-s9xx-box/root/install-aml.sh $SDCARD/root
install -m 644 $SRC/packages/bsp/aml-s9xx-box/root/fstab.template $SDCARD/root
}

View File

@@ -2,7 +2,7 @@
BOARD_NAME="Banana Pi CM4IO"
BOARDFAMILY="meson-g12b"
BOOTCONFIG="bananapi-cm4-cm4io_defconfig"
KERNEL_TARGET="edge"
KERNEL_TARGET="current,edge"
FULL_DESKTOP="yes"
SERIALCON="ttyAML0"
BOOT_LOGO="desktop"

View File

@@ -8,6 +8,6 @@ SERIALCON="ttyAML0"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="amlogic/meson-g12b-a311d-bananapi-m2s.dtb"
# Newer u-boot; new DT, Makefile and defconfig in patch/u-boot/v2022.10/board_bananapi-m2s
# Newer u-boot; new DT, Makefile and defconfig in patch/u-boot/v2022.10/board_bananapim2s
BOOTBRANCH_BOARD="tag:v2022.10"
BOOTPATCHDIR="v2022.10"
BOOTPATCHDIR="v2022.10/board_bananapim2s" # this avoid the "USB first" patch in the v2022.10 folder

View File

@@ -8,4 +8,4 @@ FULL_DESKTOP="yes"
SERIALCON="ttyAML0"
BOOT_LOGO="desktop"
BOOTBRANCH_BOARD="tag:v2022.10"
BOOTPATCHDIR="v2022.10"
BOOTPATCHDIR="v2022.10/board_bananapim5" # this avoid the "USB first" patch in the v2022.10 folder

View File

@@ -1,9 +0,0 @@
# Rockchip RK3399 hexa core 4GB RAM SoC WiFi/BT
BOARD_NAME="Clockworkpi A06"
BOARDFAMILY="rockchip64"
BOOTCONFIG="clockworkpi-a06-rk3399_defconfig"
KERNEL_TARGET="legacy,current,edge"
FULL_DESKTOP="yes"
BOOT_LOGO="no"
BOOTBRANCH_BOARD="tag:v2022.04"
BOOTPATCHDIR="u-boot-rockchip64-v2022.04"

View File

@@ -0,0 +1,45 @@
# Rockchip RK3399 hexa core 4GB RAM SoC WiFi/BT
BOARD_NAME="Clockworkpi A06"
BOARDFAMILY="rockchip64"
BOOTCONFIG="clockworkpi-a06-rk3399_defconfig"
KERNEL_TARGET="legacy,current,edge"
FULL_DESKTOP="yes"
BOOT_LOGO="no"
BOOTBRANCH_BOARD="tag:v2022.04"
BOOTPATCHDIR="u-boot-rockchip64-v2022.04"
function post_family_tweaks_bsp__clockworkpi-a06() {
display_alert "Installing BSP firmware and fixups"
# rotate screen & disable dpms
mkdir -p "$destination"/etc/X11/xorg.conf.d
cat <<- EOF > "$destination"/etc/X11/xorg.conf.d/10-monitor.conf
# set monitor
Section "Monitor"
Identifier "DSI-1"
Option "Rotate" "right"
Option "DPMS" "false"
EndSection
Section "ServerLayout"
Identifier "ServerLayout0"
Option "BlankTime" "0"
Option "StandbyTime" "0"
Option "SuspendTime" "0"
Option "OffTime" "0"
EndSection
EOF
# fan support
install -Dm644 $SRC/packages/bsp/clockworkpi-a06/temp_fan_daemon_a06.py $destination/usr/share/clockworkpi-a06-fan-daemon/bin/temp_fan_daemon_a06.py
cp $SRC/packages/bsp/clockworkpi-a06/clockworkpi-a06-fan-daemon.service $destination/lib/systemd/system/
# alsa-ucm-conf profile for DevTerm A06
mkdir -p $destination/usr/share/alsa/ucm2/Rockchip/es8388
install -Dm644 $SRC/packages/bsp/clockworkpi-a06/es8388.conf $destination/usr/share/alsa/ucm2/Rockchip/es8388/es8388.conf
install -Dm644 $SRC/packages/bsp/clockworkpi-a06/HiFi.conf $destination/usr/share/alsa/ucm2/Rockchip/es8388/HiFi.conf
mkdir -p $destination/usr/share/alsa/ucm2/conf.d/simple-card
ln -sfv /usr/share/alsa/ucm2/Rockchip/es8388/es8388.conf \
$destination/usr/share/alsa/ucm2/conf.d/simple-card/rockchip,es8388-codec.conf
return 0
}

View File

@@ -9,3 +9,20 @@ BOOT_FDT_FILE="rockchip/rk3399-firefly.dtb"
SRC_EXTLINUX="yes"
SRC_CMDLINE="console=ttyS2,1500000 console=tty0"
#ASOUND_STATE="asound.state.station-p1"
function post_family_tweaks_bsp__firefly-rk3399_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
# need to swap chips in the service
sed -i s%BCM4345C5%BCM4356A2%g $destination/lib/systemd/system/rk3399-bluetooth.service
fi
return 0
}

View File

@@ -10,3 +10,49 @@ FULL_DESKTOP="yes"
PACKAGE_LIST_BOARD="mdadm i2c-tools fancontrol"
PACKAGE_LIST_BOARD_REMOVE="fake-hwclock"
CPUMAX="1800000"
function post_family_tweaks__helios64_enable_heartbeat() {
display_alert "$BOARD" "Installing board tweaks" "info"
chroot $SDCARD /bin/bash -c "systemctl --no-reload enable helios64-heartbeat-led.service >/dev/null 2>&1"
return 0
}
function post_family_tweaks_bsp__helios64() {
display_alert "Installing BSP firmware and fixups"
mkdir -p $destination/etc/udev/rules.d/
mkdir -p $destination/etc/systemd/system/fancontrol.service.d/
mkdir -p $destination/lib/systemd/system/
mkdir -p $destination/lib/systemd/system-shutdown/
cp $SRC/packages/bsp/helios64/50-usb-realtek-net.rules $destination/etc/udev/rules.d/
cp $SRC/packages/bsp/helios64/70-keep-usb-lan-as-eth1.rules $destination/etc/udev/rules.d/
cp $SRC/packages/bsp/helios64/90-helios64-ups.rules $destination/etc/udev/rules.d/
cp $SRC/packages/bsp/helios64/asound.conf $destination/etc/
install -m 755 $SRC/packages/bsp/helios64/disable_auto_poweron $destination/lib/systemd/system-shutdown/
### Fancontrol tweaks
# copy hwmon rules to fix device mapping
# changed to only use one file regardless of branch
install -m 644 $SRC/packages/bsp/helios64/90-helios64-hwmon.rules $destination/etc/udev/rules.d/
install -m 644 $SRC/packages/bsp/helios64/fancontrol.service.pid-override $destination/etc/systemd/system/fancontrol.service.d/pid.conf
# copy fancontrol config
install -m 644 $SRC/packages/bsp/helios64/fancontrol.conf $destination/etc/fancontrol
# LED tweak
if [[ $BRANCH == legacy ]]; then
install -m 644 $SRC/packages/bsp/helios64/helios64-heartbeat-led-legacy.service $destination/etc/systemd/system/helios64-heartbeat-led.service
else
install -m 644 $SRC/packages/bsp/helios64/helios64-heartbeat-led.service $destination/etc/systemd/system/
fi
# UPS service
cp $SRC/packages/bsp/helios64/helios64-ups.service $destination/lib/systemd/system/
cp $SRC/packages/bsp/helios64/helios64-ups.timer $destination/lib/systemd/system/
install -m 755 $SRC/packages/bsp/helios64/helios64-ups.sh $destination/usr/bin/helios64-ups.sh
return 0
}

View File

@@ -0,0 +1,25 @@
# Rockchip RK3588 SoC octa core 4-16GB eMMC USB3 NVMe SATA 4G WiFi/BT HDMI DP HDMI-In
BOARD_NAME="Hinlink H88K"
BOARDFAMILY="rockchip-rk3588"
BOOTCONFIG="rock-5b-rk3588_defconfig"
KERNEL_TARGET="legacy"
FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3588-hinlink-h88k.dtb"
BOOT_SCENARIO="spl-blobs"
WIREGUARD="no"
IMAGE_PARTITION_TABLE="gpt"
SKIP_BOOTSPLASH="yes" # Skip boot splash patch, conflicts with CONFIG_VT=yes
function post_family_tweaks__hinlink_h88k_naming_audios() {
display_alert "$BOARD" "Renaming hinlink-h88k audios" "info"
mkdir -p $SDCARD/etc/udev/rules.d/
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi0-sound", ENV{SOUND_DESCRIPTION}="HDMI0 Audio"' > $SDCARD/etc/udev/rules.d/90-naming-audios.rules
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi1-sound", ENV{SOUND_DESCRIPTION}="HDMI1 Audio"' >> $SDCARD/etc/udev/rules.d/90-naming-audios.rules
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmiin-sound", ENV{SOUND_DESCRIPTION}="HDMI-In Audio"' >> $SDCARD/etc/udev/rules.d/90-naming-audios.rules
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-dp0-sound", ENV{SOUND_DESCRIPTION}="DP0 Audio"' >> $SDCARD/etc/udev/rules.d/90-naming-audios.rules
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-es8388-sound", ENV{SOUND_DESCRIPTION}="ES8388 Audio"' >> $SDCARD/etc/udev/rules.d/90-naming-audios.rules
return 0
}

View File

@@ -2,10 +2,30 @@
BOARD_NAME="Jetson Nano"
BOARDFAMILY="media"
BOOTCONFIG="none"
KERNEL_TARGET="legacy,current,edge"
KERNEL_TARGET="current,edge"
FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="nvidia/tegra210-p3450-0000.dtb"
SRC_EXTLINUX="yes"
SRC_CMDLINE="console=ttyS0,115200n8 console=tty0"
function post_family_tweaks__Jetson-nano() {
display_alert "$BOARD" "Installing bsp firmware and fixups" "info"
install -m 755 $SRC/packages/blobs/jetson/jetson.sh $SDCARD/etc/initramfs-tools/hooks/jetson.sh
if [[ $BRANCH == legacy ]]; then
install -m 755 $SRC/packages/blobs/jetson/tegra21x_xusb_firmware $SDCARD/lib/firmware/tegra21x_xusb_firmware
install -m 755 $SRC/packages/blobs/jetson/asound.conf.tegrahda $SDCARD/etc/asound.conf.tegrahda
install -m 755 $SRC/packages/blobs/jetson/asound.conf.tegrahda $SDCARD/etc/asound.conf
install -m 755 $SRC/packages/blobs/jetson/asound.conf.tegrasndt210ref $SDCARD/etc/asound.conf.tegrasndt210ref
install -m 755 $SRC/packages/blobs/jetson/tegra-hda.conf $SDCARD/usr/share/alsa/cards/tegra-hda.conf
install -m 755 $SRC/packages/blobs/jetson/tegra-snd-t210r.conf $SDCARD/usr/share/alsa/cards/tegra-snd-t210r.conf
sed -e 's/exit 0//g' -i $SDCARD/etc/rc.local
echo "su -c 'echo 255 > /sys/devices/pwm-fan/target_pwm'" >> $SDCARD/etc/rc.local
echo "exit 0" >> $SDCARD/etc/rc.local
else
cp -R $SRC/packages/blobs/jetson/firmware/* $SDCARD/lib/firmware/
fi
return 0
}

View File

@@ -6,4 +6,5 @@ KERNEL_TARGET="current,edge"
FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_SUPPORT_SPI=yes
BOOT_SCENARIO="tpl-spl-blob"
ASOUND_STATE="asound.state.rk3399"

View File

@@ -0,0 +1,18 @@
# Rockchip RK3588s 2GB-16GB GBE eMMC NVMe SATA USB3 WiFi
declare -g BOARD_NAME="Khadas Edge2"
declare -g BOARDFAMILY="rockchip-rk3588"
declare -g BOOT_SOC="rk3588" # Just to avoid errors in rockchip64_commmon
declare -g KERNEL_TARGET="legacy"
declare -g IMAGE_PARTITION_TABLE="gpt"
declare -g BOOT_FDT_FILE="rockchip/rk3588s-khadas-edge2.dtb" # Specific to this board
declare -g BLUETOOTH_HCIATTACH_PARAMS="-s 115200 /dev/ttyS9 bcm43xx 1500000" # For the bluetooth-hciattach extension
enable_extension "bluetooth-hciattach" # Enable the bluetooth-hciattach extension
# for the kedge2, we're counting on the blobs+u-boot in SPI working, as it comes from factory. It does not support bootscripts.
function post_family_config_branch_legacy__uboot_kedge2() {
display_alert "$BOARD" "Configuring ($BOARD) non-u-boot" "info"
unset BOOTSOURCE
declare -g BOOTCONFIG='none'
declare -g SRC_EXTLINUX="yes" # For now, use extlinux. Thanks Monka
}

View File

@@ -1,12 +0,0 @@
# Rockchip RK3588s 2GB-16GB GBE eMMC NVMe SATA USB3 WiFi
BOARD_NAME="Khadas EDGE2"
BOARDFAMILY="media"
BOOT_SOC="rk3588"
BOOTCONFIG="khadas-edge2-rk3588s_defconfig"
KERNEL_TARGET="legacy"
FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3588s-khadas-edge2.dtb"
SRC_EXTLINUX="yes"
SRC_CMDLINE="console=ttyS02,1500000 console=tty0"
IMAGE_PARTITION_TABLE="gpt"

View File

@@ -0,0 +1,21 @@
# Rockchip RK3588 SoC octa core 4-16GB SoC 1GBe eMMC USB3 SATA WiFi/BT
declare -g BOARD_NAME="Mekotronics R58 MiniPC"
declare -g BOARDFAMILY="rockchip-rk3588"
declare -g KERNEL_TARGET="legacy"
declare -g IMAGE_PARTITION_TABLE="gpt"
declare -g BOOT_FDT_FILE="rockchip/rk3588-blueberry-minipc-linux.dtb" # Specific to this board
declare -g BOOT_SCENARIO="spl-blobs" # so we don't depend on defconfig naming convention
declare -g BOOTCONFIG="mekotronics-r58-rk3588_defconfig" # patched-in in BOOTPATCHDIR, set below.
declare -g BLUETOOTH_HCIATTACH_PARAMS="-s 115200 /dev/ttyS6 bcm43xx 1500000" # For the bluetooth-hciattach extension
enable_extension "bluetooth-hciattach" # Enable the bluetooth-hciattach extension
# post_family_config which only runs when branch is legacy. a shortcut, to avoid if's. you're welcome.
function post_family_config_branch_legacy__uboot_mekotronics() {
display_alert "$BOARD" "Configuring Mekotronics R58 ($BOARD) u-boot" "info"
declare -g BOOTSOURCE='https://github.com/radxa/u-boot.git'
declare -g BOOTBRANCH='branch:stable-5.10-rock5'
declare -g OVERLAY_PREFIX='rockchip-rk3588'
declare -g BOOTDIR="u-boot-${BOARD}" # do not share u-boot directory
declare -g BOOTDELAY=1 # build injects this into u-boot config. we can then get into UMS mode and avoid the whole rockusb/rkdeveloptool thing
}

View File

@@ -0,0 +1,21 @@
# Rockchip RK3588 SoC octa core 4-16GB SoC 2x1GBe eMMC USB3 NVMe SATA 4G WiFi/BT HDMI DP HDMI-In RS232 RS485
declare -g BOARD_NAME="Mekotronics R58X-4G"
declare -g BOARDFAMILY="rockchip-rk3588"
declare -g KERNEL_TARGET="legacy"
declare -g IMAGE_PARTITION_TABLE="gpt"
declare -g BOOT_FDT_FILE="rockchip/rk3588-blueberry-edge-v12-linux.dtb" # Specific to this board
declare -g BOOT_SCENARIO="spl-blobs" # so we don't depend on defconfig naming convention
declare -g BOOTCONFIG="mekotronics-r58-rk3588_defconfig" # patched-in in BOOTPATCHDIR, set below.
declare -g BLUETOOTH_HCIATTACH_PARAMS="-s 115200 /dev/ttyS6 bcm43xx 1500000" # For the bluetooth-hciattach extension
enable_extension "bluetooth-hciattach" # Enable the bluetooth-hciattach extension
# post_family_config which only runs when branch is legacy. a shortcut, to avoid if's. you're welcome.
function post_family_config_branch_legacy__uboot_mekotronics() {
display_alert "$BOARD" "Configuring Mekotronics R58 ($BOARD) u-boot" "info"
declare -g BOOTSOURCE='https://github.com/radxa/u-boot.git'
declare -g BOOTBRANCH='branch:stable-5.10-rock5'
declare -g OVERLAY_PREFIX='rockchip-rk3588'
declare -g BOOTDIR="u-boot-${BOARD}" # do not share u-boot directory
declare -g BOOTDELAY=1 # build injects this into u-boot config. we can then get into UMS mode and avoid the whole rockusb/rkdeveloptool thing
}

View File

@@ -0,0 +1,21 @@
# Rockchip RK3588 SoC octa core 4-16GB SoC 2x1GBe eMMC USB3 NVMe SATA WiFi/BT HDMI DP HDMI-In RS232 RS485
declare -g BOARD_NAME="Mekotronics R58X-4G"
declare -g BOARDFAMILY="rockchip-rk3588"
declare -g KERNEL_TARGET="legacy"
declare -g IMAGE_PARTITION_TABLE="gpt"
declare -g BOOT_FDT_FILE="rockchip/rk3588-blueberry-edge-v10-linux.dtb" # Specific to this board
declare -g BOOT_SCENARIO="spl-blobs" # so we don't depend on defconfig naming convention
declare -g BOOTCONFIG="mekotronics-r58-rk3588_defconfig" # patched-in in BOOTPATCHDIR, set below.
declare -g BLUETOOTH_HCIATTACH_PARAMS="-s 115200 /dev/ttyS6 bcm43xx 1500000" # For the bluetooth-hciattach extension
enable_extension "bluetooth-hciattach" # Enable the bluetooth-hciattach extension
# post_family_config which only runs when branch is legacy. a shortcut, to avoid if's. you're welcome.
function post_family_config_branch_legacy__uboot_mekotronics() {
display_alert "$BOARD" "Configuring Mekotronics R58 ($BOARD) u-boot" "info"
declare -g BOOTSOURCE='https://github.com/radxa/u-boot.git'
declare -g BOOTBRANCH='branch:stable-5.10-rock5'
declare -g OVERLAY_PREFIX='rockchip-rk3588'
declare -g BOOTDIR="u-boot-${BOARD}" # do not share u-boot directory
declare -g BOOTDELAY=1 # build injects this into u-boot config. we can then get into UMS mode and avoid the whole rockusb/rkdeveloptool thing
}

View File

@@ -2,5 +2,5 @@
BOARD_NAME="MiQi"
BOARDFAMILY="rockchip"
BOOTCONFIG="miqi-rk3288_defconfig"
KERNEL_TARGET="legacy,current,edge"
KERNEL_TARGET="current,edge"

View File

@@ -9,3 +9,20 @@ BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3399-nanopc-t4.dtb"
SRC_EXTLINUX="yes"
SRC_CMDLINE="console=ttyS2,1500000 console=tty0"
function post_family_tweaks_bsp__nanopc-t4_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
# need to swap chips in the service
sed -i s%BCM4345C5%BCM4356A2%g $destination/lib/systemd/system/rk3399-bluetooth.service
fi
return 0
}

View File

@@ -0,0 +1,23 @@
# Rockchip RK3588S octa core 8GB RAM SoC eMMC USB3 USB2 1x GbE 2x 2.5GbE
BOARD_NAME="NanoPC T6"
BOARDFAMILY="rockchip-rk3588"
BOOTCONFIG="nanopi-r6s-rk3588s_defconfig" # vendor name, not standard, see hook below, set BOOT_SOC below to compensate
BOOT_SOC="rk3588"
KERNEL_TARGET="legacy"
FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3588-nanopc-t6.dtb"
BOOT_SCENARIO="spl-blobs"
WIREGUARD="no"
IMAGE_PARTITION_TABLE="gpt"
SKIP_BOOTSPLASH="yes" # Skip boot splash patch, conflicts with CONFIG_VT=yes
BOOTFS_TYPE="fat"
function post_family_tweaks__nanopct6_naming_audios() {
display_alert "$BOARD" "Renaming nanopct6 audio" "info"
mkdir -p $SDCARD/etc/udev/rules.d/
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi0-sound", ENV{SOUND_DESCRIPTION}="HDMI0 Audio"' >$SDCARD/etc/udev/rules.d/90-naming-audios.rules
return 0
}

View File

@@ -9,3 +9,13 @@ MODULES_BLACKLIST="rockchipdrm analogix_dp dw_mipi_dsi dw_hdmi gpu_sched lima ha
SERIALCON="ttyS2:1500000,ttyGS0"
HAS_VIDEO_OUTPUT="no"
BOOT_FDT_FILE="rockchip/rk3328-nanopi-r2-rev06.dtb"
function post_family_tweaks__nanopi-r2c_rename_USB_LAN() {
display_alert "$BOARD" "Installing board tweaks" "info"
# rename USB based network to lan0
mkdir -p $SDCARD/etc/udev/rules.d/
echo 'SUBSYSTEM=="net", ACTION=="add", DRIVERS=="r8152", KERNEL=="eth1", NAME="lan0"' > $SDCARD/etc/udev/rules.d/70-rename-lan.rules
return 0
}

View File

@@ -9,3 +9,13 @@ MODULES_BLACKLIST="rockchipdrm analogix_dp dw_mipi_dsi dw_hdmi gpu_sched lima ha
SERIALCON="ttyS2:1500000,ttyGS0"
HAS_VIDEO_OUTPUT="no"
BOOT_FDT_FILE="rockchip/rk3328-nanopi-r2-rev00.dtb"
function post_family_tweaks__nanopi-r2s_rename_USB_LAN() {
display_alert "$BOARD" "Installing board tweaks" "info"
# rename USB based network to lan0
mkdir -p $SDCARD/etc/udev/rules.d/
echo 'SUBSYSTEM=="net", ACTION=="add", DRIVERS=="r8152", KERNEL=="eth1", NAME="lan0"' > $SDCARD/etc/udev/rules.d/70-rename-lan.rules
return 0
}

View File

@@ -8,3 +8,20 @@ MODULES_BLACKLIST="rockchipdrm analogix_dp dw_mipi_dsi dw_hdmi gpu_sched lima ha
HAS_VIDEO_OUTPUT="no"
BOOTBRANCH_BOARD="tag:v2022.04"
BOOTPATCHDIR="u-boot-rockchip64-v2022.04"
function post_family_tweaks_bsp__nanopi-r4s_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
# need to swap chips in the service
sed -i s%BCM4345C5%BCM4356A2%g $destination/lib/systemd/system/rk3399-bluetooth.service
fi
return 0
}

View File

@@ -0,0 +1,10 @@
# Rockchip RK3399 hexa core 4GB RAM SoC 2 x GBE 32GB eMMC USB3 USB-C
BOARD_NAME="NanoPi R4SE"
BOARDFAMILY="rk3399"
BOOTCONFIG="nanopi-r4se-rk3399_defconfig"
KERNEL_TARGET="current,edge"
DEFAULT_CONSOLE="serial"
MODULES_BLACKLIST="rockchipdrm analogix_dp dw_mipi_dsi dw_hdmi gpu_sched lima hantro_vpu panfrost"
HAS_VIDEO_OUTPUT="no"
BOOTBRANCH_BOARD="tag:v2022.04"
BOOTPATCHDIR="u-boot-rockchip64-v2022.04"

View File

@@ -0,0 +1,23 @@
# Rockchip RK3588S octa core 8GB RAM SoC eMMC USB3 USB2 1x GbE 2x 2.5GbE
BOARD_NAME="NanoPi R6S"
BOARDFAMILY="rockchip-rk3588"
BOOTCONFIG="nanopi-r6s-rk3588s_defconfig" # vendor name, not standard, see hook below, set BOOT_SOC below to compensate
BOOT_SOC="rk3588"
KERNEL_TARGET="legacy"
FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3588s-nanopi-r6s.dtb"
BOOT_SCENARIO="spl-blobs"
WIREGUARD="no"
IMAGE_PARTITION_TABLE="gpt"
SKIP_BOOTSPLASH="yes" # Skip boot splash patch, conflicts with CONFIG_VT=yes
BOOTFS_TYPE="fat"
function post_family_tweaks__nanopir6s_naming_audios() {
display_alert "$BOARD" "Renaming nanopir6s audio" "info"
mkdir -p $SDCARD/etc/udev/rules.d/
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi0-sound", ENV{SOUND_DESCRIPTION}="HDMI0 Audio"' >$SDCARD/etc/udev/rules.d/90-naming-audios.rules
return 0
}

View File

@@ -8,3 +8,29 @@ ASOUND_STATE="asound.state.rt5651"
BOOT_LOGO="desktop"
BOOTBRANCH_BOARD="tag:v2022.04"
BOOTPATCHDIR="u-boot-rockchip64-v2022.04"
function post_family_tweaks__m4() {
display_alert "$BOARD" "Installing board tweaks" "info"
# enable fan support
chroot $SDCARD /bin/bash -c "systemctl --no-reload enable nanopim4-pwm-fan.service >/dev/null 2>&1"
return 0
}
function post_family_tweaks_bsp__M4() {
display_alert "Installing BSP firmware and fixups"
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
# Swap out the chip for some boards
sed -i s%BCM4345C5%BCM4356A2%g $destination/lib/systemd/system/rk3399-bluetooth.service
# Fan support
cp $SRC/packages/bsp/nanopim4/nanopim4-pwm-fan.service $destination/lib/systemd/system/
install -m 755 $SRC/packages/bsp/nanopim4/nanopim4-pwm-fan.sh $destination/usr/bin/nanopim4-pwm-fan.sh
return 0
}

View File

@@ -1,8 +0,0 @@
# Rockchip RK3399 hexa core 4GB RAM SoC GBE eMMC USB3 USB-C WiFi/BT
BOARD_NAME="NanoPi M4V2"
BOARDFAMILY="rk3399"
BOOTCONFIG="nanopi-m4v2-rk3399_defconfig"
KERNEL_TARGET="legacy,current,edge"
FULL_DESKTOP="yes"
ASOUND_STATE="asound.state.rt5651"
BOOT_LOGO="desktop"

View File

@@ -0,0 +1,34 @@
# Rockchip RK3399 hexa core 4GB RAM SoC GBE eMMC USB3 USB-C WiFi/BT
BOARD_NAME="NanoPi M4V2"
BOARDFAMILY="rk3399"
BOOTCONFIG="nanopi-m4v2-rk3399_defconfig"
KERNEL_TARGET="legacy,current,edge"
FULL_DESKTOP="yes"
ASOUND_STATE="asound.state.rt5651"
BOOT_LOGO="desktop"
function post_family_tweaks__m4v2() {
display_alert "$BOARD" "Installing board tweaks" "info"
# enable fan support
chroot $SDCARD /bin/bash -c "systemctl --no-reload enable nanopim4-pwm-fan.service >/dev/null 2>&1"
return 0
}
function post_family_tweaks_bsp__M4V2() {
display_alert "Installing BSP firmware and fixups"
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
# Swap out the chip for some boards
sed -i s%BCM4345C5%BCM4356A2%g $destination/lib/systemd/system/rk3399-bluetooth.service
# Fan support
cp $SRC/packages/bsp/nanopim4/nanopim4-pwm-fan.service $destination/lib/systemd/system/
install -m 755 $SRC/packages/bsp/nanopim4/nanopim4-pwm-fan.sh $destination/usr/bin/nanopim4-pwm-fan.sh
return 0
}

View File

@@ -5,3 +5,20 @@ BOOTCONFIG="nanopi-neo4-rk3399_defconfig"
KERNEL_TARGET="legacy,current,edge"
FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
function post_family_tweaks_bsp__nanopineo4_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
# need to swap chips in the service
sed -i s%BCM4345C5%BCM4356A2%g $destination/lib/systemd/system/rk3399-bluetooth.service
fi
return 0
}

View File

@@ -5,15 +5,14 @@ KERNEL_TARGET="current,edge"
FULL_DESKTOP="yes"
FORCE_BOOTSCRIPT_UPDATE="yes"
BOOT_LOGO="desktop"
# Odroid N2 requires Odroid's u-boot for legacy kernel booting.
# These vars will be handled by the family (meson-g12b.conf)
USE_ODROID_UBOOT="legacy"
BOOTCONFIG="odroid-n2_defconfig" # For mainline uboot
BOOTCONFIG_ODROID="odroidn2_config" # For odroid uboot
BOOTSCRIPT_ODROID="boot-odroid-n2.ini:boot.ini" # For odroid uboot, default BOOTSCRIPT is boot-meson64.cmd for mainline (in meson64_common.inc)
# Newer u-boot for the N2/N2+, less patches: a single boot order patch
BOOTBRANCH_BOARD="tag:v2022.10"
BOOTPATCHDIR="v2022.10"
# Enable writing u-boot to SPI on the N2(+) for current and edge
# @TODO: replace this with an overlay, after meson64 overlay revamp
# To enable the SPI NOR the -spi .dtb is required, because eMMC shares a pin with SPI on the N2(+). To use it:
# fdtfile=amlogic/meson-g12b-odroid-n2-plus-spi.dtb # in armbianEnv.txt and reboot, then run nand-sata-install
UBOOT_TARGET_MAP="u-boot-dtb.img;;u-boot.bin.sd.bin:u-boot.bin u-boot-dtb.img u-boot.bin:u-boot-spi.bin"
@@ -22,6 +21,7 @@ write_uboot_platform_mtd() {
}
# MAX might be different for N2/N2+, for now use N2+'s
# @TODO: remove? cpufreq is not used anymore, instead DT should be patched
CPUMIN=1000000
CPUMAX=2400000
GOVERNOR=performance # some people recommend performance to avoid random hangs after 24+ hours running.
@@ -30,3 +30,5 @@ GOVERNOR=performance # some people recommend performance to avoid random hangs a
# https://github.com/u-boot/u-boot/blob/v2021.04/board/amlogic/odroid-n2/odroid-n2.c#L35-L106
# Unfortunately it uses n2_plus instead of n2-plus as the Kernel expects it.
# So there is a hack at and around config/bootscripts/boot-meson64.cmd L90
# If needed (eg for extlinux) you can specify the N2/N2+/ DTB in BOOT_FDT_FILE, example for the N2+:
# BOOT_FDT_FILE="amlogic/meson-g12b-odroid-n2-plus.dtb"

View File

@@ -9,3 +9,17 @@ HAS_VIDEO_OUTPUT="no"
DEFAULT_CONSOLE="serial"
SERIALCON="ttyS0,ttyGS0"
KERNEL_TARGET="current,edge"
function post_family_tweaks_bsp__orangepi-r1_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -48,15 +48,26 @@ cat <<- EOF > "${destination}"/etc/armbian-leds.conf
invert=0
EOF
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
# add a network rule to work-around Debian issues with two NICs on one network.
display_alert "Creating board support network rename rule to work-around Debian issues for orangepi-r1-plus-lts"
mkdir -p "${destination}"/etc/udev/rules.d/
cat <<- EOF > "${destination}"/etc/udev/rules.d/70-rename-lan.rules
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="r8152", KERNEL=="eth*", NAME="lan0", \
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", KERNEL=="end*", NAME="eth0"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="r8152", KERNEL=="e*", NAME="lan0", \
RUN+="/usr/sbin/ip link set lan0 down", \
RUN+="/usr/sbin/ip link set eth0 down", \
RUN+="/usr/bin/sleep 5s ", \
RUN+="/usr/bin/sleep 3s ", \
RUN+="/usr/sbin/ip link set eth0 up", \
RUN+="/usr/bin/sleep 10s ", \
RUN+="/usr/sbin/ip link set lan0 up"
EOF
}

View File

@@ -9,3 +9,27 @@ MODULES_BLACKLIST="rockchipdrm analogix_dp dw_mipi_dsi dw_hdmi gpu_sched lima ha
SERIALCON="ttyS2:1500000,ttyGS0"
HAS_VIDEO_OUTPUT="no"
BOOT_FDT_FILE="rockchip/rk3328-orangepi-r1-plus.dtb"
function post_family_tweaks__opi-r1plus_rename_USB_LAN() {
display_alert "$BOARD" "Installing board tweaks" "info"
# rename USB based network to lan0
mkdir -p $SDCARD/etc/udev/rules.d/
echo 'SUBSYSTEM=="net", ACTION=="add", DRIVERS=="r8152", KERNEL=="eth1", NAME="lan0"' > $SDCARD/etc/udev/rules.d/70-rename-lan.rules
return 0
}
function post_family_tweaks_bsp__orangepi-r1plus_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -5,3 +5,20 @@ BOOTCONFIG="orangepi-rk3399_defconfig"
KERNEL_TARGET="legacy,current,edge"
FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
function post_family_tweaks_bsp__orangepi-rk3399_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
# need to swap chips in the service
sed -i s%BCM4345C5%BCM4356A2%g $destination/lib/systemd/system/rk3399-bluetooth.service
fi
return 0
}

View File

@@ -3,3 +3,17 @@ BOARD_NAME="Orange Pi"
BOARDFAMILY="sun7i"
BOOTCONFIG="Orangepi_defconfig"
KERNEL_TARGET="legacy,current,edge"
function post_family_tweaks_bsp__orangepi_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -3,3 +3,17 @@ BOARD_NAME="Orange Pi 2"
BOARDFAMILY="sun8i"
BOOTCONFIG="orangepi_2_defconfig"
KERNEL_TARGET="legacy,current,edge"
function post_family_tweaks_bsp__orangepi2_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -1,8 +0,0 @@
# Allwinner H6 quad core 2GB RAM SoC GBE USB3
BOARD_NAME="Orange Pi 3 LTS"
BOARDFAMILY="sun50iw6"
BOOTCONFIG="orangepi_3_lts_defconfig"
KERNEL_TARGET="current,edge"
MODULES="sprdbt_tty sprdwl_ng"
MODULES_BLACKLIST_LEGACY="bcmdhd"
ATFBRANCH="tag:v2.2"

View File

@@ -0,0 +1,22 @@
# Allwinner H6 quad core 2GB RAM SoC GBE USB3
BOARD_NAME="Orange Pi 3 LTS"
BOARDFAMILY="sun50iw6"
BOOTCONFIG="orangepi_3_lts_defconfig"
KERNEL_TARGET="current,edge"
MODULES="sprdbt_tty sprdwl_ng"
MODULES_BLACKLIST_LEGACY="bcmdhd"
ATFBRANCH="tag:v2.2"
function post_family_tweaks_bsp__orangepi3-lts_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -1,7 +0,0 @@
# Allwinner H6 quad core 2GB RAM SoC GBE USB3
BOARD_NAME="Orange Pi 3"
BOARDFAMILY="sun50iw6"
BOOTCONFIG="orangepi_3_defconfig"
KERNEL_TARGET="legacy,current,edge"
FULL_DESKTOP="yes"
ATFBRANCH="tag:v2.2"

View File

@@ -0,0 +1,21 @@
# Allwinner H6 quad core 2GB RAM SoC GBE USB3
BOARD_NAME="Orange Pi 3"
BOARDFAMILY="sun50iw6"
BOOTCONFIG="orangepi_3_defconfig"
KERNEL_TARGET="legacy,current,edge"
FULL_DESKTOP="yes"
ATFBRANCH="tag:v2.2"
function post_family_tweaks_bsp__orangepi3_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -13,3 +13,23 @@ ASOUND_STATE="asound.state.rk3399"
BOOT_LOGO="desktop"
BOOTBRANCH_BOARD="tag:v2022.04"
BOOTPATCHDIR="u-boot-rockchip64-v2022.04"
function post_family_tweaks_bsp__OPi4lts() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
# Bluetooth on orangepi 4 LTS board is handled by a Spreadtrum (sprd) chip and requires
# a custom hciattach_opi binary, plus a systemd service to run it at boot time
install -m 755 $SRC/packages/bsp/rk3399/hciattach_opi $destination/usr/bin
cp $SRC/packages/bsp/rk3399/sprd-bluetooth.service $destination/lib/systemd/system/
return 0
}

View File

@@ -8,3 +8,17 @@ ASOUND_STATE="asound.state.rt5651"
BOOT_LOGO="desktop"
BOOTBRANCH_BOARD="tag:v2022.04"
BOOTPATCHDIR="u-boot-rockchip64-v2022.04"
function post_family_tweaks_bsp__orangepi4_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -10,13 +10,44 @@ BOOT_FDT_FILE="rockchip/rk3588s-orangepi-5.dtb"
BOOT_SCENARIO="spl-blobs"
WIREGUARD="no"
BOOT_SUPPORT_SPI="yes"
BOOT_SPI_RKSPI_LOADER="yes"
IMAGE_PARTITION_TABLE="gpt"
SKIP_BOOTSPLASH="yes" # Skip boot splash patch, conflicts with CONFIG_VT=yes
BOOTFS_TYPE="fat"
function post_family_tweaks_bsp__orangepi5_copy_usb2_service() {
display_alert "Installing BSP firmware and fixups"
# Add USB2 init service. Otherwise, USB2 and TYPE-C won't work by default
cp $SRC/packages/bsp/orangepi5/orangepi5-usb2-init.service $destination/lib/systemd/system/
return 0
}
function post_family_tweaks__orangepi5_enable_usb2_service() {
display_alert "$BOARD" "Installing board tweaks" "info"
# enable usb2 init service
chroot $SDCARD /bin/bash -c "systemctl --no-reload enable orangepi5-usb2-init.service >/dev/null 2>&1"
return 0
}
function post_family_tweaks__orangepi5_naming_audios() {
display_alert "$BOARD" "Renaming orangepi5 audios" "info"
mkdir -p $SDCARD/etc/udev/rules.d/
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi0-sound", ENV{SOUND_DESCRIPTION}="HDMI0 Audio"' > $SDCARD/etc/udev/rules.d/90-naming-audios.rules
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-dp0-sound", ENV{SOUND_DESCRIPTION}="DP0 Audio"' >> $SDCARD/etc/udev/rules.d/90-naming-audios.rules
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-es8388-sound", ENV{SOUND_DESCRIPTION}="ES8388 Audio"' >> $SDCARD/etc/udev/rules.d/90-naming-audios.rules
return 0
}
# Override family config for this board; let's avoid conditionals in family config.
function post_family_config__orangepi5_use_vendor_uboot() {
BOOTSOURCE='https://github.com/orangepi-xunlong/u-boot-orangepi.git'
BOOTBRANCH='branch:v2017.09-rk3588'
BOOTPATCHDIR="legacy"
}

View File

@@ -1,8 +0,0 @@
# Allwinner H3 quad core 512MB RAM WiFi
BOARD_NAME="Orange Pi Lite"
BOARDFAMILY="sun8i"
BOOTCONFIG="orangepi_lite_defconfig"
MODULES_LEGACY="g_serial"
MODULES_CURRENT="g_serial"
KERNEL_TARGET="legacy,current,edge"

View File

@@ -0,0 +1,21 @@
# Allwinner H3 quad core 512MB RAM WiFi
BOARD_NAME="Orange Pi Lite"
BOARDFAMILY="sun8i"
BOOTCONFIG="orangepi_lite_defconfig"
MODULES_LEGACY="g_serial"
MODULES_CURRENT="g_serial"
KERNEL_TARGET="legacy,current,edge"
function post_family_tweaks_bsp__orangepilite_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -3,3 +3,17 @@ BOARD_NAME="Orange Pi Lite 2"
BOARDFAMILY="sun50iw6"
BOOTCONFIG="orangepi_lite2_defconfig"
KERNEL_TARGET="legacy,current,edge"
function post_family_tweaks_bsp__orangepilite2_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -3,3 +3,17 @@ BOARD_NAME="Orange Pi Mini"
BOARDFAMILY="sun7i"
BOOTCONFIG="Orangepi_mini_defconfig"
KERNEL_TARGET="legacy,current,edge"
function post_family_tweaks_bsp__orangepimini_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -1,5 +0,0 @@
# Allwinner H3 quad core 512MB RAM SoC
BOARD_NAME="Orange Pi One"
BOARDFAMILY="sun8i"
BOOTCONFIG="orangepi_one_defconfig"
KERNEL_TARGET="legacy,current,edge"

View File

@@ -0,0 +1,19 @@
# Allwinner H3 quad core 512MB RAM SoC
BOARD_NAME="Orange Pi One"
BOARDFAMILY="sun8i"
BOOTCONFIG="orangepi_one_defconfig"
KERNEL_TARGET="legacy,current,edge"
function post_family_tweaks_bsp__orangepione_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -4,3 +4,17 @@ BOARDFAMILY="sun50iw6"
BOOTCONFIG="orangepi_one_plus_defconfig"
KERNEL_TARGET="legacy,current,edge"
ATFBRANCH="tag:v2.2"
function post_family_tweaks_bsp__orangepioneplus_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -3,3 +3,17 @@ BOARD_NAME="Orange Pi PC"
BOARDFAMILY="sun8i"
BOOTCONFIG="orangepi_pc_defconfig"
KERNEL_TARGET="legacy,current,edge"
function post_family_tweaks_bsp__orangepipc_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -1,6 +0,0 @@
# Allwinner H5 quad core 1GB RAM SoC GBE SPI
BOARD_NAME="Orange Pi PC2"
BOARDFAMILY="sun50iw2"
BOOTCONFIG="orangepi_pc2_defconfig"
KERNEL_TARGET="legacy,current,edge"
FULL_DESKTOP="yes"

View File

@@ -0,0 +1,20 @@
# Allwinner H5 quad core 1GB RAM SoC GBE SPI
BOARD_NAME="Orange Pi PC2"
BOARDFAMILY="sun50iw2"
BOOTCONFIG="orangepi_pc2_defconfig"
KERNEL_TARGET="legacy,current,edge"
FULL_DESKTOP="yes"
function post_family_tweaks_bsp__orangepipc2_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -3,3 +3,17 @@ BOARD_NAME="Orange Pi PC +"
BOARDFAMILY="sun8i"
BOOTCONFIG="orangepi_pc_plus_defconfig"
KERNEL_TARGET="legacy,current,edge"
function post_family_tweaks_bsp__orangepipcplus_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -3,3 +3,17 @@ BOARD_NAME="Orange Pi+"
BOARDFAMILY="sun8i"
BOOTCONFIG="orangepi_plus_defconfig"
KERNEL_TARGET="legacy,current,edge"
function post_family_tweaks_bsp__orangepiplus_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -2,5 +2,20 @@
BOARD_NAME="Orange Pi+ 2E"
BOARDFAMILY="sun8i"
BOOTCONFIG="orangepi_plus2e_defconfig"
BOOTBRANCH_BOARD="tag:v2023.04"
KERNEL_TARGET="legacy,current,edge"
FULL_DESKTOP="yes"
function post_family_tweaks_bsp__orangepiplus2e_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -1,7 +0,0 @@
# Allwinner H5 quad core 2GB RAM Wi-Fi/BT
BOARD_NAME="Orange Pi Prime"
BOARDFAMILY="sun50iw2"
BOOTCONFIG="orangepi_prime_defconfig"
DEFAULT_OVERLAYS="analog-codec"
KERNEL_TARGET="legacy,current,edge"
FULL_DESKTOP="yes"

View File

@@ -0,0 +1,21 @@
# Allwinner H5 quad core 2GB RAM Wi-Fi/BT
BOARD_NAME="Orange Pi Prime"
BOARDFAMILY="sun50iw2"
BOOTCONFIG="orangepi_prime_defconfig"
DEFAULT_OVERLAYS="analog-codec"
KERNEL_TARGET="legacy,current,edge"
FULL_DESKTOP="yes"
function post_family_tweaks_bsp__orangepiprime_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -3,3 +3,17 @@ BOARD_NAME="Orange Pi Win"
BOARDFAMILY="sun50iw1"
BOOTCONFIG="orangepi_win_defconfig"
KERNEL_TARGET="legacy,current,edge"
function post_family_tweaks_bsp__orangepiwin_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -3,9 +3,23 @@ BOARD_NAME="Orange Pi Zero"
BOARDFAMILY="sun8i"
BOOTCONFIG="orangepi_zero_defconfig"
MODULES_CURRENT="g_serial"
MODULES_BLACKLIST="lima sunxi_cedrus"
DEFAULT_OVERLAYS="usbhost2 usbhost3"
DEFAULT_CONSOLE="serial"
HAS_VIDEO_OUTPUT="no"
MODULES_BLACKLIST="sunxi_cedrus"
DEFAULT_OVERLAYS="usbhost2 usbhost3 tve"
DEFAULT_CONSOLE="both"
HAS_VIDEO_OUTPUT="yes"
SERIALCON="ttyS0,ttyGS0"
KERNEL_TARGET="legacy,current,edge"
function post_family_tweaks_bsp__orangepizero_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -10,3 +10,16 @@ SERIALCON="ttyS0"
KERNEL_TARGET="legacy,current,edge"
PACKAGE_LIST_BOARD="rfkill bluetooth bluez bluez-tools"
FORCE_BOOTSCRIPT_UPDATE="yes"
function post_family_tweaks_bsp__orangepizero2_BSP() {
display_alert "Installing BSP firmware and fixups"
: "${destination:?}"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -9,3 +9,17 @@ SERIALCON="ttyS0,ttyGS0"
DEFAULT_OVERLAYS="usbhost2 usbhost3"
HAS_VIDEO_OUTPUT="no"
KERNEL_TARGET="legacy,current,edge"
function post_family_tweaks_bsp__orangepizeroplus_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -1,9 +0,0 @@
# Allwinner H3 quad core 512MB RAM SoC Wi-Fi/BT
BOARD_NAME="Orange Pi Zero Plus 2"
BOARDFAMILY="sun8i"
BOOTCONFIG="orangepi_zero_plus2_h3_defconfig"
MODULES_LEGACY="g_serial"
MODULES_CURRENT="g_serial"
DEFAULT_OVERLAYS="usbhost2 usbhost3"
SERIALCON="ttyS0,ttyGS0"
KERNEL_TARGET="legacy,current,edge"

View File

@@ -0,0 +1,23 @@
# Allwinner H3 quad core 512MB RAM SoC Wi-Fi/BT
BOARD_NAME="Orange Pi Zero Plus 2"
BOARDFAMILY="sun8i"
BOOTCONFIG="orangepi_zero_plus2_h3_defconfig"
MODULES_LEGACY="g_serial"
MODULES_CURRENT="g_serial"
DEFAULT_OVERLAYS="usbhost2 usbhost3"
SERIALCON="ttyS0,ttyGS0"
KERNEL_TARGET="legacy,current,edge"
function post_family_tweaks_bsp__orangepizeroplus2_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -8,3 +8,17 @@ DEFAULT_OVERLAYS="gpio-regulator-1.3v usbhost2 usbhost3"
HAS_VIDEO_OUTPUT="no"
SERIALCON="ttyS0,ttyGS0"
KERNEL_TARGET="legacy,current,edge"
function post_family_tweaks_bsp__orangepizeroplus2-h5_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

12
config/boards/panther-x2.csc Executable file
View File

@@ -0,0 +1,12 @@
# Rockchip RK3566 quad core 4GB RAM SoC WIFI/BT eMMC USB2
BOARD_NAME="panther-x2"
BOARDFAMILY="rk35xx"
BOOTCONFIG="rock-3c-rk3566_defconfig"
KERNEL_TARGET="current,edge"
FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3566-panther-x2.dtb"
IMAGE_PARTITION_TABLE="gpt"
BOOT_SCENARIO="spl-blobs"
WIREGUARD="no"
BOOTFS_TYPE="fat"

View File

@@ -10,3 +10,31 @@ BOOT_SCENARIO="blobless"
ASOUND_STATE="asound.state.pinebook-pro"
BOOTBRANCH_BOARD="tag:v2022.04"
BOOTPATCHDIR="u-boot-rockchip64-v2022.04"
function post_family_tweaks__PBP() {
display_alert "$BOARD" "Installing board tweaks" "info"
chroot $SDCARD /bin/bash -c "echo SuspendState=freeze >> /etc/systemd/sleep.conf"
chroot $SDCARD /bin/bash -c "echo HandlePowerKey=ignore >> /etc/systemd/login.d"
return 0
}
function post_family_tweaks_bsp__PBP_BSP() {
display_alert "Installing BSP firmware and fixups"
# special keys
mkdir -p "${destination}"/etc/skel/.config/xfce4/xfconf/xfce-perchannel-xml/
cp $SRC/packages/bsp/pinebook-pro/pointers.xml "${destination}"/etc/skel/.config/xfce4/xfconf/xfce-perchannel-xml/
# touchpad and keyboard tweaks
mkdir -p "${destination}"/etc/X11/xorg.conf.d/
# from https://github.com/ayufan-rock64/linux-package/tree/master/root-pinebookpro
cp "${SRC}"/packages/bsp/pinebook-pro/40-pinebookpro-touchpad.conf "${destination}"/etc/X11/xorg.conf.d/
# keyboard hwdb
mkdir -p "${destination}"/etc/udev/hwdb.d/
cp "${SRC}"/packages/bsp/pinebook-pro/10-usb-kbd.hwdb "${destination}"/etc/udev/hwdb.d/
return 0
}

View File

@@ -1,8 +1,59 @@
# qemu via uboot on arm64, for "virt" qemu machine type
export BOARD_NAME="uefi-arm64"
export BOARDFAMILY="uefi-arm64"
export KERNEL_TARGET="current,edge"
declare -g BOARD_NAME="uefi-arm64"
declare -g BOARDFAMILY="uefi-arm64"
declare -g KERNEL_TARGET="current,edge"
export UEFI_GRUB="skip" # Skip GRUB for this board
export SERIALCON="ttyS0"
export QEMU_UBOOT_BOOTCONFIG="qemu_arm64_defconfig"
declare -g UEFI_GRUB="skip" # Skip GRUB for this board
declare -g SERIALCON="ttyAMA0"
declare -g QEMU_UBOOT_BOOTCONFIG="qemu_arm64_defconfig"
# qemu'ed uboot on arm64 can do extlinux.
# declare -g SRC_EXTLINUX="yes"
# declare -g SRC_CMDLINE="loglevel=7 console=ttyAMA0" # Those boards are serial-debug only; 'root=LABEL=armbi_root' ?
# enable_extension "u-boot-menu" # this generates the extlinux.conf
function post_family_config__force_uboot_bin_and_use_uboot_menu_extlinux_arm64() {
declare -g UBOOT_TARGET_MAP="all;;u-boot.bin"
# lets try with a bootscript. kernel does not start under extlinux...
declare -g BOOTSCRIPT="boot-qemu-arm64.cmd:boot.cmd"
}
# Export the u-boot.rom file next to the disk image, so it can be used as qemu's firmware via the -bios option.
function pre_umount_final_image__export_uboot_rom() {
: "${version:?version is not set}"
local uboot_name="linux-u-boot-${BRANCH}-${BOARD}_${REVISION}_${ARCH}"
display_alert "Exporting u-boot.bin" "${uboot_name} - ${version}.u-boot.bin" "debug"
run_host_command_logged cp -pv "${MOUNT}/usr/lib/${uboot_name}/u-boot.bin" "${DESTIMG}/${version}.u-boot.bin"
}
function board_docs__qemu-uboot-arm64() {
: "${version:?version is not set}"
cat <<- DOCS
## Running on qemu, via command line
\`\`\`bash
# nvme stuff
qemu-system-aarch64 -m 2048 -machine virt -nographic -cpu cortex-a57 \\
-bios ${version}.u-boot.bin \\
-drive if=none,file=${version}.img.qcow2,id=armbian \\
-device nvme,drive=armbian,serial=serialnumber
# virtio, network
# try with -accel kvm on supported neoverse systems
qemu-system-aarch64 -m 2048 -machine virt -nographic -cpu cortex-a72 \\
-bios ${version}.u-boot.bin -nic user,model=virtio-net-pci \\
-drive if=none,media=disk,id=drive0,file=${version}.img.qcow2,discard=unmap,detect-zeroes=unmap \\
-device virtio-blk-pci,drive=drive0,bootindex=0
\`\`\`
@TODO, see docs below.
## Docs
- https://u-boot.readthedocs.io/en/latest/board/emulation/qemu-arm.html
- https://u-boot.readthedocs.io/en/latest/develop/devicetree/dt_qemu.html
DOCS
}

View File

@@ -1,11 +1,56 @@
# x86_64 via qemu + u-boot firmware, for q35 machine type
export UEFI_GRUB="skip" # Skip GRUB for this board
export BOARD_NAME="uefi-x86"
export BOARDFAMILY="uefi-x86"
export KERNEL_TARGET="current,edge"
declare -g UEFI_GRUB="skip" # Skip GRUB for this board
declare -g BOARD_NAME="uefi-x86"
declare -g BOARDFAMILY="uefi-x86"
declare -g KERNEL_TARGET="current,edge"
export SERIALCON="ttyS0"
declare -g SERIALCON="ttyS0"
# u-boot's "x86_64" is incomplete; use the 32-bit version.
export QEMU_UBOOT_BOOTCONFIG="qemu-x86_defconfig"
export INITRD_ARCH='x86' # not really needed, but just in case
declare -g QEMU_UBOOT_BOOTCONFIG="qemu-x86_defconfig"
declare -g INITRD_ARCH='x86' # input for mkimage, needed for extlinux
## qemu'ed uboot on x86 can do extlinux?
#declare -g SRC_EXTLINUX="yes"
#declare -g SRC_CMDLINE="loglevel=7 console=ttyS0" # Those boards are serial-debug only; 'root=LABEL=armbi_root' ?
#enable_extension "u-boot-menu" # this generates the extlinux.conf
function post_family_config__force_uboot_rom_build_x86() {
declare -g UBOOT_TARGET_MAP="all;;u-boot.rom" # Can't find the target that produces 'u-boot.rom', so for now 'make all'
# x86 requires a bootscript, since it's a bzImage and non-mkimage'd initrd; extlinux chokes.
declare -g BOOTSCRIPT="boot-qemu-x86.cmd:boot.cmd"
}
# Export the u-boot.rom file next to the disk image, so it can be used as qemu's firmware via the -bios option.
function pre_umount_final_image__export_uboot_rom() {
: "${version:?version is not set}"
local uboot_name="linux-u-boot-${BRANCH}-${BOARD}_${REVISION}_${ARCH}"
display_alert "Exporting u-boot.rom" "${uboot_name} - ${version}.u-boot.rom" "debug"
run_host_command_logged cp -pv "${MOUNT}/usr/lib/${uboot_name}/u-boot.rom" "${DESTIMG}/${version}.u-boot.rom"
}
function board_docs__qemu-uboot-x86() {
: "${version:?version is not set}"
cat <<- DOCS
## Upstream docs
- https://u-boot.readthedocs.io/en/latest/arch/x86.html
- https://u-boot.readthedocs.io/en/latest/board/emulation/qemu-x86.html
## Running on qemu, via command line
### On Linux (x86), with KVM acceleration
\`\`\`bash
qemu-system-x86_64 -accel kvm -machine q35,vmport=off -smp 8 -nographic -bios ${version}.u-boot.rom -m 2048 -nic user,model=virtio-net-pci -device virtio-blk-pci,drive=drive0,bootindex=0 -drive if=none,media=disk,id=drive0,file=${version}.img.qcow2,discard=unmap,detect-zeroes=unmap
\`\`\`
### On Mac (x86)
\`\`\`bash
# -accel hvf does not work for me, u-boot hangs. this makes it unpractical on macos (monterey). probably also works under darwin/arm64, it's emulated anyway.
qemu-system-x86_64 -machine q35,vmport=off -smp 8 -nographic -bios ${version}.u-boot.rom -m 2048 -nic user,model=virtio-net-pci -device virtio-blk-pci,drive=drive0,bootindex=0 -drive if=none,media=disk,id=drive0,file=${version}.img.qcow2,discard=unmap,detect-zeroes=unmap
\`\`\`
DOCS
}

View File

@@ -2,12 +2,11 @@
BOARD_NAME="Radxa E25"
BOARDFAMILY="rk35xx"
BOOTCONFIG="radxa-e25-rk3568_defconfig"
KERNEL_TARGET="legacy,edge"
KERNEL_TARGET="legacy,current,edge"
FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3568-radxa-e25.dtb"
BOOT_SCENARIO="spl-blobs"
WIREGUARD="no"
BOOT_SUPPORT_SPI="yes"
IMAGE_PARTITION_TABLE="gpt"
BOOTFS_TYPE="fat"

View File

@@ -8,3 +8,13 @@ MODULES_BLACKLIST="analogix_dp bcmdhd"
BOOT_SCENARIO="tpl-blob-atf-mainline"
DDR_BLOB="rk33/rk3318_ddr_666Mhz_v1.16.bin"
BOOT_SOC="rk3328"
function post_family_tweaks_bsp__rk3318-box() {
display_alert "Installing BSP firmware and fixups"
# Optional board dtbo selection script
mkdir -p $destination/usr/local/bin
install -m 755 $SRC/packages/bsp/rk3318/rk3318-config $destination/usr/sbin
return 0
}

View File

@@ -2,12 +2,13 @@
BOARD_NAME="Rock 3A"
BOARDFAMILY="rk35xx"
BOOTCONFIG="rock-3a-rk3568_defconfig"
KERNEL_TARGET="legacy,edge"
KERNEL_TARGET="legacy,current,edge"
FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3568-rock-3a.dtb"
BOOT_SCENARIO="spl-blobs"
WIREGUARD="no"
BOOT_SUPPORT_SPI="yes"
BOOT_SPI_RKSPI_LOADER="yes"
IMAGE_PARTITION_TABLE="gpt"
BOOTFS_TYPE="fat"

26
config/boards/rock-5a.wip Normal file
View File

@@ -0,0 +1,26 @@
# Rockchip RK3588s SoC octa core 4-16GB SoC eMMC USB3 NvME
BOARD_NAME="Rock 5A"
BOARDFAMILY="rockchip-rk3588"
BOOTCONFIG="rock-5a-rk3588s_defconfig"
KERNEL_TARGET="legacy,edge"
FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3588s-rock-5a.dtb"
BOOT_SCENARIO="spl-blobs"
BOOT_SOC="rk3588"
WIREGUARD="no"
BOOT_SUPPORT_SPI="yes"
BOOT_SPI_RKSPI_LOADER="yes"
IMAGE_PARTITION_TABLE="gpt"
SKIP_BOOTSPLASH="yes" # Skip boot splash patch, conflicts with CONFIG_VT=yes
function post_family_tweaks__rock5a_naming_audios() {
display_alert "$BOARD" "Renaming rock5a audios" "info"
mkdir -p $SDCARD/etc/udev/rules.d/
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi0-sound", ENV{SOUND_DESCRIPTION}="HDMI0 Audio"' > $SDCARD/etc/udev/rules.d/90-naming-audios.rules
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-dp0-sound", ENV{SOUND_DESCRIPTION}="DP0 Audio"' >> $SDCARD/etc/udev/rules.d/90-naming-audios.rules
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-es8316-sound", ENV{SOUND_DESCRIPTION}="ES8316 Audio"' >> $SDCARD/etc/udev/rules.d/90-naming-audios.rules
return 0
}

View File

@@ -0,0 +1,28 @@
# Rockchip RK3588 SoC octa core 4-16GB SoC 2.5GBe PoE eMMC USB3 NvME
BOARD_NAME="Rock 5B"
BOARDFAMILY="rockchip-rk3588"
BOOTCONFIG="rock-5b-rk3588_defconfig"
KERNEL_TARGET="legacy,edge,midstream"
FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3588-rock-5b.dtb"
BOOT_SCENARIO="spl-blobs"
WIREGUARD="no"
BOOT_SUPPORT_SPI="yes"
BOOT_SPI_RKSPI_LOADER="yes"
IMAGE_PARTITION_TABLE="gpt"
SKIP_BOOTSPLASH="yes" # Skip boot splash patch, conflicts with CONFIG_VT=yes
BOOTFS_TYPE="ext4"
function post_family_tweaks__rock5b_naming_audios() {
display_alert "$BOARD" "Renaming rock5b audios" "info"
mkdir -p $SDCARD/etc/udev/rules.d/
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi0-sound", ENV{SOUND_DESCRIPTION}="HDMI0 Audio"' > $SDCARD/etc/udev/rules.d/90-naming-audios.rules
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi1-sound", ENV{SOUND_DESCRIPTION}="HDMI1 Audio"' >> $SDCARD/etc/udev/rules.d/90-naming-audios.rules
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmiin-sound", ENV{SOUND_DESCRIPTION}="HDMI-In Audio"' >> $SDCARD/etc/udev/rules.d/90-naming-audios.rules
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-dp0-sound", ENV{SOUND_DESCRIPTION}="DP0 Audio"' >> $SDCARD/etc/udev/rules.d/90-naming-audios.rules
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-es8316-sound", ENV{SOUND_DESCRIPTION}="ES8316 Audio"' >> $SDCARD/etc/udev/rules.d/90-naming-audios.rules
return 0
}

View File

@@ -1,14 +0,0 @@
# Rockchip RK3588 SoC octa core 4-16GB SoC 2.5GBe PoE eMMC USB3 NvME
BOARD_NAME="Rock 5B"
BOARDFAMILY="rockchip-rk3588"
BOOTCONFIG="rock-5b-rk3588_defconfig"
KERNEL_TARGET="legacy,edge,midstream"
FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3588-rock-5b.dtb"
BOOT_SCENARIO="spl-blobs"
WIREGUARD="no"
BOOT_SUPPORT_SPI="yes"
IMAGE_PARTITION_TABLE="gpt"
SKIP_BOOTSPLASH="yes" # Skip boot splash patch, conflicts with CONFIG_VT=yes
BOOTFS_TYPE="ext4"

View File

@@ -6,5 +6,6 @@ KERNEL_TARGET="legacy,current,edge"
FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3399-rock-pi-4a.dtb"
BOOT_SCENARIO="tpl-spl-blob"
BOOT_SUPPORT_SPI=yes
DDR_BLOB="rk33/rk3399_ddr_933MHz_v1.20.bin"

View File

@@ -6,5 +6,20 @@ KERNEL_TARGET="legacy,current,edge"
FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3399-rock-pi-4b.dtb"
BOOT_SCENARIO="tpl-spl-blob"
BOOT_SUPPORT_SPI=yes
DDR_BLOB="rk33/rk3399_ddr_933MHz_v1.20.bin"
function post_family_tweaks_bsp__rockpi-4b_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -6,5 +6,6 @@ KERNEL_TARGET="edge"
FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3399-rock-pi-4b-plus.dtb"
BOOT_SCENARIO="tpl-spl-blob"
BOOT_SUPPORT_SPI=yes
DDR_BLOB="rk33/rk3399_ddr_933MHz_v1.25.bin"

View File

@@ -6,4 +6,19 @@ KERNEL_TARGET="legacy,current,edge"
FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3399-rock-pi-4c.dtb"
BOOT_SCENARIO="tpl-spl-blob"
BOOT_SUPPORT_SPI=yes
function post_family_tweaks_bsp__rockpi-4c_BSP() {
display_alert "Installing BSP firmware and fixups"
if [[ $BRANCH == legacy ]]; then
# Bluetooth for most of others (custom patchram is needed only in legacy)
install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/
fi
return 0
}

View File

@@ -6,4 +6,5 @@ KERNEL_TARGET="current,edge"
FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3399-rock-pi-4c-plus.dtb"
BOOT_SCENARIO="tpl-spl-blob"
BOOT_SUPPORT_SPI=yes

View File

@@ -7,3 +7,4 @@ FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3399pro-rock-pi-n10.dtb"
BOOT_SUPPORT_SPI=yes
BOOT_SCENARIO="tpl-spl-blob"

View File

@@ -1,9 +1,9 @@
# Broadcom BCM2711 quad core 1-8Gb RAM SoC USB3 GBE USB-C WiFi/BT
export BOARD_NAME="Raspberry Pi 4"
export BOARDFAMILY="bcm2711"
export KERNEL_TARGET="legacy,current,edge"
export FK__MACHINE_MODEL="Raspberry Pi 4 Model B" # flash kernel (FK) configuration
export ASOUND_STATE="asound.state.rpi"
declare -g BOARD_NAME="Raspberry Pi 4"
declare -g BOARDFAMILY="bcm2711"
declare -g KERNEL_TARGET="legacy,current,edge"
declare -g FK__MACHINE_MODEL="Raspberry Pi 4 Model B" # flash kernel (FK) configuration
declare -g ASOUND_STATE="asound.state.rpi"
# Our default paritioning system is leaving esp on. Rpi3 is the only board that have issues with this.
# Removing the ESP flag from the boot partition should allow the image to boot on both the RPi3 and RPi4.
@@ -14,14 +14,21 @@ pre_umount_final_image__remove_esp() {
# configure stuff at the appropriate time in flash-kernel
pre_initramfs_flash_kernel__write_raspi_config() {
# for serial console, there is also 'BOOT_UART=1' in 'rpi-eeprom-config' but that is for an earlier stage.
# look at with it rpi-eeprom-config, change with 'EDITOR=nano rpi-eeprom-config --edit'
cat <<-EOD >"${FIRMWARE_DIR}/config.txt"
declare comment_if_debug=""
declare not_comment_if_debug="#"
if [[ "${RPI_DEBUG_CONSOLE}" != "yes" ]]; then
comment_if_debug="#"
not_comment_if_debug=""
# for serial console, there is also 'BOOT_UART=1' in 'rpi-eeprom-config' but that is for an earlier stage.
# look at with it rpi-eeprom-config, change with 'EDITOR=nano rpi-eeprom-config --edit'
fi
cat <<- EOD > "${FIRMWARE_DIR}/config.txt"
[pi4]
max_framebuffers=2
over_voltage=2
arm_freq=1800
[all]
kernel=vmlinuz
cmdline=cmdline.txt
@@ -33,18 +40,18 @@ pre_initramfs_flash_kernel__write_raspi_config() {
# enable audio (loads snd_bcm2835)
dtparam=audio=on
# bootloader logs to serial, second stage
# enable_uart=1
${not_comment_if_debug}enable_uart=1
# overclock. requires decent thermals. COMMENT OUT IF DON'T USE A GREAT COOLER OR HEATSINK.
# over_voltage=6
# arm_freq=2000
# uncomment to disable wifi or bt.
#dtoverlay=disable-wifi
#dtoverlay=disable-bt
${comment_if_debug}dtoverlay=disable-bt
# gpu and 3d stuff.
gpu_mem=256
dtoverlay=vc4-fkms-v3d

Some files were not shown because too many files have changed in this diff Show More