* Add meson64 patch net: phy: meson-gxl: fix interrupt handling in forced mode
https://patchwork.kernel.org/project/linux-amlogic/patch/04cac530-ea1b-850e-6cfa-144a55c4d75d@gmail.com/
This PHY doesn't support a link-up interrupt source. If aneg is enabled
we use the "aneg complete" interrupt for this purpose, but if aneg is
disabled link-up isn't signaled currently.
According to a vendor driver there's an additional "energy detect"
interrupt source that can be used to signal link-up if aneg is disabled.
We can safely ignore this interrupt source if aneg is enabled.
This patch was tested on a TX3 Mini TV box with S905W (even though
boot message says it's a S905D).
This issue has been existing longer, but due to changes in phylib and
the driver the patch applies only from the commit marked as fixed.
Fixes: 84c8f773d2dc ("net: phy: meson-gxl: remove the use of .ack_callback()")
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
* Add meson64 kernel patch: net: phy: meson-gxl: improve link-up behavior
https://patchwork.kernel.org/project/linux-amlogic/patch/e3473452-a1f9-efcf-5fdd-02b6f44c3fcd@gmail.com/
Sometimes the link comes up but no data flows. This patch fixes
this behavior. It's not clear what's the root cause of the issue.
According to the tests one other link-up issue remains.
In very rare cases the link isn't even reported as up.
Fixes: 84c8f773d2dc ("net: phy: meson-gxl: remove the use of .ack_callback()")
Tested-by: Erico Nunes <nunes.erico@gmail.com>
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
---
drivers/net/phy/meson-gxl.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
* 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
--------------------------------------------
....
* rk322x: restore drm patches, rework a couple of hunks due to upstream changes
* rockchip: restore drm patches, rework hunks due to upstreamed patch
* Revert also on media kernel
Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
* Add megous files for 5.16, tag orange-pi-5.16-20220216-2000
* Optimize the selection of a set of patches
* Remove unused patches
* Fix the state on the version tag=v5.16.11
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
* Rockchip64 Linux-5.10y - drivers for Motorcomm YT8531
renamed the previous "net-phy-Add-driver-for-Motorcomm-YT85xx-PHYs.patch" to "net-phy-Add-driver-for-Motorcomm-1-YT85xx-PHYs.patch" to fix patch order and added a new patch "net-phy-Add-driver-for-Motorcomm-2-YT8531-PHYs.patch"
The new YT8531 patch is sourced from from Lean's OpenWrt source rockchip/patches-5.10/601-net-phy-Add-driver-for-Motorcomm-YT8531-PHYs.patch.
It is intended to extend a patch identical to Armbian's "net-phy-Add-driver-for-Motorcomm-YT85xx-PHYs.patch" and is used without alteration.
* Add new board OrangePi R1 LTS (rk3328)
Includes uBoot and support for Linux-5.10y
* Rockchip64 Linux-5.15y drivers for YT8531 and other Motorcomm chips
YT8010, YT8510, YT8511, YT8512, YT8521. The driver patch set is sourced from Xunlong-OrangePi OpenWRT and is used as is, with only a name and makefile change.
A single patch set uses the same underlying source code as the Armbian Linux-5.10y set, but uses inbuilt logic to apply tweaks that depend on the Linux kernel version.
The patch is renamed similarly to the 5.10 patch set, net-phy-Add-driver-for-Motorcomm-T85xx+PHYs.patch to imply code base continuity with the previous similar Armbian patch sets.
* Rockchip64 Linux-5.15y support for Orange Pi R1 Plus LTS
Includes DTS and makefile changes. A driver for net phy YT8531C is in a separate commit
* change orangepi-r1plus-lts.csc to orangepi-r1plus-lts.conf
board is now supported
* - add patch also to 5.16.y
- fix wrong patch permission
* Fix Makefile patch
Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
* Switched rockchip64-current to linux 5.15
* Backported and adjusted patches from rockchip64-current
* Switched rockchip64 edge to 5.16.y (#3499)
* Initial rockchip64-edge at 5.16.y
* Bunch of fixes for rockchip64-edge at 5.16.y
Co-authored-by: Igor Pečovnik <igorpecovnik@users.noreply.github.com>
Radxa Zero 2 is a small form factor SBC based on the Amlogic A311D
chipset that ships in a number of eMMC configurations:
- Amlogic A311D (Quad A73 + Dual A53) CPU
- 4GB LPDDR4 RAM
- 32/64/128GB eMMC
- Mali G52-MP4 GPU
- HDMI 2.1 output (micro)
- BCM4345 WiFi (2.4/5GHz a/b/g/n/ac) and BT 5.0
- 1x USB 2.0 port - Type C (OTG)
- 1x USB 3.0 port - Type C (Host)
- 1x micro SD Card slot
- 40 Pin GPIO header
Signed-off-by: Yuntian Zhang <yt@radxa.com>
* remove incorrectly duplicated GPIO pins from I2C7, name I2C7/I2C8 bus, from README.rockchip-overlays
* remove incorrectly duplicated GPIO pins from I2C7, name I2C7/I2C8 bus, from README.rockchip-overlays
* remove incorrectly duplicated GPIO pins from I2C7, name I2C7/I2C8 bus, from README.rockchip-overlays
* remove incorrectly duplicated GPIO pins from I2C7, name I2C7/I2C8 bus, from README.rockchip-overlays
* remove incorrectly duplicated GPIO pins from I2C7, name I2C7/I2C8 bus, from README.rockchip-overlays
* remove incorrectly duplicated GPIO pins from I2C7, name I2C7/I2C8 bus, from README.rockchip-overlays
* remove incorrectly duplicated GPIO pins from I2C7, name I2C7/I2C8 bus, from README.rockchip-overlays
* remove incorrectly duplicated GPIO pins from I2C7, name I2C7/I2C8 bus, from README.rockchip-overlays
* remove incorrectly duplicated GPIO pins from I2C7, name I2C7/I2C8 bus, from README.rockchip-overlays
Co-authored-by: Leif Sawyer <leif@akhepcat.com>
* Prepare xu4 edge for 5.16.y, move current of imx6 to 5.15.y and edge to 5.16.y
- fix bootsplash on 5.16.y
* rk322x: advance current to 5.15 and edge to 5.16
* rockchip: advance current kernel to 5.15, edge to 5.16
* - adjust configs
- fix bootsplash patches
- adjust aufs
* Switch sunxi / sunxi64 current to 5.15.y, edge to 5.16.y
- cleanup bootsplash patches
- adjust configs
* Update mvebu64
Co-authored-by: Paolo Sabatino <paolo.sabatino@gmail.com>
* 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
* Recycling of megous v5.16.4 patches
The patches were sorted as far as possible. Some patches are renamed
according to their place of application. The length of the patch name
has been changed to improve readability using
the `git format-patch --filename-max-length=75` method.
The folder containing the patches will have the name `patches.name`
and the corresponding file `series.name` for the convenience
of processing and moving them upstream. But the control file remains
`series.conf`.
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
* Add a series of armbian patches for 5.16
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
* Remove patches whose fixes are already in the kernel
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
* Support edge kernel for Rock 3A and rk35xx
* Removing patch email headers
There is also some script floating around to do this automatically when pooling from patchwork
* Update rk356x-usb2-support.patch
* Remove email headers
* Remove email headers
* Remove email headers
* Update config and change edge branch
* Enable edge beta build
* Refresh the rk35xx patches and update the dts
Remove also previous wireless patches related to IPX removal
* Removing hirsute target
deprecated
Co-authored-by: Catalin Toda <catalinii@yahoo.com>
Co-authored-by: Igor Pečovnik <igorpecovnik@users.noreply.github.com>
Co-authored-by: Igor Pecovnik <igor.pecovnik@gmail.com>
* 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.
Fix the dts to match board's reference design:
- update vddio_boot regulator to 3.3v (Wi-Fi SDIO module)
- add vccq_1v8 regulator with 1.8v for eMMC SDIO
In the first revision of JetHub D1 the vccq_1v8 regulator was 3.3v.
All installed eMMC modules were tested to work in HS200 mode at 3.3v
supply voltage. In the next revisions of the device eMMC will be
powered with 1.8v according to the standard.
* Add initial series patches for sunxi-5.16
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
* Now all patches are applied to the v5.16 kernel without errors
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
* Handle an exception if the initial tag is the top of the branch.
Remove the handling of the old exception.
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
* sunxi64_common.inc: Fix for 5.16
* sunxi-common.inc: Fix for 5.16
* Revert debug for EDGE: KERNEL_VERSION_LEVEL to "5.15"
* Add new patches from megous and switch to v5.16.1
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
* waiter_local_repo: Fixed comment
Signed-off-by: The-going <48602507+The-going@users.noreply.github.com>
* Several improvements for RPi builds
- attach to RPi kernels
- current (ubuntu) -> legacy
- current -> 5.10.y, edge, 5.15.y
* Move current Rpi to 5.15.y and edge to 5.16.y
* Sync kernel config with radxa and remove packaging patch
* Merge the rockchip64 legacy config as well
* Lower priority of EFI partitioning against DOS partitioning which is used by Armbian
Co-authored-by: Catalin Toda <catalinii@yahoo.com>