Merge branch 'master' into master

pull/463/head
Paul Philippov 2022-09-17 22:48:11 -04:00 committed by GitHub
commit 1fd64eaab5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
24 changed files with 189 additions and 49 deletions

View File

@ -30,6 +30,7 @@ source "$BR2_EXTERNAL_HISILICON_PATH/package/libogg-openipc/Config.in"
source "$BR2_EXTERNAL_HISILICON_PATH/package/libre-openipc/Config.in"
source "$BR2_EXTERNAL_HISILICON_PATH/package/librem-openipc/Config.in"
source "$BR2_EXTERNAL_HISILICON_PATH/package/libsrt-openipc/Config.in"
source "$BR2_EXTERNAL_HISILICON_PATH/package/libsrtp-openipc/Config.in"
source "$BR2_EXTERNAL_HISILICON_PATH/package/libwebsockets-openipc/Config.in"
source "$BR2_EXTERNAL_HISILICON_PATH/package/linux-firmware-openipc/Config.in"
source "$BR2_EXTERNAL_HISILICON_PATH/package/majestic-fonts/Config.in"

View File

@ -2351,9 +2351,9 @@ CONFIG_ISO9660_FS=y
#
# DOS/FAT/NT Filesystems
#
CONFIG_FAT_FS=y
CONFIG_MSDOS_FS=y
CONFIG_VFAT_FS=y
CONFIG_FAT_FS=m
# CONFIG_MSDOS_FS is not set
CONFIG_VFAT_FS=m
CONFIG_FAT_DEFAULT_CODEPAGE=437
CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
# CONFIG_FAT_DEFAULT_UTF8 is not set

View File

@ -44,6 +44,7 @@ BR2_TARGET_GENERIC_HOSTNAME="openipc-hi3516cv500"
BR2_GLOBAL_PATCH_DIR="$(TOPDIR)/../general/package/all-patches"
# OpenIPC packages
BR2_PACKAGE_AWS_WEBRTC=y
BR2_PACKAGE_BUSYBOX_CONFIG="$(TOPDIR)/../general/package/busybox/busybox.config"
BR2_PACKAGE_DROPBEAR_OPENIPC=y
BR2_PACKAGE_FDK_AAC_OPENIPC=y

View File

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

View File

@ -0,0 +1 @@
../../general/package/libsrtp-openipc

View File

