diff --git a/general/package/hisilicon-osdrv-hi3516cv100/files/script/load_hisilicon b/general/package/hisilicon-osdrv-hi3516cv100/files/script/load_hisilicon
index 6d668c4f..814fee63 100755
--- a/general/package/hisilicon-osdrv-hi3516cv100/files/script/load_hisilicon
+++ b/general/package/hisilicon-osdrv-hi3516cv100/files/script/load_hisilicon
@@ -89,6 +89,12 @@ insert_sns() {
 		insmod ssp_pana.ko
 		;;
 	imx104 | imx123 | imx138_spi | imx222 | imx225 | imx322 | imx323)
+		devmem 0x200f0000 32 0x1 # pinmux GPIO1_0 [SHUTTER_TRIG]
+		devmem 0x200f007c 32 0x1 # pinmux GPIO1_7 [FLASH_TRIG]
+		devmem 0x200f00b8 32 0 # pinmux [GPIO5_1] USB_PWREN
+		devmem 0x200f0138 32 0 # pinmux [GPIO0_6] SVB_PWM TEMPER_DQ
+		devmem 0x200f00c0 32 0 # GPIO5_3 for Beward DS06
+		devmem 0x200f013c 32 0x1 #pinmux SYS_RSTN_OUT [GPIO0_7] TEMPER_DQ
 		devmem 0x200f000c 32 0x1 #pinmux SPI0
 		devmem 0x200f0010 32 0x1 #pinmux SPI0
 		devmem 0x200f0014 32 0x1 #pinmux SPI0
