[Sigmastar] add additional sensors, configs and fixes for infinity6e (#690)

Co-authored-by: Viktor <viktorxda@users.noreply.github.com>
pull/694/head
viktorxda 2023-03-25 19:16:44 +01:00 committed by GitHub
parent 0b37cdc947
commit 96da0f7df2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
18 changed files with 2667 additions and 49 deletions

View File

@ -0,0 +1,102 @@
# Architecture
BR2_arm=y
BR2_cortex_a7=y
BR2_ARM_EABIHF=y
BR2_ARM_FPU_NEON_VFPV4=y
BR2_ARM_INSTRUCTIONS_THUMB2=y
BR2_KERNEL_HEADERS_VERSION=y
BR2_DEFAULT_KERNEL_VERSION="4.9.84"
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_9=y
# Toolchain
BR2_PER_PACKAGE_DIRECTORIES=y
BR2_GCC_VERSION_10_X=y
BR2_TOOLCHAIN_USES_GLIBC=y
BR2_TOOLCHAIN_BUILDROOT_GLIBC=y
BR2_TOOLCHAIN_BUILDROOT_LIBC="glibc"
BR2_TOOLCHAIN_BUILDROOT_CXX=y
BR2_TOOLCHAIN_BUILDROOT_LOCALE=y
BR2_TOOLCHAIN_BUILDROOT_USE_SSP=y
# Kernel
BR2_LINUX_KERNEL=y
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.9.84"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(BR2_EXTERNAL_SIGMASTAR_PATH)/board/infinity6e/kernel/ssc338q.generic.config.camhi"
BR2_LINUX_KERNEL_UIMAGE=y
BR2_LINUX_KERNEL_XZ=y
BR2_LINUX_KERNEL_EXT_SIGMASTAR_PATCHER=y
BR2_LINUX_KERNEL_EXT_SIGMASTAR_PATCHER_LIST="$(BR2_EXTERNAL_SIGMASTAR_PATH)/board/infinity6e/kernel/patches/ $(BR2_EXTERNAL_SIGMASTAR_PATH)/board/infinity6e/kernel/overlay"
# Filesystem
# BR2_TARGET_TZ_INFO is not set
BR2_TARGET_ROOTFS_CPIO=y
BR2_TARGET_ROOTFS_SQUASHFS=y
BR2_TARGET_ROOTFS_SQUASHFS4_XZ=y
BR2_ROOTFS_OVERLAY="$(TOPDIR)/../general/overlay"
BR2_ROOTFS_POST_BUILD_SCRIPT="$(TOPDIR)/../scripts/executing_commands_for_$(BR2_TOOLCHAIN_BUILDROOT_LIBC).sh"
# OpenIPC configuration
BR2_TOOLCHAIN_BUILDROOT_VENDOR="openipc"
BR2_TARGET_GENERIC_ISSUE="Welcome to OpenIPC"
BR2_TARGET_GENERIC_HOSTNAME="openipc-ssc338q"
BR2_GLOBAL_PATCH_DIR="$(TOPDIR)/../general/package/all-patches"
# OpenIPC packages
BR2_PACKAGE_BUSYBOX_CONFIG="$(TOPDIR)/../general/package/busybox/busybox.config"
BR2_PACKAGE_DROPBEAR_OPENIPC=y
# BR2_PACKAGE_FDK_AAC_OPENIPC is not set
BR2_PACKAGE_FWPRINTENV_OPENIPC=y
BR2_PACKAGE_HASERL=y
BR2_PACKAGE_IPCTOOL=y
BR2_PACKAGE_JSON_C=y
BR2_PACKAGE_JSONFILTER=y
BR2_PACKAGE_LIBCURL_OPENIPC=y
BR2_PACKAGE_LIBCURL_OPENIPC_CURL=y
# BR2_PACKAGE_LIBCURL_OPENIPC_VERBOSE is not set
# BR2_PACKAGE_LIBCURL_OPENIPC_PROXY_SUPPORT is not set
# BR2_PACKAGE_LIBCURL_OPENIPC_COOKIES_SUPPORT is not set
# BR2_PACKAGE_LIBCURL_OPENIPC_EXTRA_PROTOCOLS_FEATURES is not set
BR2_PACKAGE_LIBCURL_OPENIPC_MBEDTLS=y
BR2_PACKAGE_LIBEVENT_OPENIPC=y
BR2_PACKAGE_LIBEVENT_OPENIPC_REMOVE_PYSCRIPT=y
BR2_PACKAGE_LIBOGG_OPENIPC=y
BR2_PACKAGE_LIBYAML=y
# BR2_PACKAGE_MAJESTIC_FONTS is not set
# BR2_PACKAGE_MAJESTIC is not set
BR2_PACKAGE_MBEDTLS_OPENIPC=y
# BR2_PACKAGE_MBEDTLS_OPENIPC_PROGRAMS is not set
# BR2_PACKAGE_MBEDTLS_OPENIPC_COMPRESSION is not set
BR2_PACKAGE_MICROBE_WEB=y
# BR2_PACKAGE_MINI_SNMPD is not set
# BR2_PACKAGE_MOTORS is not set
BR2_PACKAGE_OPUS_OPENIPC=y
BR2_PACKAGE_OPUS_OPENIPC_FIXED_POINT=y
BR2_PACKAGE_SIGMASTAR_OSDRV_INFINITY6E=y
BR2_PACKAGE_SIGMASTAR_OSDRV_SENSOR="imx415"
BR2_PACKAGE_DOSFSTOOLS=y
BR2_PACKAGE_DOSFSTOOLS_FSCK_FAT=y
# BR2_PACKAGE_SSHPASS is not set
BR2_PACKAGE_UACME_OPENIPC=y
BR2_PACKAGE_VTUND_OPENIPC=y
BR2_PACKAGE_YAML_CLI=y
BR2_PACKAGE_ZLIB=y
# Wireless
BR2_PACKAGE_WIRELESS_TOOLS=y
BR2_PACKAGE_WPA_SUPPLICANT=y
BR2_PACKAGE_WPA_SUPPLICANT_CLI=y
BR2_PACKAGE_WPA_SUPPLICANT_AP_SUPPORT=y
BR2_PACKAGE_WPA_SUPPLICANT_NL80211=y
BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y
BR2_PACKAGE_RTL8733BU_OPENIPC=y
BR2_PACKAGE_WIRELESS_CONFIGURATION=y
# Wireguard
# BR2_PACKAGE_WIREGUARD_LINUX_COMPAT is not set
# BR2_PACKAGE_WIREGUARD_TOOLS is not set
# Debug
BR2_PACKAGE_HOST_GDB=y
BR2_PACKAGE_GDB=y

View File

@ -16,31 +16,31 @@ SIGMASTAR_INITRAMFS_DOSFSTOOLS_VERSION = 4.2
SIGMASTAR_INITRAMFS_DOSFSTOOLS_SOURCE = dosfstools-$(SIGMASTAR_INITRAMFS_DOSFSTOOLS_VERSION).tar.gz
SIGMASTAR_INITRAMFS_DOSFSTOOLS_SITE = https://github.com/dosfstools/dosfstools/releases/download/v$(SIGMASTAR_INITRAMFS_DOSFSTOOLS_VERSION)
SIGMASTAR_INITRAMFS_TOOLCHAIN_SOURCE = cortex_a7_thumb2_hf-gcc8.4.0-musl-4_9-1e913a17.tgz
SIGMASTAR_INITRAMFS_TOOLCHAIN_SITE = https://github.com/openipc/firmware/releases/download/latest
SIGMASTAR_INITRAMFS_TOOLCHAIN_SOURCE = arm-linux-musleabihf-cross.tgz
SIGMASTAR_INITRAMFS_TOOLCHAIN_SITE = https://more.musl.cc/10/x86_64-linux-musl
SIGMASTAR_INITRAMFS_BUSYBOX_PATH = $(HOST_DIR)/source/busybox-$(SIGMASTAR_INITRAMFS_BUSYBOX_VERSION)
SIGMASTAR_INITRAMFS_DOSFSTOOLS_PATH = $(HOST_DIR)/source/dosfstools-$(SIGMASTAR_INITRAMFS_DOSFSTOOLS_VERSION)
SIGMASTAR_INITRAMFS_TOOLCHAIN_PATH = $(HOST_DIR)/source/arm-openipc-linux-musleabihf_sdk-buildroot/bin
SIGMASTAR_INITRAMFS_TOOLCHAIN_PATH = $(HOST_DIR)/source/arm-linux-musleabihf-cross/bin
define SIGMASTAR_INITRAMFS_PREPARE_KERNEL
mkdir -p $(LINUX_DIR)/initramfs
cp -f $(SIGMASTAR_INITRAMFS_PKGDIR)/files/* $(LINUX_DIR)/initramfs
wget $(SIGMASTAR_INITRAMFS_BUSYBOX_SITE)/$(SIGMASTAR_INITRAMFS_BUSYBOX_SOURCE) -P $(HOST_DIR)/source -c
wget -c $(SIGMASTAR_INITRAMFS_BUSYBOX_SITE)/$(SIGMASTAR_INITRAMFS_BUSYBOX_SOURCE) -P $(HOST_DIR)/source
tar -xf $(HOST_DIR)/source/$(SIGMASTAR_INITRAMFS_BUSYBOX_SOURCE) -C $(HOST_DIR)/source
wget $(SIGMASTAR_INITRAMFS_DOSFSTOOLS_SITE)/$(SIGMASTAR_INITRAMFS_DOSFSTOOLS_SOURCE) -P $(HOST_DIR)/source -c
wget -c $(SIGMASTAR_INITRAMFS_DOSFSTOOLS_SITE)/$(SIGMASTAR_INITRAMFS_DOSFSTOOLS_SOURCE) -P $(HOST_DIR)/source
tar -xf $(HOST_DIR)/source/$(SIGMASTAR_INITRAMFS_DOSFSTOOLS_SOURCE) -C $(HOST_DIR)/source
wget $(SIGMASTAR_INITRAMFS_TOOLCHAIN_SITE)/$(SIGMASTAR_INITRAMFS_TOOLCHAIN_SOURCE) -P $(HOST_DIR)/source -c
wget -c $(SIGMASTAR_INITRAMFS_TOOLCHAIN_SITE)/$(SIGMASTAR_INITRAMFS_TOOLCHAIN_SOURCE) -P $(HOST_DIR)/source
tar -xf $(HOST_DIR)/source/$(SIGMASTAR_INITRAMFS_TOOLCHAIN_SOURCE) -C $(HOST_DIR)/source
cp -f $(SIGMASTAR_INITRAMFS_PKGDIR)/files/initramfs_defconfig $(SIGMASTAR_INITRAMFS_BUSYBOX_PATH)/.config
$(MAKE) CROSS_COMPILE=$(SIGMASTAR_INITRAMFS_TOOLCHAIN_PATH)/arm-linux- -C $(SIGMASTAR_INITRAMFS_BUSYBOX_PATH)
$(MAKE) CROSS_COMPILE=$(SIGMASTAR_INITRAMFS_TOOLCHAIN_PATH)/arm-linux-musleabihf- -C $(SIGMASTAR_INITRAMFS_BUSYBOX_PATH)
cp -f $(SIGMASTAR_INITRAMFS_BUSYBOX_PATH)/busybox $(LINUX_DIR)/initramfs
cd $(SIGMASTAR_INITRAMFS_DOSFSTOOLS_PATH) && ./autogen.sh && ./configure
$(MAKE) CC=$(SIGMASTAR_INITRAMFS_TOOLCHAIN_PATH)/arm-linux-gcc CFLAGS="-static -s" -C $(SIGMASTAR_INITRAMFS_DOSFSTOOLS_PATH)
$(MAKE) CFLAGS="-static -s" CC=$(SIGMASTAR_INITRAMFS_TOOLCHAIN_PATH)/arm-linux-musleabihf-gcc -C $(SIGMASTAR_INITRAMFS_DOSFSTOOLS_PATH)
cp -f $(SIGMASTAR_INITRAMFS_DOSFSTOOLS_PATH)/src/fsck.fat $(LINUX_DIR)/initramfs
endef

View File

@ -785,7 +785,7 @@ CONFIG_I2CSET=y
CONFIG_I2CDUMP=y
CONFIG_I2CDETECT=y
CONFIG_I2CTRANSFER=y
# CONFIG_INOTIFYD is not set
CONFIG_INOTIFYD=y
CONFIG_LESS=y
CONFIG_FEATURE_LESS_MAXLINES=9999999
CONFIG_FEATURE_LESS_BRACKETS=y

View File

@ -1,6 +1,5 @@
#!/bin/sh
rootfs=/squashfs
overlay=$rootfs/mnt
rootdir=/overlay/root
workdir=/overlay/work
@ -10,28 +9,30 @@ mount -t sysfs sysfs /sys
sleep 1
fsck.fat -a /dev/mmcblk0p1
mkdir -p $rootfs /overlay /sdcard /tmp
mount -r /dev/mmcblk0p1 /sdcard
mkdir -p $rootfs /mnt /overlay /sdcard /tmp
echo OpenIPC: Copy squashfs
mount -r /dev/mmcblk0p1 /sdcard || exec sh
cp -f /sdcard/rootfs.squashfs.* /tmp || exec sh
mount /tmp/rootfs.squashfs.* $rootfs || exec sh
mount -t tmpfs tmpfs /overlay
if [ -f /sdcard/settings.tar ]; then
tar -xf /sdcard/settings.tar -C /overlay
fi
mount -t tmpfs tmpfs -o size=5M /overlay
[ -f /sdcard/settings.tar ] && tar -xf /sdcard/settings.tar -C /overlay
echo OpenIPC: Mount overlayfs
mkdir -p $rootdir $workdir
mount -t overlay overlay -o lowerdir=$rootfs,upperdir=$rootdir,workdir=$workdir $overlay
mount -o move /dev $overlay/dev
mount -o move /overlay $overlay/overlay
ln -sf ../wireless/interfaces $overlay/etc/network/interfaces
cp -f /bin/savesettings $overlay/usr/bin
mount -t overlay overlay -o lowerdir=$rootfs,upperdir=$rootdir,workdir=$workdir /mnt
mount -o move /dev /mnt/dev
mount -o move /overlay /mnt/overlay
mount -o move $rootfs /mnt/rom
ln -sf ../wireless/interfaces /mnt/etc/network/interfaces
cp -f /bin/savesettings /mnt/usr/sbin
umount /sdcard
umount /proc
umount /sys
echo OpenIPC: Switch to new root
exec switch_root $overlay /sbin/init
exec switch_root /mnt /sbin/init

View File

@ -1,7 +1,9 @@
#!/bin/sh
if [ -d /mnt/mmcblk0p1 ]; then
tar -cf /tmp/settings.tar -C /overlay root
mv -f /tmp/settings.tar /mnt/mmcblk0p1 && echo OpenIPC: Save settings to sdcard
file=/mnt/mmcblk0p1/settings.tar
if cat /proc/mounts | grep -q mmcblk0p1; then
[ -f $file ] && [ $(expr $(date +%s) - $(date +%s -r $file)) -le 1 ] && exit 0
tar -cf $file -C /overlay root && echo OpenIPC: Save settings to sdcard
else
echo OpenIPC: Cannot save settings to sdcard
fi

View File

@ -1,36 +1,32 @@
#!/bin/sh
if [ -z $1 ]; then
usage() {
echo wireless connect
echo wireless setup
echo wireless show
exit 0
fi
}
if [ $1 = "connect" ]; then
if [ -z $1 ]; then
usage
elif [ $1 = "connect" ]; then
killall -q netsetup
killall -q udhcpd
killall -q wpa_supplicant
/etc/network/netsetup connect
fi
if [ $1 = "setup" ]; then
/etc/wireless/netsetup connect
elif [ $1 = "setup" ]; then
if [ -z $2 ] || [ -z $3 ]; then
echo wireless setup [SSID] [PASS]
exit 0
fi
sed -i "s/SSID=.*/SSID=$2/" /etc/network/netsetup
sed -i "s/PASS=.*/PASS=$3/" /etc/network/netsetup
sed -i "s/MODE=.*/MODE=client/" /etc/network/netsetup
sed -i "s/SSID=.*/SSID=$2/" /etc/wireless/netsetup
sed -i "s/PASS=.*/PASS=$3/" /etc/wireless/netsetup
sed -i "s/MODE=.*/MODE=client/" /etc/wireless/netsetup
echo SSID: $2
echo PASS: $3
fi
if [ $1 = "show" ]; then
SSID=$(grep SSID= /etc/network/netsetup | awk -F= '{print $2}')
PASS=$(grep PASS= /etc/network/netsetup | awk -F= '{print $2}')
elif [ $1 = "show" ]; then
SSID=$(grep SSID= /etc/wireless/netsetup | awk -F= '{print $2}')
PASS=$(grep PASS= /etc/wireless/netsetup | awk -F= '{print $2}')
echo SSID: $SSID
echo PASS: $PASS
else
usage
fi

View File

@ -13,15 +13,15 @@ WIRELESS_CONFIGURATION_PATH = ../general/package/wireless-configuration/files
define WIRELESS_CONFIGURATION_INSTALL_TARGET_CMDS
$(INSTALL) -m 755 -d $(TARGET_DIR)/etc
cp -f $(WIRELESS_CONFIGURATION_PATH)/udhcpd.conf $(TARGET_DIR)/etc
$(INSTALL) -m 644 -t $(TARGET_DIR)/etc $(WIRELESS_CONFIGURATION_PATH)/udhcpd.conf
$(INSTALL) -m 755 -d $(TARGET_DIR)/etc/wireless
cp -f $(WIRELESS_CONFIGURATION_PATH)/interfaces $(TARGET_DIR)/etc/wireless
cp -f $(WIRELESS_CONFIGURATION_PATH)/netadapter $(TARGET_DIR)/etc/wireless
cp -f $(WIRELESS_CONFIGURATION_PATH)/netsetup $(TARGET_DIR)/etc/wireless
$(INSTALL) -m 644 -t $(TARGET_DIR)/etc/wireless $(WIRELESS_CONFIGURATION_PATH)/interfaces
$(INSTALL) -m 755 -t $(TARGET_DIR)/etc/wireless $(WIRELESS_CONFIGURATION_PATH)/netadapter
$(INSTALL) -m 755 -t $(TARGET_DIR)/etc/wireless $(WIRELESS_CONFIGURATION_PATH)/netsetup
$(INSTALL) -m 755 -d $(TARGET_DIR)/usr/sbin
cp -f $(WIRELESS_CONFIGURATION_PATH)/wireless $(TARGET_DIR)/usr/sbin
$(INSTALL) -m 755 -t $(TARGET_DIR)/usr/sbin $(WIRELESS_CONFIGURATION_PATH)/wireless
endef
$(eval $(generic-package))