Files
openwrt-master/package/kernel/mac80211/patches/ath10k/921-ath10k_init_devices_synchronously.patch
domenico c06fb25d1f
Some checks failed
Build Kernel / Build all affected Kernels (push) Has been cancelled
Build all core packages / Build all core packages for selected target (push) Has been cancelled
Build and Push prebuilt tools container / Build and Push all prebuilt containers (push) Has been cancelled
Build Toolchains / Build Toolchains for each target (push) Has been cancelled
Build host tools / Build host tools for linux and macos based systems (push) Has been cancelled
Coverity scan build / Coverity x86/64 build (push) Has been cancelled
Initial commit
2025-06-24 14:35:53 +02:00

34 lines
1.2 KiB
Diff

From: Sven Eckelmann <sven@open-mesh.com>
Date: Tue, 18 Nov 2014 12:29:28 +0100
Subject: [PATCH] ath10k: Don't initialize devices asynchronously
OpenWrt requires all PHYs to be initialized to create the configuration files
during bootup. ath10k violates this because it delays the creation of the PHY
to a not well defined point in the future.
Forcing the work to be done immediately works around this problem but may also
delay the boot when firmware images cannot be found.
Signed-off-by: Sven Eckelmann <sven@open-mesh.com>
---
--- a/drivers/net/wireless/ath/ath10k/core.c
+++ b/drivers/net/wireless/ath/ath10k/core.c
@@ -3539,6 +3539,16 @@ int ath10k_core_register(struct ath10k *
queue_work(ar->workqueue, &ar->register_work);
+ /* OpenWrt requires all PHYs to be initialized to create the
+ * configuration files during bootup. ath10k violates this
+ * because it delays the creation of the PHY to a not well defined
+ * point in the future.
+ *
+ * Forcing the work to be done immediately works around this problem
+ * but may also delay the boot when firmware images cannot be found.
+ */
+ flush_workqueue(ar->workqueue);
+
return 0;
}
EXPORT_SYMBOL(ath10k_core_register);