From 885f0a82abbe14943724969c77a13833d722339c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20=C4=8Cerm=C3=A1k?= Date: Tue, 19 Nov 2024 12:02:56 +0100 Subject: [PATCH 01/13] Bump OS to pre-release version 14.0.rc1 --- buildroot-external/meta | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/buildroot-external/meta b/buildroot-external/meta index 9554990e0..5bd66e75e 100644 --- a/buildroot-external/meta +++ b/buildroot-external/meta @@ -1,8 +1,8 @@ VERSION_MAJOR="14" VERSION_MINOR="0" -VERSION_SUFFIX="dev0" +VERSION_SUFFIX="rc1" HASSOS_NAME="Home Assistant OS" HASSOS_ID="haos" -DEPLOYMENT="development" +DEPLOYMENT="staging" From 129184804126b97beadcae12db2acfcf3fb40fe4 Mon Sep 17 00:00:00 2001 From: "@RubenKelevra" Date: Thu, 21 Nov 2024 19:07:41 +0100 Subject: [PATCH 02/13] Disable UAS via usb-storage.quirks on RPi for JMicron JMS583 Vendor ID: 152d Product ID: a583 fixes #3674 (cherry picked from commit a042dc01d212dc2b559018fc42337dd5462270de) --- buildroot-external/board/raspberrypi/cmdline.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buildroot-external/board/raspberrypi/cmdline.txt b/buildroot-external/board/raspberrypi/cmdline.txt index 669314f90..55e3300d0 100644 --- a/buildroot-external/board/raspberrypi/cmdline.txt +++ b/buildroot-external/board/raspberrypi/cmdline.txt @@ -1 +1 @@ -dwc_otg.lpm_enable=0 console=tty0 usb-storage.quirks=174c:55aa:u,2109:0715:u,152d:0578:u,152d:0579:u,152d:1561:u,174c:0829:u,14b0:0206:u,174c:225c:u,7825:a2a4:u,152d:0562:u,125f:a88a:u +dwc_otg.lpm_enable=0 console=tty0 usb-storage.quirks=174c:55aa:u,2109:0715:u,152d:0578:u,152d:0579:u,152d:1561:u,174c:0829:u,14b0:0206:u,174c:225c:u,7825:a2a4:u,152d:0562:u,125f:a88a:u,152d:a583:u From 74af85505621ce8a55720d6b2c60c9c757d627d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20=C4=8Cerm=C3=A1k?= Date: Thu, 21 Nov 2024 19:42:26 +0100 Subject: [PATCH 03/13] Always use NVMe datadisk on Yellow if it's present on first boot (#3686) If HAOS on Yellow is booted for the first time with NVMe data disk present, it should be preferred over the empty eMMC data partition. This will ease reinstall of the system and migration from CM4 to CM5. All other data disks (e.g. if a USB drive is used for them) are still treated as before, requiring manual adoption using the Supervisor repair. (cherry picked from commit 98ac7f017089f28d7f231eed1a51533dfa62a475) --- .../usr/libexec/haos-data-disk-detach | 61 +++++++++++++++---- 1 file changed, 50 insertions(+), 11 deletions(-) diff --git a/buildroot-external/rootfs-overlay/usr/libexec/haos-data-disk-detach b/buildroot-external/rootfs-overlay/usr/libexec/haos-data-disk-detach index 361a6745e..dafc469a5 100755 --- a/buildroot-external/rootfs-overlay/usr/libexec/haos-data-disk-detach +++ b/buildroot-external/rootfs-overlay/usr/libexec/haos-data-disk-detach @@ -1,4 +1,5 @@ #!/bin/sh +# shellcheck disable=SC1091 # Find root using rdev command rootpart=$(rdev | cut -f 1 -d ' ') @@ -9,15 +10,53 @@ sleep 10s datapartitions=$(blkid --match-token LABEL="hassos-data" --output device) -for datapart in ${datapartitions} -do - datadev=$(lsblk -no pkname "${datapart}") +. /etc/os-release - # If major does not match our root device major, it is an external data - # disk. Rename to make sure it gets ignored. - if [ "$rootdev" != "$datadev" ] - then - echo "Found external data disk device on ${datapart}, mark it disabled..." - e2label "${datapart}" hassos-data-dis - fi -done +disable_data_partition() { + e2label "${1}" hassos-data-dis +} + +if [ "$VARIANT_ID" = "yellow" ]; then + emmc_data_partition="" + nvme_data_partition="" + + for datapart in ${datapartitions}; do + datadev=$(lsblk -no pkname "${datapart}") + + case "${datadev}" in + mmc*) + # Data partition on internal eMMC + if [ "$rootdev" = "$datadev" ]; then + emmc_data_partition="${datapart}" + fi + ;; + nvme0*) + # Data partition on first NVMe disk + nvme_data_partition="${datapart}" + ;; + *) + # Disable all other data disks as normally + if [ "$rootdev" != "$datadev" ]; then + echo "Found extra external data disk device on ${datapart}, marking it disabled..." + disable_data_partition "${datapart}" + fi + ;; + esac + done + + if [ -n "${emmc_data_partition}" ] && [ -n "${nvme_data_partition}" ]; then + echo "Found both eMMC and NVMe data disk devices, marking eMMC as disabled" + disable_data_partition "${emmc_data_partition}" + fi +else + for datapart in ${datapartitions}; do + datadev=$(lsblk -no pkname "${datapart}") + + # If major does not match our root device major, it is an external data + # disk. Rename to make sure it gets ignored. + if [ "$rootdev" != "$datadev" ]; then + echo "Found external data disk device on ${datapart}, marking it disabled..." + disable_data_partition "${datapart}" + fi + done +fi From 444f65ca944baa69f79bdc7228fc8f5af3360689 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20=C4=8Cerm=C3=A1k?= Date: Thu, 21 Nov 2024 19:42:58 +0100 Subject: [PATCH 04/13] Sync Yellow's DTS with plain CM5 device tree (#3688) Sync the DTS with changes added in newer commits merged after the initial Yellow/CM5 DTS was written. The sdio1 node now has HS400 mode enabled and sd_io_1v8_reg has been changed to regulator-fixed. (cherry picked from commit b288cd212ae82d78de707009d61265d9d950497c) --- ...yellow-Sync-sdio1-and-sd_io_1v8_reg-.patch | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 buildroot-external/board/raspberrypi/yellow/patches/linux/0017-ARM-dts-bcm2712-yellow-Sync-sdio1-and-sd_io_1v8_reg-.patch diff --git a/buildroot-external/board/raspberrypi/yellow/patches/linux/0017-ARM-dts-bcm2712-yellow-Sync-sdio1-and-sd_io_1v8_reg-.patch b/buildroot-external/board/raspberrypi/yellow/patches/linux/0017-ARM-dts-bcm2712-yellow-Sync-sdio1-and-sd_io_1v8_reg-.patch new file mode 100644 index 000000000..c01aaddf7 --- /dev/null +++ b/buildroot-external/board/raspberrypi/yellow/patches/linux/0017-ARM-dts-bcm2712-yellow-Sync-sdio1-and-sd_io_1v8_reg-.patch @@ -0,0 +1,50 @@ +From e29e2cfad33afa692f2f727f492dab02d5ff3948 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Jan=20=C4=8Cerm=C3=A1k?= +Date: Thu, 21 Nov 2024 14:26:20 +0100 +Subject: [PATCH] ARM: dts: bcm2712: yellow: Sync sdio1 and sd_io_1v8_reg nodes + with CM5 DTS +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +SDIO1 and its 1V8 regulator have been changed in vanilla CM5 device tree, +reflect those changes in Yellow's DTS. + +Signed-off-by: Jan Čermák +--- + .../boot/dts/broadcom/bcm2712-rpi-cm5-ha-yellow.dts | 12 ++++-------- + 1 file changed, 4 insertions(+), 8 deletions(-) + +diff --git a/arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5-ha-yellow.dts b/arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5-ha-yellow.dts +index 4b130f42b2358..c85d608da2043 100644 +--- a/arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5-ha-yellow.dts ++++ b/arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5-ha-yellow.dts +@@ -78,17 +78,11 @@ led_act: led-act { + }; + + sd_io_1v8_reg: sd_io_1v8_reg { +- compatible = "regulator-gpio"; ++ compatible = "regulator-fixed"; + regulator-name = "vdd-sd-io"; + regulator-min-microvolt = <1800000>; +- regulator-max-microvolt = <3300000>; +- regulator-boot-on; ++ regulator-max-microvolt = <1800000>; + regulator-always-on; +- regulator-settling-time-us = <5000>; +- gpios = <&gio_aon 3 GPIO_ACTIVE_HIGH>; +- states = <1800000 0x1 +- 3300000 0x0>; +- status = "okay"; + }; + + sd_vcc_reg: sd_vcc_reg { +@@ -355,6 +349,8 @@ &sdio1 { + sd-uhs-ddr50; + sd-uhs-sdr104; + mmc-hs200-1_8v; ++ mmc-hs400-1_8v; ++ mmc-hs400-enhanced-strobe; + broken-cd; + supports-cqe; + status = "okay"; From 55bbddad4faad7ad9ea9a00f1aacaa38b04b2df2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20=C4=8Cerm=C3=A1k?= Date: Fri, 22 Nov 2024 13:56:49 +0100 Subject: [PATCH 05/13] Enable Cypress M8 USB serial driver for all targets (#3693) Build cypress_m8 driver as module for all targets - some of them had it in their base defconfig while some not. It is required e.g. for UPB PIM (Powerline Interface Module). Fixes #3690 (cherry picked from commit d57e50776499f209e013efa0db6cb3c7f46f51c3) --- buildroot-external/kernel/v6.6.y/device-support.config | 1 + buildroot-external/kernel/v6.6.y/kernel-arm64-rockchip.config | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/buildroot-external/kernel/v6.6.y/device-support.config b/buildroot-external/kernel/v6.6.y/device-support.config index 1794644fa..d3e925ec4 100644 --- a/buildroot-external/kernel/v6.6.y/device-support.config +++ b/buildroot-external/kernel/v6.6.y/device-support.config @@ -13,6 +13,7 @@ CONFIG_USB_SERIAL_GENERIC=y CONFIG_USB_SERIAL_OPTION=m CONFIG_USB_SERIAL_SIMPLE=m CONFIG_USB_SERIAL_CP210X=m +CONFIG_USB_SERIAL_CYPRESS_M8=m CONFIG_USB_SERIAL_FTDI_SIO=m CONFIG_USB_SERIAL_PL2303=m CONFIG_USB_SERIAL_CH341=m diff --git a/buildroot-external/kernel/v6.6.y/kernel-arm64-rockchip.config b/buildroot-external/kernel/v6.6.y/kernel-arm64-rockchip.config index e528945a7..8effd5732 100644 --- a/buildroot-external/kernel/v6.6.y/kernel-arm64-rockchip.config +++ b/buildroot-external/kernel/v6.6.y/kernel-arm64-rockchip.config @@ -3119,7 +3119,6 @@ CONFIG_USB_SERIAL_CH341=m CONFIG_USB_SERIAL_WHITEHEAT=m CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m CONFIG_USB_SERIAL_CP210X=m -CONFIG_USB_SERIAL_CYPRESS_M8=m CONFIG_USB_SERIAL_EMPEG=m CONFIG_USB_SERIAL_FTDI_SIO=m CONFIG_USB_SERIAL_VISOR=m From 91532037bbbe3bc07053b675d3dac20414acfa03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20=C4=8Cerm=C3=A1k?= Date: Fri, 22 Nov 2024 14:25:55 +0100 Subject: [PATCH 06/13] Bump OS to pre-release version 14.0.rc2 --- buildroot-external/meta | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buildroot-external/meta b/buildroot-external/meta index 5bd66e75e..29fe9d7df 100644 --- a/buildroot-external/meta +++ b/buildroot-external/meta @@ -1,6 +1,6 @@ VERSION_MAJOR="14" VERSION_MINOR="0" -VERSION_SUFFIX="rc1" +VERSION_SUFFIX="rc2" HASSOS_NAME="Home Assistant OS" HASSOS_ID="haos" From 66405f102a03650a7239d8c69f0347ad753c0239 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20=C4=8Cerm=C3=A1k?= Date: Mon, 25 Nov 2024 17:49:13 +0100 Subject: [PATCH 07/13] Linux: Update kernel to 6.6.63 (#3697) * https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.6.63 (cherry picked from commit 22dd06018327af29f07a83717a42c0bb19abdeec) --- Documentation/kernel.md | 24 +++++++++---------- .../configs/generic_aarch64_defconfig | 2 +- .../configs/generic_x86_64_defconfig | 2 +- buildroot-external/configs/green_defconfig | 2 +- .../configs/khadas_vim3_defconfig | 2 +- .../configs/odroid_c2_defconfig | 2 +- .../configs/odroid_c4_defconfig | 2 +- .../configs/odroid_m1_defconfig | 2 +- .../configs/odroid_m1s_defconfig | 2 +- .../configs/odroid_n2_defconfig | 2 +- .../configs/odroid_xu4_defconfig | 2 +- buildroot-external/configs/ova_defconfig | 2 +- buildroot-external/configs/tinker_defconfig | 2 +- 13 files changed, 24 insertions(+), 24 deletions(-) diff --git a/Documentation/kernel.md b/Documentation/kernel.md index eb3afb21b..f8af6272d 100644 --- a/Documentation/kernel.md +++ b/Documentation/kernel.md @@ -3,7 +3,7 @@ | Board | Version | |-------|---------| -| Open Virtual Appliance | 6.6.62 | +| Open Virtual Appliance | 6.6.63 | | Raspberry Pi | 6.6.51 | | Raspberry Pi 0-W | 6.6.51 | | Raspberry Pi 2 | 6.6.51 | @@ -11,14 +11,14 @@ | Raspberry Pi 4 | 6.6.51 | | Raspberry Pi 5 | 6.6.51 | | Home Assistant Yellow | 6.6.51 | -| Home Assistant Green | 6.6.62 | -| Tinker Board | 6.6.62 | -| ODROID-C2 | 6.6.62 | -| ODROID-C4 | 6.6.62 | -| ODROID-M1 | 6.6.62 | -| ODROID-M1S | 6.6.62 | -| ODROID-N2 | 6.6.62 | -| ODROID-XU4 | 6.6.62 | -| Generic aarch64 | 6.6.62 | -| Generic x86-64 | 6.6.62 | -| Khadas VIM3 | 6.6.62 | +| Home Assistant Green | 6.6.63 | +| Tinker Board | 6.6.63 | +| ODROID-C2 | 6.6.63 | +| ODROID-C4 | 6.6.63 | +| ODROID-M1 | 6.6.63 | +| ODROID-M1S | 6.6.63 | +| ODROID-N2 | 6.6.63 | +| ODROID-XU4 | 6.6.63 | +| Generic aarch64 | 6.6.63 | +| Generic x86-64 | 6.6.63 | +| Khadas VIM3 | 6.6.63 | diff --git a/buildroot-external/configs/generic_aarch64_defconfig b/buildroot-external/configs/generic_aarch64_defconfig index b7eb8dbed..30b84126e 100644 --- a/buildroot-external/configs/generic_aarch64_defconfig +++ b/buildroot-external/configs/generic_aarch64_defconfig @@ -16,7 +16,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/arm-uefi/generic-aarch64 $(BR2_EXTERNAL_HASSOS_PATH)/board/arm-uefi/generic-aarch64/hassos-hook.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.62" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.63" BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support-wireless.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support-wireless-pci.config $(BR2_EXTERNAL_HASSOS_PATH)/board/arm-uefi/generic-aarch64/kernel.config" BR2_LINUX_KERNEL_LZ4=y diff --git a/buildroot-external/configs/generic_x86_64_defconfig b/buildroot-external/configs/generic_x86_64_defconfig index 156ea337d..3c55948df 100644 --- a/buildroot-external/configs/generic_x86_64_defconfig +++ b/buildroot-external/configs/generic_x86_64_defconfig @@ -16,7 +16,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/pc/generic-x86-64 $(BR2_EXTERNAL_HASSOS_PATH)/board/pc/generic-x86-64/hassos-hook.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.62" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.63" BR2_LINUX_KERNEL_DEFCONFIG="x86_64" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support-wireless.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support-wireless-pci.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support-pci.config $(BR2_EXTERNAL_HASSOS_PATH)/board/pc/generic-x86-64/kernel.config" BR2_LINUX_KERNEL_LZ4=y diff --git a/buildroot-external/configs/green_defconfig b/buildroot-external/configs/green_defconfig index 692fa9a1a..b7f227e20 100755 --- a/buildroot-external/configs/green_defconfig +++ b/buildroot-external/configs/green_defconfig @@ -16,7 +16,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/nabucasa/green $(BR2_EXTERNAL_HASSOS_PATH)/board/nabucasa/green/hassos-hook.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.62" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.63" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/kernel-arm64-rockchip.config" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support-wireless.config $(BR2_EXTERNAL_HASSOS_PATH)/board/nabucasa/green/kernel.config" diff --git a/buildroot-external/configs/khadas_vim3_defconfig b/buildroot-external/configs/khadas_vim3_defconfig index 4dc31ace4..5111150d9 100644 --- a/buildroot-external/configs/khadas_vim3_defconfig +++ b/buildroot-external/configs/khadas_vim3_defconfig @@ -16,7 +16,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/khadas/vim3 $(BR2_EXTERNAL_HASSOS_PATH)/board/khadas/vim3/hassos-hook.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.62" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.63" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/board/khadas/kernel-vim.config" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support-wireless.config" diff --git a/buildroot-external/configs/odroid_c2_defconfig b/buildroot-external/configs/odroid_c2_defconfig index e0c7a1929..7bb67cb25 100644 --- a/buildroot-external/configs/odroid_c2_defconfig +++ b/buildroot-external/configs/odroid_c2_defconfig @@ -16,7 +16,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-c2 $(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-c2/hassos-hook.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.62" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.63" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/kernel-amlogic.config" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support-wireless.config" diff --git a/buildroot-external/configs/odroid_c4_defconfig b/buildroot-external/configs/odroid_c4_defconfig index 88f5914f4..f4568ab1d 100644 --- a/buildroot-external/configs/odroid_c4_defconfig +++ b/buildroot-external/configs/odroid_c4_defconfig @@ -16,7 +16,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-c4 $(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-c4/hassos-hook.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.62" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.63" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/kernel-amlogic.config" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support-wireless.config" diff --git a/buildroot-external/configs/odroid_m1_defconfig b/buildroot-external/configs/odroid_m1_defconfig index 6ba0f7e7c..65cabb6fa 100644 --- a/buildroot-external/configs/odroid_m1_defconfig +++ b/buildroot-external/configs/odroid_m1_defconfig @@ -16,7 +16,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-m1 $(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-m1/hassos-hook.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.62" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.63" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/kernel-arm64-rockchip.config" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support-wireless.config $(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-m1/kernel.config" diff --git a/buildroot-external/configs/odroid_m1s_defconfig b/buildroot-external/configs/odroid_m1s_defconfig index ef8688e81..be3f465d7 100644 --- a/buildroot-external/configs/odroid_m1s_defconfig +++ b/buildroot-external/configs/odroid_m1s_defconfig @@ -16,7 +16,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-m1s $(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-m1s/hassos-hook.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.62" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.63" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/kernel-arm64-rockchip.config" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support-wireless.config $(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-m1s/kernel.config" diff --git a/buildroot-external/configs/odroid_n2_defconfig b/buildroot-external/configs/odroid_n2_defconfig index 31a937c4b..1235ea550 100644 --- a/buildroot-external/configs/odroid_n2_defconfig +++ b/buildroot-external/configs/odroid_n2_defconfig @@ -16,7 +16,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-n2 $(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-n2/hassos-hook.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.62" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.63" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/kernel-amlogic.config" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support-wireless.config $(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-n2/kernel.config" diff --git a/buildroot-external/configs/odroid_xu4_defconfig b/buildroot-external/configs/odroid_xu4_defconfig index 281d90737..3816fde18 100644 --- a/buildroot-external/configs/odroid_xu4_defconfig +++ b/buildroot-external/configs/odroid_xu4_defconfig @@ -17,7 +17,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-xu4 $(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-xu4/hassos-hook.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.62" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.63" BR2_LINUX_KERNEL_DEFCONFIG="exynos" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support-wireless.config $(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-xu4/kernel.config" BR2_LINUX_KERNEL_LZ4=y diff --git a/buildroot-external/configs/ova_defconfig b/buildroot-external/configs/ova_defconfig index 46b044076..5734e5c78 100644 --- a/buildroot-external/configs/ova_defconfig +++ b/buildroot-external/configs/ova_defconfig @@ -16,7 +16,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/pc/ova $(BR2_EXTERNAL_HASSOS_PATH)/board/pc/ova/hassos-hook.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.62" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.63" BR2_LINUX_KERNEL_DEFCONFIG="x86_64" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support-pci.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support-wireless.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support-wireless-pci.config $(BR2_EXTERNAL_HASSOS_PATH)/board/pc/ova/kernel.config" BR2_LINUX_KERNEL_LZ4=y diff --git a/buildroot-external/configs/tinker_defconfig b/buildroot-external/configs/tinker_defconfig index c375a1ea0..f84db4fd3 100644 --- a/buildroot-external/configs/tinker_defconfig +++ b/buildroot-external/configs/tinker_defconfig @@ -18,7 +18,7 @@ BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-image.sh" BR2_ROOTFS_POST_SCRIPT_ARGS="$(BR2_EXTERNAL_HASSOS_PATH)/board/asus/tinker $(BR2_EXTERNAL_HASSOS_PATH)/board/asus/hassos-hook.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y -BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.62" +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.6.63" BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/board/asus/tinker/kernel.config" BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/v6.6.y/device-support-wireless.config" From a355da20753fd78b2d4a15e85f5b57c6860b2b6d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20=C4=8Cerm=C3=A1k?= Date: Mon, 2 Dec 2024 15:19:38 +0100 Subject: [PATCH 08/13] Reduce time of mmc0 interface random hangs on Yellow+CM5 boot (#3700) For yet unknown root cause, the eMMC interface sometimes fails to initialize properly, delaying boot for up to 130 seconds. This can be reduced by ~100s by disabling SD and SDIO modes on the sdio1 interface used for mmc0 before a better patch is found. (cherry picked from commit 489de0b2fb06aa6477c2c4ad34d4b9440e5a21ae) --- ...yellow-Disable-SD-SDIO-modes-on-eMMC.patch | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 buildroot-external/board/raspberrypi/yellow/patches/linux/0018-ARM-dts-bcm2712-yellow-Disable-SD-SDIO-modes-on-eMMC.patch diff --git a/buildroot-external/board/raspberrypi/yellow/patches/linux/0018-ARM-dts-bcm2712-yellow-Disable-SD-SDIO-modes-on-eMMC.patch b/buildroot-external/board/raspberrypi/yellow/patches/linux/0018-ARM-dts-bcm2712-yellow-Disable-SD-SDIO-modes-on-eMMC.patch new file mode 100644 index 000000000..44bdad9f3 --- /dev/null +++ b/buildroot-external/board/raspberrypi/yellow/patches/linux/0018-ARM-dts-bcm2712-yellow-Disable-SD-SDIO-modes-on-eMMC.patch @@ -0,0 +1,44 @@ +From 9639a7a0f20cbd4a7b9968f6a3ede4727d96d297 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Jan=20=C4=8Cerm=C3=A1k?= +Date: Thu, 28 Nov 2024 18:05:55 +0100 +Subject: [PATCH] ARM: dts: bcm2712: yellow: Disable SD/SDIO modes on eMMC + interface +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +If the eMMC card is not initialized properly (probably a side-effect of its +usage in U-Boot), every command sent to it takes over 10 seconds before +timeout. With SD and SDIO modes not disabled in the device tree, it takes up +over 130 seconds before the card is reset. Disabling these two modes reduces +this by 100 seconds. + +While this is added as a partial workaround for the issue, disabling these mode +should make no harm anyway. + +Signed-off-by: Jan Čermák +--- + .../boot/dts/broadcom/bcm2712-rpi-cm5-ha-yellow.dts | 10 ++++++++++ + 1 file changed, 10 insertions(+) + +diff --git a/arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5-ha-yellow.dts b/arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5-ha-yellow.dts +index c85d608da2043..189c17fe2028e 100644 +--- a/arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5-ha-yellow.dts ++++ b/arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5-ha-yellow.dts +@@ -851,6 +851,16 @@ &rp1_usb1 { + status = "disabled"; + }; + ++/* ++ * Yellow doesn't need to use eMMC interface as SD/SDIO, disable those ++ * modes to speed up boot. This is particularly handy to work around ++ * an issue with eMMC initialization but won't harm in general. ++ */ ++&sdio1 { ++ no-sdio; ++ no-sd; ++}; ++ + &leds { + led_act: led-act { + label = "act"; From 3df77436330e12aa814226dff0880935e215dd5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20=C4=8Cerm=C3=A1k?= Date: Mon, 2 Dec 2024 16:45:35 +0100 Subject: [PATCH 09/13] Disable CQE on mmc0 to fix I/O freezes on Yellow+CM5 (#3705) The I/O operations on the eMMC can sometimes fail and lock up completely, and disabling CQE on the sdio1 (mmc0) interface seems to solve the issue. While it is a known (and potentially resolved) issue [1] for SD cards in Raspberry Pi's Linux fork, it is not acknowledged neither resolved for CM5's eMMC. With CQE enabled, the device usually locks up within the first 10 first boots, when the swap file is being created. After disabling CQE, no error occurred after more that 100 cold boots (every time with swap file removed). [1] https://github.com/raspberrypi/linuxissues/6349 (cherry picked from commit c514d6b4825e4d72a0f3bfac26a5d3a203390e08) --- ...yellow-Disable-CQE-on-eMMC-interface.patch | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 buildroot-external/board/raspberrypi/yellow/patches/linux/0019-ARM-dts-bcm2712-yellow-Disable-CQE-on-eMMC-interface.patch diff --git a/buildroot-external/board/raspberrypi/yellow/patches/linux/0019-ARM-dts-bcm2712-yellow-Disable-CQE-on-eMMC-interface.patch b/buildroot-external/board/raspberrypi/yellow/patches/linux/0019-ARM-dts-bcm2712-yellow-Disable-CQE-on-eMMC-interface.patch new file mode 100644 index 000000000..581f4481c --- /dev/null +++ b/buildroot-external/board/raspberrypi/yellow/patches/linux/0019-ARM-dts-bcm2712-yellow-Disable-CQE-on-eMMC-interface.patch @@ -0,0 +1,50 @@ +From 0d9aed86fbaf650cf15ea0977e05cee2980ed054 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Jan=20=C4=8Cerm=C3=A1k?= +Date: Mon, 2 Dec 2024 16:07:00 +0100 +Subject: [PATCH] ARM: dts: bcm2712: yellow: Disable CQE on eMMC interface +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Testing shows that enabling CQE causes random hangs on I/O operations, often +during the swap boostrapping on the first boot: + +[ 242.826099] Tainted: G C 6.6.51-haos-raspi #54 +[ 242.832463] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. +[ 242.840429] INFO: task jbd2/mmcblk0p7-:300 blocked for more than 120 seconds. +[ 242.847572] Tainted: G C 6.6.51-haos-raspi #54 +[ 242.853928] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. +[ 242.861789] INFO: task jbd2/mmcblk0p8-:344 blocked for more than 120 seconds. +[ 242.868926] Tainted: G C 6.6.51-haos-raspi #54 +[ 242.875277] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. +[ 242.883149] INFO: task systemd-timesyn:569 blocked for more than 120 seconds. +[ 242.890282] Tainted: G C 6.6.51-haos-raspi #54 +[ 242.896628] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. +[ 242.904522] INFO: task dockerd:606 blocked for more than 120 seconds. +[ 242.910958] Tainted: G C 6.6.51-haos-raspi #54 +[ 242.917304] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. +[ 242.925200] INFO: task runc:[2:INIT]:1504 blocked for more than 120 seconds. +[ 242.932249] Tainted: G C 6.6.51-haos-raspi #54 +[ 242.938595] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. + +This is a known issue currently for some SD cards but it hasn't been +acknowledged for eMMC yet. By removing the CQE capability, the issue seems to +go away. + +Signed-off-by: Jan Čermák +--- + arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5-ha-yellow.dts | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5-ha-yellow.dts b/arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5-ha-yellow.dts +index 189c17fe2028e..469d0fdc971a8 100644 +--- a/arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5-ha-yellow.dts ++++ b/arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5-ha-yellow.dts +@@ -352,7 +352,6 @@ &sdio1 { + mmc-hs400-1_8v; + mmc-hs400-enhanced-strobe; + broken-cd; +- supports-cqe; + status = "okay"; + }; + From 0b251bb950754c005377143bd6b6ef76d10d930c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 2 Dec 2024 16:47:20 +0100 Subject: [PATCH 10/13] Bump docker/build-push-action from 6.9.0 to 6.10.0 (#3704) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.9.0 to 6.10.0. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](https://github.com/docker/build-push-action/compare/v6.9.0...v6.10.0) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> (cherry picked from commit e0ccf398f2093071bfd8f4b20ecd7a8d2bd4c974) --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index c4f5611f3..f85395fd8 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -144,7 +144,7 @@ jobs: username: ${{ github.repository_owner }} password: ${{ secrets.GITHUB_TOKEN }} - name: Build and Push - uses: docker/build-push-action@v6.9.0 + uses: docker/build-push-action@v6.10.0 id: build_haos_builder with: context: . From 47a648392a1f429ebd198d6160b2956aa6a77292 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20=C4=8Cerm=C3=A1k?= Date: Mon, 2 Dec 2024 17:47:40 +0100 Subject: [PATCH 11/13] Disable CM5's RTC to make Yellow's on-board RTC the primary one (#3706) With both RTCs enabled, the rpi_rtc is probed as the first one, making the on-board RTC unused by default. Since the CM5's RTC peripheral can't be used on Yellow, as the VBAT pin is not connected, disable it completely to fix RTC. (cherry picked from commit 9d643edb54d25be404b1cc92b64f1eddf48e6a86) --- ...M-dts-bcm2712-yellow-Disable-rpi_rtc.patch | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 buildroot-external/board/raspberrypi/yellow/patches/linux/0020-ARM-dts-bcm2712-yellow-Disable-rpi_rtc.patch diff --git a/buildroot-external/board/raspberrypi/yellow/patches/linux/0020-ARM-dts-bcm2712-yellow-Disable-rpi_rtc.patch b/buildroot-external/board/raspberrypi/yellow/patches/linux/0020-ARM-dts-bcm2712-yellow-Disable-rpi_rtc.patch new file mode 100644 index 000000000..777fdb81a --- /dev/null +++ b/buildroot-external/board/raspberrypi/yellow/patches/linux/0020-ARM-dts-bcm2712-yellow-Disable-rpi_rtc.patch @@ -0,0 +1,32 @@ +From fc558b6a7174e2b5c37936dd8c13ca29e9273472 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Jan=20=C4=8Cerm=C3=A1k?= +Date: Mon, 2 Dec 2024 17:22:04 +0100 +Subject: [PATCH] ARM: dts: bcm2712: yellow: Disable rpi_rtc +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Yellow has its own I2C RTC and there is no way to power the new peripheral on +CM5. + +Signed-off-by: Jan Čermák +--- + arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5-ha-yellow.dts | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5-ha-yellow.dts b/arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5-ha-yellow.dts +index 469d0fdc971a8..ebdeef5f89881 100644 +--- a/arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5-ha-yellow.dts ++++ b/arch/arm64/boot/dts/broadcom/bcm2712-rpi-cm5-ha-yellow.dts +@@ -927,6 +927,11 @@ &i2c1 { + clock-frequency = <100000>; + }; + ++/* No way to power CM5's VBAT pin on Yellow, disable its RTC. */ ++&rpi_rtc { ++ status = "disabled"; ++}; ++ + /* Board-level I2C (RTC and I2S audio) */ + &rp1_i2c3 { + pinctrl-names = "default"; From babf11d7104160e36ff28c672335f6f9d236132c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20=C4=8Cerm=C3=A1k?= Date: Mon, 2 Dec 2024 17:51:00 +0100 Subject: [PATCH 12/13] Bump OS to pre-release version 14.0.rc3 --- buildroot-external/meta | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buildroot-external/meta b/buildroot-external/meta index 29fe9d7df..de684c3bd 100644 --- a/buildroot-external/meta +++ b/buildroot-external/meta @@ -1,6 +1,6 @@ VERSION_MAJOR="14" VERSION_MINOR="0" -VERSION_SUFFIX="rc2" +VERSION_SUFFIX="rc3" HASSOS_NAME="Home Assistant OS" HASSOS_ID="haos" From 2ac3fceaf4881a3b7a0e9e660fb54bbfe562cdd4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20=C4=8Cerm=C3=A1k?= Date: Tue, 3 Dec 2024 14:16:01 +0100 Subject: [PATCH 13/13] Bump OS to release version 14.0 --- buildroot-external/meta | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/buildroot-external/meta b/buildroot-external/meta index de684c3bd..f3ebd91f6 100644 --- a/buildroot-external/meta +++ b/buildroot-external/meta @@ -1,8 +1,8 @@ VERSION_MAJOR="14" VERSION_MINOR="0" -VERSION_SUFFIX="rc3" +VERSION_SUFFIX="" HASSOS_NAME="Home Assistant OS" HASSOS_ID="haos" -DEPLOYMENT="staging" +DEPLOYMENT="production"