Commit Graph

464 Commits

Author SHA1 Message Date
Stefan Agner
29a740353a Fix U-Boot environment size for ODROID-M1 (#2403) 2023-03-14 00:18:54 +01:00
Stefan Agner
b0d9496595 Add ODROID-M1 support (#2387)
* Add ODROID-M1 board support

* Add Rockchip kernel config for ODROID-M1

Kernel defconfig for Rockchip is based on Armbian kernel defconfig
from config/kernel/linux-rk3568-odroid-edge.config (git hash
95c829f9e664).

* Add U-Boot/Kernel patches

* Add Rockchip blob support

Add package which provides Rockchip TPL and ATF firmware binaries.

* Use latest U-Boot for ODROID-M1

* Fix Rockchip blob support

* Update defconfig

* Use GPT by default

* Create uboot partition to support non-recovery boot

* Enable eMMC boot in U-Boot SPL

* Drop unnecessary mmc device selection

Distro boot already activates the right mmc device. The extra selection
seems to actually cause problems for eMMC boot.

* Make sure driver for eMMC is built-in

* Use odroid-m1 as Supervisor machine

* Add ODROID-M1 to CI pipeline and issue template

* Bump to Linux 6.1.16
2023-03-10 19:44:50 +01:00
Stefan Agner
923c22ff9e Support custom sized SPL/raw boot region (#2385)
* Support custom sized SPL/raw boot region

This is required for Rockchip which by default stores the U-Boot FIT
image at the 8MiB offset.

* Ignore shellcheck warning
2023-03-06 23:06:45 +01:00
Stefan Agner
239337b406 Use Network device naming scheme v250 (#2380)
The new systemd version v252 brings a new naming scheme, in particular
it seems that on device tree based systems (e.g. Raspberry Pis) the
Ethernet device name changes from eth0 to end0.

This breaks a previously made configuration.

Even worse, it seems that the default NetworkManager behavior is to only
configure a network device if there is no profile. But since profiles
are configured on a typical installation, NetworkManager doesn't bring
up any of the network interface, leaving the user stranded on an
unconnected system.

Ideally, we should have a plan how to migrate from one naming scheme to
the next. For now, just stick with the naming scheme HAOS 9.x has been
using.
2023-03-02 17:00:28 +01:00
Stefan Agner
fd6bae5dc1 Linux: Update kernel 6.1.13 for Raspberry Pi systems (#2373) 2023-02-27 23:58:02 +01:00
Adam Duff
6f44dcf010 Enable CONFIG_UHID for generic x86-64 based installs (#2369) 2023-02-27 23:09:54 +01:00
Stefan Agner
25c672a27f Linux: Update kernel 6.1.12 for non-Raspberry Pi systems (#2358)
* Linux: Update kernel 6.1.12

* Update generic_raw_uart to build with Linux 6.1

* Update Realtek rtl8821cu/rtl88x2bu to build with Linux 6.1

* Bump buildroot

* buildroot 43f82f01b9...90aa1a6daa (1):
  > rtl8812au-aircrack-ng: bump to latest rev d98018

* Fix eq3_char_loop to build with Linux 6.1

* rtl8821cu: make sure -Werror is disabled for the kernel build

* generic_raw_uart: make sure -Werror is disabled for the kernel build
2023-02-16 14:53:38 +01:00
Stefan Agner
dddbf25228 Bump U-Boot to v2023.01 for ODROID/Tinker/VIM3 (#2355) 2023-02-15 11:01:40 +01:00
Stefan Agner
0867e3c70c Linux: Update kernel 5.15.92 (#2343)
* Linux: Update kernel 5.15.92

* Drop patch which has been applied upstream
2023-02-06 12:28:58 +01:00
Stefan Agner
acaba8c3ea Add RTL8723BE PCIe Wi-Fi chip support (#2329) (#2336) 2023-01-31 23:55:26 +01:00
Alex Williamson
56b094724b Add amdgpu driver and firmware (#2320)
This can reduce power consumption of the GPU hardware.
2023-01-30 15:42:43 +01:00
Stefan Agner
768bdef2bf Add ASMedia based devices to UAS block list (#2310)
This ASMedia Technology chip seems to cause problem with the UAS driver.
The chip is used in UGreen S-ATA to USB 3.0 adapters.
2023-01-23 14:00:15 +01:00
d-two
ae5cb3e980 Add HP Smart Array driver (#2302) 2023-01-16 09:56:16 +01:00
Stefan Agner
71281e0c69 Enable Hyper-V drivers for virtualization on ARM64 (#2256) (#2262) 2022-12-10 23:58:58 +01:00
Stefan Agner
0a54abc7c2 Linux: Update kernel 5.15.80 (#2249)
* Linux: Update kernel 5.15.80

* Drop unnecessary patch
2022-11-29 11:27:28 +01:00
Stefan Agner
7e8166b045 Bump U-Boot to v2023.01-rc1 (#2234)
* Bump Raspberry Pi/Yellow to U-Boot 2023.01-rc1

* Add necessary configurations for NVMe via PCIe support
2022-11-17 12:31:12 +01:00
Stefan Agner
49c124177b Disable CONFIG_FW_LOADER_USER_HELPER(/_FALLBACK) (#2222) (#2229)
This slows down firmware loading which causes Bluetooth initialization
to delay unecessarily.
2022-11-14 23:20:12 +01:00
Rob VDM
12bd4ad8dd Add MLX5 support to OVA build (#2214)
This adds MLX5 (ConnectX 4) NIC support to the OVA build, which allows this NIC to be used as a VF with SR-IOV NICs in a VM.
2022-11-10 09:08:44 +01:00
Stefan Agner
bb8445a416 Add patch to avoid dummy waits on CPU idle for AMD systems (#2210) 2022-11-02 14:46:37 +01:00
Stefan Agner
e1559cd1a9 Enable Intel specific CPU idle driver (#2209) 2022-11-02 11:05:11 +01:00
Stefan Agner
43642e2f46 Fix S-ATA on ODROID-HC1 (#2194)
The ODROID-XU4 is largely compatible with the ODROID-HC1. It seems that
the image used to work until recently, where a stable kernel update
broke access to the S-ATA disk.

Revert the offending stable kernel patch to fix S-ATA disk on
ODROID-HC1.
2022-10-19 10:54:01 +02:00
Stefan Agner
340cbc4c6b Yellow: Support wipeing boot files on NVMe (#2173) 2022-10-06 23:49:47 +02:00
Pascal Vizeli
a3cc15f11f Streamline CONFIG_RT_GROUP_SCHED (#2169)
* Disable RT_GROUP_SCHED
2022-10-03 15:41:13 +02:00
Stefan Agner
ce86be7632 Remove HDMI fix applied in Linux 5.15.68 (#2166) 2022-10-02 23:23:58 +02:00
Bryan York
2ac9dc1c75 Add LXD VM Guest Agent Support (#2145)
* Add LXD VM Guest Agent Support

* Add systemd patch, remove udev rules, change to kernel modules, fix linter

* Remove systemd patch, add conditionals to qemu-guest and lxd-agent

* Update buildroot-external/package/qemu-guest-agent/qemu-guest.service

Co-authored-by: Stefan Agner <stefan@agner.ch>
2022-10-02 10:06:56 +02:00
ioctl2
eafbf6159d Fix proxmox mem hotplug/improve virtual hw support (#2138) 2022-09-19 12:25:23 +02:00
Stefan Agner
c1a767695d Backport patch to fix ODROID-N2 HDMI (#2128) 2022-09-12 22:16:29 +02:00
Stefan Agner
bd7a32fd3e Drop unused cgroup_enable=memory kernel parameter (#2124)
The cgroup_enable parameter is a Raspberry Pi kernel specific kernel
parameter. Upstream based kernel do not have the parameter, and hence
do not do anything.

This gets rid of the following message during boot:
Unknown kernel command line parameters "cgroup_enable=memory", will be passed to user space.
2022-09-12 22:15:34 +02:00
Stefan Agner
cb58b14e06 Bump Raspberry Pi kernel and firmware to 1.20220830 (#2117)
* RaspberryPi: Update kernel 5.15.61 - 1.20220830

* Add Yellow to the Raspberry Pi kernel update script

* Bump Yellow to kernel 5.15.61 - 1.20220830

Also drop the work around for the LED polarity as the new firmware
has been fixed.

* Explicitly select no kernel module compression

Home Assistant OS uses a compressed rootfs already, no compression for
kernel modules necessary.

* Bump buildroot

* buildroot d7e4c223e5...5468d36a26 (1):
  > package/rpi-firmware: bump version to 1.20220830
2022-09-07 19:21:30 +02:00
Stefan Agner
30a0bb6d85 Try booting up to 3 times on GRUB2 based systems (#2112)
* Retry up to 3 times

By default, HAOS used to retry 3 times. That is still true for U-Boot
based boards. Apply the same logic for GRUB2 based systems for
consistency.

This can help to remedy intermittent internet/connectivity issuese.
Altough hacky, in practise it makes sense to give the newly installed OS
another go.

* Also apply to generic-aarch64
2022-09-06 20:28:14 +02:00
Stefan Agner
c1e2d655bc ODROID-XU4: Reset Ethernet properly on reboot (#1488) (#2108) 2022-09-02 23:34:16 +02:00
Stefan Agner
ba5de20ba8 Add GRUB2 boot entry to boot into rescue shell (#2096) 2022-08-31 23:02:47 +02:00
Michael Haas
b0674713a7 rpi4: Enable arm_boost=1 to unlock 1.8GHz CPU clock (#2073)
* rpi4: Enable arm_boost=1 to unlock 1.8Ghz CPU

The official Raspberry Pi OS enables a "boosted" 1.8GHz
mode since their Debian bullseye based release [source]. This
commit brings this feature to HA OS.
2022-08-31 15:52:23 +02:00
Stefan Agner
4edc71b005 Enable k10temp kernel module (#2094)
The k10temp module allows to monitor CPU temperature on AMD systems.
2022-08-31 08:29:13 +02:00
Michael Haas
c4233012d0 Remove duplicate ASMedia quirk 174c:55aa:u (#2061) 2022-08-16 14:15:55 +02:00
Stefan Agner
4d9b604c04 Use Control Group v2 (#1329)
* Disable real-time scheduling

It seems that Linux' cgroup v2 currenlty does not support RT scheduling.

* Remove Supervisor RT support flag

With CGroups v2 we can no longer support CPU resource allocation for
realtime scheduling.

* Bump OS Agent to 1.3.0 for CGroups v2 support
2022-08-09 11:29:12 +02:00
Stefan Agner
e0222ec454 Add LED control through device tree overrides (#2038) 2022-08-04 08:36:14 +02:00
Stefan Agner
364196614b Yellow USB mass storage support (#2035)
* Enable USB OTG in the Yellow device tree

* Enable U-Boot USB mass storage command

* Enable UMS mode when blue button is pressed
2022-07-27 23:54:17 +02:00
Stefan Agner
084b20e4df Allow to Wipe essential boot files to trigger boot from USB host (#2034)
This makes the Red+Blue Button cause the boot loader to wipe start4.elf,
which is essential for the boot loader to boot from eMMC. With the file
missing, the Raspberry Pi firmware will continue its boot flow and boot
from USB host next. This allows to run the Home Assistant OS Installer
from a USB flash drive again.
2022-07-27 14:53:47 +02:00
Stefan Agner
92da6b64c7 Yellow: Enable PL011 console on J11 by default (#2001) 2022-07-04 17:30:37 +02:00
Pascal Vizeli
2801019912 Using Yellow for HA images (landingpage) (#1992) 2022-07-04 14:33:34 +02:00
Stefan Agner
432cb86235 NVMe patches are applied for all Raspberry Pi based boards now (#1959) 2022-06-01 20:47:16 +02:00
Stefan Agner
7552395368 Apply NVMe fixes to all Raspberry Pi boards (#1911) (#1957) 2022-06-01 15:46:28 +02:00
Stefan Agner
382e253e5a Avoid using simplefb for generic-x86-64 to fix boot crashes (#1920) (#1930) 2022-05-19 11:24:11 +02:00
Stefan Agner
e2b9a7fef8 Add NVMe boot support to Generic AArch64 (#1050) (#1918) 2022-05-19 01:00:43 +02:00
Stefan Agner
02dff04212 Shutdown immeaditly on ACPI Power Button events (#1896) (#1898)
For phyiscal hardware the default Power Button action has been disabled
to avoid accidentally power down the machine.

However, for virtual machine this method is often used to shutdown the
virtual machine gracefully. Use the regular power settings for virtual
machines.
2022-05-16 10:58:30 +02:00
Stefan Agner
3c5ba17b58 Fix boot issue on Khadas VIM3 (#1894)
Make sure pin controller is enabled.
2022-05-11 10:36:48 +02:00
Stefan Agner
ba8bda73fa Fix Bluetooth on ASUS Tinker (#1891) (#1892)
* Use upstream Linux driver for Bluetooth on ASUS Tinker

* Drop unnecessary Bluetooth initialization systemd service

Bluetooth is now entirely handled by the kernel.
2022-05-11 01:51:19 +02:00
Stefan Agner
e98edce5d3 Extend USB storage quirks for Raspberry Pi (#1883)
Add StarTech.com SATA to USB Cable - USB 3.0 to 2.5" SATA III Hard Drive
Adapter.
2022-05-05 18:49:36 +02:00
Stefan Agner
d284a1dee7 Small Yellow improvements (#1875)
* Enable additional LED triggers

* Improve Yellow device tree

Fix soundcard name and use BTN_1 as key code.

* Add input-event-daemon configuration

Add minimal input-event-daemon configuration to avoid the default
configuration taking effect. This minimal configuration triggers
the USB configuration import on button press.
2022-04-27 22:51:55 +02:00