Merge branch 'OpenIPC:master' into master

pull/1547/head
xucn 2023-12-30 08:30:06 +08:00 committed by GitHub
commit 957fce3db4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
260 changed files with 5251 additions and 1844 deletions

View File

@ -22,46 +22,12 @@ jobs:
strategy:
fail-fast: false
matrix:
platform:
- hi3516cv100
- hi3518cv100
- hi3518ev100
- hi3516av100
- hi3516dv100
- hi3516cv200
- hi3518ev200
- hi3519v101
- hi3516av200
- hi3516cv300
- hi3516ev100
- hi3516cv500
- hi3516dv300
- hi3516av300
- hi3516ev200
- hi3516ev300
- hi3518ev300
- hi3516dv200
- hi3536cv100
- hi3536dv100
- gk7205v200
- gk7205v210
- gk7205v300
- gk7202v300
- gk7605v100
- t20
- t31
- t40
release:
- lite
- ultimate
include:
# Sigmastar infinity6
# Sigmastar [I6]
- {"platform": "ssc325", "release": "lite"}
- {"platform": "ssc325de", "release": "lite"}
# Sigmastar infinity6b0
# Sigmastar [I6B]
- {"platform": "ssc333", "release": "lite"}
- {"platform": "ssc333", "release": "ultimate"}
- {"platform": "ssc335", "release": "lite"}
@ -73,135 +39,128 @@ jobs:
- {"platform": "ssc337de", "release": "lite"}
- {"platform": "ssc337de", "release": "ultimate"}
# Sigmastar infinity6c
# Sigmastar [I6C]
- {"platform": "ssc377", "release": "lite"}
# Sigmastar infinity6e
# Sigmastar [I6E]
- {"platform": "ssc30kd", "release": "lite"}
- {"platform": "ssc30kd", "release": "ultimate"}
- {"platform": "ssc30kq", "release": "fpv"}
- {"platform": "ssc30kq", "release": "lite"}
- {"platform": "ssc30kq", "release": "ultimate"}
- {"platform": "ssc338q", "release": "fpv"}
- {"platform": "ssc338q", "release": "lite"}
- {"platform": "ssc338q", "release": "ultimate"}
- platform: hi3518ev200
release: mini
- platform: hi3516cv300
release: mini
- platform: hi3516ev200
release: fpv
- platform: hi3516ev300
release: fpv
- platform: gk7205v200
release: fpv
- platform: gk7205v210
release: fpv
- platform: gk7205v300
release: fpv
- platform: hi3516ev200
release: lte
- platform: hi3516ev300
release: lte
- platform: hi3536dv100
release: fpv
- platform: gk7205v200
release: lte
- platform: gk7205v300
release: lte
- platform: gk7205v200
release: venc
- platform: gk7205v210
release: venc
- platform: gk7205v300
release: venc
# Ingenic [T21]
- {"platform": "t10", "release": "lite"}
- {"platform": "t20", "release": "lite"}
- {"platform": "t20", "release": "ultimate"}
- {"platform": "t21", "release": "lite"}
- {"platform": "t21", "release": "ultimate"}
- {"platform": "t30", "release": "lite"}
# MVP
- platform: fh8852v100
release: lite
- platform: fh8852v200
release: lite
- platform: gm8136
release: lite
- platform: nt98562
release: lite
- platform: nt98566
release: lite
- platform: rv1109
release: lite
- platform: rv1126
release: lite
- platform: t10
release: lite
- platform: t21
release: lite
- platform: t30
release: lite
- platform: xm510
release: lite
- platform: xm530
release: lite
- platform: xm550
release: lite
# Ingenic [T31]
- {"platform": "t31", "release": "lite"}
- {"platform": "t31", "release": "ultimate"}
# TODO
- platform: ak3916ev300
release: lite
custom: onlyci
- platform: ak3918ev300
release: lite
custom: onlyci
- platform: dm36x
release: lite
custom: onlyci
- platform: gk7102
release: lite
- platform: gk7102s
release: lite
- platform: msc313e
release: lite
custom: onlyci
- platform: msc316dc
release: lite
custom: onlyci
- platform: msc316dm
release: lite
custom: onlyci
- platform: s3l
release: lite
custom: onlyci
# Ingenic [T40]
- {"platform": "t40", "release": "lite"}
- {"platform": "t40", "release": "ultimate"}
exclude:
- platform: hi3516cv100
release: ultimate
- platform: hi3518cv100
release: ultimate
- platform: hi3518ev100
release: ultimate
- platform: hi3516cv200
release: ultimate
- platform: hi3519v101
release: ultimate
- platform: hi3516ev100
release: ultimate
- platform: hi3516cv500
release: ultimate
- platform: hi3516dv300
release: ultimate
- platform: hi3516av300
release: ultimate
- platform: hi3516dv200
release: ultimate
- platform: hi3536cv100
release: ultimate
- platform: hi3536dv100
release: ultimate
- platform: gk7605v100
release: ultimate
- platform: gk7205v210
release: ultimate
- platform: gk7202v300
release: ultimate
# Hisilicon [HI3516AV100]
- {"platform": "hi3516av100", "release": "lite"}
- {"platform": "hi3516av100", "release": "ultimate"}
- {"platform": "hi3516dv100", "release": "lite"}
- {"platform": "hi3516dv100", "release": "ultimate"}
# Hisilicon [HI3516CV100]
- {"platform": "hi3516cv100", "release": "lite"}
- {"platform": "hi3518cv100", "release": "lite"}
- {"platform": "hi3518ev100", "release": "lite"}
# Hisilicon [HI3516CV200]
- {"platform": "hi3516cv200", "release": "lite"}
- {"platform": "hi3518ev200", "release": "mini"}
- {"platform": "hi3518ev200", "release": "lite"}
- {"platform": "hi3518ev200", "release": "ultimate"}
# Hisilicon [HI3516CV300]
- {"platform": "hi3516cv300", "release": "mini"}
- {"platform": "hi3516cv300", "release": "lite"}
- {"platform": "hi3516cv300", "release": "ultimate"}
- {"platform": "hi3516ev100", "release": "lite"}
# Hisilicon [HI3516CV500]
- {"platform": "hi3516av300", "release": "lite"}
- {"platform": "hi3516cv500", "release": "lite"}
- {"platform": "hi3516dv300", "release": "lite"}
# Hisilicon [HI3516EV200]
- {"platform": "hi3516dv200", "release": "lite"}
- {"platform": "hi3516ev200", "release": "lte"}
- {"platform": "hi3516ev200", "release": "fpv"}
- {"platform": "hi3516ev200", "release": "lite"}
- {"platform": "hi3516ev200", "release": "ultimate"}
- {"platform": "hi3516ev300", "release": "lte"}
- {"platform": "hi3516ev300", "release": "fpv"}
- {"platform": "hi3516ev300", "release": "lite"}
- {"platform": "hi3516ev300", "release": "ultimate"}
- {"platform": "hi3518ev300", "release": "lite"}
- {"platform": "hi3518ev300", "release": "ultimate"}
# Hisilicon [HI3519V101]
- {"platform": "hi3516av200", "release": "lite"}
- {"platform": "hi3516av200", "release": "ultimate"}
- {"platform": "hi3519v101", "release": "lite"}
# Hisilicon [HI3536CV100]
- {"platform": "hi3536cv100", "release": "lite"}
# Hisilicon [HI3536DV100]
- {"platform": "hi3536dv100", "release": "fpv"}
- {"platform": "hi3536dv100", "release": "lite"}
# Goke [GK710X]
- {"platform": "gk7102", "release": "lite"}
- {"platform": "gk7102s", "release": "lite"}
# Goke [GK7205V200]
- {"platform": "gk7202v300", "release": "lite"}
- {"platform": "gk7205v200", "release": "lte"}
- {"platform": "gk7205v200", "release": "fpv"}
- {"platform": "gk7205v200", "release": "venc"}
- {"platform": "gk7205v200", "release": "lite"}
- {"platform": "gk7205v200", "release": "ultimate"}
- {"platform": "gk7205v210", "release": "fpv"}
- {"platform": "gk7205v210", "release": "venc"}
- {"platform": "gk7205v210", "release": "lite"}
- {"platform": "gk7205v300", "release": "lte"}
- {"platform": "gk7205v300", "release": "fpv"}
- {"platform": "gk7205v300", "release": "venc"}
- {"platform": "gk7205v300", "release": "lite"}
- {"platform": "gk7205v300", "release": "ultimate"}
- {"platform": "gk7605v100", "release": "lite"}
# Fullhan
- {"platform": "fh8852v100", "release": "lite"}
- {"platform": "fh8852v200", "release": "lite"}
# Grainmedia
- {"platform": "gm8136", "release": "lite"}
# Novatek
- {"platform": "nt98562", "release": "lite"}
- {"platform": "nt98566", "release": "lite"}
# Rockchip
- {"platform": "rv1109", "release": "lite"}
- {"platform": "rv1126", "release": "lite"}
# Xiongmai
- {"platform": "xm510", "release": "lite"}
- {"platform": "xm530", "release": "lite"}
- {"platform": "xm550", "release": "lite"}
steps:
- name: Checkout source
@ -255,7 +214,7 @@ jobs:
fi
- name: Upload firmware
if: github.event_name != 'pull_request' && matrix.custom != 'onlyci'
if: github.event_name != 'pull_request'
uses: softprops/action-gh-release@v1
with:
tag_name: ${{env.TAG_NAME}}
@ -264,7 +223,7 @@ jobs:
${{env.NANDFW}}
- name: Send binary
if: github.event_name != 'pull_request' && matrix.custom != 'onlyci' && env.NORFW
if: github.event_name != 'pull_request' && env.NORFW
run: |
TG_MSG="Commit: ${GIT_HASH}\nBranch: ${GIT_BRANCH}\nTag: ${TAG_NAME}\nTime: ${TIME}\n\n"
TG_ICON="\xE2\x9C\x85 GitHub Actions"

