Commit Graph

426 Commits

Author SHA1 Message Date
Igor
4e33412ec2
Refactor armbian-config into install as external package (#7716)
* Refactor armbian-config into install as external package

- https://github.armbian.com/configng repository is always present
- package can still be removed from the install list

Since this tool will have deeper integration with Armbian, we should probably drop possibility to remove the tool from the list.

* Enable armbian-config as extension
2025-01-20 14:23:28 +01:00
Igor Pecovnik
f8e1b443f1 3rd party wifi: partially revert rtl8811cu driver as it breaks on K6.6 2025-01-19 21:49:41 +01:00
Igor Pecovnik
dc558d7c01 UEFI kernels, legacy = 6.6, current & edge 6.13 2025-01-19 20:21:52 +01:00
amazingfate
b17e9e5db1 armbian-kernel: skip enabling BTF for rk35xx vendor kernel
fix minor typo by @EvilOlaf
2025-01-14 19:43:44 +08:00
Viacheslav Bocharov
245c74acbb update rtl8822cs driver link to latest commit (update for kernel 6.13+)
Signed-off-by: Viacheslav Bocharov <adeep@lexina.in>
2025-01-14 12:10:07 +03:00
Ricardo Pardini
fdde912ebf uboot: debug u-boot directory contents before/after patching
- with DEBUG=yes, allows us to see what is leftover in directory during builds
- with new cleaning in separate commit, there shouldn't be any leftovers _at all_
2025-01-05 16:38:43 +01:00
Ricardo Pardini
79db9984f1 uboot: completely clean before building each target; slower but correct
- with this, every u-boot build will be a full rebuild.
  - still, building u-boot is pretty fast
  - and it is better to be a bit slower and actually produce correct results
2025-01-05 16:38:43 +01:00
Ricardo Pardini
7aeb48f172 u-boot: add per-target and general metadata files to u-boot package
- incl some indicative fdt/extlinux/gpt info
- include full config and defconfig for each target
- mark the old .config file as legacy (it was always the last-target's config)
- fix: savedefconfig after build, not before (as target_map might change it)
- fix: some very old u-boots (2011, odroidc1) do not have `savedefconfig` at all, so make it optional
- fix: same for `.config` -- very old u-boots worked different (`boards.cfg`?)
2025-01-05 16:38:43 +01:00
Tim Surber
7c5f95ef8c bump arm trusted firmware to 2.12 for rockchip64 2025-01-05 10:29:54 +01:00
Ricardo Pardini
87ceaaf635 kernel-debs: headers: postinst: switch from oldconfig to olddefconfig for less messy output; better logging 2025-01-05 10:24:30 +01:00
Paolo Sabatino
54628d7d3e rockchip: bump edge kernel to 6.13-rc5 2025-01-01 19:38:55 +01:00
Patrick Yavitz
8e621baeb9 RTW88: Add RTL88XXAU support to 6.12.y
Signed-off-by: Patrick Yavitz <pyavitz@gmail.com>
2025-01-01 13:31:22 -05:00
Ricardo Pardini
de6b967e47 cli: kernel-dtb: don't output preprocessed dts unless BOOT_FDT_FILE is in <vendor>/<board>.dtb format
- so the .deb can be produced sans-errors for some armhf boards
- some better logging, curb the warnings a bit
2024-12-31 11:52:30 +01:00
Ricardo Pardini
6f0afc150c kernel-config: switch to exporting defconfig's for all .config files
- this affects `rewrite-kernel-config` and `kernel-config` CLIs
- this does not actually change the .config's we have, that will happen later / gradually as configs are rewritten
- no more `.defconfig` files are produced (they were in gitignore)
2024-12-31 11:50:59 +01:00
Ricardo Pardini
12f9318373 armbian-kernel: enforce arm64 kernels use 48-bit PA/VA 2024-12-31 11:50:48 +01:00
Ricardo Pardini
cafdca0cc4 armbian-kernel: enable BTF (and CO-RE) for all kernels 2024-12-31 11:50:48 +01:00
Ricardo Pardini
bcc13132ad armbian-kernel: disable module signatures, harder 2024-12-31 11:50:48 +01:00
The-going
d0ec958162 kernel_package_callback_linux_headers: Fix the cleaning process for tools.
In order for the cleanup to be correct for tools, we need to pass
the VMLINUX_BTF variable, which contains the real path to the vmlinux
file we just compiled.

The vmlinux file itself is not involved in cleaning,
but the Makefile checks for its presence and cleaning
is aborted if it is not found.
2024-12-30 20:33:45 +01:00
amazingfate
26c15ce439 wireless patches: fix build for kernel 6.13 2024-12-30 08:24:45 +08:00
Paolo Sabatino
06c37e510d Fix uwe5622 "spanning-writes" warning messages in dmesg 2024-12-26 20:30:54 +01:00
Arend-Jan van Hilten
1ab73573f4
Fix orangepizero wifi and usb otg (#7614) 2024-12-24 22:23:44 +01:00
Dimitry Ishenko
6d63fbd928 armbian-config-deb: add missing deps
armbian-config uses debconf-apt-progress which is part of debconf.

libtext-iconv-perl is needed to prevent the following error, when
uninstalling a package through debconf-apt-progress:

Can't locate object method "new" via package "Text::Iconv" (perhaps you forgot to load "Text::Iconv"?) at /usr/share/perl5/Debconf/Encoding.pm line 65, <GEN2> line 2.
dpkg: error processing package nfs-common (--configure):
2024-12-11 11:26:52 +01:00
Dimitry Ishenko
40f8fa104b armbian-config-deb: sort deps 2024-12-11 11:26:52 +01:00
Ricardo Pardini
a55c8bfcb2 u-boot: check the produced platform_install.sh (created from functions like write_uboot_platform) for shellcheck errors
- we've some smelly stuff in write_uboot_platform for some families that we'd rather catch early
- implement small syntax fixes in setup_write_uboot_platform
2024-12-09 14:12:44 +01:00
Ricardo Pardini
6d9a06bf72 shellfmt: lib/functions; no changes 2024-11-25 11:32:28 +01:00
Igor
6148907595
Improvements and bug fixes to Armbian user-space services (#6840)
* Add a list of BASH shell aliases and merge them with ohmyZSH aliases
* Add command armbian-upgrade to the BSP which executes update + upgrade
* Display armbian-upgrade only if there are upgrades
* Generate empty folder where will store data. This doesn't exists at early start
* Move armbian-install to /usr/bin and autoexecute sudo
2024-11-18 19:12:52 +01:00
Igor Pecovnik
01d7f7db0d Change development repository domain name to github.armbian.com 2024-11-14 21:38:43 +01:00
Igor Pecovnik
48228f1e49 Userspace: Switch armbian-config to new generation. It has very small footprint, thus it will be installed by default 2024-11-05 16:35:36 +01:00
ColorfulRhino
82aa7b3963 compilation: armbian-kernel: Change forced uncompressed modules option for kernels >=v6.12
The kernel option `CONFIG_MODULE_COMPRESS_NONE`  was superseded by `CONFIG_MODULE_COMPRESS` in 6.12.
Adapt the kernel compilation script accordingly to force the correct kernel option.

Source: c7ff693fa2
2024-10-20 18:21:58 +02:00
Igor Pecovnik
7850d7750a Wireless drivers: remove driver for 8822BS applicable for old kernels < 5.16
Git was removed and there is not need to restore it.
2024-10-18 23:03:48 +02:00
The-going
028952fe1e sunxi-6.11: xradio: exclude driver if kernel version >= 6.11 2024-09-30 18:38:35 +02:00
Paolo Sabatino
1c79daddc0 bump rockchip64 edge kernel to v6.11 2024-09-21 14:18:19 +02:00
Ricardo Pardini
7745d2ece6 kernel-debs: show 3 levels of dirs in tree output for kernel-dtb, so overlays are shown 2024-09-14 21:41:24 +02:00
amazingfate
b156e14b9a uwe5622: fix for rk35xx vendor kernel 2024-09-13 09:36:42 +08:00
Ricardo Pardini
b834256138 kernel-dtb: copy also the dtb binary for the board to output 2024-09-03 22:04:20 +02:00
ColorfulRhino
6e6fbac503 cli: kernel-make: Use build@armbian instead of armbian@next for KBUILD 2024-08-15 20:35:26 +00:00
ColorfulRhino
e8c4bde80f cli: kernel-make: Add note for parallel compression for xz
Source: https://lore.kernel.org/lkml/20200901151002.988547791@linuxfoundation.org/
2024-08-15 20:35:26 +00:00
Evgenii Zheltonozhskii
0aa2371db5 Support kernel compilation with Clang/LLVM 2024-08-15 13:20:01 +02:00
Kevin Schmidt
08ef1a960f Fix armbian-firmware-full package build.
Include symlinks from linux-firmware.
2024-08-12 10:45:27 +02:00
schwar3kat
129dd4c3aa
Fix_rtl8189fs_WiFi_driver (#6984)
Fix wrong commit being pulled for rtl8189fs WiFi driver.

Add CONFIG_RTL8189FS=m to linux-sunxi-current.config and linux-sunxi64-current.config.
2024-07-23 17:16:54 +12:00
Ricardo Pardini
f3f89a78ec utils-dpkgdeb: force rebuild of all artifacts, due to https://github.com/armbian/build/pull/6964 (ORAS change) 2024-07-21 10:25:10 +02:00
ColorfulRhino
7e9adb3811 cli: uboot: Move uboot_cflags variable to before its first use 2024-07-18 11:42:16 +02:00
amazingfate
ee145942fe wifi: rtl8852bs: add driver for family instead of board 2024-07-13 17:50:20 +08:00
ColorfulRhino
f25fc42e1e wifi: rtl8852bs: Add some comments 2024-07-11 09:55:16 +08:00
amazingfate
9381edb69d wifi: rtl8852bs: fix build for rockchip 2024-07-11 09:55:16 +08:00
ColorfulRhino
5bb665f965 cli: uboot: Remove HOME workaround for old tinkerboard/xt-q8l-v10 U-Boot
This temporary workaround was only needed for tinkerboard and xt-q8l-v10 version 2022.04 U-Boot. The version has since bumped to 2024.07 and builds fine without this.
2024-07-08 13:02:15 +02:00
Ricardo Pardini
4232661c37 u-boot: embed armbian artifact version in CONFIG_LOCALVERSION
- we're hacking at it anyway, so why not use it to uniquely identify the exact build
2024-07-07 13:06:56 +02:00
ColorfulRhino
63ad4d935e cli: Improve patching logs for U-Boot and kernel 2024-07-03 14:02:29 +02:00
Ricardo Pardini
d9b67b37d5 u-boot: use pipetty in place of unbuffer
- unbuffer never solved anything; pipetty might
2024-07-03 06:44:16 +02:00
ColorfulRhino
e29b960649 cli: kernel-patching: Print KERNELBRANCH and KERNELPATCHDIR before patching 2024-07-02 23:08:41 +02:00
ColorfulRhino
3831a72e97 cli: uboot-patching: Print BOOTBRANCH and BOOTPATCHDIR before patching 2024-07-02 23:08:41 +02:00
ColorfulRhino
b572f30472 wifi: Add new SDIO driver rtl8852bs for BananaPi F3
Also add for Armsom Sige5 since it has the same chip built-in.
2024-07-01 19:15:00 +02:00
Patrick Yavitz
e81998fa81 cli: uboot.sh: Copy over itb from atftempdir
Signed-off-by: Patrick Yavitz <pyavitz@armbian.com>
2024-07-01 19:15:00 +02:00
Ricardo Pardini
21a6b2cab3 u-boot: add HOME env for make invocations to avoid binman/Python problems with older u-boot versions
- this avoids trouble building certain older versions with binman
  - as it tries to `os.path.join(os.getenv('HOME'), 'bin')` and gets a `None` and dies
- naming names: `tinkerboard` & `xt-q8l-v10` (BOARDFAMILY=rockchip), which _actually use_ binman & 22.04 combo
2024-06-30 21:23:04 +02:00
ColorfulRhino
792d9d9dc3 cli: uboot: Include PYTHONPATH in env for compiling U-Boot
- Also group all u-boot make environment variables together for easier maintainability
- Fixes u-boot requiring `pyelftools`
- Fixes commit 04f619dc06
2024-06-30 09:22:17 +02:00
ColorfulRhino
d75b1816ff cli: Improve formatting on dts-check scripts with shellfmt.sh 2024-06-25 18:11:43 +02:00
ColorfulRhino
de81f10b0d cli: Add command "dts-check"
Validates the dts/dtb file for the selected board and outputs the validation logs to the user.
This can be used when adding a new board, developing or improving a dts file. Should lead to higher quality device trees and patches overall, if used.
Will show warnings/errors if patches patch in some functionalities to a devicetree file without patching in the dt-bindings .yaml at the same time.
2024-06-25 07:06:21 +02:00
Igor Pecovnik
75ce67f329 Run shellfmt to complete code 2024-06-22 19:22:24 +02:00
Igor Pecovnik
d7db1cd26b Add 6.9 compatibility fix for UWE and rewrite rockchip64 kernel config 2024-06-06 15:35:08 +02:00
Igor Pecovnik
8f0596dc8f Wireless drivers: port 8723cs to be compatible with kernel 6.9 2024-06-06 15:35:08 +02:00
Patrick Yavitz
aa2d4696ca RTL88X2CS: linux 6.9.y support
Signed-off-by: Patrick Yavitz <pyavitz@armbian.com>
2024-06-04 07:17:44 -04:00
Igor
07047176cc
Bump UEFI edge kernels with kernel config rewrite (#6666)
* Bump UEFI edge kernels with kernel config rewrite
* Update wireless drivers that breaks compilation
2024-06-01 22:35:46 +02:00
Igor Pecovnik
3406519dee Adjust wireless drivers to build on kernel 6.9.y 2024-06-01 19:13:25 +02:00
Igor Pecovnik
3d1d9180c2 Remove reverse dependency for armbian-config
This utility doesn't need any build dependency and should be able to work standalone
2024-05-22 15:47:16 +02:00
Ricardo Pardini
40371934d2 lib & config: give shellcheck directions (to /dev/null for dynamic, to repo-relative path for static) for all sourced references
- in preparation for tightening the shellcheck severity level
  - it needs to be able to follow all sources; dynamic ones are ignored, static ones need root-relative prefix
2024-05-19 19:41:35 +02:00
Ricardo Pardini
fb17a2a84f armbian-kernel: drop DEBUG_KERNEL/DEBUG_INFO disables; force EXPERT=y and bring back CONFIG_GPIO_SYSFS=y for all kernels
- we had `_DEBUG=n` forced, which conflicted with `_EXPERT=y`;
  - some important SBC features (like _GPIO_SYSFS) depend on _EXPERT=y
- we've plans to enable BTF/CO-RE kernels soon, so removing the non-debug enforcement makes some sense
  - also, .config's will be free to determine debug config, nothing's changing in those here
- remove the `_EMBEDDED` special case handling, we can do that as well now
- add a separate hook to renable `CONFIG_GPIO_SYSFS=y`; it was a victim of `EXPERT=n` in some kernels
- this does not include rewrites of all the .configs -- those should be done in a separate batch -- either way effect is the same, hooks will always override .config's
  - during rewrites, a large number of new options will show up, since `_EXPERT=y` is used as dependency for many of Kernel's experimental-ish features
2024-05-11 17:35:27 +01:00
Igor
aa9fea7797 Revert "cli: Add command "dts-check""
This reverts commit 54618c1bd3.
2024-04-26 20:46:42 +08:00
ColorfulRhino
54618c1bd3 cli: Add command "dts-check"
Validates the dts/dtb file for the selected board and outputs the validation logs to the user.
This can be used when adding a new board, developing or improving a dts file. Should lead to higher quality device trees and patches overall, if used.
2024-04-26 18:18:56 +08:00
Brent Roman
7343ca42f7 Restore WiFi functionality to the RockPi-S
Reverts the part of 7b2c985363 that deprecated the RTL8723 driver.
The RTW88 driver for the RTL8723DS **does not work**
See issue Jira AR-2121
2024-04-16 00:36:19 +08:00
Ricardo Pardini
28e1b946c9 kernel-debs: linux-libc-dev: add Conflicts: linux-libc-dev
- can't remember if should add `Replaces: linux-libc-dev` as well

Maybe-fixes: 22511b31cf
2024-04-07 13:21:33 +02:00
Ricardo Pardini
e83d1a0eab kernel-debs: fix: don't try to package linux-libc-dev if only packaging dtb
Fixes: 22511b31cf
2024-04-03 18:31:43 +02:00
Ricardo Pardini
180b79cddc kernel-dtbs: output a somewhat-diffable preprocessed dtc-massaged version of the DTS
- useful for diffs across the same kernel, much less so across
2024-04-03 18:30:37 +02:00
Patrick Yavitz
7df2f46a91 RTW88: 6.x.y fixups
Signed-off-by: Patrick Yavitz <pyavitz@armbian.com>
2024-04-03 11:59:06 -04:00
ColorfulRhino
ee8a3d9675 Kernel config hooks: Use custom_kernel_config instead of armbian_kernel_config
Since `armbian_kernel_config` is "NOT for user consumption. Do NOT use this hook, this is internal to Armbian."
`custom_kernel_config`  is able to overwrite previously set values.
2024-03-30 21:09:12 +01:00
ColorfulRhino
3b73b5fd81 kernel-config: Fix forced option IKCONFIG
Also rewrite some kernel configs to reflect this fix
2024-03-29 15:57:40 +00:00
ColorfulRhino
7ded1f7d7d kernel-config: Force-enable CONFIG_IKCONFIG_PROC=y
to make the kernel config available on the running machine via /proc/config.gz
2024-03-29 15:57:40 +00:00
ColorfulRhino
01be9ecbf9 kernel-config: Update forced kernel options with kernel version checks
This makes the process even more automatic, requiring less manual changes in the config in case of having to solve dependency chains.
2024-03-29 15:57:40 +00:00
ColorfulRhino
bb3837b675 kernel-config: Move config check to init function
- Also change run_kernel_make_dialog oldconfig to run_kernel_make olddefconfig
2024-03-29 15:57:40 +00:00
ColorfulRhino
f8e7d33d69 kernel-config: Fix forced disabling of debug options
Disable CONFIG_EXPERT as well since DEBUG_KERNEL=y is a dependency for EXPERT=y, meaning DEBUG_KERNEL would be re-enabled automatically if EXPERT is enabled
2024-03-29 15:57:40 +00:00
ColorfulRhino
4d744e8638 kernel-config: Only force disable kernel option if it was enabled
This prevents misconfigurations which would be automatically deleted in the next run of `kernel-config`
2024-03-29 15:57:40 +00:00
ColorfulRhino
9f127751f1 kernel-config: Check and repair kernel config after forcing options
Manually forcing kernel options with 'call_extensions_kernel_config()' can introduce missing dependencies or misconfigurations. This commit introduces a function which checks the config, re-establishes its sanity if necessary and outputs any changes to the user.
This also makes `./compile.sh kernel-config` (exiting without changes) and `./compile.sh rewrite-kernel-config` ouput the same config file. Previously, this was not the case.
2024-03-29 15:57:40 +00:00
Valentin
22511b31cf
create linux-libc-dev when building kernel packages (#6408)
* Re-add functionality to create linux-libc-dev when building kernel packages.
* linux-libc-dev: append -${BRANCH}-${LINUXFAMILY} to package name and update control file
2024-03-25 18:04:26 +01:00
Paolo Sabatino
f63a98d082 fix rtl8723cs compilation for kernel 6.8 2024-03-25 17:26:47 +01:00
ColorfulRhino
6d602effc8 drivers_network: Sort drivers/patches by legacy (<=5.x) and not legacy for better visibility and ease of use (e.g. when checking which driver commits should be updated) 2024-03-17 18:57:28 +00:00
ColorfulRhino
7b2c985363 drivers_network: Deprecate vendor drivers for RTW8723DS, RTW8723DU and RTL88x2cs in favor of mainline RTW88 for kernel >=6.8
- RTW8723DS, RTW8723DU is unsupported/deprecated/obsolete by the author since kernel 6.7 in favor of RTW88, so deprecate it for kernel >=6.8
- RTL88x2cs specifically says in its repo: "USE RTW88 NOT THIS DRIVER", so deprecate in favor of RTW88, except for meson64 family
- move random RTL88x2cs hook specific for meson64 family in drivers_network.sh to their family config
2024-03-17 18:57:28 +00:00
ColorfulRhino
07c1ea75c2 drivers_network: rtl8812au: Remove two upstreamed patches 2024-03-17 18:57:28 +00:00
ColorfulRhino
b1ec387300 drivers_network: Bump several drivers from upstream
Also add commit dates to make life prettier and easier

The following drivers have been updated with fixes for 6.8
- driver_rtl8811CU_rtl8821C
- driver_rtl88x2bu
- driver_rtl8811_rtl8812_rtl8814_rtl8821

The following drivers have been updated without specific 6.8 patches:
- driver_rtl8189ES (patches for 6.7, deleted two upstreamed patches)
- driver_rtl8189FS (patches for 6.7, deleted four upstreamed patches)
2024-03-17 18:57:28 +00:00
ColorfulRhino
d881d78209 drivers_network: Add repo URLs for ease of use + formatting 2024-03-17 18:57:28 +00:00
Igor Pecovnik
9e0c0caae8 Fixing rtl8192eu wireless driver compatibility, removing deprecated patch 2024-03-17 18:57:28 +00:00
ColorfulRhino
7d38b4273a cli: rewrite-<uboot,kernel>-patches-needing-rebase 2024-03-13 21:01:26 +00:00
amazingfate
aeda6b8a72 uwe5622: also apply to rk35xx kernel 2024-03-06 08:01:08 +01:00
Ricardo Pardini
d27a03d446 cli: introduce kernel-dtb cli command, to build only DTB, and output full preprocessed dts source
- example: `./compile.sh BOARD=xxxxx BRANCH=edge kernel-dtb`
- outputs preprocessed DTS source for board in question to `output/`
- also outputs same preprocessed DTS source, ran through `dtc` with input and output DTS formats for "normalized" comparisions
2024-03-06 00:58:35 +01:00
Ricardo Pardini
e3575ecd1d kernel: revert "also, don't add target 'install' twice"
- oops
2024-03-02 22:04:00 +01:00
Ricardo Pardini
8a2fad5beb kernel: call make with INSTALL_MOD_STRIP=1 so modules are stripped
- also, don't add target 'install' twice
2024-03-02 20:50:36 +01:00
Ricardo Pardini
49e86b2cff u-boot: call olddefconfig after config hooks; use pipetty instead of unbuffer for make
- also: cli `uboot-config` produces a defconfig diff (useful to create post_config_uboot_target)
2024-03-02 20:48:01 +01:00
c0rnelius
88ed514b89
RTW88: RTL8822/21CU FIXUPS (#6314)
* patch: misc: rtw88: `rtl8822/21cu fixups`

Backported 6.7.y to 6.1.y.
Included fixups for 6.1, 6.6, 6.7 and added 6.8.

Signed-off-by: Patrick Yavitz <pyavitz@xxxxx.com>

* patch: misc: rtw88: 6.6: removed mbox

Signed-off-by: Patrick Yavitz <pyavitz@xxxxx.com>

* patch: misc: rtw88: `v2 rtl8822/21cu fixups`

Signed-off-by: Patrick Yavitz <pyavitz@xxxxx.com>

---------

Signed-off-by: Patrick Yavitz <pyavitz@xxxxx.com>
Co-authored-by: Patrick Yavitz <pyavitz@xxxxx.com>
2024-03-02 13:14:43 -05:00
Gunjan Gupta
2bce64e24d kernel: add hook to allow modifying kernel headers before packaging 2024-02-21 06:34:43 +05:30
Viacheslav Bocharov
d0cfcfa733 Add hook to activate build module for rtl88x2cs driver in kernel config 2024-02-10 15:32:34 +01:00
Viacheslav Bocharov
4e7363f227 Update commit for network driver rtl88x2cs. Re-enable build 2024-02-10 15:32:34 +01:00
Darsey Litzenberger
ce33bddb58 Make the colorized build output readable on a light background
This fixes the readability of colorized output of compile.sh when
running on a terminal with a light background.  It uses the COLORFGBG
environment variable similarly to how the ip(8) command does.

Signed-off-by: Darsey Litzenberger <dlitz@dlitz.net>
2024-02-09 19:38:03 +01:00