Skip to content
Permalink
Browse files
Rename dev to edge (#134)
* Update Developer-Guide_User-Configurations.md

* Update Developer-Guide_Build-Preparation.md

* Update Process_Merge-Policy.md

* Update User-Guide_Getting-Started.md

* Update sun4i.md

* Update sun7i.md

* Update sun50iw1.md

* Update sun8i.md

* Update User-Guide_Armbian-Config.md

* FEL is deprecated

Removed also outdated information about stone-age legacy kernels

* Update Process_Release-Model.md
  • Loading branch information
EvilOlaf committed Mar 25, 2021
1 parent a996fb1 commit 6c9985c9f5a0f593ab2593eb8054b6c658445d25
@@ -46,18 +46,18 @@ You may edit it to your needs or create different configuration files using it a
Alternatively you can supply options as command line parameters to compile.sh.
Example:

./compile.sh BOARD=cubietruck BRANCH=current KERNEL_ONLY=yes RELEASE=bionic
./compile.sh BOARD=cubietruck BRANCH=current KERNEL_ONLY=no RELEASE=focal

Note: Option `BUILD_ALL` cannot be set to "yes" via command line parameter.

### Base and descendant configuration

You can create one base configuration (`config-base.conf`) and use this in descendant config (`config-dev.conf`). Three parameters (*BRANCH*, *RELEASE*, *COMPRESS_OUTPUTIMAGE*) will be overwritten.
You can create one base configuration (`config-base.conf`) and use this in descendant config (`config-edge.conf`). Three parameters (*BRANCH*, *RELEASE*, *COMPRESS_OUTPUTIMAGE*) will be overwritten.

```
. ./config-base.conf
BRANCH="dev"
BRANCH="edge"
RELEASE="buster"
COMPRESS_OUTPUTIMAGE="sha,gz"
```
@@ -81,7 +81,7 @@ This is a typical board configuration:
MODULES="hci_uart gpio_sunxi rfcomm hidp sunxi-ir bonding spi_sun7i 8021q a20_tp #ap6211"
MODULES_NEXT="brcmfmac bonding"
#
KERNEL_TARGET="legacy,current,dev"
KERNEL_TARGET="legacy,current,edge"
CLI_TARGET="buster,bionic,focal:current"
DESKTOP_TARGET="stretch:legacy,current"
@@ -110,9 +110,9 @@ or for command line interfaces Ubuntu Bionic based images with legacy kernel 4.1

CLI_BETA_TARGET="bionic:legacy"

or for image with latest upstream development kernel.
or for image with latest upstream development/bleeding edge kernel.

DESKTOP_BETA_TARGET="buster:dev"
DESKTOP_BETA_TARGET="buster:edge"


## Using alternate armbian builder repos and branches
@@ -1,4 +1,5 @@
# FEL/NFS boot explanation
**Warning: Armbian has dropped support for old legacy 3.x kernels. Therefore FEL is no longer supported/available. This page is archived and not maintained.**

## What is FEL/NFS boot?

@@ -4,8 +4,8 @@

You can add your own patches outside build script. Place your patches inside appropriate directory, for kernel or u-boot. There are no limitations except all patches must have file name extension `.patch`. User patches directory structure mirrors directory structure of `patch`. Look for the hint at the beginning of patching process to select proper directory for patches. Example:

[ o.k. ] Started patching process for [ kernel sunxi-dev 4.4.0-rc6 ]
[ o.k. ] Looking for user patches in [ userpatches/kernel/sunxi-dev ]
[ o.k. ] Started patching process for [ kernel sunxi-edge 4.4.0-rc6 ]
[ o.k. ] Looking for user patches in [ userpatches/kernel/sunxi-edge ]

Patch with same file name in `userpatches` directory tree substitutes one in `patch`. To _replace_ a patch provided by Armbian maintainers, copy it from `patch` to corresponding directory in `userpatches` and edit it to your needs. To _disable_ a patch, create empty file in corresponding directory in `userpatches`.

@@ -14,15 +14,15 @@ Patch with same file name in `userpatches` directory tree substitutes one in `pa
If file `userpatches/lib.config` exists, it will be called and can override the particular kernel and u-boot versions. It can also add additional packages to be installed, by adding to `PACKAGE_LIST_ADDITIONAL`. For a comprehensive list of available variables, look through `lib/configuration.sh`. Some examples of what you can change:

PACKAGE_LIST_ADDITIONAL="$PACKAGE_LIST_ADDITIONAL python-serial python" # additional packages
[[ $LINUXFAMILY == sunxi64 && $BRANCH == dev ]] && BOOTBRANCH='tag:v2017.09' # conditionally change u-boot git branch/tag
[[ $LINUXFAMILY == sunxi64 && $BRANCH == edge ]] && BOOTBRANCH='tag:v2017.09' # conditionally change u-boot git branch/tag
KERNELBRANCH="tag:v5.4.28" #always change to this kernel tag

## User provided kernel config

If file `userpatches/linux-$KERNELFAMILY-$KERNELBRANCH.config` exists, it will be used instead of default one from `config`. Look for the hint at the beginning of kernel compilation process to select proper config file name. Example:

[ o.k. ] Compiling dev kernel [ @host ]
[ o.k. ] Using kernel config file [ config/linux-sunxi-dev.config ]
[ o.k. ] Compiling edge kernel [ @host ]
[ o.k. ] Using kernel config file [ config/linux-sunxi-edge.config ]

## User provided sources config overrides

@@ -28,7 +28,7 @@ Supported boards will have the most scrunity with code review.
- DT changes reviewed by at least one person familiar with this SoC (lead maintainer or deputy), _tested-by_ the contributor who sends it (armbianmonitor).
- Trivial module activation doesn't matter.

### dev branches
### dev/edge branches

Constraints are at the discretion of the SoC mantainer. This builds are not expected to be stable.

@@ -49,15 +49,15 @@ Boards have different levels of commitment / support. EOL, CSC, WIP, Supported.
#### kernel config

* Changes in legacy & current kernel config should provide at least _tested-by_ with `armbianmonitor -u`.
* Changes in dev are at the discretion of maintainer. No constraints.
* Changes in edge are at the discretion of maintainer. No constraints.

#### kernel sources

Change kernel source repos, branches, versions can be very disruptive to stable builds. Sufficient communication should occur stable changes.

* U-Boot and kernel version bump for legacy and current requires _tested-by_ from Maintainers and/or testers on at least two different boards for the impacted platform.
* Kernel sources switch (legacy current) needs a discussion on forum or github or IRC and documented in PR and _Acked-by_ Lead Maintainer. These changes are risky and things can go terrible wrong here...
* Dev source changes are at the discretion of the Lead Maintainer.
* edge source changes are at the discretion of the Lead Maintainer.
* Board family tweaks require at least _reviewed-by_.

#### packages
@@ -18,7 +18,7 @@ Branches in Armbian follow this convention:

- **Master branch (master):** Main development will happen on the master branch. This is the latest and greatest branch, but is always "stable" and "deployable". All tests always pass on this branch.
- **Maintenance branch (support):** This is the long-term maintenance branch per release.
- **Development branch (dev)**: This is a branch created for lengthy and/or involved feature development that could destabilize master.
- **Bleeding edge branch (edge)**: This is a branch created for lengthy and/or involved feature development that could destabilize master.

Each Armbian release will have the following version format:

@@ -18,7 +18,7 @@ The tool needs root privileges to work and can be launched by entering ```sudo a
- **N**ightly - switch between nightly automated beta and stable builds,
- **B**ootenv - edit boot environment and alter kernel boot parameters,
- **H**ardware - toggle board low level functions: UART, I2C, SPI, ...
- **S**witch - switch to/between alternative kernels: legacy, current, dev
- **S**witch - switch to/between alternative kernels: legacy, current, edge
- **S**SH - reconfigure SSH daemon. Permit root login, toggle ssh key and mobile phone authentication,
- **F**irmware - execute apt update and upgrade to update your system,
- **Z**shell - toogle stock BASH and ZSH with [Oh My ZSH](https://ohmyz.sh/) and [tmux](https://en.wikipedia.org/wiki/Tmux)
@@ -47,13 +47,13 @@ The level of kernel support does depend on the board family. If in your specific
- not very well tested
- for end users

### What are experimental/dev images?
### What are experimental/bleeding edge images?

- made from unstable branches
- unstested
- untested
- for experienced users only

Do not use testing or dev images in a productive environment. We do appreciate your constructive [feedback to developers](https://forum.armbian.com/forum/4-development/).
Do not use testing or edge images in a productive environment. We do appreciate your constructive [feedback to developers](https://forum.armbian.com/forum/4-development/).

### How to check download authenticity?

@@ -1,6 +1,5 @@
**Mainline kernel** (`next`/`dev` branches)
**Mainline kernel** (`current`/`edge` branches)

- no MALI drivers
- [different GPIO numbering](https://linux-sunxi.org/GPIO)
- no video acceleration
- experimental video acceleration
- `schedutil` governor may cause clicks and pops on audio output - change to `ondemand` to work around this issue
@@ -1,11 +1,4 @@
**Legacy kernel images (all boards) ** (`default` branch)

- Arm64 browsers (Firefox, Chromium, Iceweasel) may crash frequently. Armhf versions of these browsers should be used instead (Iceweasel and Firefox preinstalled in desktop images should be of the right architecture out of the box)
- HDMI output supports only limited number of predefined resolutions
- Hardware accelerated video decoding supports only limited number of video formats
- Kernel lockups on boot may happen, no solution yet: https://github.com/longsleep/build-pine64-image/issues/51

**Mainline kernel images (all boards) ** (`next` and `dev` branch)
**Mainline kernel images (all boards) ** (`current` and `edge` branch)

- [Check mainlining effort status matrix](https://linux-sunxi.org/Linux_mainlining_effort#Status_Matrix)

@@ -1,12 +1,7 @@
**Legacy kernel** (`default` branches)
**Mainline kernel** (`current`/`edge` branches)

- unstable Bluetooth stack

**Mainline kernel** (`next`/`dev` branches)

- No Mali drivers
- No hardware accelerated video decoding
- [Different GPIO numbering](https://linux-sunxi.org/GPIO) compared to the legacy kernel
- [Different GPIO numbering](https://linux-sunxi.org/GPIO) compared to old legacy 3.x kernel
- `schedutil` CPU governor may cause clicks and pops on audio output - change to `ondemand` to work around this issue

**Board: Lamobo R1 **
@@ -1,14 +1,5 @@
**Legacy kernel images (all boards) ** (`default` branch)
**Mainline kernel images (all boards) ** (`current`/`edge` branches)

- HDMI output (if exists) supports only limited number of predefined resolutions
- TV Out is neither supported nor works as expected (only PAL/NTSC resolution, overscanning, no h3disp support, [notes for OPi Zero](https://forum.armbian.com/topic/3837-psa-orange-pi-zero-expansion-board-tv-out-not-working-solution/))
- 1-Wire protocol, reading out DHT11/DHT22 sensors or [S/PDIF](https://forum.armbian.com/topic/1891-spdif-output-on-nanopi-m1/) requires setting the minimum CPU frequency to 480MHz or higher
- Hardware accelerated video decoding supports only limited number of video formats
- 'Out of memory' (OOM) issues are possible due to a kernel bug

**Mainline kernel images (all boards) ** (`next`/`dev` branches)

- No Mali drivers
- No hardware accelerated video decoding
- TV Out is not supported on any H2+/H3board

0 comments on commit 6c9985c

Please sign in to comment.