View File

@ -56,7 +56,8 @@ jobs:
URL=https://github.com/${GITHUB_REPOSITORY}/releases/download/${TAG_NAME}/${GCC}.tgz
echo ${URL}
if ! wget --spider ${URL} 2> /dev/null; then
sed -i "s|EXTERNAL=y|EXTERNAL=n|g" ${CONFIG}
sed -i "/BR2_TOOLCHAIN_EXTERNAL.*/d" ${CONFIG}
echo BR2_PACKAGE_AWS_WEBRTC=y >> ${CONFIG}
make BOARD=${CONFIG} br-sdk
SDK=$(find output/images -name *_sdk-buildroot.tar.gz)
mv ${SDK} ${GCC}.tgz

View File

@ -26,6 +26,7 @@ help:
- make list - show available device configurations\n \
- make deps - install build dependencies\n \
- make clean - remove defconfig and target folder\n \
- make package - list available packages\n \
- make distclean - remove buildroot and output folder\n \
- make br-linux - build linux kernel only\n \
- make all - build the device firmware\n\n"
@ -50,6 +51,9 @@ prepare:
toolname:
@general/scripts/show_toolchains.sh $(CONFIG)
package:
@find general/package/* -maxdepth 0 -type d -printf "br-%f\n" | grep -v patch
clean:
@rm -rf $(TARGET)/images $(TARGET)/target

View File

@ -49,7 +49,6 @@ BR2_TARGET_GENERIC_HOSTNAME="openipc-hi3516cv500"
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL)/package/all-patches"
# OpenIPC packages
BR2_PACKAGE_AWS_WEBRTC=y
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL)/package/busybox/busybox.config"
BR2_PACKAGE_DROPBEAR_OPENIPC=y
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set

View File

@ -52,7 +52,6 @@ BR2_TARGET_GENERIC_HOSTNAME="openipc-hi3516ev200"
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL)/package/all-patches"
# OpenIPC packages
BR2_PACKAGE_AWS_WEBRTC=y
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL)/package/busybox/busybox.config"
BR2_PACKAGE_DROPBEAR_OPENIPC=y
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set

View File

@ -104,7 +104,7 @@ BR2_PACKAGE_WIREGUARD_LINUX_COMPAT=y
BR2_PACKAGE_WIREGUARD_TOOLS=y
# MQTT
BR2_PACKAGE_MOSQUITTO=y
# BR2_PACKAGE_MOSQUITTO is not set
# BR2_PACKAGE_MOSQUITTO_BROKER is not set
# FEATURES

View File

@ -106,7 +106,7 @@ BR2_PACKAGE_WIREGUARD_LINUX_COMPAT=y
BR2_PACKAGE_WIREGUARD_TOOLS=y
# MQTT
BR2_PACKAGE_MOSQUITTO=y
# BR2_PACKAGE_MOSQUITTO is not set
# BR2_PACKAGE_MOSQUITTO_BROKER is not set
# FEATURES

View File

@ -850,17 +850,17 @@ CONFIG_ATH9K_HTC=m
# CONFIG_LIBERTAS is not set
# CONFIG_P54_COMMON is not set
# CONFIG_RT2X00 is not set
CONFIG_RTLWIFI=m
CONFIG_RTLWIFI_DEBUG=y
CONFIG_RTL8192CU=m
CONFIG_RTL8192C_COMMON=m
# CONFIG_RTLWIFI is not set
# CONFIG_RTLWIFI_DEBUG is not set
# CONFIG_RTL8192CU is not set
# CONFIG_RTL8192C_COMMON is not set
# CONFIG_WL_TI is not set
# CONFIG_ZD1211RW is not set
# CONFIG_MWIFIEX is not set
# CONFIG_BCM43341 is not set
# CONFIG_BCMDHD_1_141_66 is not set
# CONFIG_BCMDHD_AP6181 is not set
CONFIG_MT7601_STA=y
# CONFIG_MT7601_STA is not set
#
# Enable WiMAX (Networking options) to see the WiMAX drivers

View File

@ -60,6 +60,7 @@ BR2_PACKAGE_DROPBEAR_OPENIPC=y
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
# BR2_PACKAGE_FDK_AAC_OPENIPC is not set
BR2_PACKAGE_UBOOT_TOOLS=y
BR2_PACKAGE_INGENIC_OPENSDK=y
BR2_PACKAGE_INGENIC_OSDRV_T20=y
BR2_PACKAGE_IPCTOOL=y
BR2_PACKAGE_JSON_C=y
@ -108,9 +109,10 @@ BR2_PACKAGE_WIREGUARD_TOOLS=y
# DEBUG
BR2_PACKAGE_INGENIC_PWM=y
# BR2_PACKAGE_LOGCAT_OPENIPC is not set
BR2_PACKAGE_LOGCAT_OPENIPC=y
# BR2_PACKAGE_HOST_GDB is not set
# BR2_PACKAGE_GDB is not set
BR2_PACKAGE_INGENIC_LIBIMP_CONTROL=y
# CCACHE
BR2_CCACHE=y

View File

@ -92,6 +92,7 @@ BR2_PACKAGE_VTUND_OPENIPC=y
BR2_PACKAGE_YAML_CLI=y
BR2_PACKAGE_QUIRC_OPENIPC=y
# BR2_PACKAGE_AUTONIGHT is not set
BR2_PACKAGE_INGENIC_LIBIMP_CONTROL=y
# WiFi
BR2_PACKAGE_WIRELESS_TOOLS=y
@ -109,7 +110,7 @@ BR2_PACKAGE_WIREGUARD_TOOLS=y
# DEBUG
BR2_PACKAGE_INGENIC_PWM=y
# BR2_PACKAGE_LOGCAT_OPENIPC is not set
BR2_PACKAGE_LOGCAT_OPENIPC=y
# BR2_PACKAGE_HOST_GDB is not set
# BR2_PACKAGE_GDB is not set

View File

@ -94,6 +94,7 @@ BR2_PACKAGE_VTUND_OPENIPC=y
BR2_PACKAGE_YAML_CLI=y
BR2_PACKAGE_QUIRC_OPENIPC=y
# BR2_PACKAGE_AUTONIGHT is not set
BR2_PACKAGE_INGENIC_LIBIMP_CONTROL=y
# WiFi
BR2_PACKAGE_WIRELESS_TOOLS=y

View File

@ -91,6 +91,7 @@ BR2_PACKAGE_VTUND_OPENIPC=y
BR2_PACKAGE_YAML_CLI=y
BR2_PACKAGE_QUIRC_OPENIPC=y
# BR2_PACKAGE_AUTONIGHT is not set
BR2_PACKAGE_INGENIC_LIBIMP_CONTROL=y
# WiFi
BR2_PACKAGE_WIRELESS_TOOLS=y
@ -108,7 +109,7 @@ BR2_PACKAGE_WIREGUARD_TOOLS=y
# DEBUG
BR2_PACKAGE_INGENIC_PWM=y
# BR2_PACKAGE_LOGCAT_OPENIPC is not set
BR2_PACKAGE_LOGCAT_OPENIPC=y
# BR2_PACKAGE_HOST_GDB is not set
# BR2_PACKAGE_GDB is not set

View File

@ -0,0 +1,133 @@
# Architecture
BR2_mipsel=y
BR2_mips_xburst=y
# BR2_MIPS_SOFT_FLOAT is not set
BR2_MIPS_FP32_MODE_32=y
# BR2_MIPS_FP32_MODE_XX is not set
BR2_MIPS_NAN_LEGACY=y
BR2_MIPS_OABI32=y
BR2_KERNEL_HEADERS_VERSION=y
BR2_DEFAULT_KERNEL_VERSION="3.10.14"
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_3_10=y
# Toolchain
BR2_PER_PACKAGE_DIRECTORIES=y
BR2_GCC_VERSION_12_X=y
# BR2_TOOLCHAIN_USES_UCLIBC is not set
# BR2_TOOLCHAIN_BUILDROOT_UCLIBC is not set
# BR2_TOOLCHAIN_BUILDROOT_LIBC="uclibc"
BR2_EXTRA_GCC_CONFIG_OPTIONS="--with-float=hard"
BR2_TOOLCHAIN_USES_MUSL=y
BR2_TOOLCHAIN_BUILDROOT_MUSL=y
BR2_TOOLCHAIN_BUILDROOT_LIBC="musl"
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_TARBALL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/openipc/linux/archive/$(OPENIPC_KERNEL).tar.gz"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(EXTERNAL_VENDOR)/board/t21/kernel/t21.generic.config"
BR2_LINUX_KERNEL_UIMAGE=y
BR2_LINUX_KERNEL_LZMA=y
# OpenIPC
BR2_OPENIPC_SOC_VENDOR="ingenic"
BR2_OPENIPC_SOC_MODEL="t21"
BR2_OPENIPC_SOC_FAMILY="t21"
BR2_OPENIPC_FLAVOR="ultimate"
BR2_OPENIPC_FLASH_SIZE="16"
# 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="$(BR2_EXTERNAL)/overlay"
BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL)/scripts/rootfs_script.sh"
# OpenIPC configuration
BR2_TOOLCHAIN_BUILDROOT_VENDOR="openipc"
BR2_TARGET_GENERIC_ISSUE="Welcome to OpenIPC"
BR2_TARGET_GENERIC_HOSTNAME="openipc-t21"
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL)/package/all-patches"
# OpenIPC packages
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL)/package/busybox/busybox.config"
BR2_PACKAGE_DROPBEAR_OPENIPC=y
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
# BR2_PACKAGE_FDK_AAC_OPENIPC is not set
BR2_PACKAGE_UBOOT_TOOLS=y
BR2_PACKAGE_INGENIC_OSDRV_T21=y
BR2_PACKAGE_IPCTOOL=y
BR2_PACKAGE_JSON_C=y
BR2_PACKAGE_JSONFILTER=y
BR2_PACKAGE_LAME_OPENIPC=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=y
BR2_PACKAGE_MAJESTIC=y
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=y
BR2_PACKAGE_OPUS_OPENIPC=y
BR2_PACKAGE_OPUS_OPENIPC_FIXED_POINT=y
# BR2_PACKAGE_SSHPASS is not set
BR2_PACKAGE_UACME_OPENIPC=y
BR2_PACKAGE_VTUND_OPENIPC=y
BR2_PACKAGE_YAML_CLI=y
BR2_PACKAGE_QUIRC_OPENIPC=y
# BR2_PACKAGE_AUTONIGHT is not set
BR2_PACKAGE_INGENIC_LIBIMP_CONTROL=y
# WiFi
BR2_PACKAGE_WIRELESS_TOOLS=y
BR2_PACKAGE_WPA_SUPPLICANT=y
BR2_PACKAGE_WPA_SUPPLICANT_CLI=y
BR2_PACKAGE_WPA_SUPPLICANT_NL80211=y
BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE=y
BR2_PACKAGE_LINUX_FIRMWARE_OPENIPC=y
BR2_PACKAGE_LINUX_FIRMWARE_OPENIPC_MEDIATEK_MT7601U=y
# BR2_PACKAGE_RTL8188EU is not set
BR2_PACKAGE_RTL8188FU_OPENIPC=y
# WIREGUARD
BR2_PACKAGE_WIREGUARD_LINUX_COMPAT=y
BR2_PACKAGE_WIREGUARD_TOOLS=y
# DEBUG
BR2_PACKAGE_INGENIC_PWM=y
BR2_PACKAGE_LOGCAT_OPENIPC=y
# BR2_PACKAGE_HOST_GDB is not set
# BR2_PACKAGE_GDB is not set
# CCACHE
BR2_CCACHE=y
BR2_CCACHE_DIR="$(HOME)/.ccache"
# Compression
BR2_PACKAGE_ZLIB=y
# External
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_MUSL=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="mipsel-openipc-linux-musl"
BR2_TOOLCHAIN_EXTERNAL_CXX=y
BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_10=y
BR2_TOOLCHAIN_EXTERNAL_URL="https://github.com/openipc/firmware/releases/download/$(OPENIPC_TOOLCHAIN).tgz"

View File

@ -91,6 +91,7 @@ BR2_PACKAGE_VTUND_OPENIPC=y
BR2_PACKAGE_YAML_CLI=y
BR2_PACKAGE_QUIRC_OPENIPC=y
# BR2_PACKAGE_AUTONIGHT is not set
BR2_PACKAGE_INGENIC_LIBIMP_CONTROL=y
# WiFi
BR2_PACKAGE_WIRELESS_TOOLS=y
@ -108,7 +109,7 @@ BR2_PACKAGE_WIREGUARD_TOOLS=y
# DEBUG
BR2_PACKAGE_INGENIC_PWM=y
# BR2_PACKAGE_LOGCAT_OPENIPC is not set
BR2_PACKAGE_LOGCAT_OPENIPC=y
# BR2_PACKAGE_HOST_GDB is not set
# BR2_PACKAGE_GDB is not set

View File

@ -100,13 +100,13 @@ BR2_PACKAGE_WIRELESS_TOOLS=y
# BR2_PACKAGE_WPA_SUPPLICANT_CLI is not set
# BR2_PACKAGE_WPA_SUPPLICANT_NL80211 is not set
# BR2_PACKAGE_WPA_SUPPLICANT_PASSPHRASE is not set
BR2_PACKAGE_LINUX_FIRMWARE_OPENIPC=y
# BR2_PACKAGE_LINUX_FIRMWARE_OPENIPC is not set
# BR2_PACKAGE_LINUX_FIRMWARE_OPENIPC_MEDIATEK_MT7601U is not set
# BR2_PACKAGE_RTL8188EU is not set
BR2_PACKAGE_RTL8812AU_OPENIPC=y
# WIREGUARD
BR2_PACKAGE_WIREGUARD_LINUX_COMPAT=y
BR2_PACKAGE_WIREGUARD_TOOLS=y
# BR2_PACKAGE_WIREGUARD_LINUX_COMPAT is not set
# BR2_PACKAGE_WIREGUARD_TOOLS is not set
# FPV
BR2_PACKAGE_DATALINK=y

View File

@ -109,11 +109,11 @@ BR2_PACKAGE_WIREGUARD_LINUX_COMPAT=y
BR2_PACKAGE_WIREGUARD_TOOLS=y
# EXPERIMENTAL
BR2_PACKAGE_ONVIF_SIMPLE_SERVER=y
# BR2_PACKAGE_ONVIF_SIMPLE_SERVER is not set
# DEBUG
BR2_PACKAGE_INGENIC_PWM=y
# BR2_PACKAGE_LOGCAT_OPENIPC is not set
BR2_PACKAGE_LOGCAT_OPENIPC=y
# BR2_PACKAGE_HOST_GDB is not set
# BR2_PACKAGE_GDB is not set

View File

@ -108,9 +108,6 @@ BR2_PACKAGE_ATBM60XX=y
BR2_PACKAGE_RTL8188FU_OPENIPC=y
# BR2_PACKAGE_RTL8188EU is not set
# Motors
BR2_PACKAGE_INGENIC_MOTORS_T31=y
# WIREGUARD
BR2_PACKAGE_WIREGUARD_LINUX_COMPAT=y
BR2_PACKAGE_WIREGUARD_TOOLS=y

View File

@ -92,6 +92,7 @@ BR2_PACKAGE_VTUND_OPENIPC=y
BR2_PACKAGE_YAML_CLI=y
BR2_PACKAGE_QUIRC_OPENIPC=y
# BR2_PACKAGE_AUTONIGHT is not set
BR2_PACKAGE_INGENIC_LIBIMP_CONTROL=y
# WiFi
BR2_PACKAGE_WIRELESS_TOOLS=y
@ -109,7 +110,7 @@ BR2_PACKAGE_WIREGUARD_TOOLS=y
# DEBUG
BR2_PACKAGE_INGENIC_PWM=y
# BR2_PACKAGE_LOGCAT_OPENIPC is not set
BR2_PACKAGE_LOGCAT_OPENIPC=y
# BR2_PACKAGE_HOST_GDB is not set
# BR2_PACKAGE_GDB is not set

View File

@ -93,6 +93,7 @@ BR2_PACKAGE_VTUND_OPENIPC=y
BR2_PACKAGE_YAML_CLI=y
BR2_PACKAGE_QUIRC_OPENIPC=y
# BR2_PACKAGE_AUTONIGHT is not set
BR2_PACKAGE_INGENIC_LIBIMP_CONTROL=y
# WiFi
BR2_PACKAGE_WIRELESS_TOOLS=y

View File

@ -0,0 +1,122 @@
# 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_12_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_TARBALL=y
BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="https://github.com/openipc/linux/archive/$(OPENIPC_KERNEL).tar.gz"
BR2_LINUX_KERNEL_USE_CUSTOM_CONFIG=y
BR2_LINUX_KERNEL_CUSTOM_CONFIG_FILE="$(EXTERNAL_VENDOR)/board/infinity6e/kernel/infinity6e-ssc012b.config"
BR2_LINUX_KERNEL_UIMAGE=y
BR2_LINUX_KERNEL_XZ=y
# OpenIPC
BR2_OPENIPC_SOC_VENDOR="sigmastar"
BR2_OPENIPC_SOC_MODEL="ssc30kq"
BR2_OPENIPC_SOC_FAMILY="infinity6e"
BR2_OPENIPC_FLAVOR="fpv"
BR2_OPENIPC_FLASH_SIZE="16"
# 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="$(BR2_EXTERNAL)/overlay"
BR2_ROOTFS_POST_BUILD_SCRIPT="$(BR2_EXTERNAL)/scripts/rootfs_script.sh"
# OpenIPC configuration
BR2_TOOLCHAIN_BUILDROOT_VENDOR="openipc"
BR2_TARGET_GENERIC_ISSUE="Welcome to OpenIPC"
BR2_TARGET_GENERIC_HOSTNAME="openipc-ssc30kq"
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL)/package/all-patches"
# OpenIPC packages
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL)/package/busybox/busybox.config"
BR2_PACKAGE_DROPBEAR_OPENIPC=y
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
# BR2_PACKAGE_FDK_AAC_OPENIPC is not set
BR2_PACKAGE_UBOOT_TOOLS=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=y
BR2_PACKAGE_MAJESTIC_FONTS=y
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_EXFAT_OPENIPC=y
BR2_PACKAGE_EXFATPROGS=y
# BR2_PACKAGE_SSHPASS is not set
# BR2_PACKAGE_UACME_OPENIPC is not set
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_RTL8812AU_OPENIPC=y
# FPV
BR2_PACKAGE_DATALINK=y
BR2_PACKAGE_WIFIBROADCAST=y
BR2_PACKAGE_MAVLINK_ROUTER=y
BR2_PACKAGE_MAVFWD=y
# Debug
# BR2_PACKAGE_HOST_GDB is not set
# BR2_PACKAGE_GDB is not set
# CCACHE
BR2_CCACHE=y
BR2_CCACHE_DIR="$(HOME)/.ccache"
# External
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="arm-openipc-linux-gnueabihf"
BR2_TOOLCHAIN_EXTERNAL_CXX=y
BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_9=y
# BR2_TOOLCHAIN_EXTERNAL_INET_RPC is not set
BR2_TOOLCHAIN_EXTERNAL_URL="https://github.com/openipc/firmware/releases/download/$(OPENIPC_TOOLCHAIN).tgz"

View File

@ -52,7 +52,6 @@ BR2_TARGET_GENERIC_HOSTNAME="openipc-ssc333"
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL)/package/all-patches"
# OpenIPC packages
BR2_PACKAGE_AWS_WEBRTC=y
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL)/package/busybox/busybox.config"
BR2_PACKAGE_DROPBEAR_OPENIPC=y
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set

View File

@ -52,7 +52,6 @@ BR2_TARGET_GENERIC_HOSTNAME="openipc-ssc333"
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL)/package/all-patches"
# OpenIPC packages
BR2_PACKAGE_AWS_WEBRTC=y
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL)/package/busybox/busybox.config"
BR2_PACKAGE_DROPBEAR_OPENIPC=y
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set

View File

@ -52,7 +52,6 @@ BR2_TARGET_GENERIC_HOSTNAME="openipc-ssc335"
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL)/package/all-patches"
# OpenIPC packages
BR2_PACKAGE_AWS_WEBRTC=y
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL)/package/busybox/busybox.config"
BR2_PACKAGE_DROPBEAR_OPENIPC=y
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set

View File

@ -49,7 +49,6 @@ BR2_TARGET_GENERIC_HOSTNAME="openipc-ssc338q"
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL)/package/all-patches"
# OpenIPC packages
BR2_PACKAGE_AWS_WEBRTC=y
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL)/package/busybox/busybox.config"
BR2_PACKAGE_DROPBEAR_OPENIPC=y
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set

View File

@ -49,7 +49,6 @@ BR2_TARGET_GENERIC_HOSTNAME="openipc-ssc377"
BR2_GLOBAL_PATCH_DIR="$(BR2_EXTERNAL)/package/all-patches"
# OpenIPC packages
BR2_PACKAGE_AWS_WEBRTC=y
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL)/package/busybox/busybox.config"
BR2_PACKAGE_DROPBEAR_OPENIPC=y
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set

View File

@ -212,14 +212,15 @@ copy_function() {
uni_build() {
[ -z "$BOARD" ] && BOARD=$FUNCNAME
SOC=$(echo $BOARD | cut -d '_' -f 1)
SOC=$(echo $BOARD | cut -sd '_' -f 1)
FLAVOR=$(echo $BOARD | cut -sd '_' -f 2)
set -e
if [ "$(echo $BOARD | cut -sd '_' -f 2)" == "" ]; then
BOARD="${BOARD}_lite"
if [ "${FLAVOR}" == "" ]; then
BOARD="${SOC}_lite"
fi
if [ "$BOARD" == "hi3518ev200_lite" ]; then
if [ "${SOC}_${FLAVOR}" == "hi3518ev200_lite" ]; then
NEED_AUTOUP=1
fi

View File

@ -6,23 +6,30 @@ set_wireless() {
path=/etc/wireless
if $path/usb "$dev" || $path/modem "$dev" || $path/sdio "$dev"; then
[ -n "$mac" ] && ip link set dev wlan0 address "$mac"
ifup wlan0 && file="-i /etc/wireless/interfaces/eth0"
ifup wlan0
ifconfig eth0 192.168.192.10
fi
}
case "$1" in
start)
echo "Starting network..."
ifup -a
[ -n "$dev" ] && set_wireless
ifup eth0 $file
ifup lo
if [ -n "$dev" ]; then
set_wireless
else
ifup eth0
fi
;;
stop)
echo "Stopping network..."
ifdown -a
[ -n "$dev" ] && ifdown wlan0
ifdown eth0
ifdown lo
if [ -n "$dev" ]; then
ifdown wlan0
else
ifdown eth0
fi
;;
restart|reload)

View File

@ -0,0 +1,55 @@
#!/bin/sh
DAEMON="watchdog"
WATCHDOG_ENABLED=false
WATCHDOG_TIMEOUT=60
SUPPORTED_VENDORS="ingenic"
WATCHDOG_ARGS="-T $WATCHDOG_TIMEOUT /dev/watchdog"
WATCHDOG_VENDOR=$(ipcinfo -v)
vendor_supported() {
for vendor in $SUPPORTED_VENDORS; do
[ "$WATCHDOG_VENDOR" = "$vendor" ] && return 0
done
return 1
}
start()
{
if vendor_supported && [ "$(cli -g .watchdog.enabled)" = "false" ] && [ "$WATCHDOG_ENABLED" = "true" ]; then
printf "Starting ${DAEMON}: "
start-stop-daemon -S -q -x "/sbin/${DAEMON}" -- ${WATCHDOG_ARGS}
[ $? = 0 ] && echo "OK" || echo "FAIL"
else
echo "Watchdog: System watchdog disabled, unsupported vendor or Majestic Watchdog enabled"
exit 0
fi
}
stop()
{
printf "Stopping ${DAEMON}: "
if start-stop-daemon -K -q -s KILL -n "${DAEMON}"; then
echo "OK"
else
echo "FAIL"
fi
}
case "$1" in
start|stop)
"$1"
;;
restart|reload)
stop
start
;;
*)
echo "Usage: $0 {start|stop|restart|reload}" >&2
exit 1
;;
esac

View File

@ -1,4 +1,3 @@
auto lo
iface lo inet loopback
source-dir /etc/network/interfaces.d

View File

@ -1,2 +1 @@
#auto usb0
iface usb0 inet dhcp

View File

@ -1,4 +0,0 @@
iface eth0 inet static
address 192.168.2.10
netmask 255.255.255.0
hwaddress ether $(fw_printenv -n ethaddr || echo 00:00:23:34:45:66)

View File

@ -1,10 +1,7 @@
#!/bin/sh
set_gpio() {
test -e /sys/class/gpio/gpio$1 && echo $1 > /sys/class/gpio/unexport
echo $1 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio$1/direction
echo $2 > /sys/class/gpio/gpio$1/value
[ "$2" -eq 1 ] && gpio set $1 || gpio clear $1
sleep 1
}

View File

@ -1,57 +1,75 @@
#!/bin/sh
set_gpio() {
test -e /sys/class/gpio/gpio$1 && echo $1 > /sys/class/gpio/unexport
echo $1 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio$1/direction
echo $2 > /sys/class/gpio/gpio$1/value
[ "$2" -eq 1 ] && gpio set $1 || gpio clear $1
sleep 1
}
set_mmc() {
mmc=/sys/devices/platform/jzmmc_v1.2.$1/present
if [ "$(cat $mmc)" = "N" ]; then
echo "INSERT" > $mmc
fi
[ "$(cat $mmc)" = "N" ] && echo "INSERT" > $mmc
}
# RTL8189FS Generic
if [ "$1" = "rtl8189fs-generic" ]; then
set_mmc 1
modprobe 8189fs
exit 0
fi
# ATBM603x Generic
# Generic ATBM603X
if [ "$1" = "atbm603x-generic" ]; then
set_mmc 1
cp /usr/share/atbm60xx_conf/atbm_txpwer_dcxo_cfg.txt /tmp
cp /usr/share/atbm60xx_conf/set_rate_power.txt /tmp
modprobe atbm603x_wifi_sdio
exit 0
fi
# T31 Wyze V3 / AtomCam 2 ATBM603x
if [ "$1" = "atbm603x-t31-wyze-v3" ]; then
set_gpio 57 0;set_gpio 57 1
set_mmc 1
cp /usr/share/atbm60xx_conf/atbm_txpwer_dcxo_cfg.txt /tmp
cp /usr/share/atbm60xx_conf/set_rate_power.txt /tmp
modprobe atbm603x_wifi_sdio atbm_printk_mask=0
cp -f /usr/share/atbm60xx_conf/atbm_txpwer_dcxo_cfg.txt /tmp
cp -f /usr/share/atbm60xx_conf/set_rate_power.txt /tmp
modprobe atbm603x_wifi_sdio
exit 0
fi
# T31 Wyze PanV2 ATBM603x
# Generic RTL8189FS
if [ "$1" = "rtl8189fs-generic" ]; then
set_mmc 1
modprobe 8189fs
exit 0
fi
# T20 Wyze PanV1
if [ "$1" = "rtl8189es-t20-wyze-pan-v1" ]; then
set_mmc 1
modprobe 8189es rtw_power_mgnt=0 rtw_enusbss=0
exit 0
fi
# T20 Wyze V2
if [ "$1" = "rtl8189ftv-t20-wyze-v2" ]; then
set_mmc 1
modprobe 8189fs rtw_power_mgnt=0 rtw_enusbss=0
exit 0
fi
# T31 Wyze DB3
if [ "$1" = "rtl8189ftv-t31-wyze-db3" ]; then
set_mmc 1
modprobe 8189fs rtw_power_mgnt=0 rtw_enusbss=0
exit 0
fi
# T31 Wyze PanV2
if [ "$1" = "atbm603x-t31-wyze-pan-v2" ]; then
set_gpio 58 0;set_gpio 58 1
set_gpio 58 0
set_gpio 58 1
set_mmc 1
cp /usr/share/atbm60xx_conf/atbm_txpwer_dcxo_cfg.txt /tmp
cp /usr/share/atbm60xx_conf/set_rate_power.txt /tmp
cp -f /usr/share/atbm60xx_conf/atbm_txpwer_dcxo_cfg.txt /tmp
cp -f /usr/share/atbm60xx_conf/set_rate_power.txt /tmp
modprobe atbm603x_wifi_sdio atbm_printk_mask=0
exit 0
fi
# T31 Wyze V3 RTL8189FTV
# T31 Wyze V3 / AtomCam 2
if [ "$1" = "atbm603x-t31-wyze-v3" ]; then
set_gpio 57 0
set_gpio 57 1
set_mmc 1
cp -f /usr/share/atbm60xx_conf/atbm_txpwer_dcxo_cfg.txt /tmp
cp -f /usr/share/atbm60xx_conf/set_rate_power.txt /tmp
modprobe atbm603x_wifi_sdio atbm_printk_mask=0
exit 0
fi
# T31 Wyze V3
if [ "$1" = "rtl8189ftv-t31-wyze-v3" ]; then
set_gpio 57 1
set_mmc 1
@ -59,25 +77,4 @@ if [ "$1" = "rtl8189ftv-t31-wyze-v3" ]; then
exit 0
fi
# T31 Wyze DB3 RTL8189FTV
if [ "$1" = "rtl8189ftv-t31-wyze-db3" ]; then
set_mmc 1
modprobe 8189fs rtw_power_mgnt=0 rtw_enusbss=0
exit 0
fi
# T20 Wyze V2 RTL8189FTV
if [ "$1" = "rtl8189ftv-t20-wyze-v2" ]; then
set_mmc 1
modprobe 8189fs rtw_power_mgnt=0 rtw_enusbss=0
exit 0
fi
# T20 Wyze PanV1 RTL8189ES
if [ "$1" = "rtl8189es-t20-wyze-pan-v1" ]; then
set_mmc 1
modprobe 8189es rtw_power_mgnt=0 rtw_enusbss=0
exit 0
fi
exit 1

View File

@ -1,32 +1,29 @@
#!/bin/sh
set_gpio() {
test -e /sys/class/gpio/gpio$1 && echo $1 > /sys/class/gpio/unexport
echo $1 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio$1/direction
echo $2 > /sys/class/gpio/gpio$1/value
[ "$2" -eq 1 ] && gpio set $1 || gpio clear $1
sleep 1
}
# MT7601U Generic
# Generic MT7601U
if [ "$1" = "mt7601u-generic" ]; then
modprobe mt7601u
exit 0
fi
# RTL8188FU Generic
if [ "$1" = "rtl8188fu-generic" ]; then
modprobe 8188fu
exit 0
fi
# RTL8188EU Generic
# Generic RTL8188EU
if [ "$1" = "rtl8188eu-generic" ]; then
modprobe 8188eu
exit 0
fi
# RTL8733BU Generic
# Generic RTL8188FU
if [ "$1" = "rtl8188fu-generic" ]; then
modprobe 8188fu
exit 0
fi
# Generic RTL8733BU
if [ "$1" = "rtl8733bu-generic" ]; then
modprobe 8733bu
exit 0
@ -81,7 +78,7 @@ if [ "$1" = "rtl8188fu-hi3518ev200-lifesmart" ]; then
exit 0
fi
# HI3518EV200 Rostelecom QVC-IPC-136W
# HI3518EV200 Qtech QVC-IPC-136W
if [ "$1" = "rtl8188eu-hi3518ev200-qvc-ipc-136w" ]; then
set_gpio 7 1
modprobe 8188eu
@ -103,6 +100,13 @@ if [ "$1" = "rtl8188fu-ssc325de-imou-c22ep-s2" ]; then
exit 0
fi
# SSC3333 Meari Speed 6S
if [ "$1" = "rtl8188fu-ssc333-meari-speed-6s" ]; then
set_gpio 14 1
modprobe 8188fu
exit 0
fi
# SSC333 Tapo C110
if [ "$1" = "ssw101b-ssc333-tapo-c110" ]; then
set_gpio 16 1
@ -110,6 +114,19 @@ if [ "$1" = "ssw101b-ssc333-tapo-c110" ]; then
exit 0
fi
# SSC335DE Uniview C1L-2WN-G
if [ "$1" = "rtl8188fu-ssc335de-uniview-c1l-2wn-g" ]; then
set_gpio 1 0
modprobe 8188fu
exit 0
fi
# SSC337DE BroadbandService
if [ "$1" = "aic8800-ssc337de-broadband" ]; then
modprobe aic8800_fdrv
exit 0
fi
# SSC337DE BroadbandService
if [ "$1" = "rtl8188fu-ssc337de-broadband" ]; then
set_gpio 2 0
@ -124,12 +141,6 @@ if [ "$1" = "rtl8188fu-ssc337de-foscam" ]; then
exit 0
fi
# SSC337DE BroadbandService
if [ "$1" = "aic8800-ssc337de-broadband" ]; then
modprobe aic8800_fdrv
exit 0
fi
# T10 NVT
if [ "$1" = "mt7601sta-t10-nvt" ]; then
modprobe cfg80211
@ -151,6 +162,13 @@ if [ "$1" = "rtl8188fu-t21-smartwares" ]; then
exit 0
fi
# T31 Aoni EP01J05
if [ "$1" = "rtl8188fu-t31-aoni-ep01j05" ]; then
set_gpio 43 1
modprobe 8188fu
exit 0
fi
# T31 CamHi
if [ "$1" = "mt7601u-t31-camhi" ]; then
set_gpio 61 0

View File

@ -21,9 +21,15 @@ case "${CMD}" in
ipctool)
IPCTOOL=/tmp/ipctool
if [ ! -x $IPCTOOL ]; then
curl -s -L -o $IPCTOOL https://github.com/OpenIPC/ipctool/releases/download/latest/ipctool$ARC
chmod +x $IPCTOOL
echo "The ipctool installed as remote GitHub plugin"
curl -s -L -f -o $IPCTOOL https://github.com/OpenIPC/ipctool/releases/download/latest/ipctool$ARC
response=$?
if [[ "$response" -ne 0 ]]; then
echo "Unable to download ipctool. cUrl error code is $response."
exit $response
else
chmod +x $IPCTOOL
echo "The ipctool installed as remote GitHub plugin"
fi
fi
$IPCTOOL $@
;;

View File

@ -3,7 +3,7 @@
# Set Reset switch GPIO
GPIO=
[ -z $GPIO ] && echo "GPIO not set. Exiting" && echo "[resetd] GPIO undefined in /usr/sbin/resetd" > /dev/kmsg && exit
[ -z $GPIO ] && echo "GPIO pin for resetd is not set" && echo "[resetd] GPIO undefined in /usr/sbin/resetd" > /dev/kmsg && exit
# Counter for button press until reset
count=0

View File

@ -1,14 +1,12 @@
#!/bin/sh
#
# OpenIPC.org | v.20231202
# OpenIPC.org | v.20231228
#
scr_version=1.0.23
scr_version=1.0.27
args=" $@"
set -e
LOCK_FILE=/tmp/sysupgrade.lock
IPCINFO=/tmp/ipcinfo
@ -100,15 +98,21 @@ download_firmware() {
}
free_resources() {
# echo_c 37 "\nStop services, unload modules"
# killall majestic crond klogd ntpd rngd syslogd >/dev/null 2>&1 || true
# "load_$vendor" -r >/dev/null 2>&1 || true
#
echo_c 37 "\nStop services, sync files, free up memory"
for proc in majestic crond klogd ntpd rngd syslogd; do
echo -n "Killing majestic ... "
time=$(grep TIME_STAMP /etc/os-release | cut -d= -f2)
if [ "$time" -gt "1702544400" ]; then
killall -q -SIGUSR2 majestic
else
killall -q majestic
fi
echo "OK"
for proc in crond klogd ntpd rngd syslogd; do
echo -n "Killing $proc "
while [ -n "$(pidof $proc)" ]; do
killall $proc >/dev/null 2>&1 || true
killall -q $proc
sleep 0.1
echo -n "."
done

View File

@ -37,7 +37,6 @@ source "$BR2_EXTERNAL_GENERAL_PATH/package/hisilicon-osdrv-serdes/Config.in"
source "$BR2_EXTERNAL_GENERAL_PATH/package/hisilicon-osdrv1-sources/Config.in"
source "$BR2_EXTERNAL_GENERAL_PATH/package/i2c-telemetry/Config.in"
source "$BR2_EXTERNAL_GENERAL_PATH/package/ingenic-libimp-control/Config.in"
source "$BR2_EXTERNAL_GENERAL_PATH/package/ingenic-motors-t31/Config.in"
source "$BR2_EXTERNAL_GENERAL_PATH/package/ingenic-opensdk/Config.in"
source "$BR2_EXTERNAL_GENERAL_PATH/package/ingenic-osdrv-t20/Config.in"
source "$BR2_EXTERNAL_GENERAL_PATH/package/ingenic-osdrv-t21/Config.in"
@ -110,3 +109,4 @@ source "$BR2_EXTERNAL_GENERAL_PATH/package/xiongmai-osdrv-xm530/Config.in"
source "$BR2_EXTERNAL_GENERAL_PATH/package/xmdp/Config.in"
source "$BR2_EXTERNAL_GENERAL_PATH/package/yaml-cli/Config.in"
source "$BR2_EXTERNAL_GENERAL_PATH/package/zerotier-one/Config.in"
source "$BR2_EXTERNAL_GENERAL_PATH/package/go2rtc/Config.in"

View File

@ -4,14 +4,9 @@
#
################################################################################
ifeq ($(LOCAL_DOWNLOAD),y)
AWS_PRODUCER_SITE_METHOD = git
AWS_PRODUCER_SITE = https://github.com/awslabs/amazon-kinesis-video-streams-producer-c
AWS_PRODUCER_VERSION = $(shell git ls-remote $(AWS_PRODUCER_SITE) HEAD | head -1 | cut -f1)
else
AWS_PRODUCER_SITE = https://github.com/awslabs/amazon-kinesis-video-streams-producer-c/archive
AWS_PRODUCER_SOURCE = master.tar.gz
endif
AWS_PRODUCER_INSTALL_STAGING = YES
AWS_PRODUCER_LICENSE = Apache-2.0

View File

@ -4,14 +4,9 @@
#
################################################################################
ifeq ($(LOCAL_DOWNLOAD),y)
AWS_WEBRTC_SITE_METHOD = git
AWS_WEBRTC_SITE = https://github.com/OpenIPC/webrtc-c
AWS_WEBRTC_VERSION = $(shell git ls-remote $(AWS_WEBRTC_SITE) develop | head -1 | cut -f1)
else
AWS_WEBRTC_SITE = https://github.com/OpenIPC/webrtc-c/archive
AWS_WEBRTC_SOURCE = develop.tar.gz
endif
AWS_WEBRTC_INSTALL_STAGING = YES
AWS_WEBRTC_LICENSE = Apache-2.0

View File

@ -74,11 +74,11 @@ majestic_generic() {
}
majestic_sigmastar() {
cli -s .isp.exposure 10
cli -s .isp.aGain 8
cli -s .isp.dGain 8
cli -s .isp.exposure 20
cli -s .isp.aGain 40
cli -s .isp.sensorConfig /etc/sensors/imx415_fpv.bin
cli -s .video0.size 1920x1080
cli -s .video0.fps 90
cli -s .video0.fps 60
cli -s .video0.rcMode cbr
cli -s .jpeg.enabled false
}

View File

@ -0,0 +1,7 @@
config BR2_PACKAGE_GO2RTC
bool "go2rtc streamer"
default n
help
Ultimate camera streaming application with support RTSP, WebRTC, HomeKit, FFmpeg, RTMP, etc.
Note: Binary will be UPX Compressed, binary size ~3.4mb
https://github.com/AlexxIT/go2rtc

View File

@ -0,0 +1,20 @@
log:
level: info # default level
api: trace
exec: debug
ngrok: info
rtsp: warn
streams: error
webrtc: fatal
rtsp:
listen: ":8553"
webrtc:
candidates:
- stun:8555
streams:
openipc_jpeg: http://username:password@127.0.0.1/image.jpg
openipc_rtsp-1: rtsp://username:password@127.0.0.1/stream=0
openipc_rtsp-2: rtsp://username:password@127.0.0.1/stream=1

View File

@ -0,0 +1,43 @@
################################################################################
#
# go2rtc
#
################################################################################
GO2RTC_VERSION = master
GO2RTC_SITE = $(call github,AlexxIT,go2rtc,$(GO2RTC_VERSION))
GO2RTC_LICENSE = MIT
GO2RTC_LICENSE_FILES = LICENSE
GO2RTC_INSTALL_TARGET = YES
GO2RTC_DEPENDENCIES = host-go host-upx
GO2RTC_GO_LDFLAGS = -s -w
define GO2RTC_BUILD_CMDS
GOARCH=$$( \
case $(BR2_ARCH) in \
x86) echo 386 ;; \
x86_64) echo amd64 ;; \
arm) echo arm ;; \
aarch64) echo arm64 ;; \
mips) echo mips ;; \
mipsel) echo mipsle ;; \
*) echo "Unsupported architecture: $(BR2_ARCH)" && exit 1 ;; \
esac \
); \
echo "Building for GOARCH: $$GOARCH"; \
(cd $(@D); \
CGO_ENABLED=0 \
GOOS=linux \
GOARCH=$$GOARCH \
go build -ldflags "$(GO2RTC_GO_LDFLAGS)")
endef
define GO2RTC_INSTALL_TARGET_CMDS
$(INSTALL) -D -m 0755 $(@D)/go2rtc $(TARGET_DIR)/usr/bin/go2rtc
upx --best --lzma $(TARGET_DIR)/usr/bin/go2rtc
$(INSTALL) -m 644 -t $(TARGET_DIR)/etc/ $(GO2RTC_PKGDIR)/files/go2rtc.yaml
endef
$(eval $(golang-package))

View File

@ -0,0 +1,78 @@
[sensor]
Sensor_type=stSnsSc223aObj
Mode=WDR_MODE_NONE
DllFile=libsns_sc223a_4l.so
[mode]
input_mode=INPUT_MODE_MIPI
raw_bitness=10
[mipi]
lane_id = 0|1|-1|-1|-1|-1|-1|-1| ;lane_id: -1 - disable
[isp_image]
Isp_FrameRate=25
Isp_Bayer=BAYER_BGGR
[vi_dev]
Input_mod=VI_MODE_MIPI
Work_mod =0 ;VI_WORK_MODE_1Multiplex = 0
;VI_WORK_MODE_2Multiplex,
;VI_WORK_MODE_4Multiplex
Combine_mode =0 ;Y/C composite or separation mode
;VI_COMBINE_COMPOSITE = 0 /*Composite mode */
;VI_COMBINE_SEPARATE, /*Separate mode */
Comp_mode =0 ;Component mode (single-component or dual-component)
;VI_COMP_MODE_SINGLE = 0, /*single component mode */
;VI_COMP_MODE_DOUBLE = 1, /*double component mode */
Clock_edge =1 ;Clock edge mode (sampling on the rising or falling edge)
;VI_CLK_EDGE_SINGLE_UP=0, /*rising edge */
;VI_CLK_EDGE_SINGLE_DOWN, /*falling edge */
Mask_num =2 ;Component mask
Mask_0 =0xFFF00000
Mask_1 =0x0
Scan_mode = 1;VI_SCAN_INTERLACED = 0
;VI_SCAN_PROGRESSIVE,
Data_seq =2 ;data sequence (ONLY for YUV format)
;----2th component U/V sequence in bt1120
; VI_INPUT_DATA_VUVU = 0,
; VI_INPUT_DATA_UVUV,
;----input sequence for yuv
; VI_INPUT_DATA_UYVY = 0,
; VI_INPUT_DATA_VYUY,
; VI_INPUT_DATA_YUYV,
; VI_INPUT_DATA_YVYU
Vsync =1 ; vertical synchronization signal
;VI_VSYNC_FIELD = 0,
;VI_VSYNC_PULSE,
VsyncNeg=1 ;Polarity of the vertical synchronization signal
;VI_VSYNC_NEG_HIGH = 0,
;VI_VSYNC_NEG_LOW /*if VIU_VSYNC_E
Hsync =0 ;Attribute of the horizontal synchronization signal
;VI_HSYNC_VALID_SINGNAL = 0,
;VI_HSYNC_PULSE,
HsyncNeg =0 ;Polarity of the horizontal synchronization signal
;VI_HSYNC_NEG_HIGH = 0,
;VI_HSYNC_NEG_LOW
VsyncValid =1 ;Attribute of the valid vertical synchronization signal
;VI_VSYNC_NORM_PULSE = 0,
;VI_VSYNC_VALID_SINGAL,
VsyncValidNeg =0;Polarity of the valid vertical synchronization signal
;VI_VSYNC_VALID_NEG_HIGH = 0,
;VI_VSYNC_VALID_NEG_LOW
Timingblank_HsyncHfb =0 ;Horizontal front blanking width
Timingblank_HsyncAct =1920 ;Horizontal effetive width
Timingblank_HsyncHbb =0 ;Horizontal back blanking width
Timingblank_VsyncVfb =0 ;Vertical front blanking height
Timingblank_VsyncVact =1080 ;Vertical effetive width
Timingblank_VsyncVbb=0 ;Vertical back blanking height
Timingblank_VsyncVbfb =0 ;Even-field vertical front blanking height(interlace, invalid progressive)
Timingblank_VsyncVbact=0 ;Even-field vertical effetive width(interlace, invalid progressive)
Timingblank_VsyncVbbb =0 ;Even-field vertical back blanking height(interlace, invalid progressive)
InputDataType=1 ;VI_DATA_TYPE_YUV = 0,VI_DATA_TYPE_RGB = 1,
DataRev =FALSE ;Data reverse. FALSE = 0; TRUE = 1
DevRect_x=200
DevRect_y=20
DevRect_w=1920
DevRect_h=1080

View File

@ -107,6 +107,7 @@ define GOKE_OSDRV_GK7205V200_INSTALL_TARGET_CMDS
## $(INSTALL) -m 644 -t $(TARGET_DIR)/usr/lib/sensors $(GOKE_OSDRV_GK7205V200_PKGDIR)/files/sensor/libsns_sc2235.so
$(INSTALL) -m 644 -t $(TARGET_DIR)/usr/lib/sensors $(GOKE_OSDRV_GK7205V200_PKGDIR)/files/sensor/libsns_sc2239.so
$(INSTALL) -m 644 -t $(TARGET_DIR)/usr/lib/sensors $(GOKE_OSDRV_GK7205V200_PKGDIR)/files/sensor/libsns_sc223a.so
$(INSTALL) -m 644 -t $(TARGET_DIR)/usr/lib/sensors $(GOKE_OSDRV_GK7205V200_PKGDIR)/files/sensor/libsns_sc223a_4l.so
$(INSTALL) -m 644 -t $(TARGET_DIR)/usr/lib/sensors $(GOKE_OSDRV_GK7205V200_PKGDIR)/files/sensor/libsns_sc2335.so
$(INSTALL) -m 644 -t $(TARGET_DIR)/usr/lib/sensors $(GOKE_OSDRV_GK7205V200_PKGDIR)/files/sensor/libsns_sc3235.so
$(INSTALL) -m 644 -t $(TARGET_DIR)/usr/lib/sensors $(GOKE_OSDRV_GK7205V200_PKGDIR)/files/sensor/libsns_sc3335.so

View File

@ -103,7 +103,7 @@ insert_sns() {
devmem 0x2003002c 32 0xc4001 # Sensor unreset, clk 24MHz, VI 99MHz
;;
ar0130 | gc1034 | jxf22 | sc1135 | sc1145 | sc2035 | sc2135)
ar0130 | ar0237 | gc1034 | jxf22 | sc1135 | sc1145 | sc2035 | sc2135)
devmem 0x200f0040 32 0x2 # I2C0_SCL
devmem 0x200f0044 32 0x2 # I2C0_SDA

View File

@ -0,0 +1,119 @@
[sensor]
Sensor_type = ar0237 ;sensor name
Mode = 0 ;WDR_MODE_NONE = 0
;WDR_MODE_BUILT_IN = 1
;WDR_MODE_2To1_LINE = 2
;WDR_MODE_2To1_FRAME = 3
;WDR_MODE_2To1_FRAME_FULL_RATE = 4 ...etc
DllFile = /usr/lib/sensors/libsns_ar0237.so ;sensor lib path
[mode]
input_mode = 4 ;INPUT_MODE_MIPI = 0
;INPUT_MODE_SUBLVDS = 1
;INPUT_MODE_LVDS = 2 ...etc
dev_attr = 2 ;mipi_dev_attr_t = 0
;lvds_dev_attr_t = 1
;NULL = 2
[isp_image]
Isp_x = 0
Isp_y = 0
Isp_W = 1920
Isp_H = 1080
Isp_FrameRate = 30
Isp_Bayer = 1 ;BAYER_RGGB= 0, BAYER_GRBG= 1, BAYER_GBRG= 2, BAYER_BGGR= 3
[vi_dev]
Input_mod = 2 ;VI_MODE_BT656 = 0, /* ITU-R BT.656 YUV4:2:2 */
;VI_MODE_BT601, /* ITU-R BT.601 YUV4:2:2 */
;VI_MODE_DIGITAL_CAMERA, /* digital camera mode */
;VI_MODE_BT1120_STANDARD, /* BT.1120 progressive mode */
;VI_MODE_BT1120_INTERLEAVED, /* BT.1120 interstage mode */
;VI_MODE_MIPI, /* MIPI mode*/
;VI_MODE_LVDS,
;VI_MODE_HISPI
Work_mod = 0 ;VI_WORK_MODE_1Multiplex = 0
;VI_WORK_MODE_2Multiplex,
;VI_WORK_MODE_4Multiplex
Combine_mode = 0 ;Y/C composite or separation mode
;VI_COMBINE_COMPOSITE = 0 /*Composite mode */
;VI_COMBINE_SEPARATE, /*Separate mode */
Comp_mode = 0 ;Component mode (single-component or dual-component)
;VI_COMP_MODE_SINGLE = 0, /*single component mode */
;VI_COMP_MODE_DOUBLE = 1, /*double component mode */
Clock_edge = 1 ;Clock edge mode (sampling on the rising or falling edge)
;VI_CLK_EDGE_SINGLE_UP= 0, /*rising edge */
;VI_CLK_EDGE_SINGLE_DOWN, /*falling edge */
Mask_num = 2 ;Component mask
Mask_0 = 0xFFF0000 ;ComMsk0
Mask_1 = 0x0 ;ComMsk1
Scan_mode = 1 ;VI_SCAN_INTERLACED = 0
;VI_SCAN_PROGRESSIVE,
Data_seq = 2 ;data sequence (ONLY for YUV format)
;----2th component U/V sequence in bt1120
; VI_INPUT_DATA_VUVU = 0,
; VI_INPUT_DATA_UVUV,
;----input sequence for yuv
; VI_INPUT_DATA_UYVY = 0,
; VI_INPUT_DATA_VYUY,
; VI_INPUT_DATA_YUYV,
; VI_INPUT_DATA_YVYU
Vsync = 1 ;vertical synchronization signal
;VI_VSYNC_FIELD = 0,
;VI_VSYNC_PULSE,
VsyncNeg = 0 ;Polarity of the vertical synchronization signal
;VI_VSYNC_NEG_HIGH = 0,
;VI_VSYNC_NEG_LOW /*if VIU_VSYNC_E
Hsync = 0 ;Attribute of the horizontal synchronization signal
;VI_HSYNC_VALID_SINGNAL = 0,
;VI_HSYNC_PULSE,
HsyncNeg = 0 ;Polarity of the horizontal synchronization signal
;VI_HSYNC_NEG_HIGH = 0,
;VI_HSYNC_NEG_LOW
VsyncValid = 1 ;Attribute of the valid vertical synchronization signal
;VI_VSYNC_NORM_PULSE = 0,
;VI_VSYNC_VALID_SINGAL,
VsyncValidNeg = 0 ;Polarity of the valid vertical synchronization signal
;VI_VSYNC_VALID_NEG_HIGH = 0,
;VI_VSYNC_VALID_NEG_LOW
Timingblank_HsyncHfb = 0 ;Horizontal front blanking width
Timingblank_HsyncAct = 1920 ;Horizontal effetive width
Timingblank_HsyncHbb = 0 ;Horizontal back blanking width
Timingblank_VsyncVfb = 0 ;Vertical front blanking height
Timingblank_VsyncVact = 1080 ;Vertical effetive width
Timingblank_VsyncVbb = 0 ;Vertical back blanking height
Timingblank_VsyncVbfb = 0 ;Even-field vertical front blanking height(interlace, invalid progressive)
Timingblank_VsyncVbact = 0 ;Even-field vertical effetive width(interlace, invalid progressive)
Timingblank_VsyncVbbb = 0 ;Even-field vertical back blanking height(interlace, invalid progressive)
;----- only for bt656 ----------
FixCode = 0 ;BT656_FIXCODE_1 = 0,
;BT656_FIXCODE_0
FieldPolar = 0 ;BT656_FIELD_POLAR_STD = 0
;BT656_FIELD_POLAR_NSTD
DataPath = 1 ;ISP enable or bypass
;VI_PATH_BYPASS = 0,/* ISP bypass */
;VI_PATH_ISP = 1,/* ISP enable */
;VI_PATH_RAW = 2,/* Capture raw data, for debug */
InputDataType = 1 ;VI_DATA_TYPE_YUV = 0,VI_DATA_TYPE_RGB = 1,
DataRev = FALSE ;Data reverse. FALSE = 0; TRUE = 1
DevRect_x = 0
DevRect_y = 0
DevRect_w = 1920
DevRect_h = 1080
[vi_chn]
CapRect_X = 0
CapRect_Y = 0
CapRect_Width = 1920
CapRect_Height = 1080
DestSize_Width = 1920
DestSize_Height = 1080
CapSel = 2 ;Frame/field select. ONLY used in interlaced mode
;VI_CAPSEL_TOP = 0, /* top field */
;VI_CAPSEL_BOTTOM, /* bottom field */
;VI_CAPSEL_BOTH, /* top and bottom field */
PixFormat = 23 ;PIXEL_FORMAT_YUV_SEMIPLANAR_422 = 22
;PIXEL_FORMAT_YUV_SEMIPLANAR_420 = 23 ...etc
CompressMode = 0 ;COMPRESS_MODE_NONE = 0

