when there are some reasons which board failed to boot, eg rootfs crashes.
/init will fail to panic().
panic()
{
local console rest IFS
if command -v chvt >/dev/null 2>&1; then
chvt 1
fi
echo "$@"
# Disallow console access
if [ -n "${panic?}" ]; then
echo "Rebooting automatically due to panic= boot argument"
sleep "${panic}"
reboot
exit # in case reboot fails, force kernel panic
fi
...
}
when panic is set, there is no chance to fail into a shell, to debug what happens.
and device just keep reboot.
remove panic from bootargs to make it possible for users to find out why their boards fail to boot.
Signed-off-by: Zhang Ning <832666+zhangn1985@users.noreply.github.com>
AR-1 - Adding support category for distributions
AR-4 - Remove Allwinner legacy
AR-5 - Drop Udoo family and move Udoo board into newly created imx6 family
AR-9 - Rename sunxi-next to sunxi-legacy
AR-10 - Rename sunxi-dev to sunxi-current
AR-11 - Adding Radxa Rockpi S support
AR-13 - Rename rockchip64-default to rockchip64-legacy
AR-14 - Add rockchip64-current as mainline source
AR-15 - Drop Rockchip 4.19.y NEXT, current become 5.3.y
AR-16 - Rename RK3399 default to legacy
AR-17 - Rename Odroid XU4 next and default to legacy 4.14.y, add DEV 5.4.y
AR-18 - Add Odroid N2 current mainline
AR-19 - Move Odroid C1 to meson family
AR-20 - Rename mvebu64-default to mvebu64-legacy
AR-21 - Rename mvebu-default to mvebu-legacy
AR-22 - Rename mvebu-next to mvebu-current
AR-23 - Drop meson64 default and next, current becomes former DEV 5.3.y
AR-24 - Drop cubox family and move Cubox/Hummingboard boards under imx6
AR-26 - Adjust motd
AR-27 - Enabling distribution release status
AR-28 - Added new GCC compilers
AR-29 - Implementing Ubuntu Eoan
AR-30 - Add desktop packages per board or family
AR-31 - Remove (Ubuntu/Debian) distribution name from image filename
AR-32 - Move arch configs from configuration.sh to separate arm64 and armhf config files
AR-33 - Revision numbers for beta builds changed to day_in_the_year
AR-34 - Patches support linked patches
AR-35 - Break meson64 family into gxbb and gxl
AR-36 - Add Nanopineo2 Black
AR-38 - Upgrade option from old branches to new one via armbian-config
AR-41 - Show full timezone info
AR-43 - Merge Odroid N2 to meson64
AR-44 - Enable FORCE_BOOTSCRIPT_UPDATE for all builds
Adjust configuration, merge with general purpose armv7 Fedora kernel, remove deprecated patch, move coherent_pool and cma to boot script
Signed-off-by: Igor Pecovnik <igor.pecovnik@gmail.com>
atomic_pool_size can be controlled by kernel cmdline,
coherent_pool=nn[KMG] [ARM,KNL]
then use this parameter to replace the patch.
Signed-off-by: Zhang Ning <832666+zhangn1985@users.noreply.github.com>
* Initial Mvebu RFC https://github.com/armbian/build/issues/1426
Signed-off-by: Igor Pecovnik <igor.pecovnik@gmail.com>
* mvebu: add missing patches
Signed-off-by: Igor Pecovnik <igor.pecovnik@gmail.com>
* mvebu: change making u-boot targets to standard way, adjust patches and config
Signed-off-by: Igor Pecovnik <igor.pecovnik@gmail.com>
* helios4: set default branch to use U-Boot 2018.11
Switch over to U-Boot 2018.11 that has been used for some time in next
branch.
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* mvebu: helios4: Enable DEV branch
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* u-boot: Add RTC support on Clearfog and Helios4
Added DM driver for mvebu RTC and enable it on Clearfog and Helios4
configuration.
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* add boot-marvell.cmd backward compatibility
The patches added missing variable that used on boot-marvell.cmd and
also adjust the some memory addresses to prevent crash due to usage of
fdt_high and initrd_high.
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* helios4: Added SPI NOR flash target
Build bootable SPI NOR flash image.
Change the boot order to USB -> SATA -> MMC
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* Restore SPI support on U-Boot 2019.04
* mvebu: kernel: Added Wake-On-GPIO and WoL support
The patch set was missing during transition.
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* [#1429] SolidRun's ARMADA A388 SOM U-Boot ODT Update
Old versions of U-Boot did not configure correctly the ODT on data
signals of DDR RAM on SolidRun's ARMADA A388 SOMs.
According to SolidRun Knowledge Base, the changes already pushed to
mainline U-Boot. But then it was overwritten when Marvell DDR Training
Tool updated
[URL]
https://developer.solid-run.com/knowledge-base/armada-38x-som-u-boot-odt-update/
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* [#1429] mvebu: u-boot: Add revision id for Armada 38x B0
Added patch for SolidRun U-Boot v2018.01 and
for Helios4 U-Boot v2018.11
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* clearfog: Added SPI NOR flash target
Build bootable SPI NOR flash image.
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* mvebu: clearfog: DEV branch use mainline U-Boot
Also move clearfog base patch into its own board folder.
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* mvebu: enable U-Boot uart target
Normal MMC image can be used for uart boot using following command:
./tools/kwboot -b u-boot-spl.kwb /dev/ttyUSBX
But on Helios4, the SPL failed to continue the booting process if ECC is
enabled, so disable it.
Since the usage of uart boot is more for rescue/debug, disable autoboot.
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* mvebu: NEXT branch use mainline U-Boot
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* mvebu: helios4: fix fancontrol related bug during buster testing
- On kernel 4.19, cpu thermal sensor changed the name from
armada_thermal into f10e4078.thermal. Added this new name to udev rules
- Since DEFAULT branch now use kernel 4.14, update fancontrol
configuration
- Load lm75 kernel module
- On kernel 4.19, cpu temp reading about 20 degree C lower, update
fancontrol configuration.
[URL]
https://forum.armbian.com/topic/10214-clearfogpro-possible-change-in-temperature-reporting-between-414next-and-419dev
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* mvebu: helios4: Override vendor provided fancontrol unit
systemd emit following message on dmesg
systemd[1]: /lib/systemd/system/fancontrol.service:9: PIDFile=
references path below legacy directory /var/run/, updating
/var/run/fancontrol.pid \xe2\x86\x92 /run/fancontrol.pid; please update
the unit file accordingly.
Override and change the value in the unit file to remove the message.
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* mvebu: DEV branch use its own u-boot patch folder
The patches are copied over from u-boot-mvebu-next
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* mvebu: u-boot: Make clearfog model distinction more obvious
While at it, also change SerDes LANE4 into USB 3.0 on Clearfog Base.
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* lib: Use apt-get install instead of dpkg on install_deb_chroot()
dpkg -i does not install dependencies required by the package.
This is needed if the BSP package requires other package that is not
installed during debootstrap.
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* config: mvebu: helios4: Move various tweak to family_tweak_bsp()
Various tweak in family_tweaks_s() only applied to SD card image.
Move it to family_tweaks_bsp() so it will also included on the BSP
package and applied to existing user.
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* config: mvebu: helios4: Add /etc/modules to BSP
On kernel 4.19, user need to modify the /etc/modules to add lm75 kernel
module. Pack the file into BSP so user no longer needed to modify it.
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* mvebu: kernel: Make zbud as built-in module
To remove the following error:
[ 1.705485] zswap: default zpool zbud not available
[ 1.705488] zswap: pool creation failed
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* bootscripts: mvebu: Add default value for spi_workaround
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* mvebu: kernel: Backport armada_thermal changes to 4.14 (#1452)
On kernel 4.19, armada_thermal driver has been fixed to address
Marvell's Errata #132698 (The changes first appear on LK 4.16). The
result is temperature reading is around 20 degree Celsius lower.
Currently armbian-motd apply -20C tweak for both LK 4.14 and LK 4.19
which is incorrect. Instead of adding some logic on what condition to
apply the tweak, it is better to remove the tweak and patch the kernel
instead.
Revert commit b3dd4e9 ("[ mvebu ] Put back Armada temperature tweak in
motd")
which is part of #1421 solution.
[URL]
https://forum.armbian.com/topic/10214-clearfogpro-possible-change-in-temperature-reporting-between-414next-and-419dev/
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* mvebu: helios4: unified fancontrol config
Since LK 4.14 on DEFAULT branch already patched and the temp reading is
same as LK 4.19 on NEXT branch, it is no longer needed to separate
fancontrol configuration file.
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* u-boot: helios4: Remove rev id patch
The patch is already applied in helios4 repo, no need to have it in
armbian.
This revert helios4 part of commit 7411c55
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* u-boot: clearfog: enable PCIe support and PCIe reset
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* u-boot: clearfog: add boot-marvell.cmd backward compatibility
The patches added missing variable that used on boot-marvell.cmd and
also adjust the some memory addresses to prevent crash due to usage of
fdt_high and initrd_high.
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* mvebu: helios4: tweak regarding temperature setting
Make fan speed similar compared to pre-patched armada-thermal. Target
PWM value around 70 during idle.
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* config: sources: clearfog to use u-boot 2018.01 for NEXT branch
This changes also affect Helios4. Moved the shared U-Boot source setting
back to Helios4 for NEXT branch.
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* config: boards: build Stretch image for Clearfog and Helios4
Also remove DEV from Helios4 CLI_TARGET
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* kernel: mvebu-next: Disable access to SPI Flash
User need to set spi_workaround=yes to enable SPI Flash access and lost
access to internal SATA.
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* mvebu-next: adjust kernel config
* mvebu-dev: bump to 5.2 and adjust kernel configuraion. Tested for building.
* Adjust kernel config, add AUFS
Signed-off-by: Igor Pecovnik <igor.pecovnik@gmail.com>
* mvebu-next: Adjust kernel config, add debug GPIO
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* mvebu-dev: separate Clearfog Base U-boot configuration file and patch
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
Setting load_addr to "0x44000000" (1088 MiB) is too high for boards with only 1GB of RAM, and causes boot failure. I tried some lower values, until I found "0x34000000" (832 MiB) to work. I made quite big steps, so we probably could find something slightly higher to work too, but I see no reason why we would need to do it.
Reference: https://forum.armbian.com/topic/8829-le-potato-c2-k2-419-lts-testing-thread/?do=findComment&comment=69850
* helios4: next branch use u-boot 2018
use new u-boot based on upstream 2018
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* helios4: Tweak fancontrol configuration
Adjusted MINSTART and MINSTOP to suit both old and new fan.
Adjusted TEMP threshold so fan would stop or run in minimal speed when
the system idle.
Fixed wrong MINPWM value.
URL:https://wiki.kobol.io/pwm/#configuration-file
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* kernel: mvebu-next: use upstream helios4 dts
Helios4 device tree has been merged on upstream since 4.19.
Rework the patch to produce same device tree.
URL:https://patchwork.kernel.org/patch/10449393/
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* Helios4: Use boot-mvebu-next bootscript
Use boot-mvebu-next.cmd that make use of upstream's Generic Distro
Configuration.
Since loadaddr and fdt_addr varibales are no longer required, remove the
patch.
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* Helios4: mvebu-next: Add workaround for SPI and SATA concurrent access issue
Concurrent access on SPI NOR and SATA drives can lead to unstable SATA.
Therefore as workaround, disable SATA controller when SPI flash access
is needed and make it as user configurable item in armbianEnv.txt
This workaround might applies to Clearfog too.
Refer to
Commit 59af84c07c ("Helios4: Add SPI bootloader install feature
(#1126)")
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* Bootscripts: Fixed boot-mvebu-next.cmd
The environment setting (armbianEnv.txt) is loaded to RAM located on
${load_addr} but the env import use wrong address (${pxefile_addr_r}).
bootargs still expect ${boot_interface} which carried over from boot-
marvell.cmd. Upstream's distro configuration use ${devtype} instead.
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* uboot: mvebu-next: only apply DT fixup script if it exists
* [ buildscript ] Add FORCE_BOOTSCRIPT_UPDATE option
If enabled bootscript will get updated during bsp upgrade.
* Helios4: Enable FORCE_BOOTSCRIPT_UPDATE by default in board config.
* Helios4: Added boot-marvell.cmd compability to u-boot 2018
Revert the changes to use boot-mvebu-next.cmd instead of boot-
marvell.cmd to prevent unbootable system due to incompatibility between
u-boot 2013.01 and boot-mvebu-next.cmd
This reverts commit 0f17ecb233 ("Helios4: Use boot-mvebu-next
bootscript")
U-Boot 2018 will failed load dtb and script due to missing some
variables on boot-marvell.cmd. This will render the system unbootable.
Re-added and update loading-boot-scr.patch for backward compatibility
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* helios4: next branch use u-boot 2018
use new u-boot based on upstream 2018
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* helios4: Tweak fancontrol configuration
Adjusted MINSTART and MINSTOP to suit both old and new fan.
Adjusted TEMP threshold so fan would stop or run in minimal speed when
the system idle.
Fixed wrong MINPWM value.
URL:https://wiki.kobol.io/pwm/#configuration-file
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* kernel: mvebu-next: use upstream helios4 dts
Helios4 device tree has been merged on upstream since 4.19.
Rework the patch to produce same device tree.
URL:https://patchwork.kernel.org/patch/10449393/
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* Helios4: Use boot-mvebu-next bootscript
Use boot-mvebu-next.cmd that make use of upstream's Generic Distro
Configuration.
Since loadaddr and fdt_addr varibales are no longer required, remove the
patch.
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* Helios4: mvebu-next: Add workaround for SPI and SATA concurrent access issue
Concurrent access on SPI NOR and SATA drives can lead to unstable SATA.
Therefore as workaround, disable SATA controller when SPI flash access
is needed and make it as user configurable item in armbianEnv.txt
This workaround might applies to Clearfog too.
Refer to
Commit 59af84c07c ("Helios4: Add SPI bootloader install feature
(#1126)")
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* Bootscripts: Fixed boot-mvebu-next.cmd
The environment setting (armbianEnv.txt) is loaded to RAM located on
${load_addr} but the env import use wrong address (${pxefile_addr_r}).
bootargs still expect ${boot_interface} which carried over from boot-
marvell.cmd. Upstream's distro configuration use ${devtype} instead.
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* Initial commit BPi R2:
Currently working/not working:
- u-boot:
- builds with minor issues
- patching and cleanup happens on 'https://github.com/chwe17/u-boot-mt'
- next (https://github.com/frank-w/BPI-R2-4.14)
- boots with minor issues
- ETH doesn't work with nm
- sata works
- no wifi (needs driver from: https://github.com/frank-w/BPI-R2-4.4)
- USB not working (xhci-mtk 1a1c0000.usb: fail to get vbus) needs investigation
- appended device tree is needed due to u-boot doesn't work with fdt (kernelpacking needs adjustemts e.g. cat zImage dtb > zImage-dtb
- dev (kernel.org master)
- untested, needs adjustments in config (e.g. CONFIG_LOCALVERSION="")
- since no defconfig is available config is based on frank-w 4.16 Kernel
- Kernel builds without issues
- manual packing of kernel and dtb similar to next
The board boots, serial console is available but everything else must be expected as not working!
- to do:
- u-boot needs a cleanup
- binary blobs needs investigation
- eMMC is **not tested** and needs for sure adjustements! (don't try nand-sata-install!!!)
- bootscript isn't tested (only manual boot over u-boot console at the moment)
- both kernelconfigs aren't 'armbian standard' modules need to be adjusted
Only use it when you know're familiar with u-boot commands!
* Small fixes, add bootscript
- add bootscript for patched u-boot (needs patching of u-boot, currently under investigation and not working properly)
- revert cat zImage dtb > zImage-dtb (cause not working)
- first cleanup of dev kernelconfig (remove CONFIG_LOCALVERSION="")
* Minor fixup
-kernelconfig for next was adjustet so that USB is recognized
-firt bootscripts was written to boot with source command (doesn't work 100% reliable)
-slightly adjustd boardconfig (e.g. bootscript)
must still be considered as early wip!
* small update (FDT works now)
-working bootscript
-adjusted boardconfig
-earlyprintk activated in kernelconfig
* First attempt to get ETH working
-all interfaces are bridged together
-performance sucks at the moment (not clear if it's related to insane network configuration or I miss something obvious... :P )
* Major update (see below for changes):
- 4.14 kernel was dropped due to https://forum.armbian.com/topic/7296-bananapi-r2-csc-mt7623-as-new-boardfamily/?do=findComment&comment=55194 and following
- boot.cmd was adjusted to 'clean' mainline behaviour
- next build opition and its defaultconfg was removed (at the moment dev only)
- rework of the network default configuration
- default configuration will be over network.d **not** NetworkManager
- per default all wired interfaces are bridged together to br0 (still wip)
- old 'interfaces' configuration was removed
- boardconfig is adjusted (no desktop until I've prove that HDMI works)
- what works/ not works:
- board boots up without manual u-boot hacking
- SATA, USB3 (massstorage) is tested and works without issues
- due to rework of network configuration this is still wip and must be considered as 'not working'
* moved to network.d for configuration of wired network
- renamed bsp packages
- blacklist wired interfaces for NetworkManager
- defined all wired interfaces as br0 in systemd/network
- defined networkd als default renderer for bionic (not tested yet!)
* The houskeeping commit:
- BOARDFAMILY was renamed to mt7623 instead of mt7623n (including patchfolders etc.)
- Network.d has no fully control over wired networkes (block NM from controll, start networkd on firstrun etc.)
- Further cleanup kernelconfig
- CPU temp is visible from userspace
- missed switch driver loaded
- cryptodrivers are there (not tested)
- still a bunch of work
* Add DMA mem alloc patch
-under testing!
* Add next option (4.17.y) stick dev to master (4.18-rc1 untested)
* minor fixes:
- solve kconfig issues between 4.17 and 4.18
- stick next branch to 4.18
- first attempts to bring up gmac2 (doesn't work currently)
* switch to upstream u-boot
- fix ext4 dependency in patch series
- kernelpacking currently broken
* add bootz & cmd_ext4
* resolved merge conflict
* apply ugly u-boot patch, fix bootscript
* remove unneeded stuff, apply forgotten stuff
* update config for dev & clean up boardconf (remove xenial)
* - drop dev and next, move into default. There is no intention to provide stock kernel
- fixed board description, renamed to WIP, where it can be merged later
- packing boot firmware to the u-boot package
- docker dependencies (aufs will be added later. not essential)
- attached to 4.19.y
- loading armbianEnv.txt
- UUID support (tested)
- enabled ZRAM (tested)
- enabled eMMC install (not quite working properly yet)
- Bionic has some issues with systemd networking.
* gov to ondemand (thermals are conservative anyway), remove unneeded kernelconfigs
* Added AUFS, remove debug from kernel boot parameters, add ath10 mPCI support (which works)
* add power-off-key and rtc
* Added onboard wireless, but it's enabling is disabled by default. Too fragile.
* Change to CSC target
* Helios4: Add workaround for SPI and SATA concurrent access issue
Concurrent access on SPI NOR and SATA drives can lead to unstable SATA.
Therefore as workaround, disable SATA controller when SPI flash access
is needed and make it as user configurable item in armbianEnv.txt
This workaround might applies to Clearfog too.
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* Helios4: Add U-Boot SPI
Signed-off-by: Aditya Prayoga <aditya@kobol.io>
* Helios4: Add SPI bootloader install feature
This will allow to use nand-sata-install to perform the following operations on Helios4 :
- Install bootloader to SPI NOR Flash (Option 5 in Menu).
- Copy RootFS to USB storage in order to boot from SPI with RootFS on USB (Option 6 in Menu).
* Unmount temp mount points in create_armbian() instead of hardcoded /dev/sda
- merging C2 and Meson family on the source level, C2 is still making own kernels, but sources, patches and configs are the same
- merged boot scripts for meson family. support for non existing legacy kernel was dropped from boot scripts, added UUID support, armbianEnv.txt
- Meson default remain on 4.14.y, NEXT moved to 4.17.y and DEV remains on master
- remove deprecated patches, remove wrong permissions in patches
- tested on C2, K2 and Le Potate. USB troubles are still present and common, while K2 and Lepotato might have boot/reboot troubles on 4.16+
- boards configuration cleanup
- moving K2 to the supported list. It's the same level of support as Le Potato
Address 0x44000000 is not available for boards with 1Gb RAM, so it was causing a boot error as described here:
https://forum.armbian.com/topic/5771-rock64-nightly-image/?do=findComment&comment=53150
A lower address 0x39000000 works and doesn't seem to cause any other problem.
I cannot test it in boards with more than 1Gb RAM so, even though I see no reason why it should not be compatible, it is safer to test just in case.