Commit Graph

878 Commits

Author SHA1 Message Date
Oleg
cfc1a6a4fc
move jetson-nano to media (#4017)
* move jetson-nano to media

* fix kernel legacy jetson-nano

* fix u-boot HDMI
2022-07-25 11:38:42 +02:00
Jianfeng Liu
c17adeca6e
update u-boot config name for rock-3a (#4007) 2022-07-19 14:12:04 -07:00
Werner
3e73c82956
Add basic images for RockPi-S (#3988)
* Add basic images for RockPi-S

* Rename rockpi-s.csc to rockpi-s.conf

* Need to have 2 x adv aka exposed images + fixing indent

* Add beta target

Co-authored-by: Igor Pecovnik <igor@armbian.com>
Co-authored-by: Igor Pečovnik <igorpecovnik@users.noreply.github.com>
2022-07-16 10:41:56 +02:00
brentr
663be6550f
Allow non-legacy RockPi-S images to boot from their built-in EMMC (aka SDNAND) chips (#4002)
This moves the console from UART2 to UART0 because it
relies on a upgraded Radxa loader blob that only supports console on UART0.
Discussion at:
https://forum.armbian.com/topic/11228-rock-pi-s-rk3308-cpu-is-it-supported-by-anything/page/3
2022-07-16 10:37:37 +02:00
lanefu
d06e43f104
csc support for radxa rock 4b+ using mainline edge (#4003) 2022-07-16 10:37:24 +02:00
CXM
5aecde7582
Fix clockworkpi-a06 desktop required package (#3945) 2022-06-30 09:30:18 +02:00
Oleg
074130d639
add CSC BananaPI R2 pro (rk3568) (#3848) 2022-06-23 12:45:31 +03:00
Paolo
2ca6a9381d
rockchip64: add rk3318-box tvbox board patch and configurations (#3921)
* rockchip64: add rk3318-box tvbox board patch and configurations
* rockchip64: add missing bcm43342 patch for edge kernel
2022-06-23 08:30:54 +02:00
Paolo
388e9bbf5e
Support for OrangePi4 LTS board (#3770)
* orange pi 4 LTS support added (uwe5622 wifi driver, es8316c codec)

* add orangepi 4 LTS device tree
* add uwe5622 driver to 5.15 and 5.18 rockchip64 patches
* add wpasupplicant to jammy cli packages
* fix es8316c asound.state (zeroing stereo enhancement which causes distortion)

* Add build targets

* Move from WIP state

Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
2022-06-14 12:11:33 +02:00
Jianfeng Liu
8c9490078b
use gpt partition table on rock-3a (#3874) 2022-06-10 18:33:55 -07:00
Jianfeng Liu
6388006b5b
add spi boot support for rock-3a (#3838) 2022-05-29 17:21:27 +02:00
Igor Pečovnik
0eb8fe7497
Movi Rockpi, Rock64 and Pine64so to supported as we have a maintainer (#3832) 2022-05-28 09:35:49 +02:00
Igor Pecovnik
907d427818
Set correct boot script for modern kernels 2022-05-27 08:36:11 +02:00
Oleg
98c13e2976
fix kernel legacy Station M1 (#3813) 2022-05-25 17:30:18 +02:00
Derek
330316fcb9
Move helios64 to blobless u-boot (#3810) 2022-05-25 16:22:23 +02:00
hzyitc
c4b62f848f
meson8b: Support HDMI (#3794)
* meson8b: Support HDMI

* meson8b: drm: Forcefully enable XRGB format

* Bump kernel version

* Upgrade configs

* Swap current and edge
2022-05-23 15:58:38 +02:00
Tony
cf9ad4ae60
Support Tritium H3 and H5 (#3787)
* Support Tritium H3 and H5 Beta CLI

* Add Tritium H3 and H5 to build targets

* Rename tritium-h3.csc to tritium-h3.conf

* Rename tritium-h5.csc to tritium-h5.conf
2022-05-18 07:39:41 +02:00
hzyitc
965ce372de
Support Xunlei Onecloud (#3749)
* Support Xunlei Onecloud

* meson: more led triggers
2022-05-12 19:12:21 +02:00
CXM
1f54bc33b8
Add clockworkpi-a06 support (#3768)
* feat: add clockworkpi-a06 support

* fix: disable dpms & screensaver
2022-05-11 21:47:28 +02:00
Jianfeng Liu
68729a3aa6
change rock-3a mainline dtb filename to rk3568-rock-3a.dtb (#3775)
* change rock-3a mainline dtb filename to rk3568-rock-3a.dtb

* add rock3a DT link for backward compatibility

* change rock3a default dtb name to mainline

* add rock-3a legacy dtb filename rock-3-a
2022-05-11 19:42:30 +02:00
Werner
4787e894e0
add maintainer hint (#3733) 2022-05-01 20:21:48 +02:00
Igor Pečovnik
a9105af4f8
Change board support status since we have a maintainer (#3713) 2022-04-26 09:26:49 +02:00
Ukhellfire
2a8e1ecac1
Add Orange Pi 3 LTS Support (#3628)
* Orange Pi 3 LTS
* Enable build targets

Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
2022-04-12 20:13:37 +02:00
Derek
1bbb46d6d4
Config file for espressobin, and add to targets (#3661)
* Config file for espressobin, and add to targets

* why is this file so wide?!
2022-04-11 00:41:28 +02:00
Oleg
eb54a13b05
update kernel 5.17.1 station-p2-edge (#3637) 2022-04-05 16:18:38 +02:00
Yakov
177d985f35
Rename radxa-zero.csc to radxa-zero.conf (#3601) 2022-03-29 12:38:01 +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
Oleg
f52a4193d0
Adding Pine64 Quartz64a as WIP target (#3539)
* add Quartz64a

* quartz64 to wip

* add m2\p2 current

* move patch archive
2022-03-20 22:58:21 +01:00
Oleg
2daf35107d
fix BT and wifi for station m1 legacy (#3533)
* fix BT for station m1 legacy

* add firmware
2022-03-13 09:05:14 +01:00
Igor Pecovnik
34d4be6b7b
Bugfix - wwitching one build target with another. 2022-03-08 07:55:39 +01:00
Yuntian Zhang
07d6630421
Add missing asound.state for Radxa Zeroes (#3523) 2022-03-06 11:33:49 +01:00
Igor Pečovnik
b0f7dbc519
Adjust build targets to meet maintainers list (#3526)
https://docs.armbian.com/Release_Board-Maintainers/
2022-03-06 10:26:31 +01:00
schwar3kat
6ff15fe54f
Add orangepi r1 plus lts (#3514)
* Rockchip64 Linux-5.10y - drivers for Motorcomm YT8531
renamed the previous "net-phy-Add-driver-for-Motorcomm-YT85xx-PHYs.patch" to "net-phy-Add-driver-for-Motorcomm-1-YT85xx-PHYs.patch" to fix patch order and added a new patch "net-phy-Add-driver-for-Motorcomm-2-YT8531-PHYs.patch"
The new YT8531 patch is sourced from from Lean's OpenWrt source rockchip/patches-5.10/601-net-phy-Add-driver-for-Motorcomm-YT8531-PHYs.patch.
It is intended to extend a patch identical to Armbian's "net-phy-Add-driver-for-Motorcomm-YT85xx-PHYs.patch" and is used without alteration.

* Add new board OrangePi R1 LTS (rk3328)
Includes uBoot and support for Linux-5.10y

* Rockchip64 Linux-5.15y drivers for YT8531 and other Motorcomm chips

YT8010, YT8510, YT8511, YT8512, YT8521. The driver patch set is sourced from Xunlong-OrangePi OpenWRT and is used as is, with only a name and makefile change.
A single patch set uses the same underlying source code as the Armbian Linux-5.10y set, but uses inbuilt logic to apply tweaks that depend on the Linux kernel version.
The patch is renamed similarly to the 5.10 patch set, net-phy-Add-driver-for-Motorcomm-T85xx+PHYs.patch to imply code base continuity with the previous similar Armbian patch sets.

* Rockchip64 Linux-5.15y support for Orange Pi R1 Plus LTS

Includes DTS and makefile changes. A driver for net phy YT8531C is in a separate commit

* change orangepi-r1plus-lts.csc to orangepi-r1plus-lts.conf

board is now supported

* - add patch also to 5.16.y
- fix wrong patch permission

* Fix Makefile patch

Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
2022-02-26 15:03:33 +01:00
Yuntian Zhang
3da96b2d77
Add support for Radxa Zero 2 (#3413)
Radxa Zero 2 is a small form factor SBC based on the Amlogic A311D
chipset that ships in a number of eMMC configurations:

- Amlogic A311D (Quad A73 + Dual A53) CPU
- 4GB LPDDR4 RAM
- 32/64/128GB eMMC
- Mali G52-MP4 GPU
- HDMI 2.1 output (micro)
- BCM4345 WiFi (2.4/5GHz a/b/g/n/ac) and BT 5.0
- 1x USB 2.0 port - Type C (OTG)
- 1x USB 3.0 port - Type C (Host)
- 1x micro SD Card slot
- 40 Pin GPIO header

Signed-off-by: Yuntian Zhang <yt@radxa.com>
2022-02-25 19:27:41 +01:00
Igor Pečovnik
84944eaaf4
Enable audio on Rpi in config (#3479)
* Enable audio on Rpi in config
* Add asound.state
2022-02-12 19:36:06 +01:00
Igor Pečovnik
c318d6fc79
Update build targets (#3456) 2022-02-10 15:16:30 +01:00
Oleg
b3070c7eef
fix use auto dtb for extlinux (#3466) 2022-02-10 15:04:16 +01:00
Oleg
daa0e70004
add image adv (#3467) 2022-02-10 15:02:50 +01:00
catalinii
188d6d0a8a
Support edge kernel for Rock 3A and rk35xx (#3371)
* Support edge kernel for Rock 3A and rk35xx

* Removing patch email headers

There is also some script floating around to do this automatically when pooling from patchwork

* Update rk356x-usb2-support.patch

* Remove email headers

* Remove email headers

* Remove email headers

* Update config and change edge branch

* Enable edge beta build

* Refresh the rk35xx patches and update the dts
Remove also previous wireless patches related to IPX removal

* Removing hirsute target

deprecated

Co-authored-by: Catalin Toda <catalinii@yahoo.com>
Co-authored-by: Igor Pečovnik <igorpecovnik@users.noreply.github.com>
Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
2022-02-01 22:53:43 +01:00
Igor Pečovnik
e90392f5b5
Adjust few RPi parameters (#3401) 2022-01-20 14:47:06 +01:00
Igor Pečovnik
3196fac0d1
Maintenance (#3395)
* Upstream patches and bug fixes

* Move to CSC
2022-01-11 18:53:52 +01:00
Oleg
6b490e1694
move kernel edge to 5.16 (#3387) 2022-01-11 15:26:11 +01:00
Igor Pečovnik
4ffef325ba
Several improvements for RPi builds (#3391)
* Several improvements for RPi builds

- attach to RPi kernels
- current (ubuntu) -> legacy
- current -> 5.10.y, edge, 5.15.y

* Move current Rpi to 5.15.y and edge to 5.16.y
2022-01-11 15:25:58 +01:00
Werner
9d8a424c03
Cleanup. Remove deprecated build targets (#3148)
* Update targets.conf

* Update targets-desktop-beta.conf

* Update targets-cli-beta.conf

* Update targets.conf

Update targets according ot current status of maintainer list
reduce userspaces to Focal
reduce to xfce default desktop
keep one minimal and one edge to check if they build at least.

* adjust support status according current maintainer sheet

* Readd pbp

* Readd pbp

* Readd C2

Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
2022-01-05 17:55:42 +01:00
Oleg
e453e4dfba
fix kernel legacy for firefly-rk3399 (#3369) 2021-12-27 08:27:01 +01:00
Oleg
08568a6005
add station m2\p2 (#3352) 2021-12-26 16:37:49 +01:00
Oleg
023de68882
switching Jetson Nano edge to kernel 5.15 (#3363) 2021-12-22 07:38:19 -05:00
Vyacheslav
d4a7b7f03e
Move JetHub D1/H1 to supported boards, reenable, add watchdog (#3357)
* JetHome: move JetHub D1/H1 to supported
* JetHome: add watchdog package to base system
* JetHome: reenable beta builds for JetHub D1/H1
2021-12-18 09:28:24 +01: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
Oleg
e36ed09290
T4 switch to extlinux (#3257) 2021-11-15 18:28:12 +01:00