1
0
mirror of https://github.com/home-assistant/operating-system.git synced 2026-02-15 07:29:08 +00:00
Commit Graph

1829 Commits

Author SHA1 Message Date
Jan Čermák
b25fce69b6 Enable Intel IXGBE driver, clean up Intel NIC config options (#4115)
Enable Intel NIC support only in the PCI include fragment and keep VF-related
options enabled only in the OVA config.

Refs #4021
2025-06-23 15:39:47 +02:00
Jan Čermák
f5efac66a0 Backport patch making num_entries in systemd-journal-gatewayd optional (#4116)
Since update to Systemd v256.x the Range header requires the num_entries part
and fails if it's not provided, which we worked around by [1]. With this patch
that was already accepted upstream, the workaround shouldn't be necessary
anymore.

[1] https://github.com/home-assistant/supervisor/pull/5827
2025-06-23 15:34:08 +02:00
Jan Čermák
6f854b67b0 Add Marvell 88E1XXX driver for x86-64 (#4105)
Add driver for Marvell PHYs, such as 88E1543(4L) on an ASRock C3758D4I-4L
board. Adding it to x86 config only, as it seems it's not widely used anywhere
else.

Fixes #4025
2025-06-20 10:05:25 +02:00
Jan Čermák
19b848cbbd Linux: Update kernel to 6.12.34 (#4109)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.34
2025-06-20 09:57:10 +02:00
cubemike
9431351036 Add Intel Cannon Lake pinctrl driver (#4091)
Add pinctrl driver for board like CBx2 (a former chromebox with a Cannon Lake Intel Celeron).
2025-06-16 19:07:05 +02:00
Jan Čermák
5d070c84a4 Bump Hailo driver and firmware to v4.21.0 (#4095)
Bump Hailo stuff to the latest version. While this is a breaking change for
add-ons depending on the driver, the most commonly used one (i.e. Frigate)
didn't bump to v4.20.1 on their stable channel either, so it shouldn't have
significant impact. We agreed with @blakeblackshear that once HAOS bumps the
Hailo driver in HAOS 16, Frigate will follow.
2025-06-12 17:29:56 +02:00
Jan Čermák
79e3a016c4 Linux: Update kernel to 6.12.33 (#4094)
* Linux: Update kernel to 6.12.33

* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.31
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.32
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.33

* Rebase r8169 patch to apply cleanly after changes from v6.12.31
2025-06-12 12:48:23 +02:00
Jan Čermák
3e3372b7dc Remove old migrations from RAUC hook (#4083)
As we're moving to another major release and 15.2 will be mandated update
before 16.0, we can (or even must) remove some old migrations.
2025-05-28 17:06:52 +02:00
Louis Sautier
cf970a5b63 Disable reverse DNS lookups for Dropbear (#4076)
This fixes slow SSH login isues caused by reverse DNS (PTR) lookups as
reported in #3768.
2025-05-28 16:23:55 +02:00
Jan Čermák
febd54d8fd Bump OS to development version 16.0.dev0 2025-05-28 16:17:11 +02:00
Jan Čermák
17b8c18c89 Backport systemd-journal-gatewayd patch adding /boots endpoint (#4081)
Backport /boots endpoint for Systemd so we can use it in Supervisor to get the
actual list of boots. Should be available upstream since Systemd v258, for v256
minor tweaks were needed.
2025-05-28 13:34:06 +02:00
Louis Sautier
5a000cbba3 Remove execute bit from green_defconfig (#4077)
I believe it was added by accident, none of the other defconfig files
have it set.
2025-05-27 08:25:25 +02:00
Jan Čermák
487ae21e01 Linux: Update kernel to 6.12.30 (#4078)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.30
2025-05-26 18:34:25 +02:00
Jan Čermák
972f575039 Linux: Update kernel to 6.12.29 (#4072)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.29
2025-05-19 16:04:00 +02:00
Jan Čermák
834c51ca84 Create VM image .zip files in parallel using pigz (#4067)
When creating OVA image, the CPU is slacking at the end of the build because it
is creating three ZIP archives, each one on a single CPU only. As we're
creating only single-entry archives, we can use pigz to use all cores.

The actual speedup on my machine (16C/32T) reflects the number of cores - it
takes around 2 seconds instead of 1 minute.
2025-05-19 12:43:23 +02:00
Jan Čermák
5ebc3a0761 Fix RPi pre-image build hook with rpi-eeprom enabled (#4066)
Do not attempt to copy EEPROM update files to the boot partition, as they're
not created build-time anymore.
2025-05-19 12:43:16 +02:00
Jan Čermák
0c758df759 Remove unused FW_LOADER_USER_HELPER in Rockchip base config (#4065)
Since
127c420335
change in package/systemd, this option is patched by systemd build because
userspace FW loading has never been supported with Systemd. This should have no
runtime effect, just clear the warning about disabled option.
2025-05-14 22:05:28 +02:00
Jan Čermák
65fdef963c Enable usage of rpi-eeprom-update on Raspberry Pi 4/5/Yellow (#4063)
* package/vcgencmd: add tool for RPi VideoCore commands

This tool is used by rpi-eeprom-update and is fairly lightweight binary without
dependencies. Use it as-is from raspberry/utils repo.

* package/rpi-eeprom: change package to install EEPROM userspace scripts

* configs: enable rpi-eeprom for rpi4, rpi4-64, rpi5-64 and yellow

On Pi5 and Yellow also enable flashrom so the firmware can be installed
directly without recovery being involved. On Yellow/CM4 this can't be done
without config.txt changes though (SPI and pinmuxing needs to be enabled) but
the image is shared there and users may eventually use the tools if they want,
so install BCM2711 on Yellow too. The "officially recommended" method is
rpiboot though, which is also documented in Yellow docs.
2025-05-14 17:25:29 +02:00
M. Greyson Christoforo
9803d41b2f Enable PCI I/O virtualization in kernel (#4002)
* enable SR-IOV driver support for a few NICs

* Adjust config comment

---------

Co-authored-by: Jan Čermák <sairon@users.noreply.github.com>
2025-05-14 17:25:10 +02:00
Jan Čermák
d749bb70b4 Add device-specific symlinks for WiFi firmware on Yellow (#4058)
Because we use custom compatible strings in Yellow DTS's, the firmware loader
first attempts to load a firmware with this compatible in its name. Because it
doesn't exists, it shows error like this one before falling back to a more
generic one:

brcmfmac mmc1:0001:1: Direct firmware load for brcm/brcmfmac43455-sdio.raspberrypi,5-compute-module-ha-yellow.bin failed with error -2

While these errors are mostly harmless, add symlinks with our compatible in the
name to suppress them. Instead of patching upstream
package/brcmfmac_sdio-firmware-rpi which installs the firmware files, add them
to yellow overlay to make maintenance easier.
2025-05-12 17:20:57 +02:00
Jan Čermák
614490ef00 Linux: Update kernel to 6.12.28 (#4061)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.28
2025-05-12 17:20:44 +02:00
Jan Čermák
e720f5be8f Add missing compatible/model to Yellow+CM5 DTS (#4057)
The refactored DTS from #4036 was missing compatible and model strings for CM5
on Yellow. While this shouldn't cause any issues, add them back.
2025-05-12 17:20:32 +02:00
Jan Čermák
0800deccec Add brcmfmac module options to improve RPi WiFi stability (#4056)
Latest RPi firmware package contains module options that supposedly improve
stability, with details described in [1].

Since the feature_disable mask also disables the dump_obss feature, this change
would also mitigate `brcmf_set_channel: set chanspec ... fail` messages still
seen in some environments even after #3719.

Fixes #3367

[1] 2788cb549a
2025-05-06 23:49:43 +02:00
Jan Čermák
0421bd0078 RaspberryPi: Update kernel to 6.12.25 - 3dd2c2c507c271d411fab2e82a2b3b7e0b6d3f16 (#4052)
* RaspberryPi: Update kernel to 6.12.25 - 3dd2c2c507c271d411fab2e82a2b3b7e0b6d3f16

* Update package/rpi-firmware for 6.12.25

* buildroot cd82256125...50fcf58bfa (1):
  > package/rpi-firmware: bump version to bc7f439 (1.20250430)
2025-05-06 13:58:52 +02:00
Jan Čermák
055e123449 Linux: Update kernel to 6.12.27 (#4050)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.26
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.27
2025-05-05 17:37:12 +02:00
Jan Čermák
6ec77b845d Fix U-Boot config to access all RAM on 16 GB CM5 (#4045)
* Fix U-Boot config to access all RAM on 16 GB CM5

U-Boot defconfig used for Yellow checks only 4 DRAM banks, however, CM5 with 16
GB has the memory spread across 8 banks. Add a patch (submitted upstream) to
the defconfig to get access to the whole RAM.

Fixes #3989

* Add Upstream tag with link to uboot patchwork
2025-05-01 22:53:47 +02:00
Jan Čermák
257a96b39a Linux: Update kernel to 6.12.25 (#4044)
* Linux: Update kernel to 6.12.25

* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.25

* Remove drm/amd patch merged to v6.12.25
2025-04-29 10:06:32 +02:00
Jan Čermák
dbf7d46d5b Use bcm2711 defconfig instead of removed bcmrpi3 for RPi 3 64-bit (#4038)
bcmrpi3_defconfig we used for RPi 3 was removed in [1], as it was not used for
any RPi builds and was "unsupported". Switch to bcm2711_defconfig as that is
what RPi OS kernel is built from per [2].

[1] 7713244d3b
[2] https://www.raspberrypi.com/documentation/computers/linux_kernel.html#native-build-configuration
2025-04-24 15:44:27 +02:00
Jan Čermák
c6338f1576 Update RPi kernel to 6.12.20 (#4036)
* Update RPi kernel to 6.12.20

Update to latest stable RPi kernel and remove unnecessary 6.6.y kernel config
fragments.

* Refresh RPi and Yellow patches

Rebase all patches on 6.12.20, remove patches that are already present
upstream.

* Update Yellow device trees for 6.12.20

Upstream changes broke our downstream device trees. While the CM4 fix was
trivial, there were more changes in the CM5 device tree due to adaptation to
upstream code. To simplify future maintenance, DTS was refactored to reuse CM5
DTS include and override only what's necessary.

* Bump buildroot to update to matching package/rpi-firmware

* buildroot ead21eb6d2...cd82256125 (1):
  > package/rpi-firmware: bump version to f49a396 (1.20250326)
2025-04-23 19:01:50 +02:00
Jan Čermák
b1a3106907 Linux: Update kernel to 6.12.24 (#4035)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.24
2025-04-23 09:21:21 +02:00
Jan Čermák
0724608ff7 Update Buildroot to 2025.02 (#4027)
* Update Buildroot base to v2025.02

Packages updated:

* Added host-blake3 1.5.4
* Added host-go-src
* Added host-libxcrypt 4.4.38
* Added host-tar 1.35
* Added host-xxhash 0.8.3
* Added libtalloc 2.4.2
* Added libxcrypt 4.4.38
* apparmor updated from 3.1.2 to 3.1.7
* busybox updated from 1.36.1 to 1.37.0
* cifs-utils updated from 6.15 to 7.1
* containerd updated from 1.7.26 to 2.0.2
* dbus-broker updated from 35 to 36
* dropbear updated from 2024.85 to 2024.86
* e2fsprogs updated from 1.47.0 to 1.47.2
* expat updated from 2.6.4 to 2.7.0
* gcc-final updated from 12.4.0 to 13.3.0
* glibc updated from 2.38-81-gc8cb4d2b86ece572793e31a3422ea29e88d77df5 to 2.41-5-gcb7f20653724029be89224ed3a35d627cc5b4163
* gptfdisk updated from 1.0.9 to 1.0.10
* host-binutils updated from 2.40 to 2.43.1
* host-ccache updated from 4.8.2 to 4.10.2
* host-cmake updated from 3.28.3 to 3.31.5
* host-dtc updated from 1.7.0 to 1.7.2
* host-e2fsprogs updated from 1.47.0 to 1.47.2
* host-elfutils updated from 0.189 to 0.192
* host-expat updated from 2.6.4 to 2.7.0
* host-fakeroot updated from 1.32.1 to 1.36
* host-gawk updated from 5.3.0 to 5.3.1
* host-gcc-final updated from 12.4.0 to 13.3.0
* host-gcc-initial updated from 12.4.0 to 13.3.0
* host-genimage updated from 17 to 18
* host-go updated from 1.22.12 to unknown
* host-gptfdisk updated from 1.0.9 to 1.0.10
* host-kmod updated from 31 to 33
* host-libcap updated from 2.69 to 2.73
* host-libffi updated from 3.4.4 to 3.4.6
* host-libglib2 updated from 2.76.1 to 2.82.5
* host-libopenssl updated from 3.2.4 to 3.4.1
* host-libtirpc updated from 1.3.4 to 1.3.6
* host-libxml2 updated from 2.12.9 to 2.13.6
* host-lz4 updated from 1.9.4 to 1.10.0
* host-lzip updated from 1.23 to 1.25
* host-meson updated from 1.3.1 to 1.7.0
* host-mpc updated from 1.2.1 to 1.3.1
* host-mtools updated from 4.0.43 to 4.0.47
* host-nfs-utils updated from 2.6.4 to 2.8.2
* host-pcre2 updated from 10.42 to 10.44
* host-pkgconf updated from 1.6.3 to 2.3.0
* host-python3 updated from 3.11.11 to 3.12.9
* host-python-flit-core updated from 3.9.0 to 3.10.1
* host-python-jinja2 updated from 3.1.2 to 3.1.5
* host-python-markupsafe updated from 2.1.3 to 3.0.2
* host-python-packaging updated from 23.2 to 24.2
* host-python-pypa-build updated from 1.0.3 to 1.2.2
* host-python-pyproject-hooks updated from 1.0.0 to 1.2.0
* host-python-setuptools updated from 69.0.3 to 75.8.0
* host-python-wheel updated from 0.40.0 to 0.45.1
* host-rauc updated from 1.11.3 to 1.13
* host-sqlite updated from 3.44.2 to 3.48.0
* host-systemd updated from 254.13 to 256.7
* host-util-linux updated from 2.39.3 to 2.40.2
* host-xz updated from 5.4.5 to 5.6.4
* host-zstd updated from 1.5.5 to 1.5.7
* iproute2 updated from 6.7.0 to 6.13.0
* iptables updated from 1.8.9 to 1.8.11
* json-c updated from 0.17 to 0.18
* kmod updated from 31 to 33
* libapparmor updated from 3.1.2 to 3.1.7
* libblockdev updated from 3.1.1 to 3.3.0
* libbytesize updated from 2.7 to 2.10
* libcap-ng updated from 0.8.4 to 0.8.5
* libcap updated from 2.69 to 2.73
* libdnet updated from 1.16.4 to 1.18.0
* libffi updated from 3.4.4 to 3.4.6
* libglib2 updated from 2.76.1 to 2.82.5
* libgudev updated from 237 to 238
* libmicrohttpd updated from 0.9.77 to 1.0.1
* libnftnl updated from 1.2.6 to 1.2.7
* libnl updated from 3.9.0 to 3.11.0
* libnvme updated from 1.7.1 to 1.11.1
* libopenssl updated from 3.2.4 to 3.4.1
* libtirpc updated from 1.3.4 to 1.3.6
* libunistring updated from 1.1 to 1.3
* libusb updated from 1.0.26 to 1.0.27
* lvm2 updated from 2.03.14 to 2.03.27
* nettle updated from 3.9.1 to 3.10.1
* network-manager updated from 1.44.2 to 1.50.2
* nfs-utils updated from 2.6.4 to 2.8.2
* pcre2 updated from 10.42 to 10.44
* procps-ng updated from 4.0.4 to 4.0.5
* rauc updated from 1.11.3 to 1.13
* rpcbind updated from 1.2.6 to 1.2.7
* rtl8821cu updated from 1597dfeda6cefd2e603fc7020ceca226d05fb108 to 96c65c58b544241178638e810b333dcc9aa26b91
* sqlite updated from 3.44.2 to 3.48.0
* systemd updated from 254.13 to 256.7
* util-linux-libs updated from 2.39.3 to 2.40.2
* util-linux updated from 2.39.3 to 2.40.2
* wireless-regdb updated from 2023.09.01 to 2024.10.07
* wpa_supplicant updated from 2.10 to 2.11

* patches/genimage: drop upstreamed patches

* patches/systemd: drop merged patch

* patches/network-manager: drop upstreamed patch

* Add BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_* to defconfigs
2025-04-17 12:04:39 +02:00
Jan Čermák
233b9c9482 Bump OS to development version 15.3.dev0 2025-04-11 10:05:19 +02:00
Jan Čermák
338df41858 Linux: Update kernel to 6.12.23 (#4017)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.23
2025-04-10 17:21:58 +02:00
Jan Čermák
57445099f7 Allow for fluctuation of MemTotal for automatic swapfile size (#4016)
As the reported MemTotal can fluctuate a bit on some systems, e.g. because the
reserved memory changes between kernel version or other factors affect it like
VRAM, the swap file can be recreated unnecessarily between boots. Allow for
some fluctuation (up to +-32MB) before the swapfile is recreated.

This was a problem already before the recent haos-swapfile changes, however,
before it checked if the existing swapfile isn't smaller than the desired
value. If the MemTotal fluctuated there, the swapfile size eventually settled
on the highest value seen and it wasn't recreated anymore. With this change,
things should be stable even more.
2025-04-10 17:18:07 +02:00
Michal Šimek
f3916bb7f0 Enable driver for 1-wire temperature sensors for generic-aarch64 (#4015)
Driver is used for connected local 1-wire temperatures sensors.
2025-04-10 13:31:52 +02:00
Jan Čermák
7b3ce53ab2 Backport realtek phy driver changes for RTL8125D (#4014)
As pointed out in [1] by @cdce8p, the RTL8125D has an internal PHY that also
needs some changes to be backported.

Also, move the patches to more targeted directories is it would be otherwise
applied to RPi 6.6 kernel with failures. We can move it back to the top-level
patches directory once RPi moves to kernel 6.12.

[1] https://github.com/home-assistant/operating-system/issues/3880#issuecomment-2790105503
2025-04-09 21:44:31 +02:00
Jan Čermák
7bc7f66e49 Disable amdgpu SI/CIK support and backport upstream patch to prevent crashes (#4013)
As we enabled SI/CIK support to fix crashes on bunch of AMD SoCs in #3957, the
amdgpu driver still crashes on some hardware. It seems to be some GX-217GA SoCs
or even GX-425GA in Fujitsu thin clients (even though the same SoC is fine on
T620).

To get to the state before update to kernel 6.12, disable amdgpu for these
platforms again (as it couldn't work properly there before OS 15.0) and just
backport the patch that fixes the crashes during probing when the driver isn't
compiled with SI/CIK support.

Fixes #4012
2025-04-09 17:23:55 +02:00
Jan Čermák
fc984b9435 Backport RTL8125D (rev C, XID 688) support (#4011)
* Backport RTL8125D (rev C, XID 688) support

Apply mainline patch adding support for NIC present e.g. on ASUS NUC 14
Essential.

Fixes #3880

* Update buildroot to add RTL8125D firmware

* buildroot 4cd211162d...5379c358bf (1):
  > linux-firmware: add RTL8125D firmware
2025-04-09 16:38:29 +02:00
Jan Čermák
cdbbfeaecc Linux: Update kernel to 6.12.22 (#4007)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.22
2025-04-07 16:13:00 +02:00
Jan Čermák
212796c98a Linux: Update kernel to 6.12.21 (#3994)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.21
2025-04-01 18:49:19 +02:00
Jan Čermák
2f0ffbe443 Change algorithm name in OVA manifest from SHA2-256 to SHA256 (#3981)
Update of OpenSSL in OS 12.2 from 1.1.1 to 3.2 changed the output of `openssl
sha256` command. It seems that some hypervisors don't like this and fail if
it's not plain "SHA256".

Fixes #3654
2025-03-28 15:21:46 +01:00
Jan Čermák
3a9a2529c6 Bump OS to development version 15.2.dev0 2025-03-28 15:20:43 +01:00
Jan Čermák
ed53f0491c Set initial_turbo=0 in config.txt on Raspberry Pi 3 (#3973)
Firmware change that set initial_turbo to 60 from the previous 0 has broken
initialization of some SD cards in U-Boot. Adjust the value in config.txt on OS
update if the value is not already set by the user, and put it to the default
config.txt.

The config.txt also contains a short comment explaining the purpose. The
purpose of it is also to make it easier to revert this change in the future if
the problem is fixed in the firmware or U-Boot.

Fixes #3965
2025-03-26 17:26:20 +01:00
Jan Čermák
5e9c47a318 Backport RPi patches for PIO/RP1 firmware probing errors (#3972)
One of the reason for failures after update to OS 15.0 was missing support for
the kernel PIO driver in EEPROM firmware. Backport upstream patches from
raspberrypi/linux#6645 and raspberrypi/linux#6642 that handle this situation
more gracefully. These patches could be dropped after the next RPi kernel
release.

Refs #3943
2025-03-26 16:26:44 +01:00
Jan Čermák
ab6214ba42 Linux: Update kernel to 6.12.20 (#3971)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.20
2025-03-25 18:29:22 +01:00
M. Greyson Christoforo
73b6cce99a Add Mellanox ConnectX-3 NIC support for kernel 6.12 (#3969)
PR #3775 was mistakenly left out of the jump to the 6.12 kernel
2025-03-25 11:50:25 +01:00
Jens Maus
15e59ead2f Update generic_raw_uart and eq3_char_loop to latest versions (#3964)
Update generic_raw_uart package to the latest sources available coming with
direct kernel 6.12.x compatibility dropping the intermediate patches
accordingly. In addition, the eq3_char_loop patchset was updated to reflect the
same changes performed.
2025-03-23 10:59:02 +01:00
Jan Čermák
05830dae0b Change i915 to module for proper initialization in VM passthrough (#3959)
When Intel GPUs are used in passthrough, the i915 is probed too early and fails
to load firmware which is in the rootfs mounted later. The CONFIG_DRM_I915=y
comes from x86_64_defconfig, by changing it to module (like we do for
generic-x86-64), the driver becomes only available after the rootfs is mounted
and firmware is loaded correctly.

Fixes #3949
2025-03-20 17:33:17 +01:00
Jan Čermák
0abfee2eaf Enable amdgpu SI and CIK support for x86 (#3957)
It seems that kernel 6.12 handles device probing less gracefully when these
options are not enabled and causes crash on some AMD SoCs, e.g.:

*ERROR* Invalid callback to read register 0x58184

Link: https://gitlab.freedesktop.org/drm/amd/-/issues/4050

Refs #3944
2025-03-20 17:32:24 +01:00
Jan Čermák
ce961e0c2c Add patches missing for ODROID-N2/C2/C4 to fix missing serial/I2C (#3947)
U-Boot update in #3878 changed the layout of patch folders for Hardkernel
targets with the goal to make it less confusing. However, it missed adding the
top-level hardkernel patches directory to all hardkernel targets and only
remove it from some of them in [1].

Revert to state before #3878 by adding the hardkernel folder to c2/c4/n2. In
the future, the patches from this folder should be split per target and if any
patches remain in it, they should be applied for all hardkernel boards.

[1] 2716b564c2

Fixes #3936
2025-03-18 18:00:04 +01:00