Compare commits

...

29 Commits

Author SHA1 Message Date
f297a16697 fix build 2023-03-29 14:35:25 +02:00
46a9ff6bcc fix boot 2023-03-29 14:08:38 +02:00
2185428474 Test Change 2023-03-29 13:24:32 +02:00
64c37e6d20 „scripts/enter.sh“ ändern 2023-03-29 12:55:45 +02:00
1751dc16c0 „buildroot-external/board/amlogic/s9xx/uboot-boot.ush“ ändern 2023-03-29 11:05:03 +02:00
e5f574a831 „buildroot-external/board/amlogic/s9xx/meta“ ändern 2023-03-29 11:03:30 +02:00
6760205f58 „buildroot-external/configs/s9xx_defconfig“ ändern 2023-03-29 10:44:13 +02:00
b698176b1b Dateien hochladen nach „buildroot-external/package/amlogic-boot“ 2023-03-29 10:40:48 +02:00
a44dcd98a1 „buildroot-external/board/amlogic/s9xx/uboot-boot.ush“ ändern 2023-03-29 10:34:55 +02:00
03a72e82b4 „buildroot-external/board/amlogic/s9xx/hassos-hook.sh“ ändern 2023-03-29 10:26:34 +02:00
afd6859050 „buildroot-external/board/amlogic/s9xx/uboot-boot.ush“ ändern 2023-03-29 10:22:49 +02:00
e27b28c6e5 Dateien hochladen nach „buildroot-external/board/amlogic/s9xx“ 2023-03-29 10:21:29 +02:00
83307209e1 Dateien hochladen nach „buildroot-external/board/amlogic/patches/linux“ 2023-03-29 08:25:36 +02:00
19016d0bfa „scripts/enter.sh“ ändern 2023-03-28 23:55:05 +02:00
2eeca05cee Dateien hochladen nach „buildroot-external/package/amlogic-boot“ 2023-03-28 22:57:50 +02:00
4e1e9b8197 Dateien hochladen nach „buildroot-external/package/amlogic-boot“ 2023-03-28 22:53:34 +02:00
8a45ccd97d Dateien hochladen nach „buildroot-external/configs“ 2023-03-28 22:53:11 +02:00
2fc3de92e2 Dateien hochladen nach „buildroot-external/board/amlogic/s9xx“ 2023-03-28 22:52:32 +02:00
f359b0f6f7 Dateien hochladen nach „buildroot-external/board/amlogic/s9xx“ 2023-03-28 22:52:19 +02:00
d4ee727abd Dateien hochladen nach „buildroot-external/board/amlogic/patches/uboot“ 2023-03-28 22:51:41 +02:00
9ee5de8254 Dateien hochladen nach „buildroot-external/board/amlogic/patches/linux“ 2023-03-28 22:51:22 +02:00
94aaa17f58 Dateien hochladen nach „buildroot-external/board/amlogic“ 2023-03-28 22:50:30 +02:00
508a6ca60c revert a9c90a9883
revert Dateien hochladen nach „buildroot-external/board“
2023-03-28 22:49:06 +02:00
a9c90a9883 Dateien hochladen nach „buildroot-external/board“ 2023-03-28 22:48:21 +02:00
06739998bf Dateien hochladen nach „buildroot-external“ 2023-03-28 22:47:06 +02:00
2cdb4ef2b7 revert d7b79a84d6
revert Dateien hochladen nach „buildroot-external“
2023-03-28 22:46:44 +02:00
d7b79a84d6 Dateien hochladen nach „buildroot-external“ 2023-03-28 22:45:36 +02:00
c4178b7ec7 Merge pull request 'fix for HA' (#1) from ha-osbuilder into dev
Reviewed-on: #1
2023-03-28 22:16:58 +02:00
b15ed586ae fix for HA 2023-03-28 22:03:48 +02:00
17 changed files with 25976 additions and 3 deletions

View File

@@ -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/).

View File

@@ -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"

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@@ -0,0 +1,2 @@
echo "start amlogic old u-boot"
if fatload mmc 0 0x1000000 u-boot.ext; then go 0x1000000; fi;

View File

@@ -0,0 +1,2 @@
# Uncomment this to enable GPIO support for RPI-RF-MOD/HM-MOD-RPI-PCB
#overlays=rpi-rf-mod

View File

@@ -0,0 +1 @@
console=tty0 console=ttyAML0,115200n8

View 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
}

View 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

View 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

View 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

View 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

View 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

View 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))

View File

@@ -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}