View File

@ -67,6 +67,7 @@ define HISILICON_OSDRV_HI3516CV200_INSTALL_TARGET_CMDS
# $(INSTALL) -m 644 -t $(TARGET_DIR)/usr/lib/sensors $(HISILICON_OSDRV_HI3516CV200_PKGDIR)/files/sensor/libsns_9m034.so
$(INSTALL) -m 644 -t $(TARGET_DIR)/usr/lib/sensors $(HISILICON_OSDRV_HI3516CV200_PKGDIR)/files/sensor/libsns_ar0130.so
# $(INSTALL) -m 644 -t $(TARGET_DIR)/usr/lib/sensors $(HISILICON_OSDRV_HI3516CV200_PKGDIR)/files/sensor/libsns_ar0230.so
# $(INSTALL) -m 644 -t $(TARGET_DIR)/usr/lib/sensors $(HISILICON_OSDRV_HI3516CV200_PKGDIR)/files/sensor/libsns_ar0237.so
$(INSTALL) -m 644 -t $(TARGET_DIR)/usr/lib/sensors $(HISILICON_OSDRV_HI3516CV200_PKGDIR)/files/sensor/libsns_gc1034.so
$(INSTALL) -m 644 -t $(TARGET_DIR)/usr/lib/sensors $(HISILICON_OSDRV_HI3516CV200_PKGDIR)/files/sensor/libsns_gc2023.so
# $(INSTALL) -m 644 -t $(TARGET_DIR)/usr/lib/sensors $(HISILICON_OSDRV_HI3516CV200_PKGDIR)/files/sensor/libsns_gc2033.so

