diff --git a/config/kernel/linux-sunxi64-current.config b/config/kernel/linux-sunxi64-current.config index 939eb48dcc..2b79f3ef88 100644 --- a/config/kernel/linux-sunxi64-current.config +++ b/config/kernel/linux-sunxi64-current.config @@ -4113,58 +4113,58 @@ CONFIG_VIDEO_CX25840=m # # Camera sensor devices # -# CONFIG_VIDEO_HI556 is not set -# CONFIG_VIDEO_IMX214 is not set -# CONFIG_VIDEO_IMX219 is not set -# CONFIG_VIDEO_IMX258 is not set -# CONFIG_VIDEO_IMX274 is not set -# CONFIG_VIDEO_IMX290 is not set -# CONFIG_VIDEO_IMX319 is not set -# CONFIG_VIDEO_IMX355 is not set +CONFIG_VIDEO_HI556=m +CONFIG_VIDEO_IMX214=m +CONFIG_VIDEO_IMX219=m +CONFIG_VIDEO_IMX258=m +CONFIG_VIDEO_IMX274=m +CONFIG_VIDEO_IMX290=m +CONFIG_VIDEO_IMX319=m +CONFIG_VIDEO_IMX355=m CONFIG_VIDEO_OV2640=m -# CONFIG_VIDEO_OV2659 is not set -# CONFIG_VIDEO_OV2680 is not set -# CONFIG_VIDEO_OV2685 is not set -# CONFIG_VIDEO_OV5640 is not set -# CONFIG_VIDEO_OV5645 is not set -# CONFIG_VIDEO_OV5647 is not set -# CONFIG_VIDEO_OV6650 is not set -# CONFIG_VIDEO_OV5670 is not set -# CONFIG_VIDEO_OV5675 is not set -# CONFIG_VIDEO_OV5695 is not set -# CONFIG_VIDEO_OV7251 is not set -# CONFIG_VIDEO_OV772X is not set -# CONFIG_VIDEO_OV7640 is not set -# CONFIG_VIDEO_OV7670 is not set -# CONFIG_VIDEO_OV7740 is not set -# CONFIG_VIDEO_OV8856 is not set -# CONFIG_VIDEO_OV9640 is not set -# CONFIG_VIDEO_OV9650 is not set -# CONFIG_VIDEO_OV13858 is not set -# CONFIG_VIDEO_VS6624 is not set -# CONFIG_VIDEO_MT9M001 is not set -# CONFIG_VIDEO_MT9M032 is not set -# CONFIG_VIDEO_MT9M111 is not set -# CONFIG_VIDEO_MT9P031 is not set -# CONFIG_VIDEO_MT9T001 is not set -# CONFIG_VIDEO_MT9T112 is not set +CONFIG_VIDEO_OV2659=m +CONFIG_VIDEO_OV2680=m +CONFIG_VIDEO_OV2685=m +CONFIG_VIDEO_OV5640=m +CONFIG_VIDEO_OV5645=m +CONFIG_VIDEO_OV5647=m +CONFIG_VIDEO_OV6650=m +CONFIG_VIDEO_OV5670=m +CONFIG_VIDEO_OV5675=m +CONFIG_VIDEO_OV5695=m +CONFIG_VIDEO_OV7251=m +CONFIG_VIDEO_OV772X=m +CONFIG_VIDEO_OV7640=m +CONFIG_VIDEO_OV7670=m +CONFIG_VIDEO_OV7740=m +CONFIG_VIDEO_OV8856=m +CONFIG_VIDEO_OV9640=m +CONFIG_VIDEO_OV9650=m +CONFIG_VIDEO_OV13858=m +CONFIG_VIDEO_VS6624=m +CONFIG_VIDEO_MT9M001=m +CONFIG_VIDEO_MT9M032=m +CONFIG_VIDEO_MT9M111=m +CONFIG_VIDEO_MT9P031=m +CONFIG_VIDEO_MT9T001=m +CONFIG_VIDEO_MT9T112=m CONFIG_VIDEO_MT9V011=m -# CONFIG_VIDEO_MT9V032 is not set -# CONFIG_VIDEO_MT9V111 is not set -# CONFIG_VIDEO_SR030PC30 is not set -# CONFIG_VIDEO_NOON010PC30 is not set -# CONFIG_VIDEO_M5MOLS is not set -# CONFIG_VIDEO_RDACM20 is not set -# CONFIG_VIDEO_RJ54N1 is not set -# CONFIG_VIDEO_S5K6AA is not set -# CONFIG_VIDEO_S5K6A3 is not set -# CONFIG_VIDEO_S5K4ECGX is not set -# CONFIG_VIDEO_S5K5BAF is not set -# CONFIG_VIDEO_SMIAPP is not set -# CONFIG_VIDEO_ET8EK8 is not set -# CONFIG_VIDEO_S5C73M3 is not set -# CONFIG_VIDEO_HM5065 is not set -# CONFIG_VIDEO_GC2145 is not set +CONFIG_VIDEO_MT9V032=m +CONFIG_VIDEO_MT9V111=m +CONFIG_VIDEO_SR030PC30=m +CONFIG_VIDEO_NOON010PC30=m +CONFIG_VIDEO_M5MOLS=m +CONFIG_VIDEO_RDACM20=m +CONFIG_VIDEO_RJ54N1=m +CONFIG_VIDEO_S5K6AA=m +CONFIG_VIDEO_S5K6A3=m +CONFIG_VIDEO_S5K4ECGX=m +CONFIG_VIDEO_S5K5BAF=m +CONFIG_VIDEO_SMIAPP=m +CONFIG_VIDEO_ET8EK8=m +CONFIG_VIDEO_S5C73M3=m +CONFIG_VIDEO_HM5065=m +CONFIG_VIDEO_GC2145=m # end of Camera sensor devices # diff --git a/config/kernel/linux-sunxi64-dev.config b/config/kernel/linux-sunxi64-dev.config index 641827e6d6..0491216818 100644 --- a/config/kernel/linux-sunxi64-dev.config +++ b/config/kernel/linux-sunxi64-dev.config @@ -4115,58 +4115,58 @@ CONFIG_VIDEO_CX25840=m # # Camera sensor devices # -# CONFIG_VIDEO_HI556 is not set -# CONFIG_VIDEO_IMX214 is not set -# CONFIG_VIDEO_IMX219 is not set -# CONFIG_VIDEO_IMX258 is not set -# CONFIG_VIDEO_IMX274 is not set -# CONFIG_VIDEO_IMX290 is not set -# CONFIG_VIDEO_IMX319 is not set -# CONFIG_VIDEO_IMX355 is not set +CONFIG_VIDEO_HI556=m +CONFIG_VIDEO_IMX214=m +CONFIG_VIDEO_IMX219=m +CONFIG_VIDEO_IMX258=m +CONFIG_VIDEO_IMX274=m +CONFIG_VIDEO_IMX290=m +CONFIG_VIDEO_IMX319=m +CONFIG_VIDEO_IMX355=m CONFIG_VIDEO_OV2640=m -# CONFIG_VIDEO_OV2659 is not set -# CONFIG_VIDEO_OV2680 is not set -# CONFIG_VIDEO_OV2685 is not set -# CONFIG_VIDEO_OV5640 is not set -# CONFIG_VIDEO_OV5645 is not set -# CONFIG_VIDEO_OV5647 is not set -# CONFIG_VIDEO_OV6650 is not set -# CONFIG_VIDEO_OV5670 is not set -# CONFIG_VIDEO_OV5675 is not set -# CONFIG_VIDEO_OV5695 is not set -# CONFIG_VIDEO_OV7251 is not set -# CONFIG_VIDEO_OV772X is not set -# CONFIG_VIDEO_OV7640 is not set -# CONFIG_VIDEO_OV7670 is not set -# CONFIG_VIDEO_OV7740 is not set -# CONFIG_VIDEO_OV8856 is not set -# CONFIG_VIDEO_OV9640 is not set -# CONFIG_VIDEO_OV9650 is not set -# CONFIG_VIDEO_OV13858 is not set -# CONFIG_VIDEO_VS6624 is not set -# CONFIG_VIDEO_MT9M001 is not set -# CONFIG_VIDEO_MT9M032 is not set -# CONFIG_VIDEO_MT9M111 is not set -# CONFIG_VIDEO_MT9P031 is not set -# CONFIG_VIDEO_MT9T001 is not set -# CONFIG_VIDEO_MT9T112 is not set +CONFIG_VIDEO_OV2659=m +CONFIG_VIDEO_OV2680=m +CONFIG_VIDEO_OV2685=m +CONFIG_VIDEO_OV5640=m +CONFIG_VIDEO_OV5645=m +CONFIG_VIDEO_OV5647=m +CONFIG_VIDEO_OV6650=m +CONFIG_VIDEO_OV5670=m +CONFIG_VIDEO_OV5675=m +CONFIG_VIDEO_OV5695=m +CONFIG_VIDEO_OV7251=m +CONFIG_VIDEO_OV772X=m +CONFIG_VIDEO_OV7640=m +CONFIG_VIDEO_OV7670=m +CONFIG_VIDEO_OV7740=m +CONFIG_VIDEO_OV8856=m +CONFIG_VIDEO_OV9640=m +CONFIG_VIDEO_OV9650=m +CONFIG_VIDEO_OV13858=m +CONFIG_VIDEO_VS6624=m +CONFIG_VIDEO_MT9M001=m +CONFIG_VIDEO_MT9M032=m +CONFIG_VIDEO_MT9M111=m +CONFIG_VIDEO_MT9P031=m +CONFIG_VIDEO_MT9T001=m +CONFIG_VIDEO_MT9T112=m CONFIG_VIDEO_MT9V011=m -# CONFIG_VIDEO_MT9V032 is not set -# CONFIG_VIDEO_MT9V111 is not set -# CONFIG_VIDEO_SR030PC30 is not set -# CONFIG_VIDEO_NOON010PC30 is not set -# CONFIG_VIDEO_M5MOLS is not set -# CONFIG_VIDEO_RDACM20 is not set -# CONFIG_VIDEO_RJ54N1 is not set -# CONFIG_VIDEO_S5K6AA is not set -# CONFIG_VIDEO_S5K6A3 is not set -# CONFIG_VIDEO_S5K4ECGX is not set -# CONFIG_VIDEO_S5K5BAF is not set -# CONFIG_VIDEO_SMIAPP is not set -# CONFIG_VIDEO_ET8EK8 is not set -# CONFIG_VIDEO_S5C73M3 is not set -# CONFIG_VIDEO_HM5065 is not set -# CONFIG_VIDEO_GC2145 is not set +CONFIG_VIDEO_MT9V032=m +CONFIG_VIDEO_MT9V111=m +CONFIG_VIDEO_SR030PC30=m +CONFIG_VIDEO_NOON010PC30=m +CONFIG_VIDEO_M5MOLS=m +CONFIG_VIDEO_RDACM20=m +CONFIG_VIDEO_RJ54N1=m +CONFIG_VIDEO_S5K6AA=m +CONFIG_VIDEO_S5K6A3=m +CONFIG_VIDEO_S5K4ECGX=m +CONFIG_VIDEO_S5K5BAF=m +CONFIG_VIDEO_SMIAPP=m +CONFIG_VIDEO_ET8EK8=m +CONFIG_VIDEO_S5C73M3=m +CONFIG_VIDEO_HM5065=m +CONFIG_VIDEO_GC2145=m # end of Camera sensor devices # diff --git a/config/sources/families/include/rockchip64_common.inc b/config/sources/families/include/rockchip64_common.inc index 18634e632d..4f8fa8e1a4 100644 --- a/config/sources/families/include/rockchip64_common.inc +++ b/config/sources/families/include/rockchip64_common.inc @@ -410,6 +410,7 @@ family_tweaks_bsp() # UPS service cp $SRC/packages/bsp/helios64/helios64-ups.service $destination/lib/systemd/system/ cp $SRC/packages/bsp/helios64/helios64-ups.timer $destination/lib/systemd/system/ + install -m 755 $SRC/packages/bsp/helios64/helios64-ups.sh $destination/usr/bin/helios64-ups.sh fi diff --git a/packages/bsp/helios64/helios64-ups.service b/packages/bsp/helios64/helios64-ups.service index 7d160f6d4a..7dd43da703 100644 --- a/packages/bsp/helios64/helios64-ups.service +++ b/packages/bsp/helios64/helios64-ups.service @@ -3,4 +3,4 @@ Description=Helios64 UPS Action [Service] Type=oneshot -ExecStart=/usr/sbin/poweroff +ExecStart=/usr/bin/helios64-ups.sh diff --git a/packages/bsp/helios64/helios64-ups.sh b/packages/bsp/helios64/helios64-ups.sh new file mode 100755 index 0000000000..04fbf2280c --- /dev/null +++ b/packages/bsp/helios64/helios64-ups.sh @@ -0,0 +1,12 @@ +#!/bin/sh + +#7.0V 916 Recommended threshold to force shutdown system +TH=916 + +val=$(cat '/sys/bus/iio/devices/iio:device0/in_voltage2_raw') +sca=$(cat '/sys/bus/iio/devices/iio:device0/in_voltage_scale') +adc=$(echo "$val * $sca / 1" | bc) + +if [ "$adc" -le $TH ]; then + /usr/sbin/poweroff +fi diff --git a/packages/bsp/helios64/helios64-ups.timer b/packages/bsp/helios64/helios64-ups.timer index be01139a32..1ce7c68717 100644 --- a/packages/bsp/helios64/helios64-ups.timer +++ b/packages/bsp/helios64/helios64-ups.timer @@ -2,8 +2,9 @@ Description=Helios64 UPS Shutdown timer on power loss [Timer] -OnActiveSec=10m +OnActiveSec=20 AccuracySec=1s +OnUnitActiveSec=10 [Install] WantedBy=timers.target diff --git a/patch/kernel/sunxi-current/0001-Revert-block-simplify-set_init_blocksize-to-regain-l.patch b/patch/kernel/sunxi-current/0001-Revert-block-simplify-set_init_blocksize-to-regain-l.patch deleted file mode 100644 index f529c1fab9..0000000000 --- a/patch/kernel/sunxi-current/0001-Revert-block-simplify-set_init_blocksize-to-regain-l.patch +++ /dev/null @@ -1,70 +0,0 @@ -From b2b8b700c7be053eeadc0b3e172e18a0d148fa5e Mon Sep 17 00:00:00 2001 -From: Maxim Mikityanskiy -Date: Tue, 26 Jan 2021 21:46:47 +0200 -Subject: [PATCH] Revert "block: simplify set_init_blocksize" to regain lost - performance - -The cited commit introduced a serious regression with SATA write speed, -as found by bisecting. This patch reverts this commit, which restores -write speed back to the values observed before this commit. - -The performance tests were done on a Helios4 NAS (2nd batch) with 4 HDDs -(WD8003FFBX) using dd (bs=1M count=2000). "Direct" is a test with a -single HDD, the rest are different RAID levels built over the first -partitions of 4 HDDs. Test results are in MB/s, R is read, W is write. - - | Direct | RAID0 | RAID10 f2 | RAID10 n2 | RAID6 -----------------+--------+-------+-----------+-----------+-------- -9011495c9466 | R:256 | R:313 | R:276 | R:313 | R:323 -(before faulty) | W:254 | W:253 | W:195 | W:204 | W:117 -----------------+--------+-------+-----------+-----------+-------- -5ff9f19231a0 | R:257 | R:398 | R:312 | R:344 | R:391 -(faulty commit) | W:154 | W:122 | W:67.7 | W:66.6 | W:67.2 -----------------+--------+-------+-----------+-----------+-------- -5.10.10 | R:256 | R:401 | R:312 | R:356 | R:375 -unpatched | W:149 | W:123 | W:64 | W:64.1 | W:61.5 -----------------+--------+-------+-----------+-----------+-------- -5.10.10 | R:255 | R:396 | R:312 | R:340 | R:393 -patched | W:247 | W:274 | W:220 | W:225 | W:121 - -Applying this patch doesn't hurt read performance, while improves the -write speed by 1.5x - 3.5x (more impact on RAID tests). The write speed -is restored back to the state before the faulty commit, and even a bit -higher in RAID tests (which aren't HDD-bound on this device) - that is -likely related to other optimizations done between the faulty commit and -5.10.10 which also improved the read speed. - -Upstream status: accepted to 5.11. -https://www.spinics.net/lists/linux-block/msg64471.html - -Signed-off-by: Maxim Mikityanskiy -Fixes: 5ff9f19231a0 ("block: simplify set_init_blocksize") -Cc: Christoph Hellwig -Cc: Jens Axboe ---- - fs/block_dev.c | 10 +++++++++- - 1 file changed, 9 insertions(+), 1 deletion(-) - -diff --git a/fs/block_dev.c b/fs/block_dev.c -index 3b8963e228a1..235b5042672e 100644 ---- a/fs/block_dev.c -+++ b/fs/block_dev.c -@@ -130,7 +130,15 @@ EXPORT_SYMBOL(truncate_bdev_range); - - static void set_init_blocksize(struct block_device *bdev) - { -- bdev->bd_inode->i_blkbits = blksize_bits(bdev_logical_block_size(bdev)); -+ unsigned int bsize = bdev_logical_block_size(bdev); -+ loff_t size = i_size_read(bdev->bd_inode); -+ -+ while (bsize < PAGE_SIZE) { -+ if (size & bsize) -+ break; -+ bsize <<= 1; -+ } -+ bdev->bd_inode->i_blkbits = blksize_bits(bsize); - } - - int set_blocksize(struct block_device *bdev, int size) --- -2.30.0