From 38b429ddda978116e69706ea584a9ef4dc2d7f97 Mon Sep 17 00:00:00 2001 From: Dmitry Ilyin Date: Tue, 27 Apr 2021 09:39:52 +0300 Subject: [PATCH] Replace sc2315e testing driver --- .../hisilicon-osdrv4/files/script/ircut_demo | 130 +++++++++--------- .../sensor/config/sc2315e_i2c_1080p_line.ini | 4 +- .../files/sensor/libsns_sc2315e.so | Bin 35360 -> 0 bytes ..._eee.so => libsns_sc2315e_experimental.so} | Bin 34796 -> 34796 bytes 4 files changed, 66 insertions(+), 68 deletions(-) delete mode 100644 br-ext-chip-hisilicon/package/hisilicon-osdrv4/files/sensor/libsns_sc2315e.so rename br-ext-chip-hisilicon/package/hisilicon-osdrv4/files/sensor/{libsns_sc2235_eee.so => libsns_sc2315e_experimental.so} (52%) diff --git a/br-ext-chip-hisilicon/package/hisilicon-osdrv4/files/script/ircut_demo b/br-ext-chip-hisilicon/package/hisilicon-osdrv4/files/script/ircut_demo index dfabf11c..597faa58 100755 --- a/br-ext-chip-hisilicon/package/hisilicon-osdrv4/files/script/ircut_demo +++ b/br-ext-chip-hisilicon/package/hisilicon-osdrv4/files/script/ircut_demo @@ -4,81 +4,79 @@ #GPIO1_1 -> GPIO9 (1*8+1 = 9) #(normal mode) -ir_cut_enable() -{ - # pin_mux - echo "$gpio_0" > /sys/class/gpio/unexport; - echo "$gpio_1" > /sys/class/gpio/unexport; - echo "$gpio_0" > /sys/class/gpio/export; - 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 (normal 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; +ir_cut_enable() { + # pin_mux + echo "$gpio_0" >/sys/class/gpio/unexport + echo "$gpio_1" >/sys/class/gpio/unexport + echo "$gpio_0" >/sys/class/gpio/export + 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 (normal 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 } # (ir mode) -ir_cut_disable() -{ - # pin_mux - echo "$gpio_0" > /sys/class/gpio/unexport; - echo "$gpio_1" > /sys/class/gpio/unexport; - echo "$gpio_0" > /sys/class/gpio/export; - 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 (ir 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; +ir_cut_disable() { + # pin_mux + echo "$gpio_0" >/sys/class/gpio/unexport + echo "$gpio_1" >/sys/class/gpio/unexport + echo "$gpio_0" >/sys/class/gpio/export + 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 (ir 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 "; - echo "for example:"; - echo "ir mode : ./ircut_demo hi3516ev200 1"; + echo "usage : ./ircut_demo " + echo "for example:" + echo "ir mode : ./ircut_demo hi3516ev200 1" else - if [ $1 = "hi3516ev200" ]; then - gpio_0=8; - gpio_1=9; - elif [ $1 = "hi3516ev300" ]; then - gpio_0=8; - gpio_1=9; - else - echo "wrong chipid: $1, please select: hi3516ev200 or hi3516ev300."; - exit; - fi + if [ $1 = "hi3516ev200" ]; then + gpio_0=8 + gpio_1=9 + elif [ $1 = "hi3516ev300" ]; then + gpio_0=8 + gpio_1=9 + else + echo "wrong chipid: $1, please select: hi3516ev200 or hi3516ev300." + exit + fi - if [ $2 -eq 0 ]; then - echo "normal mode, ir_cut on" - ir_cut_enable > /dev/null; - elif [ $2 -eq 1 ]; then - echo "ir mode, ir_cut off" - ir_cut_disable > /dev/null; - else - echo "invalid mode, please slect 0 or 1." - fi + if [ $2 -eq 0 ]; then + echo "normal mode, ir_cut on" + ir_cut_enable >/dev/null + elif [ $2 -eq 1 ]; then + echo "ir mode, ir_cut off" + ir_cut_disable >/dev/null + else + echo "invalid mode, please slect 0 or 1." + fi fi diff --git a/br-ext-chip-hisilicon/package/hisilicon-osdrv4/files/sensor/config/sc2315e_i2c_1080p_line.ini b/br-ext-chip-hisilicon/package/hisilicon-osdrv4/files/sensor/config/sc2315e_i2c_1080p_line.ini index 6a88164b..4fc05755 100644 --- a/br-ext-chip-hisilicon/package/hisilicon-osdrv4/files/sensor/config/sc2315e_i2c_1080p_line.ini +++ b/br-ext-chip-hisilicon/package/hisilicon-osdrv4/files/sensor/config/sc2315e_i2c_1080p_line.ini @@ -12,7 +12,7 @@ Mode =0 ;WDR_MODE_NONE = 0 ;WDR_MODE_4To1_LINE = 9 ;WDR_MODE_4To1_FRAME = 10 ;WDR_MODE_4To1_FRAME_FULL_RATE = 11 -DllFile = /usr/lib/sensors/libsns_sc2235_eee.so ;sensor lib path +DllFile = /usr/lib/sensors/sc2315e_experimental.so ;sensor lib path [mode] @@ -75,7 +75,7 @@ Isp_y =0 Isp_W =1920 Isp_H =1080 Isp_FrameRate=30 -Isp_Bayer =0 ;BAYER_RGGB=0, BAYER_GRBG=1, BAYER_GBRG=2, BAYER_BGGR=3 +Isp_Bayer =3 ;BAYER_RGGB=0, BAYER_GRBG=1, BAYER_GBRG=2, BAYER_BGGR=3 [vi_dev] diff --git a/br-ext-chip-hisilicon/package/hisilicon-osdrv4/files/sensor/libsns_sc2315e.so b/br-ext-chip-hisilicon/package/hisilicon-osdrv4/files/sensor/libsns_sc2315e.so deleted file mode 100644 index 70aa59a8370ff58628d9dfb003b5e812c23d845c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 35360 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 I?3?HP1;RA{z5oCK diff --git a/br-ext-chip-hisilicon/package/hisilicon-osdrv4/files/sensor/libsns_sc2235_eee.so b/br-ext-chip-hisilicon/package/hisilicon-osdrv4/files/sensor/libsns_sc2315e_experimental.so similarity index 52% rename from br-ext-chip-hisilicon/package/hisilicon-osdrv4/files/sensor/libsns_sc2235_eee.so rename to br-ext-chip-hisilicon/package/hisilicon-osdrv4/files/sensor/libsns_sc2315e_experimental.so index 4d86651e5598289cacd85711e495ac04f80c91af..4a436adb13f69fc66e9f1fb9800efdc0a4ad86ff 100644 GIT binary patch delta 8949 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 delta 11216 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