Compare commits
29 Commits
399997e83c
...
dev
| Author | SHA1 | Date | |
|---|---|---|---|
| f297a16697 | |||
| 46a9ff6bcc | |||
| 2185428474 | |||
| 64c37e6d20 | |||
| 1751dc16c0 | |||
| e5f574a831 | |||
| 6760205f58 | |||
| b698176b1b | |||
| a44dcd98a1 | |||
| 03a72e82b4 | |||
| afd6859050 | |||
| e27b28c6e5 | |||
| 83307209e1 | |||
| 19016d0bfa | |||
| 2eeca05cee | |||
| 4e1e9b8197 | |||
| 8a45ccd97d | |||
| 2fc3de92e2 | |||
| f359b0f6f7 | |||
| d4ee727abd | |||
| 9ee5de8254 | |||
| 94aaa17f58 | |||
| 508a6ca60c | |||
| a9c90a9883 | |||
| 06739998bf | |||
| 2cdb4ef2b7 | |||
| d7b79a84d6 | |||
| c4178b7ec7 | |||
| b15ed586ae |
@@ -1,4 +1,4 @@
|
||||
# Home Assistant Operating System
|
||||
# Home Assistant Operating System Addon
|
||||
|
||||
Home Assistant Operating System (formerly HassOS) is a Linux based operating system optimized to host [Home Assistant](https://www.home-assistant.io) and its [Add-ons](https://www.home-assistant.io/addons/).
|
||||
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
source "$BR2_EXTERNAL_HASSOS_PATH/package/amlogic-boot/Config.in"
|
||||
source "$BR2_EXTERNAL_HASSOS_PATH/package/bluetooth-rtl8723/Config.in"
|
||||
source "$BR2_EXTERNAL_HASSOS_PATH/package/eq3_char_loop/Config.in"
|
||||
source "$BR2_EXTERNAL_HASSOS_PATH/package/gasket/Config.in"
|
||||
|
||||
7379
buildroot-external/board/amlogic/kernel-amlogic.config
Normal file
7379
buildroot-external/board/amlogic/kernel-amlogic.config
Normal file
File diff suppressed because it is too large
Load Diff
16454
buildroot-external/board/amlogic/patches/linux/000_amlogic.patch
Normal file
16454
buildroot-external/board/amlogic/patches/linux/000_amlogic.patch
Normal file
File diff suppressed because it is too large
Load Diff
1632
buildroot-external/board/amlogic/patches/uboot/000_amlogic.patch
Normal file
1632
buildroot-external/board/amlogic/patches/uboot/000_amlogic.patch
Normal file
File diff suppressed because it is too large
Load Diff
BIN
buildroot-external/board/amlogic/s9xx/aml_autoscript
Normal file
BIN
buildroot-external/board/amlogic/s9xx/aml_autoscript
Normal file
Binary file not shown.
2
buildroot-external/board/amlogic/s9xx/aml_autoscript.ush
Normal file
2
buildroot-external/board/amlogic/s9xx/aml_autoscript.ush
Normal file
@@ -0,0 +1,2 @@
|
||||
echo "start amlogic old u-boot"
|
||||
if fatload mmc 0 0x1000000 u-boot.ext; then go 0x1000000; fi;
|
||||
2
buildroot-external/board/amlogic/s9xx/boot-env.txt
Normal file
2
buildroot-external/board/amlogic/s9xx/boot-env.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
# Uncomment this to enable GPIO support for RPI-RF-MOD/HM-MOD-RPI-PCB
|
||||
#overlays=rpi-rf-mod
|
||||
1
buildroot-external/board/amlogic/s9xx/cmdline.txt
Normal file
1
buildroot-external/board/amlogic/s9xx/cmdline.txt
Normal file
@@ -0,0 +1 @@
|
||||
console=tty0 console=ttyAML0,115200n8
|
||||
28
buildroot-external/board/amlogic/s9xx/hassos-hook.sh
Normal file
28
buildroot-external/board/amlogic/s9xx/hassos-hook.sh
Normal file
@@ -0,0 +1,28 @@
|
||||
#!/bin/bash
|
||||
# shellcheck disable=SC2155
|
||||
|
||||
function hassos_pre_image() {
|
||||
local BOOT_DATA="$(path_boot_dir)"
|
||||
local UBOOT_SM1="${BINARIES_DIR}/u-boot.sm1"
|
||||
local SPL_IMG="$(path_spl_img)"
|
||||
|
||||
cp "${BINARIES_DIR}/boot.scr" "${BOOT_DATA}/boot.scr"
|
||||
cp "${BINARIES_DIR}"/*.dtb "${BOOT_DATA}/"
|
||||
|
||||
#mkdir -p "${BOOT_DATA}/overlays"
|
||||
#cp "${BINARIES_DIR}"/*.dtbo "${BOOT_DATA}/overlays/"
|
||||
cp "${BOARD_DIR}/boot-env.txt" "${BOOT_DATA}/haos-config.txt"
|
||||
cp "${BOARD_DIR}/cmdline.txt" "${BOOT_DATA}/cmdline.txt"
|
||||
cp "${BOARD_DIR}/aml_autoscript" "${BOOT_DATA}/aml_autoscript"
|
||||
cp "${BINARIES_DIR}/u-boot.bin" "${BOOT_DATA}/u-boot.ext"
|
||||
|
||||
# SPL
|
||||
create_spl_image
|
||||
|
||||
dd if="${UBOOT_SM1}" of="${SPL_IMG}" conv=notrunc bs=512 seek=1
|
||||
}
|
||||
|
||||
|
||||
function hassos_post_image() {
|
||||
convert_disk_image_xz
|
||||
}
|
||||
12
buildroot-external/board/amlogic/s9xx/meta
Normal file
12
buildroot-external/board/amlogic/s9xx/meta
Normal file
@@ -0,0 +1,12 @@
|
||||
BOARD_ID=odroid-c4
|
||||
BOARD_NAME="Hardkernel Odroid-C4"
|
||||
CHASSIS=embedded
|
||||
BOOTLOADER=uboot
|
||||
KERNEL_FILE=Image
|
||||
BOOT_SYS=mbr
|
||||
BOOT_SIZE=24M
|
||||
BOOT_SPL=true
|
||||
BOOT_SPL_SIZE=8M
|
||||
BOOT_ENV_SIZE=0x2000
|
||||
SUPERVISOR_MACHINE=odroid-c4
|
||||
SUPERVISOR_ARCH=aarch64
|
||||
114
buildroot-external/board/amlogic/s9xx/uboot-boot.ush
Normal file
114
buildroot-external/board/amlogic/s9xx/uboot-boot.ush
Normal file
@@ -0,0 +1,114 @@
|
||||
|
||||
setenv MACHINE_ID odroid-c4
|
||||
setenv devnum 1
|
||||
setenv kernel_addr_r 0x11000000
|
||||
setenv ramdisk_addr_r 0x13000000
|
||||
setenv fdt_addr_r 0x1000000
|
||||
setenv upgrade_step 2
|
||||
|
||||
###########################################
|
||||
|
||||
part start mmc ${devnum} 9 mmc_env
|
||||
mmc dev ${devnum}
|
||||
setenv loadbootstate " \
|
||||
echo 'loading env...'; \
|
||||
mmc read ${ramdisk_addr_r} ${mmc_env} 0x10; \
|
||||
env import -c ${ramdisk_addr_r} 0x2000;"
|
||||
|
||||
setenv storebootstate " \
|
||||
echo 'storing env...'; \
|
||||
env export -c -s 0x2000 ${ramdisk_addr_r} BOOT_ORDER BOOT_A_LEFT BOOT_B_LEFT MACHINE_ID; \
|
||||
mmc write ${ramdisk_addr_r} ${mmc_env} 0x10;"
|
||||
|
||||
run loadbootstate
|
||||
test -n "${BOOT_ORDER}" || setenv BOOT_ORDER "A B"
|
||||
test -n "${BOOT_A_LEFT}" || setenv BOOT_A_LEFT 3
|
||||
test -n "${BOOT_B_LEFT}" || setenv BOOT_B_LEFT 3
|
||||
|
||||
# Allows ConditionFirstBoot=
|
||||
test -n "${MACHINE_ID}" || setenv BOOT_CONDITION "systemd.condition-first-boot=true"
|
||||
|
||||
# HassOS bootargs
|
||||
setenv bootargs_hassos "zram.enabled=1 zram.num_devices=3 net.naming-scheme=v250 systemd.machine_id=${MACHINE_ID} clk_ignore_unused usb-storage.quirks=0x2537:0x1066:u,0x2537:0x1068:u ${BOOT_CONDITION}"
|
||||
|
||||
# HassOS system A/B
|
||||
setenv bootargs_a "root=PARTUUID=48617373-06 rootfstype=squashfs ro rootwait"
|
||||
setenv bootargs_b "root=PARTUUID=48617373-08 rootfstype=squashfs ro rootwait"
|
||||
|
||||
# Load environment from haos-config.txt
|
||||
if test -e mmc ${devnum}:1 haos-config.txt; then
|
||||
fatload mmc ${devnum}:1 ${ramdisk_addr_r} haos-config.txt
|
||||
env import -t ${ramdisk_addr_r} ${filesize}
|
||||
fi
|
||||
|
||||
# Load extraargs
|
||||
fileenv mmc ${devnum}:1 ${ramdisk_addr_r} cmdline.txt cmdline
|
||||
|
||||
# Load device tree
|
||||
setenv fdtfile "dtb.img"
|
||||
echo "Loading standard device tree ${fdtfile}"
|
||||
fatload mmc ${devnum}:1 ${fdt_addr_r} ${fdtfile}
|
||||
fdt addr ${fdt_addr_r}
|
||||
|
||||
# load dt overlays
|
||||
fdt resize 65536
|
||||
for overlay_file in ${overlays}; do
|
||||
if fatload mmc ${devnum}:1 ${ramdisk_addr_r} overlays/${overlay_file}.dtbo; then
|
||||
echo "Applying kernel provided DT overlay ${overlay_file}.dtbo"
|
||||
fdt apply ${ramdisk_addr_r} || setenv overlay_error "true"
|
||||
fi
|
||||
done
|
||||
if test "${overlay_error}" = "true"; then
|
||||
echo "Error applying DT overlays, restoring original DT"
|
||||
fatload mmc ${devnum}:1 ${fdt_addr_r} ${fdtfile}
|
||||
fi
|
||||
|
||||
# logical volumes get numbered after physical ones.
|
||||
# 1. boot
|
||||
# 2. Extended partition
|
||||
# 3. Overlay
|
||||
# 4. Data
|
||||
# 5. KernelA
|
||||
# 6. SystemA
|
||||
# 7. KernelB
|
||||
# 8. SystemB
|
||||
# 9. BootInfo
|
||||
setenv bootargs
|
||||
for BOOT_SLOT in "${BOOT_ORDER}"; do
|
||||
if test "x${bootargs}" != "x"; then
|
||||
# skip remaining slots
|
||||
elif test "x${BOOT_SLOT}" = "xA"; then
|
||||
if test ${BOOT_A_LEFT} -gt 0; then
|
||||
setexpr BOOT_A_LEFT ${BOOT_A_LEFT} - 1
|
||||
echo "Trying to boot slot A, ${BOOT_A_LEFT} attempts remaining. Loading kernel ..."
|
||||
if load mmc ${devnum}:5 ${kernel_addr_r} Image; then
|
||||
setenv bootargs "${bootargs_hassos} ${bootargs_a} rauc.slot=A ${cmdline}"
|
||||
fi
|
||||
fi
|
||||
elif test "x${BOOT_SLOT}" = "xB"; then
|
||||
if test ${BOOT_B_LEFT} -gt 0; then
|
||||
setexpr BOOT_B_LEFT ${BOOT_B_LEFT} - 1
|
||||
echo "Trying to boot slot B, ${BOOT_B_LEFT} attempts remaining. Loading kernel ..."
|
||||
if load mmc ${devnum}:7 ${kernel_addr_r} Image; then
|
||||
setenv bootargs "${bootargs_hassos} ${bootargs_b} rauc.slot=B ${cmdline}"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
if test -n "${bootargs}"; then
|
||||
run storebootstate
|
||||
else
|
||||
echo "No valid slot found, resetting tries to 3"
|
||||
setenv BOOT_A_LEFT 3
|
||||
setenv BOOT_B_LEFT 3
|
||||
run storebootstate
|
||||
reset
|
||||
fi
|
||||
|
||||
printenv bootargs
|
||||
echo "Starting kernel"
|
||||
booti ${kernel_addr_r} - ${fdt_addr_r}
|
||||
|
||||
echo "Boot failed, resetting..."
|
||||
reset
|
||||
4
buildroot-external/board/amlogic/s9xx/uboot.config
Normal file
4
buildroot-external/board/amlogic/s9xx/uboot.config
Normal file
@@ -0,0 +1,4 @@
|
||||
CONFIG_DOS_PARTITION=y
|
||||
# CONFIG_EFI_PARTITION is not set
|
||||
# CONFIG_USB_STORAGE is not set
|
||||
CONFIG_DISPLAY_BOARDINFO=y
|
||||
132
buildroot-external/configs/s9xx_defconfig
Normal file
132
buildroot-external/configs/s9xx_defconfig
Normal file
@@ -0,0 +1,132 @@
|
||||
BR2_aarch64=y
|
||||
BR2_DL_DIR="/cache/dl"
|
||||
BR2_CCACHE=y
|
||||
BR2_CCACHE_DIR="/cache/cc"
|
||||
BR2_OPTIMIZE_2=y
|
||||
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL_HASSOS_PATH)/patches $(BR2_EXTERNAL_HASSOS_PATH)/board/amlogic/patches"
|
||||
BR2_SSP_REGULAR=y
|
||||
BR2_TOOLCHAIN_BUILDROOT_GLIBC=y
|
||||
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_6_1=y
|
||||
BR2_GCC_VERSION_11_X=y
|
||||
BR2_TOOLCHAIN_BUILDROOT_CXX=y
|
||||
BR2_GCC_ENABLE_LTO=y
|
||||
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_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/amlogic/s9xx $(BR2_EXTERNAL_HASSOS_PATH)/board/amlogic/s9xx/hassos-hook.sh"
|
||||
BR2_LINUX_KERNEL=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="6.1.15"
|
||||
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
|
||||
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_HASSOS_PATH)/board/amlogic/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_LINUX_KERNEL_LZ4=y
|
||||
BR2_LINUX_KERNEL_DTS_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_INTREE_DTS_NAME="amlogic/meson-sm1-h96-max amlogic/meson-sm1-hk1box-vontar-x3 amlogic/meson-sm1-hk1box-vontar-x3-oc"
|
||||
BR2_LINUX_KERNEL_DTB_OVERLAY_SUPPORT=y
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
|
||||
BR2_LINUX_KERNEL_NEEDS_HOST_LIBELF=y
|
||||
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL_HASSOS_PATH)/busybox.config"
|
||||
BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y
|
||||
BR2_PACKAGE_JQ=y
|
||||
BR2_PACKAGE_E2FSPROGS=y
|
||||
BR2_PACKAGE_E2FSPROGS_E2IMAGE=y
|
||||
BR2_PACKAGE_IPROUTE2=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_87XX_BT=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_88XX_BT=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_MEDIATEK_MT7601U=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT73=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RALINK_RT2XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_RTL_81XX=y
|
||||
BR2_PACKAGE_LINUX_FIRMWARE_USB_SERIAL_TI=y
|
||||
BR2_PACKAGE_GPTFDISK=y
|
||||
BR2_PACKAGE_GPTFDISK_SGDISK=y
|
||||
# BR2_PACKAGE_LVM2_STANDARD_INSTALL is not set
|
||||
BR2_PACKAGE_RNG_TOOLS=y
|
||||
BR2_PACKAGE_RTL8812AU_AIRCRACK_NG=y
|
||||
BR2_PACKAGE_USB_MODESWITCH_DATA=y
|
||||
BR2_PACKAGE_CA_CERTIFICATES=y
|
||||
BR2_PACKAGE_LIBCURL_CURL=y
|
||||
BR2_PACKAGE_LIBDNET=y
|
||||
BR2_PACKAGE_LIBCGROUP=y
|
||||
BR2_PACKAGE_LIBCGROUP_TOOLS=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS_CLIENT=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_AUDIO=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_HID=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS_PLUGINS_HOG=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS_TOOLS=y
|
||||
BR2_PACKAGE_BLUEZ5_UTILS_DEPRECATED=y
|
||||
BR2_PACKAGE_DBUS_BROKER=y
|
||||
BR2_PACKAGE_DHCP=y
|
||||
BR2_PACKAGE_DHCP_CLIENT=y
|
||||
BR2_PACKAGE_DROPBEAR=y
|
||||
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
|
||||
BR2_PACKAGE_NETWORK_MANAGER=y
|
||||
BR2_PACKAGE_NETWORK_MANAGER_CLI=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES=y
|
||||
BR2_PACKAGE_IPTABLES_NFTABLES_DEFAULT=y
|
||||
BR2_PACKAGE_WIRELESS_REGDB=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_DBUS=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_DBUS_INTROSPECTION=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_WEXT=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_NL80211=y
|
||||
BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT=y
|
||||
BR2_PACKAGE_APPARMOR=y
|
||||
BR2_PACKAGE_APPARMOR_PROFILES=y
|
||||
BR2_PACKAGE_TINI=y
|
||||
BR2_PACKAGE_DOCKER_CLI=y
|
||||
BR2_PACKAGE_DOCKER_ENGINE=y
|
||||
BR2_PACKAGE_PROCPS_NG=y
|
||||
BR2_PACKAGE_RAUC=y
|
||||
BR2_PACKAGE_RAUC_DBUS=y
|
||||
BR2_PACKAGE_RAUC_NETWORK=y
|
||||
BR2_PACKAGE_SYSTEMD_JOURNAL_REMOTE=y
|
||||
BR2_PACKAGE_SYSTEMD_COREDUMP=y
|
||||
# BR2_PACKAGE_SYSTEMD_HWDB is not set
|
||||
BR2_PACKAGE_SYSTEMD_LOGIND=y
|
||||
# BR2_PACKAGE_SYSTEMD_NETWORKD is not set
|
||||
BR2_PACKAGE_SYSTEMD_RANDOMSEED=y
|
||||
BR2_PACKAGE_UTIL_LINUX_LOGIN=y
|
||||
BR2_PACKAGE_UTIL_LINUX_NOLOGIN=y
|
||||
BR2_PACKAGE_UTIL_LINUX_PARTX=y
|
||||
BR2_PACKAGE_UTIL_LINUX_SULOGIN=y
|
||||
BR2_PACKAGE_UTIL_LINUX_ZRAMCTL=y
|
||||
BR2_TARGET_ROOTFS_SQUASHFS=y
|
||||
BR2_TARGET_ROOTFS_SQUASHFS4_LZ4=y
|
||||
# BR2_TARGET_ROOTFS_TAR is not set
|
||||
BR2_TARGET_UBOOT=y
|
||||
BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION=y
|
||||
BR2_TARGET_UBOOT_CUSTOM_VERSION_VALUE="2022.01"
|
||||
BR2_TARGET_UBOOT_BOARD_DEFCONFIG="hk1box"
|
||||
BR2_TARGET_UBOOT_CONFIG_FRAGMENT_FILES="$(BR2_EXTERNAL_HASSOS_PATH)/bootloader/uboot.config $(BR2_EXTERNAL_HASSOS_PATH)/board/amlogic/s9xx/uboot.config"
|
||||
BR2_PACKAGE_HOST_DOSFSTOOLS=y
|
||||
BR2_PACKAGE_HOST_E2FSPROGS=y
|
||||
BR2_PACKAGE_HOST_GPTFDISK=y
|
||||
BR2_PACKAGE_HOST_MTOOLS=y
|
||||
BR2_PACKAGE_HOST_RAUC=y
|
||||
BR2_PACKAGE_HOST_UBOOT_TOOLS=y
|
||||
BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT=y
|
||||
BR2_PACKAGE_HOST_UBOOT_TOOLS_BOOT_SCRIPT_SOURCE="$(BR2_EXTERNAL_HASSOS_PATH)/board/amlogic/s9xx/uboot-boot.ush"
|
||||
BR2_PACKAGE_AMLOGIC_BOOT=y
|
||||
BR2_PACKAGE_AMLOGIC_BOOT_S9XX=y
|
||||
BR2_PACKAGE_HASSIO=y
|
||||
BR2_PACKAGE_HASSIO_ARCH="aarch64"
|
||||
BR2_PACKAGE_HASSIO_MACHINE="odroid-c4"
|
||||
BR2_PACKAGE_OS_AGENT=y
|
||||
BR2_PACKAGE_OS_AGENT_BOARD="OdroidC4"
|
||||
# BR2_PACKAGE_RPI_RF_MOD is not set
|
||||
# BR2_PACKAGE_RPI_RF_MOD_DTS is not set
|
||||
# BR2_PACKAGE_RPI_RF_MOD_DTS_ODROID_C4 is not set
|
||||
BR2_PACKAGE_RTL88X2BU=y
|
||||
BR2_PACKAGE_RTL8821CU=y
|
||||
BR2_PACKAGE_HOST_TEMPIO=y
|
||||
BR2_PACKAGE_UDISKS2=y
|
||||
BR2_PACKAGE_V4L2LOOPBACK=y
|
||||
39
buildroot-external/package/amlogic-boot/Config.in
Normal file
39
buildroot-external/package/amlogic-boot/Config.in
Normal file
@@ -0,0 +1,39 @@
|
||||
config BR2_PACKAGE_AMLOGIC_BOOT
|
||||
bool "Hardkernel Secure Boot Loader"
|
||||
depends on BR2_TARGET_UBOOT
|
||||
help
|
||||
Augment uboot for secure loading on hardkernel targets.
|
||||
|
||||
if BR2_PACKAGE_AMLOGIC_BOOT
|
||||
choice
|
||||
prompt "Target"
|
||||
default BR2_PACKAGE_AMLOGIC_BOOT_S9XX
|
||||
|
||||
config BR2_PACKAGE_AMLOGIC_BOOT_S9XX
|
||||
bool "S9XX"
|
||||
help
|
||||
For the S9XX
|
||||
|
||||
config BR2_PACKAGE_AMLOGIC_BOOT_ODROID_C4
|
||||
bool "Odroid-C4"
|
||||
help
|
||||
For the Odroid-C4
|
||||
|
||||
config BR2_PACKAGE_AMLOGIC_BOOT_ODROID_XU4
|
||||
bool "Odroid-XU4"
|
||||
help
|
||||
For the Odroid-XU4
|
||||
|
||||
config BR2_PACKAGE_AMLOGIC_BOOT_ODROID_N2
|
||||
bool "Odroid-N2"
|
||||
help
|
||||
For the Odroid-N2
|
||||
|
||||
endchoice
|
||||
|
||||
config BR2_PACKAGE_AMLOGIC_BOOT_FIX_MAC
|
||||
bool "Hardkernel fix mac"
|
||||
help
|
||||
Install script to fix the mac address.
|
||||
|
||||
endif
|
||||
173
buildroot-external/package/amlogic-boot/amlogic-boot.mk
Normal file
173
buildroot-external/package/amlogic-boot/amlogic-boot.mk
Normal file
@@ -0,0 +1,173 @@
|
||||
################################################################################
|
||||
#
|
||||
# amlogic secure boot loader
|
||||
#
|
||||
################################################################################
|
||||
|
||||
AMLOGIC_BOOT_SOURCE = $(AMLOGIC_BOOT_VERSION).tar.gz
|
||||
AMLOGIC_BOOT_SITE = https://github.com/hardkernel/u-boot/archive
|
||||
AMLOGIC_BOOT_LICENSE = GPL-2.0+
|
||||
AMLOGIC_BOOT_LICENSE_FILES = Licenses/gpl-2.0.txt
|
||||
AMLOGIC_BOOT_INSTALL_IMAGES = YES
|
||||
AMLOGIC_BOOT_DEPENDENCIES = uboot
|
||||
|
||||
ifeq ($(BR2_PACKAGE_HARDKERNEL_BOOT_ODROID_C2),y)
|
||||
AMLOGIC_BOOT_VERSION = 205c7b3259559283161703a1a200b787c2c445a5
|
||||
|
||||
AMLOGIC_BOOT_BINS += sd_fuse/bl1.bin.hardkernel
|
||||
AMLOGIC_BOOT_BINS += u-boot.gxbb
|
||||
|
||||
define AMLOGIC_BOOT_BUILD_CMDS
|
||||
$(@D)/fip/fip_create --bl30 $(@D)/fip/gxb/bl30.bin \
|
||||
--bl301 $(@D)/fip/gxb/bl301.bin \
|
||||
--bl31 $(@D)/fip/gxb/bl31.bin \
|
||||
--bl33 $(BINARIES_DIR)/u-boot.bin \
|
||||
$(@D)/fip.bin
|
||||
|
||||
cat $(@D)/fip/gxb/bl2.package $(@D)/fip.bin > $(@D)/boot_new.bin
|
||||
$(@D)/fip/gxb/aml_encrypt_gxb --bootsig \
|
||||
--input $(@D)/boot_new.bin \
|
||||
--output $(@D)/u-boot.img
|
||||
|
||||
dd if=$(@D)/u-boot.img of=$(@D)/u-boot.gxbb bs=512 skip=96
|
||||
endef
|
||||
|
||||
else ifeq ($(BR2_PACKAGE_AMLOGIC_BOOT_S9XX),y)
|
||||
# travis/odroidc4-153 20201014
|
||||
AMLOGIC_BOOT_VERSION = 2a4e31e3fde9bced8a150d338aa397a0362df191
|
||||
|
||||
AMLOGIC_BOOT_BINS += u-boot.sm1
|
||||
define AMLOGIC_BOOT_BUILD_CMDS
|
||||
|
||||
curl -L -o $(@D)/fip/blx_fix.sh https://github.com/unifreq/amlogic-boot-fip/raw/e6974ee48d5e9eb12cc23a85deee95f21163d4ee/hk1box/blx_fix.sh
|
||||
curl -L -o $(@D)/fip/acs.bin https://github.com/unifreq/amlogic-boot-fip/raw/e6974ee48d5e9eb12cc23a85deee95f21163d4ee/hk1box/acs.bin
|
||||
curl -L -o $(@D)/fip/bl301.bin https://github.com/unifreq/amlogic-boot-fip/raw/e6974ee48d5e9eb12cc23a85deee95f21163d4ee/hk1box/bl301.bin
|
||||
|
||||
curl --create-dirs -L -o $(@D)/fip/hk1box/bl30.bin https://github.com/unifreq/amlogic-boot-fip/raw/e6974ee48d5e9eb12cc23a85deee95f21163d4ee/hk1box/bl30.bin
|
||||
curl -L -o $(@D)/fip/hk1box/bl2.bin https://github.com/unifreq/amlogic-boot-fip/raw/e6974ee48d5e9eb12cc23a85deee95f21163d4ee/hk1box/bl2.bin
|
||||
curl -L -o $(@D)/fip/hk1box/bl31.img https://github.com/unifreq/amlogic-boot-fip/raw/e6974ee48d5e9eb12cc23a85deee95f21163d4ee/hk1box/bl31.img
|
||||
curl -L -o $(@D)/fip/hk1box/ddr4_1d.fw https://github.com/unifreq/amlogic-boot-fip/raw/e6974ee48d5e9eb12cc23a85deee95f21163d4ee/hk1box/ddr4_1d.fw --create-dirs
|
||||
curl -L -o $(@D)/fip/hk1box/ddr4_2d.fw https://github.com/unifreq/amlogic-boot-fip/raw/e6974ee48d5e9eb12cc23a85deee95f21163d4ee/hk1box/ddr4_2d.fw
|
||||
curl -L -o $(@D)/fip/hk1box/ddr3_1d.fw https://github.com/unifreq/amlogic-boot-fip/raw/e6974ee48d5e9eb12cc23a85deee95f21163d4ee/hk1box/ddr3_1d.fw
|
||||
curl -L -o $(@D)/fip/hk1box/piei.fw https://github.com/unifreq/amlogic-boot-fip/raw/e6974ee48d5e9eb12cc23a85deee95f21163d4ee/hk1box/piei.fw
|
||||
curl -L -o $(@D)/fip/hk1box/lpddr4_1d.fw https://github.com/unifreq/amlogic-boot-fip/raw/e6974ee48d5e9eb12cc23a85deee95f21163d4ee/hk1box/lpddr4_1d.fw
|
||||
curl -L -o $(@D)/fip/hk1box/lpddr4_2d.fw https://github.com/unifreq/amlogic-boot-fip/raw/e6974ee48d5e9eb12cc23a85deee95f21163d4ee/hk1box/lpddr4_2d.fw
|
||||
curl -L -o $(@D)/fip/hk1box/diag_lpddr4.fw https://github.com/unifreq/amlogic-boot-fip/raw/e6974ee48d5e9eb12cc23a85deee95f21163d4ee/hk1box/diag_lpddr4.fw
|
||||
curl -L -o $(@D)/fip/hk1box/aml_ddr.fw https://github.com/unifreq/amlogic-boot-fip/raw/e6974ee48d5e9eb12cc23a85deee95f21163d4ee/hk1box/aml_ddr.fw
|
||||
curl -L -o $(@D)/fip/hk1box/lpddr3_1d.fw https://github.com/unifreq/amlogic-boot-fip/raw/e6974ee48d5e9eb12cc23a85deee95f21163d4ee/hk1box/lpddr3_1d.fw
|
||||
|
||||
|
||||
bash $(@D)/fip/blx_fix.sh \
|
||||
$(@D)/fip/hk1box/bl30.bin $(@D)/fip/zero_tmp $(@D)/fip/bl30_zero.bin \
|
||||
$(@D)/fip/bl301.bin $(@D)/fip/bl301_zero.bin $(@D)/fip/bl30_new.bin \
|
||||
bl30
|
||||
|
||||
bash $(@D)/fip/blx_fix.sh \
|
||||
$(@D)/fip/hk1box/bl2.bin $(@D)/fip/zero_tmp $(@D)/fip/bl2_zero.bin \
|
||||
$(@D)/fip/acs.bin $(@D)/fip/bl21_zero.bin $(@D)/fip/bl2_new.bin \
|
||||
bl2
|
||||
|
||||
$(@D)/fip/g12a/aml_encrypt_g12a --bl30sig --input $(@D)/fip/bl30_new.bin \
|
||||
--output $(@D)/fip/bl30_new.bin.g12a.enc \
|
||||
--level v3
|
||||
$(@D)/fip/g12a/aml_encrypt_g12a --bl3sig --input $(@D)/fip/bl30_new.bin.g12a.enc \
|
||||
--output $(@D)/fip/bl30_new.bin.enc \
|
||||
--level v3 --type bl30
|
||||
$(@D)/fip/g12a/aml_encrypt_g12a --bl3sig --input $(@D)/fip/hk1box/bl31.img \
|
||||
--output $(@D)/fip/bl31.img.enc \
|
||||
--level v3 --type bl31
|
||||
$(@D)/fip/g12a/aml_encrypt_g12a --bl3sig --input $(BINARIES_DIR)/u-boot.bin \
|
||||
--output $(@D)/fip/bl33.bin.enc \
|
||||
--level v3 --type bl33
|
||||
$(@D)/fip/g12a/aml_encrypt_g12a --bl2sig --input $(@D)/fip/bl2_new.bin \
|
||||
--output $(@D)/fip/bl2.n.bin.sig
|
||||
$(@D)/fip/g12a/aml_encrypt_g12a --bootmk \
|
||||
--output $(@D)/fip/u-boot.bin \
|
||||
--bl2 $(@D)/fip/bl2.n.bin.sig \
|
||||
--bl30 $(@D)/fip/bl30_new.bin.enc \
|
||||
--bl31 $(@D)/fip/bl31.img.enc \
|
||||
--bl33 $(@D)/fip/bl33.bin.enc \
|
||||
--ddrfw1 $(@D)/fip/hk1box/ddr4_1d.fw \
|
||||
--ddrfw2 $(@D)/fip/hk1box/ddr4_2d.fw \
|
||||
--ddrfw3 $(@D)fip/hk1box/ddr3_1d.fw \
|
||||
--ddrfw4 $(@D)/fip/hk1box/piei.fw \
|
||||
--ddrfw5 $(@D)/fip/hk1box/lpddr4_1d.fw \
|
||||
--ddrfw6 $(@D)/fip/hk1box/lpddr4_2d.fw \
|
||||
--ddrfw7 $(@D)/fip/hk1box/diag_lpddr4.fw \
|
||||
--ddrfw8 $(@D)/fip/hk1box/aml_ddr.fw \
|
||||
--ddrfw9 $(@D)/fip/hk1box/lpddr3_1d.fw \
|
||||
--level v3
|
||||
|
||||
cp $(@D)/fip/u-boot.bin $(@D)/u-boot.sm1
|
||||
endef
|
||||
|
||||
else ifeq ($(BR2_PACKAGE_HARDKERNEL_BOOT_ODROID_XU4),y)
|
||||
AMLOGIC_BOOT_VERSION = 88af53fbcef8386cb4d5f04c19f4b2bcb69e90ca
|
||||
|
||||
AMLOGIC_BOOT_BINS += sd_fuse/bl1.bin.hardkernel
|
||||
AMLOGIC_BOOT_BINS += sd_fuse/bl2.bin.hardkernel.720k_uboot
|
||||
AMLOGIC_BOOT_BINS += sd_fuse/tzsw.bin.hardkernel
|
||||
|
||||
define AMLOGIC_BOOT_BUILD_CMDS
|
||||
endef
|
||||
|
||||
else ifeq ($(BR2_PACKAGE_HARDKERNEL_BOOT_ODROID_N2),y)
|
||||
AMLOGIC_BOOT_VERSION = ca5bdd0f1c291d1ec135cd134e01aa2619203d4c
|
||||
|
||||
AMLOGIC_BOOT_BINS += u-boot.g12b
|
||||
define AMLOGIC_BOOT_BUILD_CMDS
|
||||
curl -L -o $(@D)/fip/blx_fix.sh https://raw.githubusercontent.com/home-assistant/operating-system-blobs/f17a8e81e0b7e1bd2475441465cc737c0891edfa/hardkernel/blx_fix_g12a.sh
|
||||
curl -L -o $(@D)/fip/acs.bin https://raw.githubusercontent.com/home-assistant/operating-system-blobs/f17a8e81e0b7e1bd2475441465cc737c0891edfa/hardkernel/odroid-n2/acs.bin
|
||||
curl -L -o $(@D)/fip/bl301.bin https://raw.githubusercontent.com/home-assistant/operating-system-blobs/f17a8e81e0b7e1bd2475441465cc737c0891edfa/hardkernel/odroid-n2/bl301.bin
|
||||
|
||||
bash $(@D)/fip/blx_fix.sh \
|
||||
$(@D)/fip/g12b/bl30.bin $(@D)/fip/zero_tmp $(@D)/fip/bl30_zero.bin \
|
||||
$(@D)/fip/bl301.bin $(@D)/fip/bl301_zero.bin $(@D)/fip/bl30_new.bin \
|
||||
bl30
|
||||
|
||||
bash $(@D)/fip/blx_fix.sh \
|
||||
$(@D)/fip/g12b/bl2.bin $(@D)/fip/zero_tmp $(@D)/fip/bl2_zero.bin \
|
||||
$(@D)/fip/acs.bin $(@D)/fip/bl21_zero.bin $(@D)/fip/bl2_new.bin \
|
||||
bl2
|
||||
|
||||
$(@D)/fip/g12b/aml_encrypt_g12b --bl30sig --input $(@D)/fip/bl30_new.bin \
|
||||
--output $(@D)/fip/bl30_new.bin.g12.enc \
|
||||
--level v3
|
||||
$(@D)/fip/g12b/aml_encrypt_g12b --bl3sig --input $(@D)/fip/bl30_new.bin.g12.enc \
|
||||
--output $(@D)/fip/bl30_new.bin.enc \
|
||||
--level v3 --type bl30
|
||||
$(@D)/fip/g12b/aml_encrypt_g12b --bl3sig --input $(@D)/fip/g12b/bl31.img \
|
||||
--output $(@D)/fip/bl31.img.enc \
|
||||
--level v3 --type bl31
|
||||
$(@D)/fip/g12b/aml_encrypt_g12b --bl3sig --input $(BINARIES_DIR)/u-boot.bin \
|
||||
--output $(@D)/fip/bl33.bin.enc \
|
||||
--level v3 --type bl33 --compress lz4
|
||||
$(@D)/fip/g12b/aml_encrypt_g12b --bl2sig --input $(@D)/fip/bl2_new.bin \
|
||||
--output $(@D)/fip/bl2.n.bin.sig
|
||||
$(@D)/fip/g12b/aml_encrypt_g12b --bootmk \
|
||||
--output $(@D)/fip/u-boot.bin \
|
||||
--bl2 $(@D)/fip/bl2.n.bin.sig \
|
||||
--bl30 $(@D)/fip/bl30_new.bin.enc \
|
||||
--bl31 $(@D)/fip/bl31.img.enc \
|
||||
--bl33 $(@D)/fip/bl33.bin.enc \
|
||||
--ddrfw1 $(@D)/fip/g12b/ddr4_1d.fw \
|
||||
--ddrfw2 $(@D)/fip/g12b/ddr4_2d.fw \
|
||||
--ddrfw3 $(@D)fip/g12b/ddr3_1d.fw \
|
||||
--ddrfw4 $(@D)/fip/g12b/piei.fw \
|
||||
--ddrfw5 $(@D)/fip/g12b/lpddr4_1d.fw \
|
||||
--ddrfw6 $(@D)/fip/g12b/lpddr4_2d.fw \
|
||||
--ddrfw7 $(@D)/fip/g12b/diag_lpddr4.fw \
|
||||
--ddrfw8 $(@D)/fip/g12b/aml_ddr.fw \
|
||||
--level v3
|
||||
|
||||
cp $(@D)/fip/u-boot.bin $(@D)/u-boot.g12b
|
||||
endef
|
||||
endif
|
||||
|
||||
define AMLOGIC_BOOT_INSTALL_IMAGES_CMDS
|
||||
$(foreach f,$(AMLOGIC_BOOT_BINS), \
|
||||
cp -dpf $(@D)/$(f) $(BINARIES_DIR)/
|
||||
)
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
||||
@@ -3,7 +3,7 @@ set -e
|
||||
|
||||
BUILDER_UID="$(id -u)"
|
||||
BUILDER_GID="$(id -g)"
|
||||
CACHE_DIR="${CACHE_DIR:-$HOME/hassos-cache}"
|
||||
CACHE_DIR="/mnt/data/supervisor/$(pwd)/../hassos-cache"
|
||||
ARGS="$*"
|
||||
COMMAND="${ARGS:-bash}"
|
||||
|
||||
@@ -21,6 +21,6 @@ sudo losetup -f > /dev/null
|
||||
|
||||
# shellcheck disable=SC2086
|
||||
sudo docker run -it --rm --privileged \
|
||||
-v "$(pwd):/build" -v "${CACHE_DIR}:/cache" \
|
||||
-v "/mnt/data/supervisor/$(pwd):/build" -v "${CACHE_DIR}:/cache" \
|
||||
-e BUILDER_UID="${BUILDER_UID}" -e BUILDER_GID="${BUILDER_GID}" \
|
||||
hassos:local ${COMMAND}
|
||||
|
||||
Reference in New Issue
Block a user