mirror of
https://github.com/home-assistant/operating-system.git
synced 2025-08-01 17:27:41 +00:00
Compare commits
45 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
cc5fe10e53 | ||
![]() |
592806872f | ||
![]() |
d2a5be9406 | ||
![]() |
429376c9ae | ||
![]() |
e149149cc9 | ||
![]() |
ae86416d89 | ||
![]() |
f62c919a76 | ||
![]() |
558472baa3 | ||
![]() |
a38ee172f1 | ||
![]() |
0ef46fdafa | ||
![]() |
67ecb0fb26 | ||
![]() |
2fc225752c | ||
![]() |
5e23a6cc88 | ||
![]() |
788e4e45e3 | ||
![]() |
29a754ec4f | ||
![]() |
2285b7ca04 | ||
![]() |
2a7a917203 | ||
![]() |
cbbd65081e | ||
![]() |
163ba55028 | ||
![]() |
1675b65b45 | ||
![]() |
f906b1ef55 | ||
![]() |
fb5851099e | ||
![]() |
da4ba283bb | ||
![]() |
909b66eed3 | ||
![]() |
091b4e3a9a | ||
![]() |
72b3c46bfc | ||
![]() |
306c07b1b1 | ||
![]() |
ad2f3a3570 | ||
![]() |
083d894c50 | ||
![]() |
b4edaef3ba | ||
![]() |
def80b9bbc | ||
![]() |
9856c9523b | ||
![]() |
c01297a0e5 | ||
![]() |
bcf2adac53 | ||
![]() |
4305ab6bbd | ||
![]() |
882c4a0252 | ||
![]() |
94662c545a | ||
![]() |
e90379e2b8 | ||
![]() |
07f2f140a1 | ||
![]() |
d078152a1c | ||
![]() |
7f8a74f3d6 | ||
![]() |
0eb42d8495 | ||
![]() |
d8bf7a67a5 | ||
![]() |
a6f2f81182 | ||
![]() |
80079db997 |
3
.github/workflows/dev.yml
vendored
3
.github/workflows/dev.yml
vendored
@ -12,6 +12,9 @@ jobs:
|
||||
if: ${{ github.event_name == 'workflow_dispatch' || contains(github.event.pull_request.labels.*.name, 'run-dev-build') }}
|
||||
name: Prepare build
|
||||
runs-on: [ "ubuntu-20.04" ]
|
||||
permissions:
|
||||
contents: read
|
||||
pull-requests: read
|
||||
outputs:
|
||||
version_main: ${{ steps.version_main.outputs.version_main }}
|
||||
version_dev: ${{ steps.version_dev.outputs.version_dev }}${{ steps.version_pr.outputs.version_pr }}
|
||||
|
3
.github/workflows/release-drafter.yml
vendored
3
.github/workflows/release-drafter.yml
vendored
@ -8,6 +8,9 @@ on:
|
||||
|
||||
jobs:
|
||||
update_release_draft:
|
||||
permissions:
|
||||
contents: write # for release-drafter/release-drafter to create a github release
|
||||
pull-requests: read # for release-drafter/release-drafter to read PR content and labels
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: release-drafter/release-drafter@v5
|
||||
|
2
.github/workflows/release.yml
vendored
2
.github/workflows/release.yml
vendored
@ -44,6 +44,8 @@ jobs:
|
||||
return { "board": boards }
|
||||
|
||||
build:
|
||||
permissions:
|
||||
contents: write # for actions/upload-release-asset to upload release asset
|
||||
name: Release build for ${{ matrix.board.id }}
|
||||
needs: validate_release
|
||||
strategy:
|
||||
|
3
.github/workflows/stale.yml
vendored
3
.github/workflows/stale.yml
vendored
@ -8,6 +8,9 @@ on:
|
||||
|
||||
jobs:
|
||||
stale:
|
||||
permissions:
|
||||
issues: write # for actions/stale to close stale issues
|
||||
pull-requests: write # for actions/stale to close stale PRs
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
# The 90 day stale policy
|
||||
|
@ -5,18 +5,18 @@ Default Kernel tree: 5.15
|
||||
|
||||
| Board | Version |
|
||||
|-------|---------|
|
||||
| Open Virtual Appliance | 5.15.38 |
|
||||
| Open Virtual Appliance | 5.15.60 |
|
||||
| Raspberry Pi | 5.15.32 |
|
||||
| Raspberry Pi 0-W | 5.15.32 |
|
||||
| Raspberry Pi 2 | 5.15.32 |
|
||||
| Raspberry Pi 3 | 5.15.32 |
|
||||
| Raspberry Pi 4 | 5.15.32 |
|
||||
| Home Assistant Yellow | 5.15.32 |
|
||||
| Tinker Board | 5.15.38 |
|
||||
| Odroid-C2 | 5.15.38 |
|
||||
| Odroid-C4 | 5.15.38 |
|
||||
| Odroid-N2 | 5.15.38 |
|
||||
| Odroid-XU4 | 5.15.38 |
|
||||
| Generic aarch64 | 5.15.38 |
|
||||
| Generic x86-64 | 5.15.38 |
|
||||
| Khadas VIM3 | 5.15.38 |
|
||||
| Tinker Board | 5.15.60 |
|
||||
| Odroid-C2 | 5.15.60 |
|
||||
| Odroid-C4 | 5.15.60 |
|
||||
| Odroid-N2 | 5.15.60 |
|
||||
| Odroid-XU4 | 5.15.60 |
|
||||
| Generic aarch64 | 5.15.60 |
|
||||
| Generic x86-64 | 5.15.60 |
|
||||
| Khadas VIM3 | 5.15.60 |
|
||||
|
@ -1 +1 @@
|
||||
Subproject commit ee56159464e03d78d671cdc344b619716edae8a7
|
||||
Subproject commit 04ac0c825d453559a27aa2d80151bcfec9bb4965
|
@ -11,6 +11,7 @@ source "$BR2_EXTERNAL_HASSOS_PATH/package/qemu-guest-agent/Config.in"
|
||||
source "$BR2_EXTERNAL_HASSOS_PATH/package/rpi-eeprom/Config.in"
|
||||
source "$BR2_EXTERNAL_HASSOS_PATH/package/rpi-rf-mod/Config.in"
|
||||
source "$BR2_EXTERNAL_HASSOS_PATH/package/rtl88x2bu/Config.in"
|
||||
source "$BR2_EXTERNAL_HASSOS_PATH/package/rtl8821cu/Config.in"
|
||||
source "$BR2_EXTERNAL_HASSOS_PATH/package/tempio/Config.in.host"
|
||||
source "$BR2_EXTERNAL_HASSOS_PATH/package/udisks2/Config.in"
|
||||
source "$BR2_EXTERNAL_HASSOS_PATH/package/xe-guest-utilities/Config.in"
|
||||
|
@ -13,4 +13,8 @@ CONFIG_VIRTIO_MMIO=y
|
||||
CONFIG_SCSI_VIRTIO=y
|
||||
CONFIG_HW_RANDOM_VIRTIO=y
|
||||
|
||||
CONFIG_NVME_CORE=y
|
||||
CONFIG_BLK_DEV_NVME=y
|
||||
CONFIG_NVME_HWMON=y
|
||||
|
||||
CONFIG_DRM_VIRTIO_GPU=m
|
||||
|
@ -30,14 +30,12 @@ CONFIG_IWLDVM=m
|
||||
CONFIG_IWLMVM=m
|
||||
|
||||
CONFIG_SYSFB=y
|
||||
CONFIG_SYSFB_SIMPLEFB=y
|
||||
|
||||
CONFIG_FB=y
|
||||
CONFIG_FB_EFI=y
|
||||
|
||||
CONFIG_DRM=y
|
||||
CONFIG_DRM_FBDEV_EMULATION=y
|
||||
CONFIG_DRM_SIMPLEDRM=y
|
||||
CONFIG_DRM_I915=m
|
||||
CONFIG_DRM_I915_CAPTURE_ERROR=y
|
||||
CONFIG_DRM_I915_COMPRESS_ERROR=y
|
||||
|
@ -0,0 +1,45 @@
|
||||
# This file is part of systemd.
|
||||
#
|
||||
# systemd is free software; you can redistribute it and/or modify it under the
|
||||
# terms of the GNU Lesser General Public License as published by the Free
|
||||
# Software Foundation; either version 2.1 of the License, or (at your option)
|
||||
# any later version.
|
||||
#
|
||||
# Entries in this file show the compile time defaults. Local configuration
|
||||
# should be created by either modifying this file, or by creating "drop-ins" in
|
||||
# the logind.conf.d/ subdirectory. The latter is generally recommended.
|
||||
# Defaults can be restored by simply deleting this file and all drop-ins.
|
||||
#
|
||||
# Use 'systemd-analyze cat-config systemd/logind.conf' to display the full config.
|
||||
#
|
||||
# See logind.conf(5) for details.
|
||||
|
||||
[Login]
|
||||
#NAutoVTs=6
|
||||
#ReserveVT=6
|
||||
#KillUserProcesses=yes
|
||||
#KillOnlyUsers=
|
||||
#KillExcludeUsers=root
|
||||
#InhibitDelayMaxSec=5
|
||||
#UserStopDelaySec=10
|
||||
#HandlePowerKey=poweroff
|
||||
#HandleSuspendKey=suspend
|
||||
#HandleHibernateKey=hibernate
|
||||
#HandleLidSwitch=suspend
|
||||
#HandleLidSwitchExternalPower=suspend
|
||||
#HandleLidSwitchDocked=ignore
|
||||
#HandleRebootKey=reboot
|
||||
#HandleRebootKeyLongPress=poweroff
|
||||
#PowerKeyIgnoreInhibited=no
|
||||
#SuspendKeyIgnoreInhibited=no
|
||||
#HibernateKeyIgnoreInhibited=no
|
||||
#LidSwitchIgnoreInhibited=yes
|
||||
#RebootKeyIgnoreInhibited=no
|
||||
#HoldoffTimeoutSec=30s
|
||||
#IdleAction=ignore
|
||||
#IdleActionSec=30min
|
||||
#RuntimeDirectorySize=10%
|
||||
#RuntimeDirectoryInodesMax=400k
|
||||
#RemoveIPC=yes
|
||||
#InhibitorsMax=8192
|
||||
#SessionsMax=8192
|
@ -1,8 +1,8 @@
|
||||
From 24b77460dbfa2497ceb7a1611bf28b6eb88a1d74 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1645627172.git.stefan@agner.ch>
|
||||
Message-Id: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1654086219.git.stefan@agner.ch>
|
||||
From: Pascal Vizeli <pvizeli@syshack.ch>
|
||||
Date: Tue, 10 Dec 2019 09:48:46 +0000
|
||||
Subject: [PATCH 1/5] rpi: Use CONFIG_OF_BOARD instead of CONFIG_EMBED
|
||||
Subject: [PATCH] rpi: Use CONFIG_OF_BOARD instead of CONFIG_EMBED
|
||||
|
||||
Signed-off-by: Pascal Vizeli <pvizeli@syshack.ch>
|
||||
---
|
||||
@ -79,5 +79,5 @@ index 8acf04d0e4..5d5e700224 100644
|
||||
CONFIG_SYS_RELOC_GD_ENV_ADDR=y
|
||||
CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
|
||||
--
|
||||
2.35.1
|
||||
2.36.1
|
||||
|
||||
|
@ -1,10 +1,10 @@
|
||||
From c942eb452c1c31fe6259178b6e9fea5456d7fb9c Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <c942eb452c1c31fe6259178b6e9fea5456d7fb9c.1645627172.git.stefan@agner.ch>
|
||||
In-Reply-To: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1645627172.git.stefan@agner.ch>
|
||||
References: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1645627172.git.stefan@agner.ch>
|
||||
Message-Id: <c942eb452c1c31fe6259178b6e9fea5456d7fb9c.1654086219.git.stefan@agner.ch>
|
||||
In-Reply-To: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1654086219.git.stefan@agner.ch>
|
||||
References: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1654086219.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Mon, 27 Sep 2021 12:28:04 +0200
|
||||
Subject: [PATCH 2/5] usb: xhci: reset endpoint on USB stall
|
||||
Subject: [PATCH] usb: xhci: reset endpoint on USB stall
|
||||
|
||||
There are devices which cause a USB stall when trying to read strings.
|
||||
Specifically Arduino Mega R3 stalls when trying to read the product
|
||||
@ -83,5 +83,5 @@ index 35bd5cd29e..430823cb9d 100644
|
||||
/* Invalidate buffer to make it available to usb-core */
|
||||
if (length > 0)
|
||||
--
|
||||
2.35.1
|
||||
2.36.1
|
||||
|
||||
|
@ -1,10 +1,10 @@
|
||||
From ae45864457182fcaa67911e1e3d8db242dff3646 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <ae45864457182fcaa67911e1e3d8db242dff3646.1645627172.git.stefan@agner.ch>
|
||||
In-Reply-To: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1645627172.git.stefan@agner.ch>
|
||||
References: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1645627172.git.stefan@agner.ch>
|
||||
Message-Id: <ae45864457182fcaa67911e1e3d8db242dff3646.1654086219.git.stefan@agner.ch>
|
||||
In-Reply-To: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1654086219.git.stefan@agner.ch>
|
||||
References: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1654086219.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Tue, 29 Dec 2020 23:34:52 +0100
|
||||
Subject: [PATCH 3/5] rpi: add NVMe to boot order
|
||||
Subject: [PATCH] rpi: add NVMe to boot order
|
||||
|
||||
The Compute Module 4 I/O Board can support a NVMe. Add NVMe to the boot
|
||||
order.
|
||||
@ -40,5 +40,5 @@ index 4c5c1ac31f..e24c94c7d2 100644
|
||||
BOOT_TARGET_PXE(func) \
|
||||
BOOT_TARGET_DHCP(func)
|
||||
--
|
||||
2.35.1
|
||||
2.36.1
|
||||
|
||||
|
@ -1,11 +1,10 @@
|
||||
From 3a13ff4eb509e8e80a52ae45c9a5573e745803c3 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <3a13ff4eb509e8e80a52ae45c9a5573e745803c3.1645627172.git.stefan@agner.ch>
|
||||
In-Reply-To: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1645627172.git.stefan@agner.ch>
|
||||
References: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1645627172.git.stefan@agner.ch>
|
||||
Message-Id: <3a13ff4eb509e8e80a52ae45c9a5573e745803c3.1654086219.git.stefan@agner.ch>
|
||||
In-Reply-To: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1654086219.git.stefan@agner.ch>
|
||||
References: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1654086219.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Thu, 23 Sep 2021 23:43:31 +0200
|
||||
Subject: [PATCH 4/5] Revert "nvme: Correct the prps per page calculation
|
||||
method"
|
||||
Subject: [PATCH] Revert "nvme: Correct the prps per page calculation method"
|
||||
|
||||
This reverts commit 859b33c948945f7904f60a2c12a3792d356d51ad.
|
||||
|
||||
@ -40,5 +39,5 @@ index 3c529a2fce..3bda491e12 100644
|
||||
|
||||
length -= (page_size - offset);
|
||||
--
|
||||
2.35.1
|
||||
2.36.1
|
||||
|
||||
|
@ -1,11 +1,11 @@
|
||||
From b00922ee48987ef91f0ca2aa3a66ad22c6c83d57 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <b00922ee48987ef91f0ca2aa3a66ad22c6c83d57.1645627172.git.stefan@agner.ch>
|
||||
In-Reply-To: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1645627172.git.stefan@agner.ch>
|
||||
References: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1645627172.git.stefan@agner.ch>
|
||||
Message-Id: <b00922ee48987ef91f0ca2aa3a66ad22c6c83d57.1654086219.git.stefan@agner.ch>
|
||||
In-Reply-To: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1654086219.git.stefan@agner.ch>
|
||||
References: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1654086219.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Thu, 7 Oct 2021 12:02:39 +0200
|
||||
Subject: [PATCH 5/5] usb: xhci-brcm: Make driver compatible with downstream
|
||||
device tree
|
||||
Subject: [PATCH] usb: xhci-brcm: Make driver compatible with downstream device
|
||||
tree
|
||||
|
||||
The downstream device tree uses just "generic-xhci" as compatible
|
||||
string. Use this string to make U-Boot work with the downstream Kernel.
|
||||
@ -29,5 +29,5 @@ index fe17924028..0c6938187b 100644
|
||||
};
|
||||
|
||||
--
|
||||
2.35.1
|
||||
2.36.1
|
||||
|
||||
|
@ -1,10 +1,10 @@
|
||||
From 78924e9cf8c4af0baafcb2e7224bf04ad65276de Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <78924e9cf8c4af0baafcb2e7224bf04ad65276de.1650924333.git.stefan@agner.ch>
|
||||
In-Reply-To: <78704bc154d695ee16fdf8396f4d60b740190014.1650924333.git.stefan@agner.ch>
|
||||
References: <78704bc154d695ee16fdf8396f4d60b740190014.1650924333.git.stefan@agner.ch>
|
||||
From 4ef63d77803aeb322fe72eb5445897eba52c68ff Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <4ef63d77803aeb322fe72eb5445897eba52c68ff.1654086219.git.stefan@agner.ch>
|
||||
In-Reply-To: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1654086219.git.stefan@agner.ch>
|
||||
References: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1654086219.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Thu, 23 Sep 2021 23:52:44 +0200
|
||||
Subject: [PATCH 3/5] nvme: improve readability of nvme_setup_prps()
|
||||
Subject: [PATCH] nvme: improve readability of nvme_setup_prps()
|
||||
|
||||
Improve readability by introducing consts, reuse consts where
|
||||
appropriate and adding variables with discriptive name.
|
||||
@ -47,5 +47,5 @@ index 3bda491e12..1601651449 100644
|
||||
prp_pool += page_size;
|
||||
}
|
||||
--
|
||||
2.36.0
|
||||
2.36.1
|
||||
|
@ -1,10 +1,10 @@
|
||||
From e040d976ecbdd8071bbcb73d78e17ababa88c51f Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <e040d976ecbdd8071bbcb73d78e17ababa88c51f.1650924333.git.stefan@agner.ch>
|
||||
In-Reply-To: <78704bc154d695ee16fdf8396f4d60b740190014.1650924333.git.stefan@agner.ch>
|
||||
References: <78704bc154d695ee16fdf8396f4d60b740190014.1650924333.git.stefan@agner.ch>
|
||||
From b3441191724335b5a41d73875584ea293f85a56b Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <b3441191724335b5a41d73875584ea293f85a56b.1654086219.git.stefan@agner.ch>
|
||||
In-Reply-To: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1654086219.git.stefan@agner.ch>
|
||||
References: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1654086219.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Thu, 23 Sep 2021 23:58:35 +0200
|
||||
Subject: [PATCH 4/5] nvme: Use pointer for CPU addressed buffers
|
||||
Subject: [PATCH] nvme: Use pointer for CPU addressed buffers
|
||||
|
||||
Pass buffers which use CPU addressing as void pointers. This aligns with
|
||||
DMA APIs which use void pointers as argument. It will avoid unnecessary
|
||||
@ -259,5 +259,5 @@ index 2cdf8ce320..8ff823cd81 100644
|
||||
/**
|
||||
* nvme_scan_namespace - scan all namespaces attached to NVMe controllers
|
||||
--
|
||||
2.36.0
|
||||
2.36.1
|
||||
|
@ -1,10 +1,10 @@
|
||||
From c4736c35141e519d15430660e17c274e142e886d Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <c4736c35141e519d15430660e17c274e142e886d.1650924333.git.stefan@agner.ch>
|
||||
In-Reply-To: <78704bc154d695ee16fdf8396f4d60b740190014.1650924333.git.stefan@agner.ch>
|
||||
References: <78704bc154d695ee16fdf8396f4d60b740190014.1650924333.git.stefan@agner.ch>
|
||||
From 54d797d83265e31e16db922eb7c12d4bbc749127 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <54d797d83265e31e16db922eb7c12d4bbc749127.1654086219.git.stefan@agner.ch>
|
||||
In-Reply-To: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1654086219.git.stefan@agner.ch>
|
||||
References: <24b77460dbfa2497ceb7a1611bf28b6eb88a1d74.1654086219.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Fri, 24 Sep 2021 00:27:39 +0200
|
||||
Subject: [PATCH 5/5] nvme: translate virtual addresses into the bus's address
|
||||
Subject: [PATCH] nvme: translate virtual addresses into the bus's address
|
||||
space
|
||||
|
||||
So far we've been content with passing physical/CPU addresses when
|
||||
@ -194,5 +194,5 @@ index c6aae4da5d..31e6899bca 100644
|
||||
+
|
||||
#endif /* __DRIVER_NVME_H__ */
|
||||
--
|
||||
2.36.0
|
||||
2.36.1
|
||||
|
@ -1 +1 @@
|
||||
dwc_otg.lpm_enable=0 console=tty1 console=serial0,115200n8 console=ttyAMA2,115200n8
|
||||
dwc_otg.lpm_enable=0 console=tty1 console=ttyAMA2,115200n8
|
||||
|
@ -7,9 +7,12 @@ disable_splash=1
|
||||
kernel=u-boot.bin
|
||||
arm_64bit=1
|
||||
|
||||
# uncomment to enable primary UART console
|
||||
# Enable primary UART by default
|
||||
enable_uart=1
|
||||
|
||||
# Free up full-fledged PL011 UART for J11
|
||||
dtoverlay=miniuart-bt
|
||||
|
||||
# No HDMI on Yellow, but we can't set to 16 since we need the full firmware
|
||||
# for codecs
|
||||
gpu_mem=32
|
||||
@ -23,9 +26,7 @@ gpu_mem=32
|
||||
#dtoverlay=lirc-rpi
|
||||
|
||||
# Uncomment this to enable GPIO support for RPI-RF-MOD/HM-MOD-RPI-PCB
|
||||
#enable_uart=1
|
||||
#dtparam=i2c_arm=on
|
||||
#dtoverlay=miniuart-bt
|
||||
#dtoverlay=rpi-rf-mod
|
||||
|
||||
# Additional overlays and parameters are documented /boot/overlays/README
|
||||
|
@ -6,5 +6,5 @@ KERNEL_FILE=Image
|
||||
BOOT_SYS=hybrid
|
||||
BOOT_SPL=false
|
||||
BOOT_ENV_SIZE=0x4000
|
||||
SUPERVISOR_MACHINE=raspberrypi4-64
|
||||
SUPERVISOR_MACHINE=yellow
|
||||
SUPERVISOR_ARCH=aarch64
|
||||
|
@ -0,0 +1,41 @@
|
||||
From 01e15ae929bb8442f3c9cb31b7cad182ecc4d520 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <01e15ae929bb8442f3c9cb31b7cad182ecc4d520.1659172941.git.stefan@agner.ch>
|
||||
In-Reply-To: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1659172941.git.stefan@agner.ch>
|
||||
References: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1659172941.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Sat, 30 Jul 2022 11:12:13 +0200
|
||||
Subject: [PATCH 12/13] gpio: raspberrypi-exp: Workaround polarity firmware bug
|
||||
|
||||
When configuring a GPIO as output, the firmware seems to invert the
|
||||
initial state when active low polarity is declared in the device tree.
|
||||
The bug has been acknowledged by the firmware team and will be fixed
|
||||
in a future firmware release:
|
||||
https://github.com/raspberrypi/linux/issues/5107
|
||||
|
||||
Fix this by inverting the polarity on our side as well to make sure
|
||||
the initial output is set correctly.
|
||||
|
||||
Signed-off-by: Stefan Agner <stefan@agner.ch>
|
||||
---
|
||||
drivers/gpio/gpio-raspberrypi-exp.c | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/drivers/gpio/gpio-raspberrypi-exp.c b/drivers/gpio/gpio-raspberrypi-exp.c
|
||||
index 64a552ecc2ad..f986940c3a5d 100644
|
||||
--- a/drivers/gpio/gpio-raspberrypi-exp.c
|
||||
+++ b/drivers/gpio/gpio-raspberrypi-exp.c
|
||||
@@ -119,6 +119,11 @@ static int rpi_exp_gpio_dir_out(struct gpio_chip *gc, unsigned int off, int val)
|
||||
return ret;
|
||||
set_out.polarity = ret; /* Retain existing setting */
|
||||
|
||||
+ /* Need to invert the GPIO in first config set if inverted polarity */
|
||||
+ /* See https://github.com/raspberrypi/linux/issues/5107 */
|
||||
+ if (set_out.polarity)
|
||||
+ set_out.state = !val;
|
||||
+
|
||||
ret = rpi_firmware_property(gpio->fw, RPI_FIRMWARE_SET_GPIO_CONFIG,
|
||||
&set_out, sizeof(set_out));
|
||||
if (ret || set_out.gpio != 0) {
|
||||
--
|
||||
2.37.1
|
||||
|
@ -0,0 +1,68 @@
|
||||
From 713afd6c80d4635306682a5643799195846271b1 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <713afd6c80d4635306682a5643799195846271b1.1659172941.git.stefan@agner.ch>
|
||||
In-Reply-To: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1659172941.git.stefan@agner.ch>
|
||||
References: <2d3d8c091bc692999a1c519c1dc1570cc8be2358.1659172941.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Sat, 30 Jul 2022 11:21:31 +0200
|
||||
Subject: [PATCH 13/13] ARM: dts: bcm2711: yellow: Add LED overrides
|
||||
|
||||
Add device tree overrides for all three LEDs.
|
||||
|
||||
Signed-off-by: Stefan Agner <stefan@agner.ch>
|
||||
---
|
||||
arch/arm/boot/dts/bcm2711-rpi-cm4-ha-yellow.dts | 17 ++++++++++-------
|
||||
1 file changed, 10 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/arch/arm/boot/dts/bcm2711-rpi-cm4-ha-yellow.dts b/arch/arm/boot/dts/bcm2711-rpi-cm4-ha-yellow.dts
|
||||
index f354bfb69093..2d272a02128b 100644
|
||||
--- a/arch/arm/boot/dts/bcm2711-rpi-cm4-ha-yellow.dts
|
||||
+++ b/arch/arm/boot/dts/bcm2711-rpi-cm4-ha-yellow.dts
|
||||
@@ -621,20 +621,24 @@ audio_pins: audio_pins {
|
||||
|
||||
&leds {
|
||||
act_led: led-act {
|
||||
- label = "led0";
|
||||
+ label = "act";
|
||||
linux,default-trigger = "activity";
|
||||
+ default-state = "off";
|
||||
gpios = <&gpio 42 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
pwr_led: led-pwr {
|
||||
- label = "led1";
|
||||
+ label = "pwr";
|
||||
linux,default-trigger = "default-on";
|
||||
+ default-state = "off";
|
||||
gpios = <&expgpio 2 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
- user_led: led-user {
|
||||
- label = "led2";
|
||||
+ usr_led: led-usr {
|
||||
+ label = "usr";
|
||||
linux,default-trigger = "heartbeat";
|
||||
+ default-state = "off";
|
||||
+ panic-indicator;
|
||||
gpios = <&gpio 44 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
@@ -670,14 +674,13 @@ cam0_reg: &cam1_reg {
|
||||
|
||||
/ {
|
||||
__overrides__ {
|
||||
- act_led_gpio = <&act_led>,"gpios:4";
|
||||
- act_led_activelow = <&act_led>,"gpios:8";
|
||||
act_led_trigger = <&act_led>,"linux,default-trigger";
|
||||
|
||||
- pwr_led_gpio = <&pwr_led>,"gpios:4";
|
||||
pwr_led_activelow = <&pwr_led>,"gpios:8";
|
||||
pwr_led_trigger = <&pwr_led>,"linux,default-trigger";
|
||||
|
||||
+ usr_led_trigger = <&usr_led>,"linux,default-trigger";
|
||||
+
|
||||
eth_led0 = <&phy1>,"led-modes:0";
|
||||
eth_led1 = <&phy1>,"led-modes:4";
|
||||
|
||||
--
|
||||
2.37.1
|
||||
|
@ -20,8 +20,16 @@ test -n "${BOOT_B_LEFT}" || setenv BOOT_B_LEFT 3
|
||||
# HassOS bootargs
|
||||
setenv bootargs_hassos "zram.enabled=1 zram.num_devices=3 apparmor=1 security=apparmor rootwait systemd.machine_id=${MACHINE_ID} cgroup_enable=memory fsck.repair=yes"
|
||||
|
||||
# Red Button pressed?
|
||||
if gpio input GPIO27; then
|
||||
sleep 1
|
||||
# ... and Blue Button Pressed?
|
||||
if gpio input GPIO26; then
|
||||
echo "Boot wipe has been pressed, deleting boot files to trigger USB boot..."
|
||||
fatrm mmc 0:1 /start4.elf
|
||||
reset
|
||||
fi
|
||||
# Red still pressed?
|
||||
if gpio input GPIO27; then
|
||||
echo "Device wipe button has been pressed, setting wipe flag..."
|
||||
setenv bootargs_hassos "${bootargs_hassos} haos.wipe=1"
|
||||
|
@ -20,7 +20,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="5.15.38"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.60"
|
||||
BR2_LINUX_KERNEL_USE_ARCH_DEFAULT_CONFIG=y
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/arm-uefi/generic-aarch64/kernel.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
@ -84,6 +84,7 @@ BR2_PACKAGE_APPARMOR_PROFILES=y
|
||||
BR2_PACKAGE_TINI=y
|
||||
BR2_PACKAGE_DOCKER_CLI=y
|
||||
BR2_PACKAGE_DOCKER_ENGINE=y
|
||||
BR2_PACKAGE_OPENVMTOOLS=y
|
||||
BR2_PACKAGE_PROCPS_NG=y
|
||||
BR2_PACKAGE_RAUC=y
|
||||
BR2_PACKAGE_RAUC_DBUS=y
|
||||
@ -117,5 +118,6 @@ BR2_PACKAGE_HASSIO_ARCH="aarch64"
|
||||
BR2_PACKAGE_HASSIO_MACHINE="qemuarm-64"
|
||||
BR2_PACKAGE_OS_AGENT=y
|
||||
BR2_PACKAGE_RPI_RF_MOD=y
|
||||
BR2_PACKAGE_RTL8821CU=y
|
||||
BR2_PACKAGE_HOST_TEMPIO=y
|
||||
BR2_PACKAGE_UDISKS2=y
|
||||
|
@ -20,7 +20,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="5.15.38"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.60"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="x86_64"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/pc/generic-x86-64/kernel.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
@ -120,5 +120,6 @@ BR2_PACKAGE_HASSIO_MACHINE="generic-x86-64"
|
||||
BR2_PACKAGE_OS_AGENT=y
|
||||
BR2_PACKAGE_RPI_RF_MOD=y
|
||||
BR2_PACKAGE_RTL88X2BU=y
|
||||
BR2_PACKAGE_RTL8821CU=y
|
||||
BR2_PACKAGE_HOST_TEMPIO=y
|
||||
BR2_PACKAGE_UDISKS2=y
|
||||
|
@ -20,7 +20,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="5.15.38"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.60"
|
||||
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/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config"
|
||||
@ -111,5 +111,6 @@ BR2_PACKAGE_HASSIO_MACHINE="odroid-n2"
|
||||
BR2_PACKAGE_KHADAS_BOOT=y
|
||||
BR2_PACKAGE_OS_AGENT=y
|
||||
BR2_PACKAGE_RTL88X2BU=y
|
||||
BR2_PACKAGE_RTL8821CU=y
|
||||
BR2_PACKAGE_HOST_TEMPIO=y
|
||||
BR2_PACKAGE_UDISKS2=y
|
||||
|
@ -20,7 +20,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="5.15.38"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.60"
|
||||
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/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config"
|
||||
@ -113,5 +113,6 @@ BR2_PACKAGE_RPI_RF_MOD=y
|
||||
BR2_PACKAGE_RPI_RF_MOD_DTS=y
|
||||
BR2_PACKAGE_RPI_RF_MOD_DTS_ODROID-C2=y
|
||||
BR2_PACKAGE_RTL88X2BU=y
|
||||
BR2_PACKAGE_RTL8821CU=y
|
||||
BR2_PACKAGE_HOST_TEMPIO=y
|
||||
BR2_PACKAGE_UDISKS2=y
|
||||
|
@ -20,7 +20,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="5.15.38"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.60"
|
||||
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/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config"
|
||||
@ -112,5 +112,6 @@ BR2_PACKAGE_RPI_RF_MOD=y
|
||||
BR2_PACKAGE_RPI_RF_MOD_DTS=y
|
||||
BR2_PACKAGE_RPI_RF_MOD_DTS_ODROID-C4=y
|
||||
BR2_PACKAGE_RTL88X2BU=y
|
||||
BR2_PACKAGE_RTL8821CU=y
|
||||
BR2_PACKAGE_HOST_TEMPIO=y
|
||||
BR2_PACKAGE_UDISKS2=y
|
||||
|
@ -20,7 +20,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="5.15.38"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.60"
|
||||
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/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/hardkernel/odroid-n2/kernel.config"
|
||||
@ -114,5 +114,6 @@ BR2_PACKAGE_RPI_RF_MOD=y
|
||||
BR2_PACKAGE_RPI_RF_MOD_DTS=y
|
||||
BR2_PACKAGE_RPI_RF_MOD_DTS_ODROID-N2=y
|
||||
BR2_PACKAGE_RTL88X2BU=y
|
||||
BR2_PACKAGE_RTL8821CU=y
|
||||
BR2_PACKAGE_HOST_TEMPIO=y
|
||||
BR2_PACKAGE_UDISKS2=y
|
||||
|
@ -21,7 +21,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="5.15.38"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.60"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="exynos"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
@ -114,5 +114,6 @@ BR2_PACKAGE_HASSIO_MACHINE="odroid-xu"
|
||||
BR2_PACKAGE_OS_AGENT=y
|
||||
BR2_PACKAGE_RPI_RF_MOD=y
|
||||
BR2_PACKAGE_RTL88X2BU=y
|
||||
BR2_PACKAGE_RTL8821CU=y
|
||||
BR2_PACKAGE_HOST_TEMPIO=y
|
||||
BR2_PACKAGE_UDISKS2=y
|
||||
|
@ -14,13 +14,13 @@ BR2_TARGET_GENERIC_HOSTNAME="homeassistant"
|
||||
BR2_TARGET_GENERIC_ISSUE="Welcome to Home Assistant"
|
||||
BR2_INIT_SYSTEMD=y
|
||||
# BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW is not set
|
||||
BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_HASSOS_PATH)/rootfs-overlay"
|
||||
BR2_ROOTFS_OVERLAY="$(BR2_EXTERNAL_HASSOS_PATH)/rootfs-overlay $(BR2_EXTERNAL_HASSOS_PATH)/board/pc/ova/rootfs-overlay"
|
||||
BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL_HASSOS_PATH)/scripts/post-build.sh"
|
||||
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="5.15.38"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.60"
|
||||
BR2_LINUX_KERNEL_DEFCONFIG="x86_64"
|
||||
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/kernel/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config $(BR2_EXTERNAL_HASSOS_PATH)/board/pc/ova/kernel.config"
|
||||
BR2_LINUX_KERNEL_LZ4=y
|
||||
@ -119,6 +119,8 @@ BR2_PACKAGE_HASSIO_MACHINE="qemux86-64"
|
||||
BR2_PACKAGE_OS_AGENT=y
|
||||
BR2_PACKAGE_QEMU_GUEST_AGENT=y
|
||||
BR2_PACKAGE_RPI_RF_MOD=y
|
||||
BR2_PACKAGE_RTL88X2BU=y
|
||||
BR2_PACKAGE_RTL8821CU=y
|
||||
BR2_PACKAGE_HOST_TEMPIO=y
|
||||
BR2_PACKAGE_UDISKS2=y
|
||||
BR2_PACKAGE_XE_GUEST_UTILITIES=y
|
||||
|
@ -117,5 +117,6 @@ BR2_PACKAGE_PI_BLUETOOTH=y
|
||||
BR2_PACKAGE_RPI_RF_MOD=y
|
||||
BR2_PACKAGE_RPI_RF_MOD_DTS=y
|
||||
BR2_PACKAGE_RTL88X2BU=y
|
||||
BR2_PACKAGE_RTL8821CU=y
|
||||
BR2_PACKAGE_HOST_TEMPIO=y
|
||||
BR2_PACKAGE_UDISKS2=y
|
||||
|
@ -118,5 +118,6 @@ BR2_PACKAGE_PI_BLUETOOTH=y
|
||||
BR2_PACKAGE_RPI_RF_MOD=y
|
||||
BR2_PACKAGE_RPI_RF_MOD_DTS=y
|
||||
BR2_PACKAGE_RTL88X2BU=y
|
||||
BR2_PACKAGE_RTL8821CU=y
|
||||
BR2_PACKAGE_HOST_TEMPIO=y
|
||||
BR2_PACKAGE_UDISKS2=y
|
||||
|
@ -119,5 +119,6 @@ BR2_PACKAGE_PI_BLUETOOTH=y
|
||||
BR2_PACKAGE_RPI_RF_MOD=y
|
||||
BR2_PACKAGE_RPI_RF_MOD_DTS=y
|
||||
BR2_PACKAGE_RTL88X2BU=y
|
||||
BR2_PACKAGE_RTL8821CU=y
|
||||
BR2_PACKAGE_HOST_TEMPIO=y
|
||||
BR2_PACKAGE_UDISKS2=y
|
||||
|
@ -117,5 +117,6 @@ BR2_PACKAGE_PI_BLUETOOTH=y
|
||||
BR2_PACKAGE_RPI_RF_MOD=y
|
||||
BR2_PACKAGE_RPI_RF_MOD_DTS=y
|
||||
BR2_PACKAGE_RTL88X2BU=y
|
||||
BR2_PACKAGE_RTL8821CU=y
|
||||
BR2_PACKAGE_HOST_TEMPIO=y
|
||||
BR2_PACKAGE_UDISKS2=y
|
||||
|
@ -22,7 +22,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="5.15.38"
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="5.15.60"
|
||||
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/hassos.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/docker.config $(BR2_EXTERNAL_HASSOS_PATH)/kernel/device-support.config"
|
||||
|
@ -112,7 +112,7 @@ BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="$(BR2_EXTERNAL_HASSOS_PATH)/boa
|
||||
BR2_PACKAGE_GASKET=y
|
||||
BR2_PACKAGE_HASSIO=y
|
||||
BR2_PACKAGE_HASSIO_ARCH="aarch64"
|
||||
BR2_PACKAGE_HASSIO_MACHINE="raspberrypi4-64"
|
||||
BR2_PACKAGE_HASSIO_MACHINE="yellow"
|
||||
BR2_PACKAGE_OS_AGENT=y
|
||||
BR2_PACKAGE_PI_BLUETOOTH=y
|
||||
BR2_PACKAGE_RPI_RF_MOD=y
|
||||
|
@ -1,7 +1,7 @@
|
||||
VERSION_MAJOR=8
|
||||
VERSION_BUILD=0
|
||||
VERSION_BUILD=5
|
||||
|
||||
HASSOS_NAME="Home Assistant OS"
|
||||
HASSOS_ID="haos"
|
||||
|
||||
DEPLOYMENT="development"
|
||||
DEPLOYMENT="production"
|
||||
|
@ -56,6 +56,23 @@ install_spl() {
|
||||
fi
|
||||
}
|
||||
|
||||
check_grubenv() {
|
||||
BOOT_MNT=/mnt/boot
|
||||
|
||||
# Mount boot
|
||||
if ! systemctl -q is-active mnt-boot.mount; then
|
||||
systemctl start mnt-boot.mount
|
||||
fi
|
||||
|
||||
# If GRUB is installed, check if GRUB environment has been currupted
|
||||
if command -v grub-editenv > /dev/null; then
|
||||
if ! grub-editenv "${BOOT_MNT}/EFI/BOOT/grubenv" list > /dev/null; then
|
||||
echo "GRUB environment seems to be corrupted. Recreating a new environment."
|
||||
grub-editenv "${BOOT_MNT}"/EFI/BOOT/grubenv create
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
post_install_kernel() {
|
||||
BOOT_MNT=/mnt/boot
|
||||
|
||||
@ -79,6 +96,9 @@ post_install_kernel() {
|
||||
case "$1" in
|
||||
install-check)
|
||||
if [ "$RAUC_MF_COMPATIBLE" = "$RAUC_SYSTEM_COMPATIBLE" ]; then
|
||||
# Check if GRUB env has been corrupted. This is only problematic
|
||||
# with OS 8, where compatible matches.
|
||||
check_grubenv
|
||||
exit 0
|
||||
fi
|
||||
# Be compatible with hassos OS ID
|
||||
|
@ -10,8 +10,8 @@
|
||||
|
||||
EQ3_CHAR_LOOP_VERSION = e60183fc5b8375d9eea185c716f716c07657fa00
|
||||
EQ3_CHAR_LOOP_SITE = $(call github,eq-3,occu,$(EQ3_CHAR_LOOP_VERSION))
|
||||
EQ3_CHAR_LOOP_LICENSE = GPL2
|
||||
#EQ3_CHAR_LOOP_LICENSE_FILES = LICENSE
|
||||
EQ3_CHAR_LOOP_LICENSE = LGPL-2.1+ (kernel drivers)
|
||||
EQ3_CHAR_LOOP_LICENSE_FILES = LicenseDE.txt
|
||||
EQ3_CHAR_LOOP_MODULE_SUBDIRS = KernelDrivers
|
||||
|
||||
$(eval $(kernel-module))
|
||||
|
@ -26,7 +26,7 @@ Signed-off-by: Jens Maus <mail@jens-maus.de>
|
||||
-obj-m += led_trigger_timer.o
|
||||
+#obj-m += led_trigger_timer.o
|
||||
obj-m += hb_rf_usb.o
|
||||
obj-m += hb_rf_usb-2.o
|
||||
obj-m += hb_rf_usb_2.o
|
||||
obj-m += hb_rf_eth.o
|
||||
-obj-m += rtc-rx8130.o
|
||||
+#obj-m += rtc-rx8130.o
|
||||
|
@ -1,3 +1,3 @@
|
||||
# Locally computed
|
||||
sha256 b40930bbcf80744c86c46a12bc9da056641d722716c378f5659b9e555ef833e1 LICENSE
|
||||
sha256 6c054e86c8edebfd7ee5f8c8e3ff2383ae624bb10c4e9936d75af8f57ae5cf56 generic_raw_uart-58b10fff652ad2e67f71e7e07270b50d27e55d40.tar.gz
|
||||
sha256 5bf0ec821f8492ebaaa367c47be35ce543ba3a3a6c04a3824ebfc33ddb9f0f42 generic_raw_uart-020698473cf9b980a1962b5ddd7ed4c9d58164e2.tar.gz
|
||||
|
@ -1,9 +1,9 @@
|
||||
################################################################################
|
||||
#
|
||||
# Generic raw uart kernel module for low-latency uart
|
||||
# communication with a RPI-RF-MOD/HM-MOD-RPI-PCB
|
||||
# communication with a RPI-RF-MOD/HM-MOD-RPI-PCB/HmIP-RFUSB
|
||||
#
|
||||
# Copyright (c) 2021 Alexander Reinert
|
||||
# Copyright (c) 2021-2022 Alexander Reinert
|
||||
# https://github.com/alexreinert/piVCCU/tree/master/kernel
|
||||
#
|
||||
# Uses parts of bcm2835_raw_uart.c
|
||||
@ -13,7 +13,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
GENERIC_RAW_UART_VERSION = 58b10fff652ad2e67f71e7e07270b50d27e55d40
|
||||
GENERIC_RAW_UART_VERSION = 020698473cf9b980a1962b5ddd7ed4c9d58164e2
|
||||
GENERIC_RAW_UART_SITE = $(call github,alexreinert,piVCCU,$(GENERIC_RAW_UART_VERSION))
|
||||
GENERIC_RAW_UART_LICENSE = GPL2
|
||||
GENERIC_RAW_UART_LICENSE_FILES = LICENSE
|
||||
|
@ -10,8 +10,12 @@ while ! docker version 2> /dev/null > /dev/null; do
|
||||
done
|
||||
|
||||
# Install Supervisor, plug-ins and landing page
|
||||
echo "Loading containers..."
|
||||
for image in /build/images/*.tar; do
|
||||
echo "Loading container images..."
|
||||
|
||||
# Make sure to order images by size (largest first)
|
||||
# It seems docker load requires space during operation
|
||||
# shellcheck disable=SC2045
|
||||
for image in $(ls -S /build/images/*.tar); do
|
||||
docker load --input "${image}"
|
||||
done
|
||||
|
||||
|
@ -0,0 +1,4 @@
|
||||
# Locally computed
|
||||
sha256 6f04ae8364d0079a192b14635f4b1da294ce18724c034c39a6a41d1b09df6100 COPYING
|
||||
sha256 dc626520dcd53a22f727af3ee42c770e56c97a64fe3adb063799d8ab032fe551 COPYING.LIB
|
||||
sha256 f6b375c7951f728402798b0baabb2d86478ca53d44cedbefabbe1c46bf46f839 qemu-7.0.0.tar.xz
|
@ -4,7 +4,7 @@
|
||||
#
|
||||
################################################################################
|
||||
|
||||
QEMU_GUEST_AGENT_VERSION = 4.2.0
|
||||
QEMU_GUEST_AGENT_VERSION = 7.0.0
|
||||
QEMU_GUEST_AGENT_SOURCE = qemu-$(QEMU_GUEST_AGENT_VERSION).tar.xz
|
||||
QEMU_GUEST_AGENT_SITE = http://download.qemu.org
|
||||
QEMU_GUEST_AGENT_LICENSE = GPL-2.0, LGPL-2.1, MIT, BSD-3-Clause, BSD-2-Clause, Others/BSD-1c
|
||||
@ -19,7 +19,7 @@ QEMU_GUEST_AGENT_DEPENDENCIES = host-pkgconf libglib2 zlib
|
||||
# not automatically pulled. :-(
|
||||
QEMU_GUEST_AGENT_LIBS = -lrt -lm
|
||||
|
||||
QEMU_GUEST_AGENT_OPTS = -lrt -lm
|
||||
#QEMU_GUEST_AGENT_OPTS =
|
||||
|
||||
QEMU_GUEST_AGENT_VARS = LIBTOOL=$(HOST_DIR)/bin/libtool
|
||||
|
||||
@ -38,6 +38,8 @@ define QEMU_GUEST_AGENT_CONFIGURE_CMDS
|
||||
--localstatedir=/var \
|
||||
--cross-prefix=$(TARGET_CROSS) \
|
||||
--audio-drv-list= \
|
||||
--meson=$(HOST_DIR)/bin/meson \
|
||||
--ninja=$(HOST_DIR)/bin/ninja \
|
||||
--disable-kvm \
|
||||
--disable-linux-user \
|
||||
--disable-linux-aio \
|
||||
@ -60,7 +62,6 @@ define QEMU_GUEST_AGENT_CONFIGURE_CMDS
|
||||
--disable-virtfs \
|
||||
--disable-brlapi \
|
||||
--disable-fdt \
|
||||
--disable-bluez \
|
||||
--disable-kvm \
|
||||
--disable-rdma \
|
||||
--disable-vde \
|
||||
@ -68,6 +69,7 @@ define QEMU_GUEST_AGENT_CONFIGURE_CMDS
|
||||
--disable-cap-ng \
|
||||
--disable-attr \
|
||||
--disable-vhost-net \
|
||||
--disable-vhost-user \
|
||||
--disable-spice \
|
||||
--disable-rbd \
|
||||
--disable-libiscsi \
|
||||
@ -85,19 +87,18 @@ define QEMU_GUEST_AGENT_CONFIGURE_CMDS
|
||||
--disable-numa \
|
||||
--disable-blobs \
|
||||
--disable-capstone \
|
||||
--disable-tools \
|
||||
--disable-slirp \
|
||||
--disable-tcg-interpreter \
|
||||
--enable-tools \
|
||||
--enable-guest-agent
|
||||
endef
|
||||
|
||||
define QEMU_GUEST_AGENT_BUILD_CMDS
|
||||
unset TARGET_DIR; \
|
||||
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) qemu-ga
|
||||
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
|
||||
endef
|
||||
|
||||
define QEMU_GUEST_AGENT_INSTALL_TARGET_CMDS
|
||||
$(INSTALL) -m 755 $(@D)/qemu-ga $(TARGET_DIR)/usr/libexec/
|
||||
$(INSTALL) -D -m 0755 $(@D)/build/qga/qemu-ga $(TARGET_DIR)/usr/libexec/qemu-ga
|
||||
endef
|
||||
|
||||
define QEMU_GUEST_AGENT_INSTALL_INIT_SYSTEMD
|
||||
|
@ -1,3 +1,3 @@
|
||||
# Locally computed
|
||||
sha256 115e5c0e0174f21005e6e1d8a616dd86ad5ad61df5929b06e6f7b7b20a8c9e48 rpi-rf-mod-7f5d50c8ac72e114a6b11a4ae0e92e316260fb0d.tar.gz
|
||||
sha256 afea59eff58551d0fe34dd6a37a65f35f23e0c099a3c9bb88442bfb489a28b29 rpi-rf-mod-41a25de861e84d411f92d9139da81f19c857d91e.tar.gz
|
||||
sha256 b40930bbcf80744c86c46a12bc9da056641d722716c378f5659b9e555ef833e1 LICENSE
|
||||
|
@ -6,12 +6,15 @@
|
||||
# This includes compiling of required device tree overlays for
|
||||
# selected platforms
|
||||
#
|
||||
# Copyright (c) 2018-2021 Jens Maus <mail@jens-maus.de>
|
||||
# Codeload URL:
|
||||
# https://codeload.github.com/jens-maus/RaspberryMatic/tar.gz/COMMIT
|
||||
#
|
||||
# Copyright (c) 2018-2022 Jens Maus <mail@jens-maus.de>
|
||||
# https://github.com/jens-maus/RaspberryMatic/tree/master/buildroot-external/package/rpi-rf-mod
|
||||
#
|
||||
################################################################################
|
||||
|
||||
RPI_RF_MOD_VERSION = 7f5d50c8ac72e114a6b11a4ae0e92e316260fb0d
|
||||
RPI_RF_MOD_VERSION = 41a25de861e84d411f92d9139da81f19c857d91e
|
||||
RPI_RF_MOD_SITE = $(call github,jens-maus,RaspberryMatic,$(RPI_RF_MOD_VERSION))
|
||||
RPI_RF_MOD_LICENSE = Apache-2.0
|
||||
RPI_RF_MOD_DEPENDENCIES = host-dtc
|
||||
|
@ -0,0 +1,21 @@
|
||||
Makefile: expose platform variables
|
||||
|
||||
Signed-off-by: s-ol <s+removethis@s-ol.nu>
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 22bd0e0..72321a4 100755
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -96,9 +96,9 @@
|
||||
###################### MP HW TX MODE FOR VHT #######################
|
||||
CONFIG_MP_VHT_HW_TX_MODE = n
|
||||
###################### Platform Related #######################
|
||||
-CONFIG_PLATFORM_I386_PC = y
|
||||
-CONFIG_PLATFORM_ARM_RPI = n
|
||||
-CONFIG_PLATFORM_ARM64_RPI = n
|
||||
+CONFIG_PLATFORM_I386_PC ?= n
|
||||
+CONFIG_PLATFORM_ARM_RPI ?= n
|
||||
+CONFIG_PLATFORM_ARM64_RPI ?= n
|
||||
CONFIG_PLATFORM_ANDROID_X86 = n
|
||||
CONFIG_PLATFORM_ANDROID_INTEL_X86 = n
|
||||
CONFIG_PLATFORM_JB_X86 = n
|
5
buildroot-external/package/rtl8821cu/Config.in
Normal file
5
buildroot-external/package/rtl8821cu/Config.in
Normal file
@ -0,0 +1,5 @@
|
||||
config BR2_PACKAGE_RTL8821CU
|
||||
tristate "Realtek 8821cu USB WiFi"
|
||||
depends on BR2_LINUX_KERNEL
|
||||
---help---
|
||||
Driver for RTL8821CU USB WiFi adapters (no firmware needed).
|
20
buildroot-external/package/rtl8821cu/rtl8821cu.mk
Normal file
20
buildroot-external/package/rtl8821cu/rtl8821cu.mk
Normal file
@ -0,0 +1,20 @@
|
||||
RTL8821CU_VERSION = 8c2226a74ae718439d56248bd2e44ccf717086d5
|
||||
RTL8821CU_SITE = $(call github,brektrou,rtl8821CU,$(RTL8821CU_VERSION))
|
||||
RTL8821CU_LICENSE = GPL-2.0
|
||||
RTL8821CU_LICENSE_FILES = LICENSE
|
||||
|
||||
RTL8821CU_MODULE_MAKE_OPTS = \
|
||||
CONFIG_RTL8821CU=m \
|
||||
KVER=$(LINUX_VERSION_PROBED) \
|
||||
KBASE=$(LINUX_DIR) \
|
||||
CROSS_COMPILE=$(TARGET_CROSS)
|
||||
|
||||
ifeq (arm, $(filter arm, $(KERNEL_ARCH)))
|
||||
RTL8821CU_MODULE_MAKE_OPTS += CONFIG_PLATFORM_ARM_RPI=y
|
||||
RTL8821CU_MODULE_MAKE_OPTS += CONFIG_PLATFORM_ARM64_RPI=y
|
||||
else
|
||||
RTL8821CU_MODULE_MAKE_OPTS += CONFIG_PLATFORM_I386_PC=y
|
||||
endif
|
||||
|
||||
$(eval $(kernel-module))
|
||||
$(eval $(generic-package))
|
@ -1,5 +1,5 @@
|
||||
From 184b6a054e04bb4c7fb4885a30d62314229dc551 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <184b6a054e04bb4c7fb4885a30d62314229dc551.1651759401.git.stefan@agner.ch>
|
||||
Message-Id: <184b6a054e04bb4c7fb4885a30d62314229dc551.1652945863.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Thu, 24 Feb 2022 12:38:48 +0100
|
||||
Subject: [PATCH] loadenv: add file_env to load var from file
|
||||
@ -115,5 +115,5 @@ index 3fd664aac..7e7b18139 100644
|
||||
+ grub_unregister_extcmd (cmd_file);
|
||||
}
|
||||
--
|
||||
2.36.0
|
||||
2.36.1
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
From 3b2b7d0c9a886d913062ed5a9ffa8b764d882540 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <3b2b7d0c9a886d913062ed5a9ffa8b764d882540.1651759401.git.stefan@agner.ch>
|
||||
In-Reply-To: <184b6a054e04bb4c7fb4885a30d62314229dc551.1651759401.git.stefan@agner.ch>
|
||||
References: <184b6a054e04bb4c7fb4885a30d62314229dc551.1651759401.git.stefan@agner.ch>
|
||||
Message-Id: <3b2b7d0c9a886d913062ed5a9ffa8b764d882540.1652945863.git.stefan@agner.ch>
|
||||
In-Reply-To: <184b6a054e04bb4c7fb4885a30d62314229dc551.1652945863.git.stefan@agner.ch>
|
||||
References: <184b6a054e04bb4c7fb4885a30d62314229dc551.1652945863.git.stefan@agner.ch>
|
||||
From: Peter Jones <pjones@redhat.com>
|
||||
Date: Mon, 27 Jan 2020 15:01:16 -0500
|
||||
Subject: [PATCH] squash4: Fix an uninitialized variable
|
||||
@ -40,5 +40,5 @@ index 95d5c1e1f..82704f966 100644
|
||||
grub_uint64_t a = 0;
|
||||
grub_size_t i;
|
||||
--
|
||||
2.36.0
|
||||
2.36.1
|
||||
|
||||
|
@ -1,46 +1,52 @@
|
||||
From e3c27254802e1d7ebaa64df8edb93b0a899f1678 Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <e3c27254802e1d7ebaa64df8edb93b0a899f1678.1652212828.git.stefan@agner.ch>
|
||||
In-Reply-To: <184b6a054e04bb4c7fb4885a30d62314229dc551.1652212828.git.stefan@agner.ch>
|
||||
References: <184b6a054e04bb4c7fb4885a30d62314229dc551.1652212828.git.stefan@agner.ch>
|
||||
From 7eaacdbf00ec29931553384f914c229c6078582e Mon Sep 17 00:00:00 2001
|
||||
Message-Id: <7eaacdbf00ec29931553384f914c229c6078582e.1652945863.git.stefan@agner.ch>
|
||||
In-Reply-To: <184b6a054e04bb4c7fb4885a30d62314229dc551.1652945863.git.stefan@agner.ch>
|
||||
References: <184b6a054e04bb4c7fb4885a30d62314229dc551.1652945863.git.stefan@agner.ch>
|
||||
From: Stefan Agner <stefan@agner.ch>
|
||||
Date: Thu, 5 May 2022 15:46:51 +0200
|
||||
Subject: [PATCH] efidisk: pass buffers with higher alignment
|
||||
|
||||
Despite the UEFI specification saying "the requirement is that the
|
||||
start address of a buffer must be evenly divisible by IoAlign with
|
||||
no remainder.", it seems that a higher alignment requirement is
|
||||
neecssary on some system (e.g. a Intel NUC system with NVMe SSD).
|
||||
That particular system has IoAlign set to 2, and sometimes returns
|
||||
status 7 when buffers with alignment of 2 are passed. Things seem
|
||||
to work fine with buffers aligned to 4 bytes.
|
||||
Some devices report a IoAlign value of 2, however seem to require a
|
||||
buffer with higher alignment.
|
||||
|
||||
It seems that some system interpret IoAlign > 1 to mean 2 ^ IoAlign.
|
||||
There is also such a hint in an example printed in the Driver Writer's
|
||||
Guide:
|
||||
The UEFI specification is saying: "IoAlign values of 0 and 1 mean that
|
||||
the buffer can be placed anywhere in memory. Otherwise, IoAlign must
|
||||
be a power of 2, and the requirement is that the start address of a
|
||||
buffer must be evenly divisible by IoAlign with no remainder."
|
||||
|
||||
It seems that this got misinterpreted by some vendors assuming IoAlign
|
||||
is 2^IoAlign. There is also such a hint in an example in earlier
|
||||
versions of the Driver Writer's Guide:
|
||||
ScsiPassThruMode.IoAlign = 2; // Data must be alligned on 4-byte boundary
|
||||
|
||||
However, some systems (e.g. U-Boot and some drivers in EDK II) do follow
|
||||
the UEFI specification.
|
||||
However, it is unsafe to just blindly align buffers by 2^IoAlign, as
|
||||
this would lead to an overflow for systems which use block size
|
||||
alignment (e.g. 512 bytes, for example U-Boot).
|
||||
|
||||
Work around by using an alignment of at least 512 bytes in case
|
||||
alignment is requested. Also make sure that IoAlign is still respected
|
||||
as per UEFI specification if a higher alignment than block size is
|
||||
Ontop of that, some devices seem to report no alignment requirements
|
||||
but seem to read corrupt data or report read errors if the buffer is
|
||||
not aligned.
|
||||
|
||||
Work around by using an alignment of at least BlockSize (typically 512
|
||||
bytes) in any casea. Also make sure that IoAlign is still respected as
|
||||
per UEFI specification if a higher alignment than block size is
|
||||
requested.
|
||||
|
||||
Note: The problem has only noticed with compressed squashfs. It seems
|
||||
that ext4 (and presumably other file system drivers) pass buffers with
|
||||
a higher alignment already.
|
||||
|
||||
Acked-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
|
||||
Signed-off-by: Stefan Agner <stefan@agner.ch>
|
||||
---
|
||||
grub-core/disk/efi/efidisk.c | 18 ++++++++++++++++--
|
||||
1 file changed, 16 insertions(+), 2 deletions(-)
|
||||
grub-core/disk/efi/efidisk.c | 15 +++++++++++++--
|
||||
1 file changed, 13 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/grub-core/disk/efi/efidisk.c b/grub-core/disk/efi/efidisk.c
|
||||
index 9e20af70e..c4eb4f4e7 100644
|
||||
index 9e20af70e..c6e37f131 100644
|
||||
--- a/grub-core/disk/efi/efidisk.c
|
||||
+++ b/grub-core/disk/efi/efidisk.c
|
||||
@@ -553,8 +553,22 @@ grub_efidisk_readwrite (struct grub_disk *disk, grub_disk_addr_t sector,
|
||||
@@ -553,8 +553,19 @@ grub_efidisk_readwrite (struct grub_disk *disk, grub_disk_addr_t sector,
|
||||
d = disk->data;
|
||||
bio = d->block_io;
|
||||
|
||||
@ -49,18 +55,15 @@ index 9e20af70e..c4eb4f4e7 100644
|
||||
+ /*
|
||||
+ * If IoAlign is > 1, it should represent the required alignment. However,
|
||||
+ * some UEFI implementation on Intel NUC systems seem to use IoAlign=2 but
|
||||
+ * require 2^IoAlign.
|
||||
+ * Make sure to align to at least block size if IO alignment is required.
|
||||
+ * require 2^IoAlign. Some implementation seem to require alignment despite
|
||||
+ * not reporting any requirements.
|
||||
+ *
|
||||
+ * Make sure to align to at least block size in any case.
|
||||
+ */
|
||||
+ if (bio->media->io_align > 1)
|
||||
+ {
|
||||
+ if (bio->media->io_align < bio->media->block_size)
|
||||
+ io_align = bio->media->block_size;
|
||||
+ else
|
||||
+ io_align = bio->media->io_align;
|
||||
+ }
|
||||
+ if (bio->media->io_align < bio->media->block_size)
|
||||
+ io_align = bio->media->block_size;
|
||||
+ else
|
||||
+ io_align = 1;
|
||||
+ io_align = bio->media->io_align;
|
||||
+
|
||||
num_bytes = size << disk->log_sector_size;
|
||||
|
||||
|
@ -15,7 +15,7 @@ connection.mdns=2
|
||||
connection.llmnr=2
|
||||
|
||||
[connectivity]
|
||||
uri=http://version.home-assistant.io/online.txt
|
||||
uri=http://checkonline.home-assistant.io/online.txt
|
||||
|
||||
[device]
|
||||
wifi.scan-rand-mac-address=no
|
||||
|
@ -1,3 +1,7 @@
|
||||
# Since multicast is rather popular and we have many integrations running,
|
||||
# more than the default of 20 memberships might be required.
|
||||
net.ipv4.igmp_max_memberships = 1024
|
||||
|
||||
# Increase maximum receive and send buffer size
|
||||
net.core.rmem_max = 4194304
|
||||
net.core.wmem_max = 4194304
|
||||
|
@ -1,2 +1,4 @@
|
||||
[Time]
|
||||
FallbackNTP=time.cloudflare.com
|
||||
# Speed-up boot as first attempt is done before network is up
|
||||
ConnectionRetrySec=10
|
||||
|
7
buildroot-external/rootfs-overlay/usr/lib/NetworkManager/dispatcher.d/10-ntp
Normal file → Executable file
7
buildroot-external/rootfs-overlay/usr/lib/NetworkManager/dispatcher.d/10-ntp
Normal file → Executable file
@ -11,7 +11,7 @@ timesyncd_dhcp_ntp_remove() {
|
||||
}
|
||||
|
||||
timesyncd_dhcp_ntp_add() {
|
||||
mkdir -p $(dirname $TIMESYNCD_CONF)
|
||||
mkdir -p "$(dirname $TIMESYNCD_CONF)"
|
||||
|
||||
echo '[Time]' > ${TIMESYNCD_CONF}
|
||||
echo "NTP=${DHCP4_NTP_SERVERS}" >> ${TIMESYNCD_CONF}
|
||||
@ -19,12 +19,13 @@ timesyncd_dhcp_ntp_add() {
|
||||
systemctl restart systemd-timesyncd.service
|
||||
}
|
||||
|
||||
# shellcheck disable=SC2034
|
||||
INTERFACE=${1}
|
||||
ACTION=${2}
|
||||
|
||||
case ${ACTION} in
|
||||
up|down|dhcp4-change)
|
||||
if [ ! -z "${DHCP4_NTP_SERVERS}" ]
|
||||
if [ -n "${DHCP4_NTP_SERVERS}" ]
|
||||
then
|
||||
timesyncd_dhcp_ntp_add
|
||||
RETURN_CODE=$?
|
||||
@ -34,7 +35,7 @@ case ${ACTION} in
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
$RETURN_CODE=0
|
||||
RETURN_CODE=0
|
||||
;;
|
||||
esac
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user