View File

@ -4,10 +4,14 @@
#
################################################################################
INGENIC_LIBIMP_CONTROL_VERSION = master
INGENIC_LIBIMP_CONTROL_SITE = $(call github,gtxaspec,libimp_control,$(INGENIC_LIBIMP_CONTROL_VERSION))
INGENIC_LIBIMP_CONTROL_LICENSE = GPL-2.0
INGENIC_LIBIMP_CONTROL_LICENSE_FILES = COPYING
ifeq ($(LOCAL_DOWNLOAD),y)
INGENIC_LIBIMP_CONTROL_SITE_METHOD = git
INGENIC_LIBIMP_CONTROL_SITE = https://github.com/gtxaspec/libimp_control
INGENIC_LIBIMP_CONTROL_VERSION = $(shell git ls-remote $(INGENIC_LIBIMP_CONTROL_SITE) HEAD | head -1 | cut -f1)
else
INGENIC_LIBIMP_CONTROL_SITE = https://github.com/gtxaspec/libimp_control/archive
INGENIC_LIBIMP_CONTROL_SOURCE = master.tar.gz
endif
define INGENIC_LIBIMP_CONTROL_BUILD_CMDS
$(MAKE) CONFIG_SOC=$(OPENIPC_SOC_MODEL) CROSS_COMPILE=$(TARGET_CROSS) -C $(@D)

