* Bump sunxi kernels
* sunxi-5.19: Remove pre-applied patch, adapt for series
* sunxi-5.15: Adapt patches to the series, remove previously applied
* Bump it again
Co-authored-by: The-going <48602507+The-going@users.noreply.github.com>
* Skip applying fixes for touchscreen: goodix.
This device is not supported by armbian.
Patch fixes cannot be tested on real hardware.
* Bring the patch format to the form git-format-patch
for application by the `git am` command.
* sunxi-5.17: Fix include uapi spi spidev module
* add a compatible string alias "spi-dev" for spidev module
* overlay: Change the string compatible "spidev" to "spi-dev"
* remove unused patches
* drv: spi: spidev: fix header uapi
* Add alias "spi-dev" for module spidev
Add the armbian alias "spi-dev" to load and
initialize the spidev module from the device tree.
* Move patches for orangepi3-lts to series
* Remove unused patches
* sunxi-5.15: Add reg_ahci_5v status okay for bananapro board
* Bananapro: add AXP209 regulators
* Fix series.conf, Disable the patch that is not being applied.
add CONFIG_GPIO_SYSFS=y to linux-sunxi64-current.config and linux-sunxi64-edge.config
remove if EXPERT from /sys/class/gpio/... (sysfs interface) in /drivers/gpio/Kconfig
* Fix duplicate nodes for sun50i-h5-orangepi-pc2
* Remove unused patch for pinctrl: sunxi: Fix deadlock.
This fix duplicates the upstream commit
896d1b8a36129c3f1378fbbafd7c394a877635b5 of the linux-5.15.y branch
pinctrl: sunxi: Use unique lockdep classes for IRQs
commit bac129dbc6560dfeb634c03f0c08b78024e71915 upstream.
This driver, like several others, uses a chained IRQ for each GPIO bank,
and forwards .irq_set_wake to the GPIO bank's upstream IRQ. As a result,
a call to irq_set_irq_wake() needs to lock both the upstream and
downstream irq_desc's. Lockdep considers this to be a possible deadlock
when the irq_desc's share lockdep classes, which they do by default:
============================================
WARNING: possible recursive locking detected
5.17.0-rc3-00394-gc849047c2473 #1 Not tainted
...
* Add to series.armbian Fix-duplicate-nodes-for-sun50i-h5-orangepi-pc2.patch
The problem with duplicate nodes in the device tree is that the first
one in the queue will be applied. The subsequent one will be ignored,
not replaced.
Fix spi-nor node initialization error for orangepi-pc2
[ 1.288263] spi-nor spi0.0: supply vdd not found, using dummy regulator
[ 1.306391] spi-nor spi0.0: mx25l1606e (2048 Kbytes)
[ 1.845203] Freeing initrd memory: 10824K
[ 1.855263] sun6i-spi 1c68000.spi: chipselect 0 already in use
[ 1.861159] spi_master spi0: spi_device register error /soc/spi@1c68000/spi-flash@0
[ 1.868842] spi_master spi0: Failed to create SPI device for /soc/spi@1c68000/spi-flash@0
Remove duplicate nodes from applied patches for the board
sun50i-h5-orangepi-pc2. After this fix:
[ 1.290252] sun50i-h5-pinctrl 1c20800.pinctrl: supply vcc-pc not found, using dummy regulator
[ 1.291250] spi-nor spi0.0: supply vdd not found, using dummy regulator
[ 1.310397] spi-nor spi0.0: mx25l1606e (2048 Kbytes)
[ 1.845686] Freeing initrd memory: 10824K
[ 1.854333] 2 fixed-partitions partitions found on MTD device spi0.0
[ 1.854369] Creating 2 MTD partitions on "spi0.0":
[ 1.854381] 0x000000000000-0x000000100000 : "uboot"
[ 1.855679] 0x000000100000-0x000000200000 : "env"
* This is already contained in the 5.15.27 kernel
pinctrl: sunxi: Use unique lockdep classes for IRQs
commit 896d1b8a36129c3f1378fbbafd7c394a877635b5 linux-5.15.y
commit bac129dbc6560dfeb634c03f0c08b78024e71915 upstream.
This driver, like several others, uses a chained IRQ for each GPIO bank,
and forwards .irq_set_wake to the GPIO bank's upstream IRQ. As a result,
a call to irq_set_irq_wake() needs to lock both the upstream and
downstream irq_desc's. Lockdep considers this to be a possible deadlock
when the irq_desc's share lockdep classes, which they do by default:
============================================
WARNING: possible recursive locking detected
5.17.0-rc3-00394-gc849047c2473 #1 Not tainted
--------------------------------------------
init/307 is trying to acquire lock:
c2dfe27c (&irq_desc_lock_class){-.-.}-{2:2}, at: __irq_get_desc_lock+0x58/0xa0
but task is already holding lock:
c3c0ac7c (&irq_desc_lock_class){-.-.}-{2:2}, at: __irq_get_desc_lock+0x58/0xa0
other info that might help us debug this:
Possible unsafe locking scenario:
CPU0
----
lock(&irq_desc_lock_class);
lock(&irq_desc_lock_class);
*** DEADLOCK ***
May be due to missing lock nesting notation
4 locks held by init/307:
#0: c1f29f18 (system_transition_mutex){+.+.}-{3:3}, at: __do_sys_reboot+0x90/0x23c
#1: c20f7760 (&dev->mutex){....}-{3:3}, at: device_shutdown+0xf4/0x224
#2: c2e804d8 (&dev->mutex){....}-{3:3}, at: device_shutdown+0x104/0x224
#3: c3c0ac7c (&irq_desc_lock_class){-.-.}-{2:2}, at: __irq_get_desc_lock+0x58/0xa0
stack backtrace:
CPU: 0 PID: 307 Comm: init Not tainted 5.17.0-rc3-00394-gc849047c2473 #1
Hardware name: Allwinner sun8i Family
unwind_backtrace from show_stack+0x10/0x14
show_stack from dump_stack_lvl+0x68/0x90
dump_stack_lvl from __lock_acquire+0x1680/0x31a0
__lock_acquire from lock_acquire+0x148/0x3dc
lock_acquire from _raw_spin_lock_irqsave+0x50/0x6c
_raw_spin_lock_irqsave from __irq_get_desc_lock+0x58/0xa0
__irq_get_desc_lock from irq_set_irq_wake+0x2c/0x19c
irq_set_irq_wake from irq_set_irq_wake+0x13c/0x19c
[tail call from sunxi_pinctrl_irq_set_wake]
irq_set_irq_wake from gpio_keys_suspend+0x80/0x1a4
gpio_keys_suspend from gpio_keys_shutdown+0x10/0x2c
gpio_keys_shutdown from device_shutdown+0x180/0x224
device_shutdown from __do_sys_reboot+0x134/0x23c
__do_sys_reboot from ret_fast_syscall+0x0/0x1c
However, this can never deadlock because the upstream and downstream
IRQs are never the same (nor do they even involve the same irqchip).
Silence this erroneous lockdep splat by applying what appears to be the
usual fix of moving the GPIO IRQs to separate lockdep classes.
Fixes: a59c99d9eaf9 ("pinctrl: sunxi: Forward calls to irq_set_irq_wake")
Reported-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Samuel Holland <samuel@sholland.org>
Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Tested-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20220216040037.22730-1-samuel@sholland.org
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
* This is already contained in the 5.16.13 kernel
pinctrl: sunxi: Use unique lockdep classes for IRQs
commit e221ef82d9f5e97bca61f7c25e2b58b04466de87 linux-5.16.y.
commit bac129dbc6560dfeb634c03f0c08b78024e71915 upstream.
This driver, like several others, uses a chained IRQ for each GPIO bank,
and forwards .irq_set_wake to the GPIO bank's upstream IRQ. As a result,
a call to irq_set_irq_wake() needs to lock both the upstream and
downstream irq_desc's. Lockdep considers this to be a possible deadlock
when the irq_desc's share lockdep classes, which they do by default:
============================================
WARNING: possible recursive locking detected
5.17.0-rc3-00394-gc849047c2473 #1 Not tainted
--------------------------------------------
....
* Add new patches from the tag orange-pi-5.16-20220205-1958
* Remove mutually exclusive patches
* Add, sort next patches for series armbian 5.16
* Add next armbian patches to series.conf
* Swich BRANCH for sunxi: legacy=5.10 current=5.15 edge=5.16
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
* Add upstream megous 5.16 patch to 5.15
* Add wifi rtl8723cs patches to series armbian
* Add a new one, remove old patches that are already in the kernel
* Add redesigned patches for 5.15 to the armbian series
* Remove unused patches
* Finish line
* The old rtl8723cs driver is disabled by default.
* Enable the old rtl8723cs driver by default.
* Comment enable\disable the old driver rtl8723cs-old
* Revert "Swich BRANCH for sunxi: legacy=5.10 current=5.15 edge=5.16"
This reverts commit aad1e92b5e.
* Remove an aged patch from use #3443
Allwinner-Add-frame-inversion-to-correct-audio-chann.patch
* Rename and prepare for the series 5.15
* Split and rename files for sun50i-h616-dtsi
* Split and rename files for sunxi overlays
* Remove mutually exclusive patches
* Add fifty redesigned patches to the series
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
* Remove fifty-four old patches
* Fix compile error
* Delete unused ones and sort if possible for megous series
* sunxi-5.15: Sort, fix compile warning, remove unused
* Rework print log for patching
* waiter_local_repo: Fixed incomplete logic
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
* A series of patches for sunxi v5.15.16
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
* DEBUG
* check 70
* check 101
* Add 101 Armbian patches as series
Patches are renamed using the logic of the file structure
and the essence of the changes, sorted in the order
of their receipt. Fixed a lot of incorrect overlay
of some pieces in patches. Several small patches are
combined, because they changed one file.
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
* Remove old patches that have been reworked into a series
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
* Fix for apply to v5.15.17
* Two Bluetooth-BTRTL patches for sunxi will be applied in the series.
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
* check 113
* Fix print output
* Revert "DEBUG"
This reverts commit 49e2c7fdc0.
* Remove the garbage from the `install.log` file
You cannot use `--info=progress2` for the `rsync`
command when all output is sent to a file.
This creates a large garbage file.
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
* Changes megous reverse commit. Just disable the patch
commit bd592ec43b76b298be29126e667850113b84376d (tag: orange-pi-5.15-20211125-1352)
Author: Ondrej Jirman <megous@megous.com>
Date: Thu Nov 25 13:51:59 2021 +0100
Revert "rtw88: Add more channels"
This reverts commit cb1e3839822d4f782a9af6c27568540414093ba6.
* Revert "Calculate patches changes only on first level since this fails when including subfolder. Bug in sort. Needs to be reworked once"
Return `megous` patches
This reverts commit 2eae831889.
* Sunxi 5.10: Fix ISO C90 forbids mixed declarations and code
All warning:
debug> grep warning: compilation.log | wc -l
152
A large number of garbage warnings:
debug> grep warning: compilation.log | grep IEEE80211_MAX_AMPDU_BUF | wc -l
103
After v4.19 linux kernel, this definition is not required.
Check:
list="$(find drivers/net/wireless/realtek/ -type f)"
for f in $list;do awk -v f=$f '/IEEE80211_MAX_AMPDU_BUF/{print f}' $f;done
drivers/net/wireless/realtek/rtlwifi/base.c
drivers/net/wireless/realtek/rtl8723cs/include/wifi.h
Only one drivers/net/wireless/realtek/rtlwifi/base.c file uses
the definition IEEE80211_MAX_AMPDU_BUF_HT.
or
See `git log -p b8042b3da925f390c1482b -3` command in
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
* Rework patches for sunxi 5.15.4
* Rework patches sunxi for 5.15.5
* Kernel switch tag=v5.15.5 for sunxi EDGE
* Temporarily disabled, requires rework.
drivers/clk/sunxi-ng/sun8i-de33.c: In function ‘sunxi_de33_clk_probe’:
drivers/clk/sunxi-ng/sun8i-de33.c:155:8:
error: implicit declaration of function ‘sunxi_ccu_probe’;
did you mean ‘of_sunxi_ccu_probe’? [-Werror=implicit-function-declarati>
ret = sunxi_ccu_probe(pdev->dev.of_node, reg, ccu_desc);
^~~~~~~~~~~~~~~
of_sunxi_ccu_probe
cc1: some warnings being treated as errors
make[3]: *** [scripts/Makefile.build:277:
drivers/clk/sunxi-ng/sun8i-de33.o] Error 1
make[2]: *** [scripts/Makefile.build:540: drivers/clk/sunxi-ng] Error 2
* Correct the comment.
* Add new function apply_patch_series
* Apply a series of patches if a series.conf file exists
* Add all megous orange-pi-5.15 branch patches as series
* Add an Exception for version 5.15 for sanxi
* Adjust the switch for sunxi
* Fix megous patches series for v5.15.3
* Switch version to 5.15.3 for sunxi
* Check the exception for 5.15 sunxi