Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ Cootli CAMV0103 GK7202V300 SC223A SSV6355_USB NOR_8M in pr
CP Plus CP-UNC-TA21L2C GK7205V200 SC223A - NOR_16M video-ok, ir-cut-no, audio-no
Emax Wyvern Link SSC338Q IMX415 NOR_16M done
Foscam X5 SSC337DE GC4653 RTL8188FU_USB NOR_16M done
GARUS GSL-5030X-30AP-NM HI3516EV200 SC2315E? - NOR_8M done
G.Craftsman GCA50 T31ZX GC4653 - NOR_16M done
EC37-T11 T20L SC2232 RTL8188FU_USB MOR_16M in progress
H3C TC2101 SSC337 JXQ03 RTL8188FU_USB NOR_16M done
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# GARUS: wired, fixed-lens, NOR-only 1080p camera; no USB/SD peripherals.
# Merge into hi3516ev200.generic.config, never replace the common config.
# Keep the NOR/FMC controller, MIPI/I2C, GPIO, UART, MMZ/CMA and recovery stack.

# No wireless adapter, USB devices/gadgets, modem or SD card in this target.
# CONFIG_WIRELESS is not set
# CONFIG_WLAN is not set
# CONFIG_CFG80211 is not set
# CONFIG_MAC80211 is not set
# CONFIG_MT7601U is not set
# CONFIG_USB_SUPPORT is not set
# CONFIG_USB is not set
# CONFIG_USB_GADGET is not set
# CONFIG_PHY_HISI_XVP_USB2 is not set
# CONFIG_MMC is not set
# CONFIG_VFAT_FS is not set
# CONFIG_FAT_FS is not set

# This image boots SquashFS on SPI NOR with a JFFS2 writable overlay.
# CONFIG_MTD_NAND is not set
# CONFIG_MTD_SPI_NAND_HISI_BVT is not set
# CONFIG_MTD_SPI_NAND_HIFMC100 is not set
# CONFIG_MTD_UBI is not set
# CONFIG_UBIFS_FS is not set
# CONFIG_YAFFS_FS is not set

# No bundled VPN client on this 8 MiB profile.
# CONFIG_TUN is not set
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# Architecture
BR2_arm=y
BR2_cortex_a7=y
BR2_ARM_EABI=y
BR2_ARM_FPU_NEON_VFPV4=y
BR2_ARM_INSTRUCTIONS_THUMB2=y

# Toolchain
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
BR2_TOOLCHAIN_EXTERNAL_URL="https://github.com/openipc/firmware/releases/download/$(OPENIPC_TOOLCHAIN).tgz"
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="arm-openipc-linux-musleabi"
BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_9=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_MUSL=y
BR2_TOOLCHAIN_EXTERNAL_CXX=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/$(OPENIPC_SOC_FAMILY)/hi3516ev200.generic.config"
BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="$(EXTERNAL_VENDOR)/board/$(OPENIPC_SOC_FAMILY)/garus-gsl-5030x-30ap-nm.fragment"
BR2_LINUX_KERNEL_UIMAGE=y
BR2_LINUX_KERNEL_XZ=y

# Filesystem
BR2_PACKAGE_BUSYBOX_CONFIG="$(BR2_EXTERNAL)/package/busybox/busybox.config"
BR2_PACKAGE_UBOOT_TOOLS=y
BR2_PACKAGE_ZLIB=y
# BR2_PACKAGE_IFUPDOWN_SCRIPTS is not set
# BR2_PACKAGE_WIREGUARD_LINUX_COMPAT is not set
# BR2_PACKAGE_WIREGUARD_TOOLS is not set
BR2_TARGET_ROOTFS_CPIO=y
BR2_TARGET_ROOTFS_SQUASHFS=y
BR2_TARGET_ROOTFS_SQUASHFS4_XZ=y

# OpenIPC
BR2_OPENIPC_SOC_VENDOR="hisilicon"
BR2_OPENIPC_SOC_MODEL="hi3516ev200"
BR2_OPENIPC_SOC_FAMILY="hi3516ev200"
BR2_OPENIPC_VARIANT="lite"
BR2_OPENIPC_FLASH_SIZE="8"

# Packages
BR2_PACKAGE_DROPBEAR_OPENIPC=y
BR2_PACKAGE_HISILICON_OPENSDK=y
BR2_PACKAGE_HISILICON_OSDRV_HI3516EV200=y
BR2_PACKAGE_IPCTOOL=y
BR2_PACKAGE_LIBCURL_OPENIPC=y
BR2_PACKAGE_LIBCURL_OPENIPC_CURL=y
# 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_LIBEVENT_OPENIPC=y
BR2_PACKAGE_LIBOGG_OPENIPC=y
BR2_PACKAGE_MAJESTIC_FONTS=y
BR2_PACKAGE_MAJESTIC_WEBUI=y
BR2_PACKAGE_MAJESTIC=y
# BR2_PACKAGE_MAJESTIC_AF is not set
BR2_PACKAGE_MBEDTLS_OPENIPC=y
# BR2_PACKAGE_MOTORS is not set
BR2_PACKAGE_OPUS_OPENIPC=y
BR2_PACKAGE_OPUS_OPENIPC_FIXED_POINT=y
# BR2_PACKAGE_VTUND_OPENIPC is not set
BR2_PACKAGE_YAML_CLI=y
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# GARUS GSL-5030X-30AP-NM has no removable storage.
# Override the common vfat/exfat module list; load nothing here.
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#!/bin/sh
#
# OpenIPC profile for GARUS GSL-5030X-30AP-NM
# Board: BLK16EV2-4339P-38X38
# SoC: HiSilicon Hi3516EV200
# Sensor path: SC2315E, MIPI 1080p
#
# GPIO15 is the external day/night status input. GPIO8/9 drive the bistable
# IR-cut filter. The IR illuminator board is autonomous, so no backlight GPIO
# is configured here.
#