View File

@ -1,8 +0,0 @@
config BR2_PACKAGE_INGENIC_MOTORS_T31
bool "ingenic-motors-t31"
depends on BR2_LINUX_KERNEL
help
Motor driver for Ingenic T31 using TCU2.2.
comment "ingenic-motors-t31 needs a Linux kernel to be built"
depends on !BR2_LINUX_KERNEL

View File

@ -1,20 +0,0 @@
################################################################################
#
# Ingenic Motors Driver
#
################################################################################
INGENIC_MOTORS_T31_LICENSE = GPL-2.0
define INGENIC_MOTORS_T31_EXTRACT_CMDS
cp -av $(INGENIC_MOTORS_T31_PKGDIR)/src/* $(@D)/
endef
INGENIC_MOTORS_T31_MODULE_MAKE_OPTS = \
INSTALL_MOD_PATH=$(TARGET_DIR) \
INSTALL_MOD_DIR=ingenic \
KVER=$(LINUX_VERSION_PROBED) \
KSRC=$(LINUX_DIR)
$(eval $(kernel-module))
$(eval $(generic-package))

View File

@ -1,36 +0,0 @@
#CROSS_COMPILE ?= mips-linux-gnu-
#KDIR := ${ISVP_ENV_KERNEL_DIR}
############################################################################
PWD:=$(shell pwd)
INSTALL_DIR := $(PWD)/output
DEFS =
MOTORS_NAME := sample_motor
$(MOTORS_NAME)-objs := motor.o
obj-m := $(MOTORS_NAME).o
EXTRA_CFLAGS := $(DEFS)
all: modules install
modules: clean
$(MAKE) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) -C $(KDIR) M=$(shell pwd) modules -j8
strip:
$(CROSS_COMPILE)strip $(INSTALL_DIR)/*.ko --strip-unneeded
install: modules
mkdir -p $(INSTALL_DIR)
chmod 777 $(INSTALL_DIR)
cp *.ko $(INSTALL_DIR)
clean:
@rm -rf *.o *~ .depend .*.cmd *.mod.c .tmp_versions *.ko *.symvers modules.order
make -C $(KDIR) M=$(PWD) ARCH=$(ARCH) clean
.PHONY: modules clean

File diff suppressed because it is too large Load Diff

View File

@ -1,161 +0,0 @@
/*
* Copyright (C) 2015 Ingenic Semiconductor Co.,Ltd
*
* This software is licensed under the terms of the GNU General Public
* License version 2, as published by the Free Software Foundation, and
* may be copied, distributed, and modified under those terms.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
#ifndef __MOTOR_H__
#define __MOTOR_H__
#include <linux/wait.h>
#include <linux/spinlock.h>
#include <linux/seq_file.h>
#include <linux/proc_fs.h>
#include <jz_proc.h>
/*
* HORIZONTAL is X axis and VERTICAL is Y axis;
* while the Zero point is left-bottom, Origin point
* is cross point of horizontal midpoint and vertical midpoint.
*
*/
/*#define PLATFORM_HAS_HORIZONTAL_MOTOR 1*/
/*#define PLATFORM_HAS_VERTICAL_MOTOR 1*/
enum jz_motor_cnt {
HORIZONTAL_MOTOR,
VERTICAL_MOTOR,
HAS_MOTOR_CNT,
};
/* ioctl cmd */
#define MOTOR_STOP 0x1
#define MOTOR_RESET 0x2
#define MOTOR_MOVE 0x3
#define MOTOR_GET_STATUS 0x4
#define MOTOR_SPEED 0x5
#define MOTOR_GOBACK 0x6
#define MOTOR_CRUISE 0x7
#define MOTOR_GET_MAXSTEPS 0x8
/* motor speed */
#define MOTOR_MAX_SPEED 900 /**< unit: beats per second */
#define MOTOR_MIN_SPEED 100
enum motor_status {
MOTOR_IS_STOP,
MOTOR_IS_RUNNING,
};
struct motor_message {
int x;
int y;
enum motor_status status;
int speed;
unsigned int x_max_steps;
unsigned int y_max_steps;
};
struct motors_steps{
int x;
int y;
};
struct motor_reset_data {
unsigned int x_max_steps;
unsigned int y_max_steps;
unsigned int x_cur_step;
unsigned int y_cur_step;
};
enum motor_direction {
MOTOR_MOVE_LEFT_DOWN = -1,
MOTOR_MOVE_STOP,
MOTOR_MOVE_RIGHT_UP,
};
struct motor_platform_data {
const char name[32];
int motor_min_gpio;
int motor_max_gpio;
int motor_gpio_level;
int motor_st1_gpio;
int motor_st2_gpio;
int motor_st3_gpio;
int motor_st4_gpio;
};
enum motor_ops_state {
MOTOR_OPS_NORMAL,
MOTOR_OPS_CRUISE,
MOTOR_OPS_RESET,
MOTOR_OPS_STOP,
};
struct motor_driver {
struct motor_platform_data *pdata;
int max_pos_irq;
int min_pos_irq;
int max_steps; /* It is right-top point when x is max and y is max.*/
int cur_steps; /* It is left-bottom point when x is 0 and y is 0.*/
int total_steps;
char reset_min_pos;
char reset_max_pos;
enum motor_direction move_dir;
enum motor_ops_state state;
struct completion reset_completion;
struct timer_list min_timer;
struct timer_list max_timer;
/* debug parameters */
unsigned int max_pos_irq_cnt;
unsigned int min_pos_irq_cnt;
};
struct motor_move {
struct motors_steps one;
short times;
};
struct motor_device {
struct platform_device *pdev;
const struct mfd_cell *cell;
struct device *dev;
struct miscdevice misc_dev;
struct motor_driver motors[HAS_MOTOR_CNT];
char *skip_mode;
unsigned int counter;
struct completion stop_completion;
unsigned int wait_stop;
#ifdef CONFIG_SOC_T40
struct ingenic_tcu_chn *tcu;
#else
struct jz_tcu_chn *tcu;
#endif
int tcu_speed;
struct mutex dev_mutex;
spinlock_t slock;
enum motor_ops_state dev_state;
struct motor_message msg;
struct motor_move dst_move;
struct motor_move cur_move;
int run_step_irq;
int flag;
/* debug parameters */
struct proc_dir_entry *proc;
};
#endif // __MOTOR_H__

