openwrt/target
Thomas Nixon 354ad1084a lantiq: nand: don't yield while holding spinlock
The nand driver normally while waiting for the device to become ready;
this is normally fine, but xway_nand holds the ebu_lock spinlock, and
this can cause lockups if other threads which use ebu_lock are
interleaved. Fix this by waiting instead of polling.

This mainly showed up as crashes in ath9k_pci_owl_loader (see
https://github.com/openwrt/openwrt/issues/9829 ), but turning on
spinlock debugging shows this happening in other places too.

This doesn't seem to measurably impact boot time.

Tested on bt_homehub-v5a with 5.10 and 5.15.

Signed-off-by: Thomas Nixon <tom@tomn.co.uk>
[Add commit description into patch]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
(cherry picked from commit d3b47909b1)
2023-04-02 22:07:26 +02:00
..
imagebuilder imagebuilder: export SOURCE_DATE_EPOCH to environment 2022-04-10 16:32:20 +01:00
linux lantiq: nand: don't yield while holding spinlock 2023-04-02 22:07:26 +02:00
llvm-bpf llvm-bpf: fix rebuild check for generating tarball 2021-11-26 11:37:19 +01:00
sdk toolchain: Select USE_SSTRIP with external musl toolchain 2022-10-03 19:51:49 +02:00
toolchain toolchain: switch packaged toolchain to tar.xz 2021-10-21 08:25:38 -10:00
Config.in base-files: add eMMC sysupgrade support 2021-12-02 20:42:58 +00:00
Makefile tools/llvm-bpf: move tarball packing to target/llvm-bpf 2021-11-22 12:00:40 +01:00