mirror of https://github.com/OpenIPC/firmware.git
Fix sensor detection for hi3516cv200
parent
27f7c3758c
commit
5634cb3b07
|
@ -17,17 +17,44 @@ mem_total=${mem_total:=64}
|
||||||
os_mem_size=$(awk -F '=' '$1=="mem"{print $2}' RS=" " /proc/cmdline | tr -d 'M')
|
os_mem_size=$(awk -F '=' '$1=="mem"{print $2}' RS=" " /proc/cmdline | tr -d 'M')
|
||||||
os_mem_size=${os_mem_size:=32}
|
os_mem_size=${os_mem_size:=32}
|
||||||
|
|
||||||
# Sensor config
|
|
||||||
SNS_TYPE=$(awk -F '=' '$1=="sensor"{print $2}' RS=" " /proc/cmdline)
|
|
||||||
SNS_TYPE=${SNS_TYPE:=sc2235}
|
|
||||||
|
|
||||||
|
|
||||||
report_error()
|
report_error()
|
||||||
{
|
{
|
||||||
echo "******* Error: There's something wrong, please check! *****"
|
echo "******* Error: There's something wrong, please check! *****"
|
||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
insert_mmz()
|
||||||
|
{
|
||||||
|
insmod mmz.ko mmz=anonymous,0,$mmz_start,$mmz_size anony=1 || report_error
|
||||||
|
}
|
||||||
|
|
||||||
|
insert_detect()
|
||||||
|
{
|
||||||
|
cd /lib/modules/4.9.37/hisilicon
|
||||||
|
insmod sys_config.ko vi_vpss_online=$b_arg_online sensor=unknown pin_mux_select=0
|
||||||
|
insert_mmz
|
||||||
|
insmod hi_media.ko
|
||||||
|
insmod hi3518e_base.ko
|
||||||
|
insmod hi3518e_sys.ko vi_vpss_online=$b_arg_online sensor=unknown mem_total=$mem_total
|
||||||
|
insert_isp
|
||||||
|
insmod sensor_i2c.ko
|
||||||
|
insmod sensor_spi.ko
|
||||||
|
SENSOR=ar0130 insert_sns
|
||||||
|
ipcinfo -s
|
||||||
|
}
|
||||||
|
|
||||||
|
remove_detect()
|
||||||
|
{
|
||||||
|
rmmod sensor_spi
|
||||||
|
rmmod sensor_i2c
|
||||||
|
rmmod hi3518e_isp
|
||||||
|
rmmod hi3518e_sys
|
||||||
|
rmmod hi3518e_base
|
||||||
|
rmmod hi_media
|
||||||
|
rmmod mmz
|
||||||
|
rmmod sys_config.ko
|
||||||
|
}
|
||||||
|
|
||||||
insert_audio()
|
insert_audio()
|
||||||
{
|
{
|
||||||
insmod acodec.ko
|
insmod acodec.ko
|
||||||
|
@ -74,19 +101,19 @@ insert_sns()
|
||||||
{
|
{
|
||||||
case $SENSOR in
|
case $SENSOR in
|
||||||
ar0130|9m034)
|
ar0130|9m034)
|
||||||
devmem 0x200f0040 0x2; # I2C0_SCL
|
devmem 0x200f0040 32 0x2; # I2C0_SCL
|
||||||
devmem 0x200f0044 0x2; # I2C0_SDA
|
devmem 0x200f0044 32 0x2; # I2C0_SDA
|
||||||
|
|
||||||
#cmos pinmux
|
#cmos pinmux
|
||||||
devmem 0x200f007c 0x1; # VI_DATA13
|
devmem 0x200f007c 32 0x1; # VI_DATA13
|
||||||
devmem 0x200f0080 0x1; # VI_DATA10
|
devmem 0x200f0080 32 0x1; # VI_DATA10
|
||||||
devmem 0x200f0084 0x1; # VI_DATA12
|
devmem 0x200f0084 32 0x1; # VI_DATA12
|
||||||
devmem 0x200f0088 0x1; # VI_DATA11
|
devmem 0x200f0088 32 0x1; # VI_DATA11
|
||||||
devmem 0x200f008c 0x2; # VI_VS
|
devmem 0x200f008c 32 0x2; # VI_VS
|
||||||
devmem 0x200f0090 0x2; # VI_HS
|
devmem 0x200f0090 32 0x2; # VI_HS
|
||||||
devmem 0x200f0094 0x1; # VI_DATA9
|
devmem 0x200f0094 32 0x1; # VI_DATA9
|
||||||
|
|
||||||
devmem 0x2003002c 0xb4001; # sensor unreset, clk 27MHz, VI 99MHz
|
devmem 0x2003002c 32 0xc4001; # sensor unreset, clk 24MHz, VI 99MHz
|
||||||
;;
|
;;
|
||||||
sc2235)
|
sc2235)
|
||||||
devmem 0x200f0040 32 0x2; # I2C0_SCL
|
devmem 0x200f0040 32 0x2; # I2C0_SCL
|
||||||
|
@ -114,14 +141,15 @@ insert_ko()
|
||||||
insmod sys_config.ko vi_vpss_online=$b_arg_online sensor=$SENSOR pin_mux_select=0
|
insmod sys_config.ko vi_vpss_online=$b_arg_online sensor=$SENSOR pin_mux_select=0
|
||||||
|
|
||||||
# driver load
|
# driver load
|
||||||
insmod mmz.ko mmz=anonymous,0,$mmz_start,$mmz_size anony=1 || report_error
|
insert_mmz;
|
||||||
|
#insmod mmz.ko mmz=anonymous,0,$mmz_start,$mmz_size anony=1 || report_error
|
||||||
insmod hi_media.ko
|
insmod hi_media.ko
|
||||||
insmod hi3518e_base.ko
|
insmod hi3518e_base.ko
|
||||||
|
|
||||||
insmod hi3518e_sys.ko vi_vpss_online=$b_arg_online sensor=$SENSOR mem_total=$mem_total
|
insmod hi3518e_sys.ko vi_vpss_online=$b_arg_online sensor=$SENSOR mem_total=$mem_total
|
||||||
if [[ $? -ne 0 ]]; then
|
if [[ $? -ne 0 ]]; then
|
||||||
exit;
|
exit;
|
||||||
fi
|
fi
|
||||||
|
|
||||||
insmod hi3518e_tde.ko
|
insmod hi3518e_tde.ko
|
||||||
insmod hi3518e_region.ko
|
insmod hi3518e_region.ko
|
||||||
|
@ -144,7 +172,7 @@ insert_ko()
|
||||||
insmod sensor_i2c.ko
|
insmod sensor_i2c.ko
|
||||||
insmod pwm.ko
|
insmod pwm.ko
|
||||||
insmod piris.ko
|
insmod piris.ko
|
||||||
insert_sns
|
insert_sns
|
||||||
insert_audio
|
insert_audio
|
||||||
|
|
||||||
insmod hi_mipi.ko
|
insmod hi_mipi.ko
|
||||||
|
@ -304,6 +332,7 @@ fi
|
||||||
# Sensor config
|
# Sensor config
|
||||||
# SENSOR=${SENSOR:=imx307}
|
# SENSOR=${SENSOR:=imx307}
|
||||||
#
|
#
|
||||||
|
|
||||||
if [ -n "$SENSOR" ]; then
|
if [ -n "$SENSOR" ]; then
|
||||||
logger -s -p daemon.info -t hisilicon "Manualy set SENSOR as ${SENSOR}"
|
logger -s -p daemon.info -t hisilicon "Manualy set SENSOR as ${SENSOR}"
|
||||||
else
|
else
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
libsns_imx323.so
|
|
Loading…
Reference in New Issue