@ -1,4 +1,3 @@
# Interfaces
auto lo
iface lo inet loopback
@ -6,12 +5,9 @@ iface lo inet loopback
auto eth0
iface eth0 inet dhcp
hwaddress ether $(fw_printenv -n ethaddr || echo 00:24:B8:FF:FF:FF)
#udhcpc_opts -O search -O ntpsrv -O hostname
#pre-up echo -e "nameserver 77.88.8.8\nnameserver 8.8.4.4\n" >/tmp/resolv.conf
manual eth0:1
iface eth0:1 inet static
address $(fw_printenv -n ipaddr || echo 192.168.1.10)
netmask 255.255.255.0
#pre-up echo -e "server 0.time.openipc.org iburst\nserver 1.time.openipc.org iburst\nserver 2.time.openipc.org iburst\nserver 3.time.openipc.org iburst" >/tmp/ntp.conf
manual wlan0
iface wlan0 inet dhcp
@ -22,40 +18,12 @@ iface wlan0 inet dhcp
pre-up modprobe mt7601u
pre-up wpa_passphrase "SSID" "password" >/tmp/wpa_supplicant.conf
pre-up sed -i '2i \\tscan_ssid=1' /tmp/wpa_supplicant.conf
pre-up (sleep 3; wpa_supplicant -B -D nl80211 -i wlan0 -c/tmp/wpa_supplicant.conf)
pre-up sleep 3
pre-up wpa_supplicant -B -D nl80211 -i wlan0 -c/tmp/wpa_supplicant.conf
post-down killall -q wpa_supplicant
post-down echo 1 > /sys/class/gpio/gpio7/value
post-down echo 7 > /sys/class/gpio/unexport
manual eth2
iface eth2 inet dhcp
pre-up wifi xm711
pre-up wpa_passphrase "SSID" "password" >/tmp/wpa_supplicant.conf
pre-up sed -i '2i \\tscan_ssid=1' /tmp/wpa_supplicant.conf
pre-up (sleep 3; wpa_supplicant -B -D nl80211 -i eth2 -c/tmp/wpa_supplicant.conf)
post-down killall -q wpa_supplicant
manual usb0
iface usb0 inet dhcp
pre-up echo 9 > /sys/class/gpio/export
pre-up echo out > /sys/class/gpio/gpio9/direction
pre-up echo 0 > /sys/class/gpio/gpio9/value
pre-up modprobe usbserial vendor=0x2c7c product=0x6026
pre-up modprobe rndis_host
pre-up sleep 10
post-down echo 1 > /sys/class/gpio/gpio9/value
post-down echo 9 > /sys/class/gpio/unexport
manual ppp0
iface ppp0 inet manual
pre-up echo 61 > /sys/class/gpio/export
pre-up echo out > /sys/class/gpio/gpio61/direction
pre-up echo 0 > /sys/class/gpio/gpio61/value
pre-up (sleep 7; pon)
post-down poff
post-down echo 1 > /sys/class/gpio/gpio61/value
post-down echo 61 > /sys/class/gpio/unexport
manual wg0
iface wg0 inet static
address 192.168.99.1
@ -64,3 +32,6 @@ iface wg0 inet static
pre-up ip link add dev wg0 type wireguard
pre-up wg setconf wg0 /etc/wireguard.conf
post-down ip link del dev wg0
#source-dir /etc/network/interfaces.d

View File

@ -0,0 +1,5 @@
manual eth0:1
iface eth0:1 inet static
address $(fw_printenv -n ipaddr || echo 192.168.1.10)
netmask 255.255.255.0

View File

@ -0,0 +1,8 @@
manual eth2
iface eth2 inet dhcp
pre-up wifi xm711
pre-up wpa_passphrase "SSID" "password" >/tmp/wpa_supplicant.conf
pre-up sed -i '2i \\tscan_ssid=1' /tmp/wpa_supplicant.conf
pre-up (sleep 3; wpa_supplicant -B -D nl80211 -i eth2 -c/tmp/wpa_supplicant.conf)
post-down killall -q wpa_supplicant

View File

@ -0,0 +1,9 @@
manual ppp0
iface ppp0 inet ppp
pre-up echo 61 > /sys/class/gpio/export
pre-up echo out > /sys/class/gpio/gpio61/direction
pre-up echo 0 > /sys/class/gpio/gpio61/value
pre-up sleep 7
post-down echo 1 > /sys/class/gpio/gpio61/value
post-down echo 61 > /sys/class/gpio/unexport

View File

@ -0,0 +1,11 @@
manual usb0
iface usb0 inet dhcp
pre-up echo 9 > /sys/class/gpio/export
pre-up echo out > /sys/class/gpio/gpio9/direction
pre-up echo 0 > /sys/class/gpio/gpio9/value
pre-up modprobe usbserial vendor=0x2c7c product=0x6026
pre-up modprobe rndis_host
pre-up sleep 10
post-down echo 1 > /sys/class/gpio/gpio9/value
post-down echo 9 > /sys/class/gpio/unexport

View File

@ -0,0 +1 @@
/etc/dropbear

View File

@ -17,6 +17,7 @@ AWS_PRODUCER_CONF_OPTS += \
-DBUILD_DEPENDENCIES=FALSE \
-DUSE_OPENSSL=OFF \
-DUSE_MBEDTLS=ON \
-DBUILD_SHARED_LIBS=OFF \
-DCMAKE_BUILD_TYPE=Release
AWS_PRODUCER_MAKE_OPTS += VERBOSE=1

