1
0
mirror of https://github.com/home-assistant/operating-system.git synced 2026-05-08 17:49:46 +01:00
Commit Graph

1850 Commits

Author SHA1 Message Date
Jan Čermák 0d84f0d861 Suppress new warnings from shellcheck v0.11.0 (#4207)
Shellcheck v0.11.0 added new warnings which raise false positive on the trap
function in the OTA hook script. Suppress also that warning.
2025-08-04 11:14:15 +02:00
Jan Čermák 32033293b6 Linux: Update kernel to 6.12.41 (#4200)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.41
2025-08-04 10:03:53 +02:00
Jan Čermák 7e1e8b6f5d Fix systemd-journal-gatewayd 100% CPU issue when watching logs (#4197)
When follow request for logs is issued that points to/beyond the end of logs, a
busy loop in systemd-journal-gatewayd can be triggered which manifests as
systemd-journal-gatewayd consuming 100% CPU. Since threads are used for each
request, the logs may still work but the CPU will be hogged until the restart
of systemd-journal-gatewayd, Supervisor, or the whole system.

Backport the patch submitted upstream that addresses this issue.

Fixes #4190
2025-07-31 11:06:59 +02:00
Jan Čermák 10e401e2f6 Linux: Update kernel to 6.12.40 (#4196)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.40
2025-07-31 11:06:49 +02:00
Michal Šimek 9ccda43197 Enable driver for Xilinx AMS adc sensor (#4192)
Sensor is used for chip monitoring to ensure device is operating in good
condition.
2025-07-24 12:09:04 +02:00
Jan Čermák c84729fae3 Generate Virtual Disk Image (VDI) for aarch64 build (#4187)
As there is VirtualBox available for aarch64 on Apple Macs, provide OS images
also in the native VirtualBox format, which also grants the ability to resize
existing disk images, unlike VMDK.

Fixes #4171 & fixes #4172
2025-07-24 11:55:00 +02:00
Jan Čermák 57f18192cc Enable netfilter NETMAP target support in kernel (#4186)
Enable option for the netfilter NETMAP target, as it can be useful for some
users. Until now it's been enabled only for some targets as an option coming
from upstream defconfigs; make sure it's available for all targets.

Fixes #4183
2025-07-24 11:54:45 +02:00
Jan Čermák 6ef83eb25d Enable Intel audio driver for virtualized sound on aarch64 (#4185)
Enable Intel audio driver which should make it possible to use virtualized
sound on aarch64 VMs with intel-hda emulation.

Fixes #4179
2025-07-24 11:54:36 +02:00
Jan Čermák c9b4e7e880 Linux: Update kernel to 6.12.39 (#4181)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.39
2025-07-21 17:34:15 +02:00
Stefan Agner d21679b3c6 Drop experimental and ip6tables config (#4173)
The ip6tables configuration is now enabled by default since Docker 27
(see https://github.com/moby/moby/pull/47747). The experimental config
got introduced with the ip6tables flag in #2051. There is no other
experimental feature used from what I am aware of, so lets remove the
experimental flag as well.
2025-07-16 16:14:32 +02:00
Jan Čermák b239b9152f Linux: Update kernel to 6.12.38 (#4170)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.37
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.38
2025-07-16 15:39:10 +02:00
Jan Čermák ecce801263 Linux: Update kernel to 6.12.36 (#4148)
* Linux: Update kernel to 6.12.36

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

* Remove patches adding support for RTL8125D

These patches are not necessary anymore as all the three commits are included
in 6.12.36.

Refs #4014
2025-07-14 16:17:21 +02:00
Jan Čermák aff1f81817 Unbind Broadcom HCI driver on RPi/CM without WiFi (#4139)
Unbind the Bluetooth driver for Broadcom HCI module before the bluetooth
service starts if running on board without WiFi module. This is a replacement
for #2948 but using a more targeted approach for removing the particular driver
and better detection of no-WiFi (thus no-Bluetooth) models.

This still means the driver will be probed and couple of lines printed when it
fails to set baudrate and reset the module, yet this should be benign, at least
the all-zero MAC device no longers appears in Bluetooth stack.
2025-07-02 17:07:36 +02:00
Jan Čermák 286f5a66ca Fix Hailo v4.21.0 driver traces due to missing lock (#4138)
Backport patch for traces appearing since v4.21.0 bump, introduced in #4095.
This change is not available in any newer tagged release of the driver and the
commit message upstream is messed up, hence the reworded patch.
2025-07-02 16:01:01 +02:00
Jan Čermák a338b67144 Make all Raspberry Pi LAN drivers built-in (#4137)
Make sure that all LAN drivers used on Raspberry Pi boards are built-in.
Although they are defined as such in the base defconfig, we change them to
modules in device support includes. For simplicity and keeping kernel config
close to the RPi OS config, change them all to built-in in the main RPi include
for all RPi targets.

This is not only a formal change - at least one regression is known if the PHY
driver on RPi 5 is not built-in and MAC driver is - in that case the PHY hooked
up to the RP1 isn't initialized properly, and it is reported as "Generic PHY"
instead, e.g. breaking the control of LEDs through dtparams. Relevant dmesg log
before the change:

 macb 1f00100000.ethernet end0: PHY [1f00100000.ethernet-ffffffff:01] driver [Generic PHY] (irq=POLL)

And after the change:

 macb 1f00100000.ethernet eth0: PHY [1f00100000.ethernet-ffffffff:01] driver [Broadcom BCM54213PE] (irq=POLL)

Fixes #3333
2025-07-02 16:00:52 +02:00
Jan Čermák dffbe89147 Mount Systemd Journal socket to the Supervisor container (#4133)
Bind-mount Systemd Journal socket to the Supervisor container. This way
Supervisor can use the socket directly for writing log entries using the
Systemd native Journal protocol [1] instead of logging to stderr of the
container.

[1] https://systemd.io/JOURNAL_NATIVE_PROTOCOL/
2025-07-01 17:32:18 +02:00
Jan Čermák 17ae2d4741 Do not disable RPi Bluetooth if Wi-Fi is not present (#4132)
This reverts commit eab18076ad.

This change was added in #2948 as a workaround for all-zero adapter appearing
in the HA frontend (#2944). With changes implemented in [1], this is no longer
needed, the only minor issue is that the ghost adapter still appears in
hciconfig (and other utilities') output as reported in [2]. However, this
should be less problematic than the Bluetooth being unavailable if WiFi is
disabled through disable-wifi DT overlay, so let's start with removing the
workaround.

Fixes #2975

[1] https://github.com/Bluetooth-Devices/bluetooth-adapters/pull/105
[2] https://github.com/raspberrypi/linux/issues/5756
2025-07-01 17:32:07 +02:00
Jan Čermák 1e3773c68a Linux: Update kernel to 6.12.35 (#4130)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.35
2025-06-30 15:53:28 +02:00
Jan Čermák da9c5312f3 Bump OS to development version 16.1.dev0 2025-06-30 13:47:54 +02:00
Jan Čermák 4a4da64f31 Fix journal-gatewayd returning duplicated lines when following logs (#4124)
When following logs in Home Assitant frontend, the last line may be duplicated
over time when no new lines are added. This is because systemd-journal-gatewayd
incorrectly processed the num_skip part of the Range header, always returning
the last entry even when it should have been skipped.

Backport the patch for Systemd that processes the header correctly.

Fixes #4101
2025-06-26 12:10:44 +02:00
Stefan Agner 42a5e6becb Enable parallel gzip for faster Docker pulls (#4123)
* Bump buildroot to update package/pigz

* Enable parallel gzip for faster Docker pulls

Docker checks if unpigz is available, and if so uses it to unpack
container layers with multiple CPU cores. This should make Docker pulls
faster, especially on lower end hardware.
2025-06-25 17:09:50 +02:00
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
https://github.com/home-assistant/buildroot/commit/127c42033590e73e3161852acd540a79c98d9f3d
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] https://github.com/RPi-Distro/firmware-nonfree/commit/2788cb549a19bf2e77901c4071ef88c2ad683b7c
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] https://github.com/raspberrypi/linux/commit/7713244d3baee3493108fb98edd82f5b2042ce48
[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