Commit Graph

147 Commits

Author SHA1 Message Date
hzyitc
11d2ef63c3
Support Plymouth (#4133)
* Add plymouth-theme-armbian package

* Adjust all bootscripts to adapt plymouth

* Auto show logo accroding to BOOT_LOGO

* Enable plymouth detail mode when bootlogo=false

* Add a new board config var - HAS_VIDEO_OUTPUT

This var is used to indicate whether device has a HW video output.
If it's set to "no", we will disable kernel bootsplash, plymouth and BUILD_DESKTOP

* Rename package to be aligned with others

* Disable kernel bootloader, but keep the code for it

* Rather keep bootlogo in the kernel for a while, otherwise kernel upgrade will turn bootup into the darkness

Co-authored-by: Igor Pečovnik <igorpecovnik@users.noreply.github.com>
Co-authored-by: Igor <igor@armbian.com>
2022-09-13 15:16:30 +02:00
Igor Pečovnik
eca79f2a01
Switch to existing upstream brasnch / commit (#4175) 2022-09-13 15:14:06 +02:00
Igor Pečovnik
e066bf1bf3
Re-enable xradio on sunxi64-current (#4160)
* Re-enable xradio on sunxi64-current

* Fix path
2022-09-07 20:53:59 +02:00
Igor Pečovnik
814017affa
Clean boot logo patches (#4155)
Tested building on 5.15.y and 5.19.y
2022-09-05 11:12:48 +02:00
Igor Pečovnik
48628eb431
Remove deprecated wifi patches (#4140) 2022-09-03 23:20:45 +02:00
Igor Pečovnik
2c6f0c70e6
Re-enable Kernel bootsplash for 5.15.y or higher (#4132)
Tested on Meson64 and Rockchip64

Wasn't that hard after all :)
2022-08-30 07:52:06 +02:00
Igor Pečovnik
03dbd9d3a7
Move header revert patch under misc patches (#4128)
* Move header revert patch under misc patches as its only related to extra wifi drivers

* Update text
2022-08-29 08:44:21 +02:00
Igor Pečovnik
4dab880d11
Remove deprecated patch (#4119) 2022-08-27 08:33:18 +02:00
Igor Pečovnik
1373259602
Disable boot logo support as its broken (#4105) 2022-08-22 07:04:28 +02:00
Igor Pečovnik
ac5ee4d847
Remove deprecated patch (#4099) 2022-08-21 19:18:10 +02:00
Igor Pečovnik
d86a65c5c3
RTL88x2BU adjustement leftovers (#4094) 2022-08-20 08:49:59 +02:00
Igor Pečovnik
aa99cb64c3
Solve compatibility issues for some of wifi patches (#4087)
* Solve compatibility issues for some of wifi patches, disable those that needs more work

* Fix 8812au

* Update to re-enable RTL88x2CS driver for 5.19.2+

* Add 8723ds and rename others

* Following naming convention

* Name

* Adjust UWE5622 for 5.19.2

* Update UWE5622 patch for sunxi

* Enable last one

* Fixes for 8723DU

Co-authored-by: Vyacheslav Bocharov <adeep@lexina.in>
2022-08-20 07:44:35 +02:00
hzyitc
0d5390dd32
Bugfix: unable to build with bootsplash (#4090) 2022-08-19 20:48:46 +02:00
Igor Pečovnik
3435c46367
Upstream wireless driver is broken at head. Attach it to last known working (#4069)
Tested with 5.4.y and 5.19.y
2022-08-13 21:17:06 +02:00
Igor Pečovnik
f06452c091
Enable AUFS, adjust kernel configs (#4054)
* Enable AUFS, adjust kernel configs

* Enable aufs

* rpi
2022-08-09 09:14:53 +02:00
The-going
97c6e5e9dd
sunxi-5.19: Initial state for megous patches (#4048)
* sunxi-5.19: Initial state for megous patches

* Add the ability to do 5.19

* Move to 5.19

- tested both
- removed broken Opi Zero xradio driver https://armbian.atlassian.net/browse/AR-1280

* sunxi-5.19: fix tag for switch

* sunxi-5.19: Initial state for armbian patches

* sunxi-5.19: Add armbian patches to series.conf file

* sanxi-5.19: Add other 2 patches

* sunxi-5.19: Limit to use the 'wireless/xradio' module

Limit the kernel version to less than 5.19 to use
the 'wireless/xradio' module

Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
2022-08-05 21:23:49 +03:00
Igor Pečovnik
e366e48fa3
Disable bootsplash for linux ≥ 5.19 (#4042) 2022-08-03 22:22:42 +02:00
Igor Pečovnik
ae1c5ecd5c
AUFS breaks on 5.15.y (#3866) 2022-06-07 10:40:58 +02:00
Igor Pečovnik
8ba7b7e214
Switching the rest to 5.18.y (#3860)
* Update kernel configs

* Switch sunxi edge to 5.18.y

* Move sunxi to 5.18.y and re-enable AUFS

* Change version - temporally to make a build from here

* Update config

* 88xx was fixed in the mean time.

* Put version back

* Fix sunxi legacy, disable aufs on 5.10.y since its broken

* Upstream changed in the mean time

* Add a patch to enable 8821cu compilation at 5.18

https://github.com/armbian/build/pull/3814

* Re-enable CONFIG_RTL8822BU in edge

* Update CONFIG_RTL8XXXU

* Bump imx6

* Bump uefi kernels to 5.18.y

* Bump mvebu64 and switch odroid xu4 to 5.18
2022-06-07 07:49:08 +02:00
Chun-Sheng, Li
db48d62833
Closes #3760 (#3818)
* Closes #3760

* Small code clenaup

Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
2022-05-28 07:51:20 +02:00
Julian Sikorski
558901ac68
Drop AUFS from kernels below 5.10 as these are not supported by upstream (#3822) 2022-05-26 18:46:54 +02:00
The-going
e7d7dab1bb
fix: check and add debian package compression for kernel legacy (#3807) 2022-05-23 15:53:38 +02:00
Igor Pečovnik
897674aa74
Bump and freeze kernel at last known working versions (#3736)
* Freeze kernel at last known working versions

* Fix media kernel

* Update rockchip64 to 5.17.y

* Move patches up

* Re-ad aufs

* Fix rpi kernels
2022-05-03 08:27:32 +02:00
Igor Pečovnik
093f503073
Kernel 5.10.y need patch adjustment for boot splash (#3741) 2022-05-03 07:54:17 +02:00
Oleg
b8841b9c87
fix build for kernel 5.17 (#3729) 2022-04-30 18:48:12 +02:00
The-going
c7b11b839b
Sunxi 5.17 (#3701)
* sunxi-5.17: Add series patches rtw88, rtw89 drivers

* Fix sunxi-5.17 for v5.17.4 version

* Print the error message and its contents

* rtl8822bs: used if kernel version less 5.16

Restrict the use of the wifi driver" "rtl8822bs" for
the kernel version less than 5.16
2022-04-20 22:01:33 +03:00
Igor Pečovnik
003a353d15
Re-enable AUFS (fixed on 5.17.y) and update kernel configs (#3698) 2022-04-19 20:28:32 +02:00
The-going
7c2f24d46c
Move sunxi 5.16 to 5.17 (#3696)
* Add reg_ahci_5v status okay for bananapro board

* Bananapro: add AXP209 regulators

* Fix series.conf, Disable the patch that is not being applied.

* Fix linux-sunxi64-edge.config for v5.17.3

* Fix linux-sunxi-edge.config to v5.17.3

* Switch EDGE to core 5.17 for sunxi

* Remove the old rtl8723cs driver which is incompatible with the new kernel and cannot be used.

* Use AUFS if the kernel version is less than 5.16

* Print the last 20 lines of the log if the kernel compilation failed.

* Set KERNEL_VERSION_LEVEL to 5.17

Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
2022-04-18 23:26:29 +02:00
Igor Pečovnik
f2483323bf
Re-enable AUFS (#3662) 2022-04-11 16:00:13 +02:00
Vyacheslav Bocharov
98ccbc9d26
Update RTL8811CU driver to latest github source 2022-04-02 09:28:13 +03:00
Vyacheslav
d1d7edd8ef
Update RTL8811CU driver to latest source patch driver for 5.17+ kernel (#3586) 2022-03-28 01:18:30 +02:00
Oleg
03ef96715e
fix emmc nano-pc-t4 (#3557)
* fix emmc nano-pc-t4
* fix node and del not used patch
2022-03-25 20:51:03 +01:00
Igor Pečovnik
e6c7b84c02
Bringing wireless driver support to 5.15.y + (#3538) 2022-03-16 17:53:33 +01:00
Igor Pečovnik
c1ccfe11b0
Adjust bootsplash patches for 5.15.y / 5.15.y (#3501) 2022-02-17 22:05:08 +01:00
Igor Pečovnik
2638284b3b
Enable AUFS and Docker (#3502)
* Enable AUFS and Docker

* Add AUFS to configs

* Update configs
2022-02-17 22:04:55 +01:00
Igor Pečovnik
1e37959e53
Bumping sunxi/64, xu4, rockchip and mvebu64 to 5.16.y (#3453)
* Prepare xu4 edge for 5.16.y, move current of imx6 to 5.15.y and edge to 5.16.y

- fix bootsplash on 5.16.y

* rk322x: advance current to 5.15 and edge to 5.16

* rockchip: advance current kernel to 5.15, edge to 5.16

* - adjust configs
- fix bootsplash patches
- adjust aufs

* Switch sunxi / sunxi64 current to 5.15.y, edge to 5.16.y

- cleanup bootsplash patches
- adjust configs

* Update mvebu64

Co-authored-by: Paolo Sabatino <paolo.sabatino@gmail.com>
2022-02-10 20:32:58 +01:00
iav
4034a8f535
switch RTL8188EU USB WiFi driver with 5.15+ kernel to mainline (#3464)
https://www.phoronix.com/scan.php?page=news_item&px=Linux-5.15-Staging
2022-02-07 09:52:39 +01:00
csrbzhb
367280b10d
fix github mirror.china github speed up (#3451) 2022-02-02 10:55:01 +01:00
The-going
d885bfc97d
Patching sunxi (#3445)
* waiter_local_repo: Fixed incomplete logic

Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>

* A series of patches for sunxi v5.15.16

Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>

* DEBUG

* check 70

* check 101

* Add 101 Armbian patches as series

Patches are renamed using the logic of the file structure
and the essence of the changes, sorted in the order
of their receipt. Fixed a lot of incorrect overlay
of some pieces in patches. Several small patches are
combined, because they changed one file.

Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>

* Remove old patches that have been reworked into a series

Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>

* Fix for apply to v5.15.17

* Two Bluetooth-BTRTL patches for sunxi will be applied in the series.

Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>

* check 113

* Fix print output

* Revert "DEBUG"

This reverts commit 49e2c7fdc0.
2022-01-28 19:08:04 +01:00
catalinii
f6143eff67
Fix the uboot for rock-3a (#3271)
* Sync kernel config with radxa and remove packaging patch

* Merge the rockchip64 legacy config as well

* Lower priority of EFI partitioning against DOS partitioning which is used by Armbian

Co-authored-by: Catalin Toda <catalinii@yahoo.com>
2021-12-25 11:57:26 -05:00
Ricardo Pardini
90e0fe0ba2
extensions framework + UEFI aarch64/x86 + rpi4b + core changes/fixes (#3300)
* extensions framework (née "fragments")

- this should actually change nothing at this point, just add capabilities
- the framework is implemented in lib/extensions.sh
- the "if function x exists then call x" replaced with call_extension_method()
  - +inline documentation
  - +compatibility names

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* extensions framework; meta-extensions: auto-docs and sample extension gen

- 2 extensions dealing with extensibility itself
  - detect-unused-extensions: shows which extensions are enabled, but never called.
  - gen-sample-extension-docs: generates a sample empty extension & Markdown documentation for extensions

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* new extension methods and features via config variables in core Armbian

- `SKIP_EXTERNAL_TOOLCHAINS=yes` - does not download or use any linaro toolchains, only build host-installed ones
- `SKIP_BOOTSPLASH=yes` - does not patch kernel for splash file
- `EXTRA_BSP_NAME=xyz` - allows for BSP variants, useful for when extensions modify the BSP
- `EXTRA_ROOTFS_MIB_SIZE=x` - add x mib's to rootfs size, for use with very small images
- `KERNEL_EXTRA_TARGETS` - what extra targets to make kernel for, default to "modules dtbs"
- `BOOTCONFIG=none` - does not build nor install u-boot; also doesn't handle bootscripts et al
- `unset KERNELSOURCE` - does not build nor install kernel, nor build initrd, nor build nor install firmware
- `ARMHF_ARCH=skip` - does not add armhf to apt/dpkg, thus pure arm64
- `SKIP_ARMBIAN_REPO=yes` - results in armbian.list.disabled in the final image
- define `APT_EXTRA_DIST_PARAMS` with apt-cacher-ng options and use it for `PACKAGE_LIST_INSTALL/REMOVE` et al
- initial support for targeting x86/amd64 UEFI and BIOS
    - some do's/don'ts for x86/amd64, like a different `UBUNTU_MIRROR` default
    - GPT/EFI(ESP) partitions (fat, `UEFISIZE=256` to enable, mount `UEFI_MOUNT_POINT=/boot/efi`, first on disk but ends
      up at `$uefipart`=15)
    - GPT/BIOS partitions (fat, `BIOSSIZE=1` to enable, second on disk but ends up at partition 14)
    - `UEFI_FS_LABEL="armbiefi"` - to set the FAT label for the EFI partition, visible in Win/Mac
    - hard-requires gdisk package host-side
- add add_host_dependencies() extension method; fill `EXTRA_BUILD_DEPS="pkg pkg2"` to install to host before toolchains
  download
- add pre_prepare_partitions() extension method, for custom partition size calculations
- add create_partition_table() extension method, used to do full-custom partitioning if `USE_HOOK_FOR_PARTITION=yes`
- add post_create_partitions() extension method, mostly for easy debugging
- add post_write_sdcard() extension method, where you can also set `SKIP_VERIFY=yes` to skip sdcard verification
- add post_install_kernel_debs() extension method.
- multiple fixes to bsp to avoid spurious errors when files are not where it expects
- v4: detect `update-initramfs` failure and abort build with useful message if it does
- v4: show useful stacktrace in `exit_with_error`
  - if `ERROR_DEBUG_SHELL=yes`, drop into a shell before unmounting/deleting everything, so we can inspect what went wrong
- v4: display a message before `apt-get remove PACKAGE_LIST_BOARD_REMOVE` packages, so any errors while removing are easy to understand
- v4: preserve kernel .config's dates when copying

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* extensions framework; refactor tool fetching/building into extensions

- a few examples of core refactoring using extensions
- sunxi-tools extension, enabled by 2 different sunxi family includes ("reuse" example)
- marvel-tools extension, enabled by 2 different mvebu family includes
- rkbin-tools extension, enabled by rockship64_common family include
- amlogic-fip/c2-blobs stuff refactored directly into meson64_common.inc ("single-use" example)
- removed the 'testings' fetch_from_repo completely since not used anywhere.

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* .wip's for UEFI arm64 and UEFI/BIOS x86 via new GRUB extension

- v3: added `growroot`-awareness to `armbian-resize-filesystem`
    - the partition-growing part of `armbian-resize-filesystem` does not deal correctly with the UEFI layout
    - `growroot` is installed on UEFI images by default, that handles growing partition during initramfs
    - now `armbian-resize-filesystem` handles `resize2fs` only, and works.
- v4: reworked UEFI board/family/include structure:
    - use Distro's `linux-generic` kernel only for `current`
    - `edge` now builds it's own pure-mainline `5.15.y` kernel, for both x86 and arm64
        - `.config` taken from Ubuntu, probably needs tuning for EXTRAWIFI=yes et al
- v4: introduce `SKIP_KERNEL_SYMLINK=yes`, tested in `builddeb`
    - to avoid symlinking kernel; u-boot likes it, but grub and flash-kernel hates it
- v5: many fixes
- v7: more small fixes.

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* .wip for the RaspberryPi 4B via new flash-kernel extension

- this does not build it's own kernel "yet", but uses default linux-raspi kernel from Ubuntu
- flash-kernel is not really a bootloader
    - it just prepares kernel et al a FAT partition for booting by the RPi4b bootloader
    - flash-kernel is standard Debian package, but has only been tested on Ubuntu releases
- it is really only known-working since Hirsute release.
  - Debian's rpi kernel is armhf only, so out of scope here, at least until we add source-built kernels.
- v3: fixed focal rootfs build. untested.
- v3: better variable names, preparing for source-built kernel.
- v5: new edge build with pure mainline kernel.
- v6: many fixes and some hacks for packaging and layout, also firmware (using Ubuntu's)

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* Added first patch to edge x86 related to wifi drivers

* extensions: leave hostapd alone; remove hackish ext; block reentrancy

- package-list-utils does not belong in this PR
- grub or bcm2711 is not the place to remove hostapd
- block recursive enable_extension() calls, for now.

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* gen-sample-extension-docs: fix: avoid counter in generated sample

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* extensions: dependencies: enable_extension() in extensions with a stack

- and better stacktraces, I hope

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* Remove code from package list since we don't have it in repository
Adjust kernel config to disable driver that needs further polishing.

* Allow amd64 to build the same desktops as aarch64. We only have this limit for armhf, where some desktops don't work

* amd64: allow building amd64 on aarch64 with system toolchain

- conditionally add gcc-x86-64-linux-gnu to hostdeps

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* add libelf-dev directly to hostdeps (and Dockerfile), remove extension

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* packaging: remove SKIP_KERNEL_SYMLINK hack, fix the root cause

- which was the missing $image_name for non-arm64 & non-arm, so: x86 for example

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* grub: really obliterate u-boot stuff from BSP

- for now. soon we'll refactor u-boot so not have to do this

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* flash-kernel: really obliterate u-boot stuff from BSP

- for now. soon we'll refactor u-boot so not have to do this

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* extensions: add host_dependencies_ready() hook

- this passes FINAL_HOST_DEPS containing all hostdeps for the run after they're installed

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* Add verification functions for correct selection.

* If UEFI Skip symlink creation

* Do not create dtb package for amd64

* Skip scripts folder cleaning if build process native.

Skip creating  postinst prerm scripts  for headers.

* Skip applying headers-debian-byteshift.patch if build native

* Fix architecture syntax as x86_64

* Revert "amd64: allow building amd64 on aarch64 with system toolchain"

This reverts commit 0c5ee20bb1.

* Compare architectures before starting compilation.



Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>

* extensions: cleanups after fixes by the-Going

- packaging:
  - there is _no need_ anymore for the symlink hack, CONFIG_EFI or no. But check is great, see below
  - it's not `amd64` that has no DTB's, it's all UEFI, thus: `is_enabled CONFIG_EFI`, thanks!
- Explicitly disallow "reverse cross compile" in amd64.conf.
- whitespace-only-deletions: revert. we shall shellfmt the whole thing one day, but not today.
- fix a few syntax warnings in newly introduced code (floating `$ARCH` vs `"${ARCH}`) - blame shellcheck

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* packaging: fix: turns out a lot of boards have CONFIG_EFI=y, can't use that for dtb/no-dtb decision.

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* grub: remove debug

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* firmware: allow installing `armbian-firmware-full`; make it really full

- can now use `BOARD_FIRMWARE_INSTALL="-full"` to install full firmware for the board. enable for UEFI.
- don't rely on KERNELSOURCE for firmware-related decisions. introduce `INSTALL_ARMBIAN_FIRMWARE` which defaults to `yes`
- rpi4b/flash-kernel: disable Armbian firmware; we need linux-firmware-raspi2, which conflicts.

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* extensions: log to /${LOG_SUBPATH}/ instead of fixed /debug/

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* extensions: introduce cleanup_extension_manager() called by build-all-ng's unset_all()

- to reset/unset everything done by the the initializer, so build can run again

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* extensions: remove 'global' logging, for use with build_all_ng

- enable_extensions() will have to live on without logging to file. it's just too early.
- now init EXTENSION_MANAGER_TMP_DIR in initialize_extension_manager()
- now init EXTENSION_MANAGER_LOG_FILE in initialize_extension_manager()

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* extensions: build-all-ng.sh bugfix due to extension's debug to stdout

- extensions (among other things) can produce output to stdout when activated
- fix: check_hash() produced "idential" (sic, now changed to IDENTICAL) to stdout as a trigger
- debugging output got mixed with "idential", rendering hash cache void for families that used extensions
  - eg: sunxi, others
- fix is to send stdout to the bitbucket when sourcing the board & arch config files
- proper fix would be stop using stdout in this case and use return code for check_hash()
  - one day soon

Signed-off-by: Ricardo Pardini <ricardo@pardini.net>

* Add CI build targets

Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
Co-authored-by: The-going <48602507+The-going@users.noreply.github.com>
2021-12-06 09:49:49 +01:00
Igor Pecovnik
9e61b3a762
Implementing workaround for correct AUFS sources selection
Closes https://github.com/armbian/build/issues/3297
2021-11-29 11:59:13 +01:00
The-going
ada47377b5
Patches megous current branch to v5.10.82 (#3294)
* Kernel switch tag: v5.10.82
* Rework series megouse for v5.10.82
* Switch new packaging for kernel 5.10 and more
2021-11-28 21:31:24 +01:00
Vyacheslav
07523f5a9e
Add gpio power reset for hci_h5 controllers in h5_btrtl_open (#3208) 2021-10-19 21:02:24 +02:00
Bohdan
c8a68820d3
Add support for rtl8822cs (hci_ver 0x8) bluetooth (#3201)
Signed-off-by: chbgdn <chbgdn@gmail.com>
2021-10-18 20:36:28 +02:00
Igor Pecovnik
fbaeb940ca
Consolidate wireless driver related patch
Fixing troubles in https://github.com/armbian/build/pull/3154
2021-09-26 17:25:52 +02:00
Piotr Szczepanik
0069ad60a6
Preliminary support for rockchip rk35xx boards (#3111) 2021-09-15 22:08:39 +02:00
Vyacheslav
c3051b46ff
Add driver for Realtek 8822CS (SDIO) Wi-Fi adapter. (#3101) 2021-08-21 11:04:06 +02:00
Igor Pecovnik
4bc2dd27b1 Bugfix - disable wireless driver for older kernels and add a few upstream patches for meson64 legacy
Kernel was only tested for building.
2021-08-06 18:27:23 +02:00
Rob Logan
e2fa720f1d
Updated_Upstream_rtl88x2bu (#3083)
* Updated_Upstream_rtl88x2bu

* Updated_Upstream_rtl88x2bu
2021-08-06 08:19:09 +02:00