View File

@ -4,9 +4,9 @@
#
################################################################################
AWS_WEBRTC_VERSION = v1.7.3
AWS_WEBRTC_VERSION = develop
AWS_WEBRTC_SITE_METHOD = git
AWS_WEBRTC_SITE = https://github.com/awslabs/amazon-kinesis-video-streams-webrtc-sdk-c
AWS_WEBRTC_SITE = https://github.com/OpenIPC/webrtc-c
AWS_WEBRTC_INSTALL_STAGING = YES
AWS_WEBRTC_LICENSE = Apache-2.0
AWS_WEBRTC_LICENSE_FILES = LICENSE
@ -17,13 +17,13 @@ AWS_WEBRTC_CONF_OPTS += \
-DUSE_OPENSSL=OFF \
-DUSE_MBEDTLS=ON \
-DENABLE_DATA_CHANNEL=OFF \
-DBUILD_SAMPLE=OFF \
-DBUILD_DEPENDENCIES=OFF
AWS_WEBRTC_MAKE_OPTS += VERBOSE=1
AWS_WEBRTC_DEPENDENCIES = \
libsrtp \
libwebsockets-openipc \
libsrtp-openipc \
aws-producer \
usrsctp \
mbedtls-openipc

View File

@ -22,6 +22,7 @@ define HISILICON_OSDRV_HI3516EV200_INSTALL_TARGET_CMDS
$(INSTALL) -m 755 -d $(TARGET_DIR)/etc/sensors/iq
$(INSTALL) -m 644 -t $(TARGET_DIR)/etc/sensors/iq $(BR2_EXTERNAL_HISILICON_PATH)/package/hisilicon-osdrv-hi3516ev200/files/sensor/iq/imx307.ini
$(INSTALL) -m 644 -t $(TARGET_DIR)/etc/sensors/iq $(BR2_EXTERNAL_HISILICON_PATH)/package/hisilicon-osdrv-hi3516ev200/files/sensor/iq/imx335.ini
$(INSTALL) -m 644 -t $(TARGET_DIR)/etc/sensors/iq $(BR2_EXTERNAL_HISILICON_PATH)/package/hisilicon-osdrv-hi3516ev200/files/sensor/iq/f23.ini
ln -sf imx307.ini $(TARGET_DIR)/etc/sensors/iq/default.ini
$(INSTALL) -m 755 -d $(TARGET_DIR)/lib/modules/$(LINUX_VERSION_PROBED)/hisilicon

View File

@ -10,11 +10,17 @@ LIBEVENT_OPENIPC_INSTALL_STAGING = YES
LIBEVENT_OPENIPC_LICENSE = BSD-3-Clause, OpenBSD
LIBEVENT_OPENIPC_LICENSE_FILES = LICENSE
LIBEVENT_OPENIPC_CONF_OPTS = \
-D_GNU_SOURCE=ON \
-DEVENT__DISABLE_BENCHMARK=ON \
-DEVENT__DISABLE_SAMPLES=ON \
-DEVENT__DISABLE_TESTS=ON \
-DCMAKE_BUILD_TYPE=Release
define LIBEVENT_OPENIPC_PATCH_MMAH_H
sed -i 's/#define mmap64 mmap/void *mmap64 (void *, size_t, int, int, int, off_t);/' $(STAGING_DIR)/usr/include/sys/mman.h
endef
LIBEVENT_OPENIPC_PRE_BUILD_HOOKS += LIBEVENT_OPENIPC_PATCH_MMAH_H
define LIBEVENT_OPENIPC_REMOVE_PYSCRIPT
rm $(TARGET_DIR)/usr/bin/event_rpcgen.py

View File

@ -0,0 +1,8 @@
config BR2_PACKAGE_LIBSRTP_OPENIPC
bool "libsrtp_openipc"
help
This package provides an implementation of the Secure
Real-time Transport Protocol (SRTP), the Universal Security
Transform (UST), and a supporting cryptographic kernel.
https://github.com/cisco/libsrtp