View File

@ -98,7 +98,7 @@ fi
lsmod | grep "audio" >/dev/null
if [ $? -ne 0 ]; then
insmod ${KMOD_PATH/%\//}/audio2.ko
insmod ${KMOD_PATH/%\//}/audio2.ko spk_gpio=-1
check_return "insmod audio"
fi

View File

@ -51,7 +51,7 @@ case ${SENSOR} in
ISP_PARAM="isp_clk=125000000"
SENSOR_PARAM="sensor_max_fps=25 data_interface=1"
;;
"jxf23")
"jxf23"|"ov2735b"|"sc2232h"|"sc2335")
ISP_PARAM="isp_clk=125000000"
SENSOR_PARAM="sensor_gpio_func=0"
;;
@ -59,19 +59,7 @@ case ${SENSOR} in
ISP_PARAM="isp_clk=90000000"
SENSOR_PARAM="sensor_gpio_func=0"
;;
"ov2735b")
ISP_PARAM="isp_clk=125000000"
SENSOR_PARAM="sensor_gpio_func=0"
;;
"sc2232")
ISP_PARAM="isp_clk=90000000"
SENSOR_PARAM=""
;;
"sc2232h")
ISP_PARAM="isp_clk=125000000"
SENSOR_PARAM="sensor_gpio_func=0"
;;
"sc2300")
"sc2232"|"sc2300")
ISP_PARAM="isp_clk=90000000"
SENSOR_PARAM=""
;;
@ -79,10 +67,6 @@ case ${SENSOR} in
ISP_PARAM=""
SENSOR_PARAM="sensor_gpio_func=0"
;;
"sc2335")
ISP_PARAM="isp_clk=125000000"
SENSOR_PARAM="sensor_gpio_func=0"
;;
*)
ISP_PARAM="isp_clk=90000000"
SENSOR_PARAM="sensor_gpio_func=0"
@ -110,6 +94,6 @@ fi
lsmod | grep "audio" >/dev/null
if [ $? -ne 0 ]; then
insmod ${KMOD_PATH/%\//}/audio.ko
insmod ${KMOD_PATH/%\//}/audio.ko spk_gpio=-1
check_return "insmod audio"
fi

View File

@ -75,7 +75,7 @@ fi
lsmod | grep "audio" >/dev/null
if [ $? -ne 0 ]; then
insmod ${KMOD_PATH/%\//}/audio.ko
insmod ${KMOD_PATH/%\//}/audio.ko spk_gpio=-1
check_return "insmod audio"
fi

Some files were not shown because too many files have changed in this diff Show More