@@ -325,7 +331,7 @@ insert_ko() {
 	insmod hi3518_rc.ko
 	insmod hi3518_region.ko
 
-	# insmod hi3518_vda.ko
+	insmod hi3518_vda.ko
 	insmod hi3518_ive.ko
 
 	insmod hi_i2c.ko
@@ -356,7 +362,7 @@ remove_ko() {
 	#rmmod -w gpioi2c
 
 	rmmod -w hi3518_ive
-	# rmmod -w hi3518_vda
+	rmmod -w hi3518_vda
 
 	rmmod -w hi3518_region
 	rmmod -w hi3518_rc
diff --git a/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/config/imx225_i2c_dc_720p.ini b/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/config/imx225_i2c_720p.ini
similarity index 99%
rename from general/package/hisilicon-osdrv-hi3516cv100/files/sensor/config/imx225_i2c_dc_720p.ini
rename to general/package/hisilicon-osdrv-hi3516cv100/files/sensor/config/imx225_i2c_720p.ini
index dcaac08b..642300cf 100644
--- a/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/config/imx225_i2c_dc_720p.ini
+++ b/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/config/imx225_i2c_720p.ini
@@ -8,7 +8,7 @@ Mode          =0                        ;WDR_MODE_NONE = 0
                                         ;WDR_MODE_2To1_LINE = 2
                                         ;WDR_MODE_2To1_FRAME = 3
                                         ;WDR_MODE_2To1_FRAME_FULL_RATE =4 ...etc
-DllFile   = /usr/lib/sensors/libsns_imx225_i2c_dc_720p.so
+DllFile   = /usr/lib/sensors/libsns_imx225_i2c_720p.so
 
 
 [mode]
diff --git a/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/config/imx225_i2c_960p.ini b/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/config/imx225_i2c_960p.ini
new file mode 100644
index 00000000..5dd30332
--- /dev/null
+++ b/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/config/imx225_i2c_960p.ini
@@ -0,0 +1,217 @@
+# Beward DS06
+
+[vb_conf]                                                 
+VbCnt=10                                                                                              
+
+[sensor]
+Sensor_type   =imx225_960p              ;sensor name
+DllFile   = /usr/lib/sensors/libsns_imx225_i2c_960p.so
+
+[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      =10
+Isp_y      =20
+Isp_W      =1280
+Isp_H      =960
+Isp_FrameRate=30
+Isp_Bayer  =2   ;BAYER_RGGB=0, BAYER_GRBG=1, BAYER_GBRG=2, BAYER_BGGR=3
+
+
+[vi_dev]
+Input_mod =2    ;VI_INPUT_MODE_BT656 = 0
+                ;VI_INPUT_MODE_BT601,
+                ;VI_INPUT_MODE_DIGITAL_CAMERA
+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       =0
+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 =0   ;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 =1280  ;Horizontal effetive width
+Timingblank_HsyncHbb =0     ;Horizontal back blanking width
+Timingblank_VsyncVfb =0     ;Vertical front blanking height
+Timingblank_VsyncVact =960  ;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=1280  ;
+DevRect_h=960  ;
+
+[vi_chn]
+CapRect_X    =0
+CapRect_Y    =0
+CapRect_Width=1280
+CapRect_Height=960
+DestSize_Width=1280
+DestSize_Height=960
+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    =19;PIXEL_FORMAT_YUV_SEMIPLANAR_422 = 22
+                ;PIXEL_FORMAT_YUV_SEMIPLANAR_420 = 23 ...etc
+CompressMode =0 ;COMPRESS_MODE_NONE = 0
+                ;COMPRESS_MODE_SEG =1 ...etc
+
+SrcFrameRate=-1 ;Source frame rate. -1: not controll
+FrameRate   =-1 ;Target frame rate. -1: not controll
+
+[vi_ext]                                                   
+Width=320                                           
+Height=240
+PixFormat = 19
+SrcFrameRate=-1 ;Source frame rate. -1: not controll                                           
+FrameRate   =-1 ;Target frame rate. -1: not controll                                                 
+
+[vpss_group]
+Vpss_DciEn  =FALSE
+Vpss_IeEn   =FALSE
+Vpss_NrEn   =TRUE
+Vpss_HistEn =FALSE
+Vpss_DieMode=1  ;Define de-interlace mode
+                ;VPSS_DIE_MODE_AUTO  = 0,
+                ;VPSS_DIE_MODE_NODIE = 1,
+                ;VPSS_DIE_MODE_DIE   = 2,
+[vpss_corp]
+Crop_enable =FALSE
+Coordinate  =1  ;VPSS_CROP_RATIO_COOR = 0,   /*Ratio coordinate*/
+		        ;VPSS_CROP_ABS_COOR = 1      /*Absolute coordinate*/
+Crop_X      =128
+Crop_Y      =128
+Crop_W      =1158
+Crop_H      =562
+
+                                                           
+[vpss_chn]
+Vpss_W    =1280
+Vpss_H    =960
+CompressMode=0  ;COMPRESS_MODE_NONE = 0
+		        ;COMPRESS_MODE_SEG =1 ...etc
+
+[venc_comm]
+venc_chn =1     ;create venc chn number;(0,2]
+BufCnt = 1      ;network meida-trans bufcnt
+
+[venc_0]
+PicWidth  =1280
+PicHeight =960
+Profile   =2
+RcMode   =VENC_RC_MODE_H264CBR
+
+Gop    =50
+StatTime =2
+ViFrmRate  =-1
+TargetFrmRate=10
+;----- only for VENC_RC_MODE_H264CBR ----------
+BitRate=4096
+FluctuateLevel=0
+;----- only for VENC_RC_MODE_H264VBR ----------
+MaxBitRate =10000
+
+MaxQp=32
+MinQp=24
+;----- only for VENC_RC_MODE_H264FIXQP ----------
+IQp=45
+
+PQp=40
+
+[venc_1]
+PicWidth  =1280
+PicHeight =960
+Profile   =2
+RcMode   =VENC_RC_MODE_H264CBR
+
+Gop    =50
+StatTime =2
+ViFrmRate  =-1
+TargetFrmRate=15
+;----- only for VENC_RC_MODE_H264CBR ----------
+BitRate=4096
+FluctuateLevel=0
+;----- only for VENC_RC_MODE_H264VBR ----------
+MaxBitRate =10000
+
+MaxQp=32
+
+MinQp=24
+;----- only for VENC_RC_MODE_H264FIXQP ----------
+IQp=40
+
+PQp=45
+
+[bind]
+ViDev   =0
+ViChn   =0
+VpssGrp =0
+VpssChn = 0
+VoDev   =0
+VoChn   =0
+ViSnapChn =0
+VpssSnapGrp=0
+VpssSnapChn=1
+VencSnapGrp=1
+VencSnapChn=3
diff --git a/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/config/jxh42_i2c_dc_720p.ini b/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/config/jxh42_i2c_dc_720p.ini
index 8c2a5f65..c5204028 100644
--- a/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/config/jxh42_i2c_dc_720p.ini
+++ b/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/config/jxh42_i2c_dc_720p.ini
@@ -5,7 +5,7 @@ Mode          =0                        ;WDR_MODE_NONE = 0
                                         ;WDR_MODE_2To1_LINE = 2
                                         ;WDR_MODE_2To1_LINE = 3
                                         ;WDR_MODE_2To1_FRAME_FULL_RATE =4 ...etc
-DllFile   = /usr/lib/sensors/libsns_soih42.so    ;sensor lib path
+DllFile   = /usr/lib/sensors/libsns_jxh42_i2c.so
 
 
 [mode]
diff --git a/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/libsns_imx225.so b/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/libsns_imx225.so
deleted file mode 100644
index d7060c94..00000000
Binary files a/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/libsns_imx225.so and /dev/null differ
diff --git a/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/libsns_imx225_i2c_720p.so b/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/libsns_imx225_i2c_720p.so
new file mode 100755
index 00000000..840e775f
Binary files /dev/null and b/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/libsns_imx225_i2c_720p.so differ
diff --git a/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/libsns_imx225_i2c_960p.so b/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/libsns_imx225_i2c_960p.so
new file mode 100755
index 00000000..2432be56
Binary files /dev/null and b/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/libsns_imx225_i2c_960p.so differ
diff --git a/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/libsns_imx225_i2c_dc_720p.so b/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/libsns_imx225_i2c_dc_720p.so
deleted file mode 100644
index d92ffb28..00000000
Binary files a/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/libsns_imx225_i2c_dc_720p.so and /dev/null differ
diff --git a/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/libsns_imx225_spi_720p.so b/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/libsns_imx225_spi_720p.so
new file mode 100755
index 00000000..2093b8aa
Binary files /dev/null and b/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/libsns_imx225_spi_720p.so differ
diff --git a/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/libsns_jxh42_i2c.so b/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/libsns_jxh42_i2c.so
new file mode 100755
index 00000000..56d79b2c
Binary files /dev/null and b/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/libsns_jxh42_i2c.so differ
diff --git a/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/libsns_soih42.so b/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/libsns_soih42.so
deleted file mode 100644
index 061c5cd5..00000000
Binary files a/general/package/hisilicon-osdrv-hi3516cv100/files/sensor/libsns_soih42.so and /dev/null differ
diff --git a/general/package/hisilicon-osdrv-hi3516cv100/hisilicon-osdrv-hi3516cv100.mk b/general/package/hisilicon-osdrv-hi3516cv100/hisilicon-osdrv-hi3516cv100.mk
index caea5e36..6066594e 100644
--- a/general/package/hisilicon-osdrv-hi3516cv100/hisilicon-osdrv-hi3516cv100.mk
+++ b/general/package/hisilicon-osdrv-hi3516cv100/hisilicon-osdrv-hi3516cv100.mk
@@ -41,7 +41,7 @@ define HISILICON_OSDRV_HI3516CV100_INSTALL_TARGET_CMDS
 	$(INSTALL) -m 644 -t $(TARGET_DIR)/lib/modules/3.0.8/hisilicon $(HISILICON_OSDRV_HI3516CV100_PKGDIR)/files/kmod/hi3518_sio.ko
 	$(INSTALL) -m 644 -t $(TARGET_DIR)/lib/modules/3.0.8/hisilicon $(HISILICON_OSDRV_HI3516CV100_PKGDIR)/files/kmod/hi3518_sys.ko
 	$(INSTALL) -m 644 -t $(TARGET_DIR)/lib/modules/3.0.8/hisilicon $(HISILICON_OSDRV_HI3516CV100_PKGDIR)/files/kmod/hi3518_tde.ko
-	# $(INSTALL) -m 644 -t $(TARGET_DIR)/lib/modules/3.0.8/hisilicon $(HISILICON_OSDRV_HI3516CV100_PKGDIR)/files/kmod/hi3518_vda.ko
+	$(INSTALL) -m 644 -t $(TARGET_DIR)/lib/modules/3.0.8/hisilicon $(HISILICON_OSDRV_HI3516CV100_PKGDIR)/files/kmod/hi3518_vda.ko
 	$(INSTALL) -m 644 -t $(TARGET_DIR)/lib/modules/3.0.8/hisilicon $(HISILICON_OSDRV_HI3516CV100_PKGDIR)/files/kmod/hi3518_venc.ko
 	$(INSTALL) -m 644 -t $(TARGET_DIR)/lib/modules/3.0.8/hisilicon $(HISILICON_OSDRV_HI3516CV100_PKGDIR)/files/kmod/hi3518_viu.ko
 	# $(INSTALL) -m 644 -t $(TARGET_DIR)/lib/modules/3.0.8/hisilicon $(HISILICON_OSDRV_HI3516CV100_PKGDIR)/files/kmod/hi3518_vou.ko