View File

@ -0,0 +1,22 @@
################################################################################
#
# libsrtp-openipc
#
################################################################################
LIBSRTP_OPENIPC_VERSION = bd0f27ec0e299ad101a396dde3f7c90d48efc8fc
LIBSRTP_OPENIPC_SITE = https://github.com/cisco/libsrtp.git
LIBSRTP_OPENIPC_SITE_METHOD = git
LIBSRTP_OPENIPC_INSTALL_STAGING = YES
LIBSRTP_OPENIPC_LICENSE = BSD-3-Clause
LIBSRTP_OPENIPC_LICENSE_FILES = LICENSE
LIBSRTP_OPENIPC_CPE_ID_VENDOR = cisco
LIBSRTP_OPENIPC_CONF_OPTS = \
-DENABLE_OPENSSL=OFF \
-DBUILD_SHARED_LIBS=OFF \
-DCMAKE_BUILD_TYPE:STRING=Release
LIBSRTP_OPENIPC_MAKE_OPTS += VERBOSE=1
$(eval $(cmake-package))

View File

@ -8,4 +8,9 @@ Baud = 115200
[UdpEndpoint telemetry_tx]
Mode = Normal
Address = 127.0.0.1
Port = 14701
Port = 14600
[UdpEndpoint telemetry_rx]
Mode = Server
Address = 0.0.0.0
Port = 14601

View File

@ -15,6 +15,7 @@ USRSCTP_CONF_OPTS += \
-Dsctp_werror=0 \
-Dsctp_build_programs=0 \
-Dsctp_debug=0 \
-DBUILD_SHARED_LIBS=OFF \
-DCMAKE_BUILD_TYPE=Release
USRSCTP_MAKE_OPTS += VERBOSE=1

View File

