mirror of https://github.com/OpenIPC/firmware.git
[no ci] Sigmastar: add infinity6c osdrv package
parent
5d0f86b4e1
commit
65b34aadc9
|
@ -95,6 +95,7 @@ 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_RTL8188FU_OPENIPC is not set
|
||||
|
||||
# Debug
|
||||
# BR2_PACKAGE_HOST_GDB is not set
|
||||
|
|
|
@ -93,6 +93,7 @@ source "$BR2_EXTERNAL_GENERAL_PATH/package/rtw-hostapd/Config.in"
|
|||
source "$BR2_EXTERNAL_GENERAL_PATH/package/sigmastar-motors/Config.in"
|
||||
source "$BR2_EXTERNAL_GENERAL_PATH/package/sigmastar-osdrv-infinity6/Config.in"
|
||||
source "$BR2_EXTERNAL_GENERAL_PATH/package/sigmastar-osdrv-infinity6b0/Config.in"
|
||||
source "$BR2_EXTERNAL_GENERAL_PATH/package/sigmastar-osdrv-infinity6c/Config.in"
|
||||
source "$BR2_EXTERNAL_GENERAL_PATH/package/sigmastar-osdrv-infinity6e/Config.in"
|
||||
source "$BR2_EXTERNAL_GENERAL_PATH/package/sigmastar-osdrv-msc313e/Config.in"
|
||||
source "$BR2_EXTERNAL_GENERAL_PATH/package/sigmastar-osdrv-sensors/Config.in"
|
||||
|
|
|
@ -1,81 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
# DAY mode
|
||||
ir_cut_enable() {
|
||||
# Pin_mux
|
||||
[ ! -d /sys/class/gpio/gpio$gpio_0 ] && echo "$gpio_0" >/sys/class/gpio/export
|
||||
[ ! -d /sys/class/gpio/gpio$gpio_1 ] && echo "$gpio_1" >/sys/class/gpio/export
|
||||
|
||||
# Dir
|
||||
echo "out" >/sys/class/gpio/gpio$gpio_0/direction
|
||||
echo "out" >/sys/class/gpio/gpio$gpio_1/direction
|
||||
|
||||
# Data, gpio_1: 0, gpio_0: 1 (day mode)
|
||||
echo "1" >/sys/class/gpio/gpio$gpio_0/value
|
||||
echo "0" >/sys/class/gpio/gpio$gpio_1/value
|
||||
|
||||
# Sleep 1s
|
||||
sleep 1
|
||||
|
||||
# Back to original
|
||||
echo "0" >/sys/class/gpio/gpio$gpio_0/value
|
||||
echo "0" >/sys/class/gpio/gpio$gpio_1/value
|
||||
}
|
||||
|
||||
# NIGHT mode
|
||||
ir_cut_disable() {
|
||||
# Pin_mux
|
||||
[ ! -d /sys/class/gpio/gpio$gpio_0 ] && echo "$gpio_0" >/sys/class/gpio/export
|
||||
[ ! -d /sys/class/gpio/gpio$gpio_1 ] && echo "$gpio_1" >/sys/class/gpio/export
|
||||
|
||||
# Dir
|
||||
echo "out" >/sys/class/gpio/gpio$gpio_0/direction
|
||||
echo "out" >/sys/class/gpio/gpio$gpio_1/direction
|
||||
|
||||
# Data, gpio_1: 1, gpio_0: 0 (night mode)
|
||||
echo "0" >/sys/class/gpio/gpio$gpio_0/value
|
||||
echo "1" >/sys/class/gpio/gpio$gpio_1/value
|
||||
|
||||
# Sleep 1s
|
||||
sleep 1
|
||||
|
||||
# Back to original
|
||||
echo "0" >/sys/class/gpio/gpio$gpio_0/value
|
||||
echo "0" >/sys/class/gpio/gpio$gpio_1/value
|
||||
}
|
||||
|
||||
gpio_0=0
|
||||
gpio_1=0
|
||||
|
||||
if [ $# -lt 2 ]; then
|
||||
echo "Usage: ircut_demo <vendor> <mode>"
|
||||
echo "For example:"
|
||||
echo "NIGHT : ircut_demo anjoy 1"
|
||||
else
|
||||
if [ $1 = "anjoy" ]; then
|
||||
gpio_0=78
|
||||
gpio_1=79
|
||||
elif [ $1 = "brovotech" ]; then
|
||||
gpio_0=78
|
||||
gpio_1=79
|
||||
elif [ $1 = "gospell" ]; then
|
||||
gpio_0=78
|
||||
gpio_1=79
|
||||
elif [ $1 = "uniview" ]; then
|
||||
gpio_0=78
|
||||
gpio_1=79
|
||||
else
|
||||
echo -e "Wrong vendor name: $1\nPlease select: anjoy, brovotech, gospell, uniview"
|
||||
exit
|
||||
fi
|
||||
|
||||
if [ $2 -eq 0 ]; then
|
||||
echo "DAY mode, ir_cut on"
|
||||
ir_cut_enable >/dev/null
|
||||
elif [ $2 -eq 1 ]; then
|
||||
echo "NIGHT mode, ir_cut off"
|
||||
ir_cut_disable >/dev/null
|
||||
else
|
||||
echo "Invalid mode, please slect 0 or 1"
|
||||
fi
|
||||
fi
|
|
@ -0,0 +1,5 @@
|
|||
config BR2_PACKAGE_SIGMASTAR_OSDRV_INFINITY6C
|
||||
bool "sigmastar-osdrv-infinity6c"
|
||||
select BR2_PACKAGE_SIGMASTAR_OSDRV_SENSORS
|
||||
help
|
||||
Sigmastar infinity6c kernel modules
|
|
@ -0,0 +1,36 @@
|
|||
{
|
||||
"mi_fb": {
|
||||
"fb_device_disp_path": [
|
||||
{
|
||||
"fb_hwlayer_id": 2,
|
||||
"fb_hwwin_id": 0,
|
||||
"fb_hwlayer_dst": 3,
|
||||
"fb_hwwin_format": 5,
|
||||
"fb_hwlayer_outputcolor": 0,
|
||||
"fb_width": 1024,
|
||||
"fb_height": 600,
|
||||
"fb_timing_width": 1024,
|
||||
"fb_timing_height": 600,
|
||||
"fb_mmap_name": "E_MMAP_ID_FB",
|
||||
"fb_buffer_len": 8192
|
||||
}
|
||||
],
|
||||
"fb_device_video_path": [
|
||||
{
|
||||
"fb_buf_id_path": {
|
||||
"fb_gwin_id": 7,
|
||||
"fb_mod": 34,
|
||||
"fb_dev": 1,
|
||||
"fb_chn": 0,
|
||||
"fb_port": 0
|
||||
},
|
||||
"fb_hwwin_format": 6,
|
||||
"fb_width": 1920,
|
||||
"fb_height": 1080,
|
||||
"fb_timing_width": 1920,
|
||||
"fb_timing_height": 1080,
|
||||
"fb_buf_cnt": 3
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,24 @@
|
|||
{
|
||||
"E_MI_MODULE_ID_SYS" :
|
||||
{
|
||||
"cmdQBufSize" : 400
|
||||
},
|
||||
"E_MI_MODULE_ID_DISP" :
|
||||
{
|
||||
"threadPriority" : 98,
|
||||
"debugFilePath" : "",
|
||||
"u64CpuMaskAffinity" : "0x0"
|
||||
},
|
||||
"E_MI_MODULE_ID_MIPITX" :
|
||||
{
|
||||
"threadPriority" : 70
|
||||
},
|
||||
"E_MI_MODULE_ID_PANEL" :
|
||||
{
|
||||
"debugFilePath" : ""
|
||||
},
|
||||
"E_MI_MODULE_ID_FB" :
|
||||
{
|
||||
"default_reserved_mem_name": "fb"
|
||||
}
|
||||
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,61 @@
|
|||
#!/bin/sh
|
||||
#
|
||||
# OpenIPC.org | 2023.11.01
|
||||
#
|
||||
|
||||
PATH_MODULE=/lib/modules/5.10.61/sigmastar
|
||||
PATH_SENSOR=${PATH_MODULE}/sensor
|
||||
SENSOR=$(fw_printenv -n sensor)
|
||||
|
||||
detect_sensor() {
|
||||
#devmem 0x1F2079A4 16 0x0111
|
||||
#devmem 0x1F207188 16 0x0001
|
||||
#devmem 0x1F2608FC 16 0x0003
|
||||
SENSOR=$(ipcinfo -s)
|
||||
fw_setenv sensor ${SENSOR}
|
||||
}
|
||||
|
||||
set_sensor() {
|
||||
case ${SENSOR} in
|
||||
sc401ai)
|
||||
insmod ${PATH_SENSOR}/sensor_${SENSOR}_mipi.ko chmap=1
|
||||
;;
|
||||
*)
|
||||
echo -e "\n\e[1;31mUNSUPPORTED sensor - ${SENSOR}\e[0m\n" | logger -s -t OpenIPC
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
insert_ko() {
|
||||
insmod ${PATH_MODULE}/mi_common.ko g_ModParamPath=${PATH_MODULE}/param.json config_json_path=/${PATH_MODULE}/config.json
|
||||
insmod ${PATH_MODULE}/mi_isp.ko
|
||||
insmod ${PATH_MODULE}/mi_rgn.ko
|
||||
insmod ${PATH_MODULE}/mi_sensor.ko
|
||||
insmod ${PATH_MODULE}/mi_sys.ko
|
||||
insmod ${PATH_MODULE}/mi_vcodec.ko drv_codec40_common.fw_load_path=/etc/firmware/chagall.bin
|
||||
insmod ${PATH_MODULE}/mi_venc.ko
|
||||
insmod ${PATH_MODULE}/mi_vif.ko
|
||||
|
||||
major=$(awk '$2=="mi_poll" {print $1}' /proc/devices)
|
||||
mknod /dev/mi_poll c $major 0
|
||||
echo isproot /etc/firmware > /dev/ispmid
|
||||
}
|
||||
|
||||
if [ ! -e /dev/mi_poll ]; then
|
||||
insert_ko
|
||||
fi
|
||||
|
||||
if [ -z ${SENSOR} ]; then
|
||||
echo -e "\n\e[1;33mAutodetect sensor\e[0m\n" | logger -s -t OpenIPC
|
||||
detect_sensor
|
||||
fi
|
||||
|
||||
if [ -z ${SENSOR} ]; then
|
||||
echo -e "\n\e[1;31mSensor parameter MISSING\e[0m\n" | logger -s -t OpenIPC
|
||||
exit 1
|
||||
else
|
||||
echo -e "\n\e[1;32mSensor assigned - ${SENSOR}\e[0m\n" | logger -s -t OpenIPC
|
||||
$(lsmod | grep -q ${SENSOR}) || set_sensor
|
||||
fi
|
||||
|
||||
exit 0
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,29 @@
|
|||
################################################################################
|
||||
#
|
||||
# sigmastar-osdrv-infinity6c
|
||||
#
|
||||
################################################################################
|
||||
|
||||
SIGMASTAR_OSDRV_INFINITY6C_VERSION =
|
||||
SIGMASTAR_OSDRV_INFINITY6C_SITE =
|
||||
SIGMASTAR_OSDRV_INFINITY6C_LICENSE = MIT
|
||||
SIGMASTAR_OSDRV_INFINITY6C_LICENSE_FILES = LICENSE
|
||||
|
||||
define SIGMASTAR_OSDRV_INFINITY6C_INSTALL_TARGET_CMDS
|
||||
$(INSTALL) -m 755 -d $(TARGET_DIR)/lib/modules/5.10.61/sigmastar
|
||||
$(INSTALL) -m 644 -t $(TARGET_DIR)/lib/modules/5.10.61/sigmastar $(SIGMASTAR_OSDRV_INFINITY6C_PKGDIR)/files/kmod/*
|
||||
|
||||
$(INSTALL) -m 755 -d $(TARGET_DIR)/etc/firmware
|
||||
$(INSTALL) -m 644 -t $(TARGET_DIR)/etc/firmware $(SIGMASTAR_OSDRV_INFINITY6C_PKGDIR)/files/sensor/firmware/*
|
||||
|
||||
$(INSTALL) -m 755 -d $(TARGET_DIR)/etc/sensors
|
||||
$(INSTALL) -m 644 -t $(TARGET_DIR)/etc/sensors $(SIGMASTAR_OSDRV_INFINITY6C_PKGDIR)/files/sensor/configs/*
|
||||
|
||||
$(INSTALL) -m 755 -d $(TARGET_DIR)/usr/lib
|
||||
$(INSTALL) -m 644 -t $(TARGET_DIR)/usr/lib $(SIGMASTAR_OSDRV_INFINITY6C_PKGDIR)/files/lib/*
|
||||
|
||||
$(INSTALL) -m 755 -d $(TARGET_DIR)/usr/bin
|
||||
$(INSTALL) -m 755 -t $(TARGET_DIR)/usr/bin $(SIGMASTAR_OSDRV_INFINITY6C_PKGDIR)/files/script/*
|
||||
endef
|
||||
|
||||
$(eval $(generic-package))
|
|
@ -1,84 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
# DAY mode
|
||||
ir_cut_enable() {
|
||||
# Pin_mux
|
||||
[ ! -d /sys/class/gpio/gpio$gpio_0 ] && echo "$gpio_0" >/sys/class/gpio/export
|
||||
[ ! -d /sys/class/gpio/gpio$gpio_1 ] && echo "$gpio_1" >/sys/class/gpio/export
|
||||
|
||||
# Dir
|
||||
echo "out" >/sys/class/gpio/gpio$gpio_0/direction
|
||||
echo "out" >/sys/class/gpio/gpio$gpio_1/direction
|
||||
|
||||
# Data, gpio_1: 0, gpio_0: 1 (day mode)
|
||||
echo "1" >/sys/class/gpio/gpio$gpio_0/value
|
||||
echo "0" >/sys/class/gpio/gpio$gpio_1/value
|
||||
|
||||
# Sleep 1s
|
||||
sleep 1
|
||||
|
||||
# Back to original
|
||||
echo "0" >/sys/class/gpio/gpio$gpio_0/value
|
||||
echo "0" >/sys/class/gpio/gpio$gpio_1/value
|
||||
}
|
||||
|
||||
# NIGHT mode
|
||||
ir_cut_disable() {
|
||||
# Pin_mux
|
||||
[ ! -d /sys/class/gpio/gpio$gpio_0 ] && echo "$gpio_0" >/sys/class/gpio/export
|
||||
[ ! -d /sys/class/gpio/gpio$gpio_1 ] && echo "$gpio_1" >/sys/class/gpio/export
|
||||
|
||||
# Dir
|
||||
echo "out" >/sys/class/gpio/gpio$gpio_0/direction
|
||||
echo "out" >/sys/class/gpio/gpio$gpio_1/direction
|
||||
|
||||
# Data, gpio_1: 1, gpio_0: 0 (night mode)
|
||||
echo "0" >/sys/class/gpio/gpio$gpio_0/value
|
||||
echo "1" >/sys/class/gpio/gpio$gpio_1/value
|
||||
|
||||
# Sleep 1s
|
||||
sleep 1
|
||||
|
||||
# Back to original
|
||||
echo "0" >/sys/class/gpio/gpio$gpio_0/value
|
||||
echo "0" >/sys/class/gpio/gpio$gpio_1/value
|
||||
}
|
||||
|
||||
gpio_0=0
|
||||
gpio_1=0
|
||||
|
||||
if [ $# -lt 2 ]; then
|
||||
echo "Usage: ircut_demo <vendor> <mode>"
|
||||
echo "For example:"
|
||||
echo "NIGHT: ircut_demo anjoy 1"
|
||||
else
|
||||
if [ $1 = "anjoy" ]; then
|
||||
gpio_0=78
|
||||
gpio_1=79
|
||||
elif [ $1 = "brovotech" ]; then
|
||||
gpio_0=78
|
||||
gpio_1=79
|
||||
elif [ $1 = "camhi" ]; then
|
||||
gpio_0=23
|
||||
gpio_1=24
|
||||
elif [ $1 = "gospell" ]; then
|
||||
gpio_0=78
|
||||
gpio_1=79
|
||||
elif [ $1 = "uniview" ]; then
|
||||
gpio_0=78
|
||||
gpio_1=79
|
||||
else
|
||||
echo -e "Wrong vendor name: $1\nPlease select: anjoy, brovotech, camhi, gospell, uniview"
|
||||
exit
|
||||
fi
|
||||
|
||||
if [ $2 -eq 0 ]; then
|
||||
echo "DAY mode, ir_cut on"
|
||||
ir_cut_enable >/dev/null
|
||||
elif [ $2 -eq 1 ]; then
|
||||
echo "NIGHT mode, ir_cut off"
|
||||
ir_cut_disable >/dev/null
|
||||
else
|
||||
echo "Invalid mode, please slect 0 or 1"
|
||||
fi
|
||||
fi
|
Loading…
Reference in New Issue