fw_setenv upgrade 'https://github.com/OpenIPC/builder/releases/download/latest/hi3516ev200_lite_garus-gsl-5030x-30ap-nm-nor.tgz'
fw_setenv sensor sc2315e

cli -s .isp.sensorConfig /etc/sensors/sc2315e_i2c_1080p.ini
cli -s .nightMode.lightMonitor true
cli -s .nightMode.lightSensorPin 15
cli -s .nightMode.irCutPin1 8
cli -s .nightMode.irCutPin2 9
# The filter needs a short mechanical settle time to avoid a purple cast.
cli -s .nightMode.transitionDelayMs 150

exit 0
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
#!/bin/sh
#
# GARUS GSL-5030X-30AP-NM: GPIO15 is GPIO1_7.
# Make it an input before switching the pad to GPIO mode. Preserve all
# unrelated direction and pad-control bits.
#

set -e

direction=$(devmem 0x120B1400 32)
devmem 0x120B1400 32 $((direction & 0xffffff7f))

pinmux=$(devmem 0x120C001C 32)
devmem 0x120C001C 32 $(((pinmux & 0xfffffff0) | 0x2))
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
# GARUS GSL-5030X-30AP-NM: keep the SC2315E 1080p path.
# Keep iq/default.ini and its imx307.ini target.
/etc/sensors/5M_imx335.ini
/etc/sensors/WDR/5M_imx335.ini
/etc/sensors/WDR/imx335_i2c_4M.ini
/etc/sensors/camhi_imx307_i2c_4l_1080p.ini
/etc/sensors/gc2053_i2c_1080p.ini
/etc/sensors/gc4653_i2c_4M.ini
/etc/sensors/high-fps/imx307_1280x720_60fps.ini
/etc/sensors/high-fps/imx307_1920x1080_60fps.ini
/etc/sensors/high-fps/imx307_368x304_200fps.ini
/etc/sensors/high-fps/imx307_640x480_130fps.ini
/etc/sensors/high-fps/imx335_1280x720_120fps.ini
/etc/sensors/high-fps/imx335_1296x972_64fps.ini
/etc/sensors/high-fps/imx335_1920x1080_55fps.ini
/etc/sensors/high-fps/imx335_2592x1944_45fps.ini
/etc/sensors/high-fps/imx335_800x480_240fps.ini
/etc/sensors/imx307_i2c_2l_1080p.ini
/etc/sensors/imx335_i2c_4M.ini
/etc/sensors/iq/f23.ini
/etc/sensors/iq/imx335.ini
/etc/sensors/jxf22_i2c_1080p.ini
/etc/sensors/jxf23_i2c_1080p.ini
/etc/sensors/jxf37_i2c_1080p.ini
/etc/sensors/sc2231_i2c_1080p.ini
/etc/sensors/sc2232h_i2c_1080p.ini
/etc/sensors/sc2239_i2c_1080p.ini
/etc/sensors/sc3235_i2c_3M.ini
/etc/sensors/sc3335_i2c_3M.ini
/etc/sensors/sc4236_i2c_3M.ini
/etc/sensors/sp2305_i2c_1080p.ini
/etc/sensors/sp2308_i2c_1080p.ini
/lib/modules/4.9.37/hisilicon/camhi-motor.ko
/usr/bin/ircut_demo
/usr/lib/sensors/libsns_ar0237.so
/usr/lib/sensors/libsns_bt656.so
/usr/lib/sensors/libsns_f22.so
/usr/lib/sensors/libsns_f23.so
/usr/lib/sensors/libsns_f37.so
/usr/lib/sensors/libsns_gc2053.so
/usr/lib/sensors/libsns_gc2053_forcar.so
/usr/lib/sensors/libsns_gc4023.so
/usr/lib/sensors/libsns_gc4653_2l.so
/usr/lib/sensors/libsns_gc5603.so
/usr/lib/sensors/libsns_imx290.so
/usr/lib/sensors/libsns_imx307.so
/usr/lib/sensors/libsns_imx307_2l.so
/usr/lib/sensors/libsns_imx327.so
/usr/lib/sensors/libsns_imx327_2l.so
/usr/lib/sensors/libsns_imx335.so
/usr/lib/sensors/libsns_imx335_2l.so
/usr/lib/sensors/libsns_mis2008.so
/usr/lib/sensors/libsns_os02g10.so
/usr/lib/sensors/libsns_os05a.so
/usr/lib/sensors/libsns_ov2718.so
/usr/lib/sensors/libsns_sc2231.so
/usr/lib/sensors/libsns_sc2232h.so
/usr/lib/sensors/libsns_sc2235.so
/usr/lib/sensors/libsns_sc2239.so
/usr/lib/sensors/libsns_sc223a.so
/usr/lib/sensors/libsns_sc3235.so
/usr/lib/sensors/libsns_sc3335.so
/usr/lib/sensors/libsns_sc3336.so
/usr/lib/sensors/libsns_sc4236.so
/usr/lib/sensors/libsns_sc500ai.so
/usr/lib/sensors/libsns_sp2305.so
/usr/lib/sensors/libsns_sp2308.so
Loading