@ -6,6 +6,7 @@
. /etc/wfb.conf
keydir="/etc"
chip=$(ipcinfo -c)
load_rtl() {
modprobe cfg80211
@ -41,6 +42,11 @@ start_wfb() {
case "$1" in
start)
if ! [ -f /etc/system.ok ]; then
killall majestic
/usr/bin/tweaksys ${chip}
fi
if [ ${daemon} -eq 1 ]; then
echo "Loading modules for selected driver..."
@ -77,7 +83,8 @@ case "$1" in
echo "Done."
if [ ${telemetry} = "true" ]; then
sh /usr/bin/telemetry start
/usr/bin/mavlink-routerd &
/usr/bin/telemetry start
fi
else

View File

@ -6,8 +6,8 @@ mcs_index=1
stream_rx=144
stream_tx=16
link_id=7669206
port_rx=14700
port_tx=14701
port_rx=14601
port_tx=14600
fec_k=1
fec_n=2
fec_timeout=0

View File

@ -0,0 +1,77 @@
#!/bin/sh
chip=$(ipcinfo -c)
family=$(ipcinfo -f)
vendor=$(ipcinfo -v)
sensor=$(ipcinfo -s)
prefix=${family}
cli="yaml-cli -i /etc/majestic.yaml"
all_other() {
if [ ${vendor} = "hisilicon" ]; then
prefix="open"
fi
# remove unneded modules
sed -i "s!insmod ${prefix}_rgn.ko!#insmod ${prefix}_rgn.ko!g" /usr/bin/load_${vendor}
sed -i "s!insmod ${prefix}_jpege.ko!#insmod ${prefix}_jpege.ko!g" /usr/bin/load_${vendor}
sed -i "s!insmod ${prefix}_ive.ko save_power=0!#insmod ${prefix}_ive.ko save_power=0!g" /usr/bin/load_${vendor}
sed -i "s!insmod ${prefix}_aio.ko!#insmod ${prefix}_aio.ko!g" /usr/bin/load_${vendor}
sed -i "s!insmod ${prefix}_ai.ko!#insmod ${prefix}_ai.ko!g" /usr/bin/load_${vendor}
sed -i "s!insmod ${prefix}_ao.ko!#insmod ${prefix}_ao.ko!g" /usr/bin/load_${vendor}
sed -i "s!insmod ${prefix}_aenc.ko!#insmod ${prefix}_aenc.ko!g" /usr/bin/load_${vendor}
sed -i "s!insmod ${prefix}_adec.ko!#insmod ${prefix}_adec.ko!g" /usr/bin/load_${vendor}
sed -i "s!insmod ${prefix}_acodec.ko!#insmod ${prefix}_acodec.ko!g" /usr/bin/load_${vendor}
# change fps 25 -> 30
sed -i "s!Isp_FrameRate=25!Isp_FrameRate=30!g" /etc/sensors/imx307_i2c_2l_1080p.ini
# disable mavlink routerd autostart
sed -i "s!/usr/bin/mavlink-routerd &!#/usr/bin/mavlink-routerd &!g" /etc/init.d/S97mavlink
# majestic basic settings
${cli} -s .isp.slowShutter disabled
${cli} -s .image.contrast 50
${cli} -s .image.luminance 50
${cli} -s .video0.bitrate 5120
${cli} -s .video0.codec h264
${cli} -s .video0.rcMode cbr
${cli} -s .video0.gopSize 0.1
${cli} -s .hls.enabled false
${cli} -s .netip.enabled false
${cli} -s .rtsp.enabled false
${cli} -s .jpeg.enabled false
# lowdelay support only imx307 sensor
if [ ${sensor} = "imx307" ]; then
${cli} -s .isp.lowDelay true
# ${cli} -s .video0.sliceUnits: 4
fi
# add outgoing rtp stream to udp
cat >> /etc/majestic.yaml << EOF
outgoing:
- udp://127.0.0.1:5600
EOF
# complete tweaks
touch /etc/system.ok
echo "Preparing system done."
reboot
}
case "$1" in
gk7205v200 | hi3516ev200)
echo "Preparig system tweaks for ${chip}..."
# set osmem
fw_setenv osmem 40M
# change uart1 to uart0
sed -i "s!Device = /dev/ttyAMA1!Device = /dev/ttyAMA0!g" /etc/mavlink.conf
sed -i "s!console::respawn:/sbin/getty -L console 0 vt100 # GENERIC_SERIAL!#console::respawn:/sbin/getty -L console 0 vt100 # GENERIC_SERIAL!g" /etc/inittab
# remove unneded
rm -f /etc/modules /etc/init.d/S60crond /etc/init.d/S49ntpd /etc/init.d/S50httpd /etc/init.d/S02klogd
all_other
;;
gk7205v300 | hi3516ev300)
echo "Preparig system tweaks for ${chip}..."
all_other
;;
*)
echo "Usage: $0 {gk7205v200|gk7205v300|hi3516ev200|hi3516ev300}"
exit 1
esac

View File

@ -4,7 +4,7 @@ wlan=wlan0
region=BO
channel=14
txpower=20
driver_txpower_override=30
driver_txpower_override=20
bandwidth=20
stbc=1
ldpc=1
@ -16,4 +16,4 @@ fec_k=8
fec_n=12
fec_timeout=0
guard_interval=long
telemetry=false
telemetry=true

View File

@ -32,6 +32,9 @@ define WIFIBROADCAST_INSTALL_TARGET_CMDS
$(INSTALL) -m 755 -d $(TARGET_DIR)/usr/bin
cp ../general/package/wifibroadcast/files/telemetry $(TARGET_DIR)/usr/bin
$(INSTALL) -m 755 -d $(TARGET_DIR)/usr/bin
cp ../general/package/wifibroadcast/files/tweaksys $(TARGET_DIR)/usr/bin
$(INSTALL) -m 755 -d $(TARGET_DIR)/etc
cp ../general/package/wifibroadcast/files/telemetry.conf $(TARGET_DIR)/etc
endef