Commit Graph

2297 Commits

Author SHA1 Message Date
Jan Čermák adbd449494
Bump buildroot to update Docker to v25.0.5 (#3271)
* buildroot 1c84a7493b...51c9960ed8 (2):
  > package/docker-engine: bump version to v25.0.5
  > package/docker-cli: bump version to v25.0.5
2024-03-27 17:24:40 +01:00
Jan Čermák cff5c81cf0
Linux: Update kernel to 6.6.23 (#3270)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.23
2024-03-27 10:20:35 +01:00
Jan Čermák aafa022800
Bump buildroot to 2024.02.1 (#3268)
* buildroot a1b2d12f32...1c84a7493b (1):
  > Merge tag '2024.02.1' into 2024.02.x-haos
2024-03-26 13:15:48 +01:00
Jan Čermák ccf92bc87f
Disable setting default keymap in systemd-vconsole-setup (#3261)
Since buildroot commit 3ceb8c97bcb6753740fa27a58b8e0dc00dbbbd19, systemd
has new option BR2_PACKAGE_SYSTEMD_VCONSOLE_DEFAULT_KEYMAP which
defaults to "us". With this option specified, systemd-console depends on
kbd package and causes the following message to be printed during
startup on HAOS:

systemd-vconsole-setup[253]: sh: gzip: not found

This comes from the loadkeys call which tries to open the gzipped file,
so likely the kbd package should also depend on gzip. However, since we
don't want the kbd package at this point, I'm leaving this for later
investigation and simply unsetting the new option to revert to
pre-2024.02 setup.
2024-03-20 12:25:43 +01:00
Jan Čermák a45cab1756
Linux: Update kernel to 6.6.22 (#3259)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.22
2024-03-20 12:25:35 +01:00
Hedda 6c11146d9c
List Nabu Casa appliances under boards README.md (#3260)
List Nabu Casa appliances under boards README.md

* Home Assistant Green
* Home Assistant Yellow (based custom carrier board and powered by a Raspberry Pi 4 Compute Module)
* Home Assistant Blue (based on ODROID-N2+)
2024-03-20 09:35:58 +01:00
dependabot[bot] e144c2bc96
Bump docker/setup-buildx-action from 3.1.0 to 3.2.0 (#3257)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-18 15:35:15 +01:00
dependabot[bot] 6c7c972c5d
Bump docker/build-push-action from 5.2.0 to 5.3.0 (#3256)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-18 15:31:55 +01:00
dependabot[bot] 1953c2afdb
Bump docker/login-action from 3.0.0 to 3.1.0 (#3258)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-18 15:31:40 +01:00
Matthieu Baerts 6b062f3c75
kernel: enable MPTCP support (#3248)
The official description says:

  Multipath TCP (MPTCP) connections send and receive data over multiple
  subflows in order to utilize multiple network paths. Each subflow uses
  the TCP protocol, and TCP options carry header information for MPTCP.

Thanks to MPTCP, being able to use multiple paths in parallel or
simultaneously brings new use-cases:

- Seamless handovers: switching from one path to another while
  preserving established connections -- Apple is using it for this
  reason since 2013.

- Best network selection: using the "best" available path (latency,
  losses, cost, bandwidth) -- one path can be used as a "backup" one.

- Network aggregation: using multiple paths at the same time to have a
  higher throughput -- e.g. to combine a fixed an mobile network to
  send files faster.

For example, for HA, it is possible to keep a SSH connection alive when
switching from one network to another (e.g. while travelling).

To be able to use MPTCP, both ends need to support it. An application
has to request it, by creating an MPTCP socket instead of a TCP one.
The rest in unchanged. An alternative is to use 'mptcpize' tool, which
relies on LD_PRELOAD to create an MPTCP socket instead of a TCP one.

Note that a MPTCP-enabled server continues to accept regular TCP
connections that do not use the Multipath TCP extension without any
performance impact. When a connection request is received, and is linked
to a listening socket with MPTCP support, the kernel will simply check
if MPTCP options are present. If not, the accepted socket will be a
"plain" TCP one, with the same impact as before.

To use multiple paths at the same time, additional IP addresses need to
be configured, e.g. via the 'ip' tool (IPRoute2).

MPTCP in the kernel is enabled in most main Linux distributions (Debian,
Ubuntu, RedHat, Fedora, etc.), but in more specific ones like Raspbian.
It is available in the Linux kernel since v5.6.

Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
2024-03-14 16:51:01 +01:00
Jan Čermák c085ff2b10
Bump OS to development version 12.2.dev0 2024-03-13 15:19:48 +01:00
Jan Čermák 454d764676
Update Buildroot to 2024.02 (#3241)
* Update Buildroot to tag 2024.02 with rebased HAOS patchset

* udisks2: update to v2.10.1

  * Updated to version 2.10.x compatible with libblockdev v3
  * Rebased patches to new codebase
  * Autoreconf patch is not needed anymore
  * libblockdev-nvme is now hard dependency of udisks daemon

* patches/grub2: remove upstreamed efidisk patch

* patches/network-manager: update multiple gateway patch

* package/os-agent: fix go download

  After the Go update, build fails with the following error on mod vendor:

    GOPROXY list is not the empty string, but contains no entries

  Turns out this step is not having the environment variables set, use
  those used for download to fix it.

* package/xe-guest-utilities: set DL env for go mod vendor

* Bump buildroot to fix missing unit file from nfs-utils

* buildroot 3f950a1aee...a1b2d12f32 (1):
  > package/nfs-utils: only install fsidd binary and unit file with enabled nfsd

* CI: install flake8 for pr-checks runner

  Use distribution package, as it's what's used in Buidlroot's Gitlab CI
  Docker image at buildroot/support/docker/Dockefile.

* Disable check for Upstream section in the patch header for now

  It was introduced in latest BR - disable it for now and re-enable
  for HAOS in a later separate PR.
2024-03-13 15:16:54 +01:00
Jan Čermák 0e3a2d016d
Merge branch 'main' into dev 2024-03-13 12:21:53 +01:00
Jan Čermák fde0c80e54
Bump OS to release version 12.1 2024-03-13 11:17:02 +01:00
Stefan Agner 80dfffc0b0
Bump OS to pre-release version 12.1.rc2 2024-03-12 16:04:54 +01:00
Jan Čermák dd43bfee8e
Fix IPv6 reachability patch not being applied (#3240)
Fix regression caused by #3224 which introduced version-specific
directory for linux patches, causing the upper-level patch not being
applied. Copy the patch to the version folder instead. Also we need
to keep it in the upper directory for RPi kernels.

(cherry picked from commit 8226323a1b)
2024-03-12 15:09:25 +01:00
Jan Čermák 32f1ca8fa8
Fix test_restore_ssl_directory with HA CLI in interactive PTY (#3239)
The test was missing --no-progress flag, which only manifested after
merging #3238 - causing the CLI to run in an interactive pseudotty.

(cherry picked from commit 122dd1c288)
2024-03-12 14:56:14 +01:00
Stefan Agner 3dfd3a4c21
Start HA CLI interactively and with a tty allocated (#3238)
Use -i (--interactive) and -t (--tty) to start the HA CLI interactively.
This is required by some commands like the new device wipe command added
with https://github.com/home-assistant/cli/pull/464.

(cherry picked from commit fe1978f98f)
2024-03-12 14:56:11 +01:00
Jan Čermák 8226323a1b
Fix IPv6 reachability patch not being applied (#3240)
Fix regression caused by #3224 which introduced version-specific
directory for linux patches, causing the upper-level patch not being
applied. Copy the patch to the version folder instead. Also we need
to keep it in the upper directory for RPi kernels.
2024-03-12 14:55:18 +01:00
Jan Čermák 122dd1c288
Fix test_restore_ssl_directory with HA CLI in interactive PTY (#3239)
The test was missing --no-progress flag, which only manifested after
merging #3238 - causing the CLI to run in an interactive pseudotty.
2024-03-12 14:55:10 +01:00
Stefan Agner fe1978f98f
Start HA CLI interactively and with a tty allocated (#3238)
Use -i (--interactive) and -t (--tty) to start the HA CLI interactively.
This is required by some commands like the new device wipe command added
with https://github.com/home-assistant/cli/pull/464.
2024-03-12 10:12:35 +01:00
dependabot[bot] 541afd452b
Bump docker/build-push-action from 5.1.0 to 5.2.0 (#3235)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 5.1.0 to 5.2.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v5.1.0...v5.2.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-11 18:28:48 +01:00
Jan Čermák b5795a0277
Linux: Update kernel to 6.6.21 (#3234)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.21
2024-03-11 18:28:36 +01:00
Jan Čermák a909d89e1c
Bump OS to pre-release version 12.1.rc1 2024-03-07 17:48:52 +01:00
Jan Čermák e24fbf63ae
Revert back to OOT driver for RTL8821CU (#3225)
The in-tree driver introduced in HAOS 12.0 is having random issues,
so revert back to the stable OOT driver that was used before for now.
Also it add it to RPi 2 and Yellow where it's been missing the whole
time.

Fixes #3205
2024-03-06 16:50:14 +01:00
Jan Čermák a6f54f6c4d
Revert USB core changes to workaround Z-Wave stick issues (#3224)
Revert changes in the USB driver causing Z-Wave sticks (Z-Wave.me a
and Aeotec at least) failing to enumerate. Issue is reported upstream
but reverting the patches is a feasible workaround for the time being.

Refs #2995
2024-03-06 16:49:54 +01:00
dependabot[bot] 6ac4f3435b
Bump docker/setup-buildx-action from 3.0.0 to 3.1.0 (#3221)
Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 3.0.0 to 3.1.0.
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](https://github.com/docker/setup-buildx-action/compare/v3.0.0...v3.1.0)

---
updated-dependencies:
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-04 14:26:47 +01:00
Jan Čermák 8debb61114
Disable UAS via usb-storage.quirks on RPi for JMicron JMS567 (#3220)
Reported to have issues, quick search around the internet also confirms
that UAS driver doesn't work well here on Linux in general.

Fixes #3217
2024-03-04 12:11:47 +01:00
Jan Čermák 47f8671925
Add Intel Wireless-N 105 firmware for generic-x86-64 (#3219)
* buildroot 0ab96d7c0d...15dc3b6e0c (1):
  > linux-firmware: add options for missing Intel b/g/n cards

Fixes #3200
2024-03-04 11:56:23 +01:00
Jan Čermák 8f577e47db
Linux: Update kernel to 6.6.20 (#3218)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.19
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.20
2024-03-04 11:42:04 +01:00
Jan Čermák 2adfa287d1
Linux: Update kernel to 6.6.18 (#3204)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.17
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.18
2024-02-27 19:17:39 +01:00
Jan Čermák e60a2e4b68
Merge branch 'main' into dev 2024-02-26 09:39:41 +01:00
Jan Čermák ff34a11f37
Bump OS to release version 12.0 2024-02-26 09:26:15 +01:00
Jan Čermák dfdd3b4438
Clarify M1S flashing and recovery docs (#3187)
Remove the mentions of petitboot, as it's not normally used on M1S.
Document possibility to use SD card boot and alternative method of
reflashing the eMMC from an OS running from an SD card.
2024-02-20 14:24:24 +01:00
Tim L 9614f769f2
M1S issues template (#3181)
* Add Odroid M1S to issues template

* Add M1S to Hardkernel readme
2024-02-17 09:17:11 +01:00
Tim L 8c5377810f
Add documentation for ODROID-M1S (#3179) 2024-02-16 12:22:28 +01:00
Jan Čermák 426ef2d568
Bump OS to development version 12.1.dev0 2024-02-15 12:08:24 +01:00
Jan Čermák e9e027dd95
Bump OS to pre-release version 12.0.rc1 2024-02-15 11:40:55 +01:00
Jan Čermák cf0bde1f5a
Move output directory to /mnt in GH build action (#3174)
With recent change of Azure VM type, the disk layout has changed and
the build of ova target fails with insufficient space. Since there
is now plenty of space on /mnt partition, we can use that, just like
we've been using it for cache for now.

Ref: https://github.com/easimon/maximize-build-space/issues/39#issuecomment-1935591779
2024-02-14 17:42:17 +01:00
Tim L 1b66f81dfa
Add support for Odroid M1S Board (#3121)
* Copy Odroid-m1 config for new odroid-m1s board

* config: Adjust names and paths for odroid-m1s

* configs: Use rk3566 blobs for ATF

* set correct fdt in uboot.ush

* Add linux patches with Odroid-m1s devicetree

Synced from Hardkernel unofficial 6.1 tree
ae33b44557/arch/arm64/boot/dts/rockchip/rk3566-odroid-m1s.dts

With additional cleanup and fixes for mainline linux

* Add Odroid M1S to Github actions

* uboot: Patch boot order to set SD Card first

* Create u-boot placeholder partion for odroid-m1s also

* Switch u-boot to full odroid-m1s config

* cherry-pick emmc stability improvements

* Generalise u-boot to use ${devtype} instead of hardcoded mmc

* Remove deprecated snps, reset options from device tree

* re-enable uboot ethernet
2024-02-14 12:01:15 +01:00
Jens Maus 623ebd8d38
added udev rule to rpi-rf-mod package to allow addons to have write (#2854)
access to these led nodes.
2024-02-12 17:12:57 +01:00
Tim L f05294e51d
Factor out common Rockchip config (#3165)
* Create common kernel config for Rockchip aarch64 boards

* Green: drop kernel option already included in main config

* Move rockchip RNG patchset to common folder

* Odroid-m1 has no board specific patches now
2024-02-12 16:05:47 +01:00
Jan Čermák af345d98d7
Add SD/MMC drivers of Realtek card readers for generic_x86_64 (#3170)
We added drivers for Realtek cards readers in #3005, however it also
needs MMC drivers in order to make card reading possible. Enable both
USB and PCI versions of those (each about ~40 kB).

Fixes #3167
2024-02-12 16:05:22 +01:00
Jan Čermák b599d24658
Update issue template with better links to logs, add CLI instructions (#3169)
* Update issue template with better links to logs, add CLI instructions

Legacy supervisor_logs target (which is currently kind of broken) replaced
with standard logs with provider specified. Added instructions how to get
logs in HA CLI.

* Apply suggestions from code review

Co-authored-by: Stefan Agner <stefan@agner.ch>
2024-02-12 16:05:12 +01:00
Jan Čermák e7a62ce563
RaspberryPi: Update kernel to 6.1.73 - stable_20240124 (#3162)
* RaspberryPi: Update kernel to 6.1.73 - stable_20240124

* Bump rpi-firmware to version for RPi Linux 6.1.73

* buildroot f844f7f725...0ab96d7c0d (1):
  > package/rpi-firmware: bump to version for stable_20240124 kernel
2024-02-08 22:02:28 +01:00
Stefan Agner f770a3f4b2
Bump Pi 5 image on release in Raspberry Pi Imager json (#3161) 2024-02-08 19:24:18 +01:00
Jan Čermák 0028e20973
Linux: Update kernel to 6.6.16 (#3159)
* https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.16
2024-02-08 10:36:58 +01:00
Jan Čermák ad4493a781
Fix ODROID XU4 boot by disabling PROVE_LOCKING in kernel (#3158)
ODROID XU4 fails to boot after update to Linux 6.6. Comparing downstream
kernel config with upstream exynos defconfig shows it has various lockdep
options enabled, and PROVE_LOCKING seems to be the one that causes the
issue. It seems it (or any of PROVE_RCU, TRACE_IRQFLAGS or
PREEMPTIRQ_TRACEPOINTS) which get enabled along with it) probably
triggers some timing issues on the I2C bus, which causes the main PMIC
to fail to properly initialize all voltages.

Since these options should not have any real impact on our system, the
easiest option is to disable them. If we need them, or want to stay
closer to upstream defconfig, further debugging is needed.

Fixes #3137
2024-02-08 10:36:49 +01:00
Jan Čermák 5fddd20258
Use verity bundle format for RAUC updates (#3152)
We originally enabled it in 0ebcdcb9dc
but later reverted the patch in 5b927389b8
because of backward compatibility issues. Since we're going to 12.0,
there is now hopefully enough room for seamless transition.

Co-authored-by: Stefan Agner <stefan@agner.ch>
2024-02-06 18:19:10 +01:00
Jan Čermák c1b936716d
Enable ath12k, MT7996E and various new Realtek drivers from Linux v6.6 (#3151)
* Enable ath12k, MT7996E and various new Realtek drivers from Linux v6.6

* Remove custom rtl8821cu driver from targets running Linux 6.6
2024-02-06 18:18:58 +01:00