Re: [LEDE-DEV] [PATCH-v2 1/3] Update to latest ath10k-ct driver, enable AHB.

2018-02-13 Thread Ben Greear

On 02/13/2018 12:03 PM, John Crispin wrote:



On 13/02/18 19:27, Ben Greear wrote:

What is the status on this?

I have some new firmware/driver changes I'd like to get upstream
as well, but this series is stuck in limbo.  The first two patches
should should be useful for anyone using my ath10k-ct stuff, and the
third will at least help IPQ4019 have a better chance at running my
code, even if they cannot currently select the options w/out applying
a few patches to relax some of the REQUIRES stuff that the 4019
platforms may currently have.

Thanks,
Ben


Hi Ben,

was going to send an email, ... what happened to patch 3/3 ?


Well, it was sent to the list, if that is what you mean?

There was also some disagreement about it, and some platforms
cannot select the IPQ4019 firmware it provides because of package dependencies. 
 I do not know
what is a good way to resolve it, and the quick fix of just removing
the hard dependency was not welcomed.  I'd prefer the patch applied,
as then users have to do only a small and simple tweak to make the firmware
usable, and it should not hurt anyone else since they can just stick with
the stock firmware.

If the 3/3 patch is just not wanted, then users that want my firmware can
manually download it to their system.  The first two patches could
still be applied.

Thanks,
Ben



John


On 01/19/2018 04:27 PM, gree...@candelatech.com wrote:

From: Ben Greear 

The driver updates include:

ath10k driver backport to fix WPA 'pn' related security bugs
(4.13 based driver only currently),
a fix for off-channel TX for CT wave-1 firmware, a likely
fix for napi related crashes, and a backport of the firmware fetch
patch.

AHB is needed for the IPQ4019 platform radios.

Signed-off-by: Ben Greear 
---

v2:  Don't remove stock 4019 firmware from 4019 platform depends.
 Add ability to load ct-firmware-[52].bin before other firmware.
 Add ath10k-ct driver specific firmware option for 4019.

 Verified driver loads on Jalapeno board.

package/kernel/ath10k-ct/Makefile  | 14 +
 ...ctivate-user-space-firmware-loading-again.patch | 36 --
 2 files changed, 8 insertions(+), 42 deletions(-)
 delete mode 100644 
package/kernel/ath10k-ct/patches/130-ath10k-activate-user-space-firmware-loading-again.patch

diff --git a/package/kernel/ath10k-ct/Makefile 
b/package/kernel/ath10k-ct/Makefile
index fe094e7..83d3a05 100644
--- a/package/kernel/ath10k-ct/Makefile
+++ b/package/kernel/ath10k-ct/Makefile
@@ -9,8 +9,8 @@ PKG_LICENSE_FILES:=
 PKG_SOURCE_URL:=https://github.com/greearb/ath10k-ct.git
 PKG_SOURCE_PROTO:=git
 PKG_SOURCE_DATE:=2017-06-13
-PKG_SOURCE_VERSION:=bded1823912549017d819d1796273b3134c3de20
-PKG_MIRROR_HASH:=616174650e12a82edb6b6bd18ac186e2c6a48fdad0082df9d2011ab20940814b
+PKG_SOURCE_VERSION:=e1edd74d5f0c5291b0be72c81033e74e267929d4
+PKG_MIRROR_HASH:=945dc7110017a80c33cac20d9d2a9beda0a6a98b50178319403568098534e60a

 PKG_MAINTAINER:=Ben Greear 
 PKG_BUILD_PARALLEL:=1
@@ -29,7 +29,7 @@ include $(INCLUDE_DIR)/package.mk
 define KernelPackage/ath10k-ct
   SUBMENU:=Wireless Drivers
   TITLE:=ath10k-ct driver optimized for CT ath10k firmware
-  DEPENDS:=+kmod-mac80211 +kmod-ath +@DRIVER_11N_SUPPORT +@DRIVER_11AC_SUPPORT 
@PCI_SUPPORT +kmod-hwmon-core
+  DEPENDS:=+kmod-mac80211 +kmod-ath +@DRIVER_11N_SUPPORT +@DRIVER_11AC_SUPPORT 
+@DRIVER_11W_SUPPORT +kmod-hwmon-core
   FILES:=\
 $(PKG_BUILD_DIR)/ath10k$(CT_KVER)/ath10k_pci.ko \
 $(PKG_BUILD_DIR)/ath10k$(CT_KVER)/ath10k_core.ko
@@ -50,9 +50,11 @@ ifdef CONFIG_PACKAGE_MAC80211_MESH
 endif

 CT_MAKEDEFS += CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m
-# No AHB support enabled yet.  Could conditionally enable it later.
-#CT_MAKEDEFS += CONFIG_ATH10K_AHB=y
-#NOSTDINC_FLAGS += -DCONFIG_ATH10K_AHB
+
+# This AHB logic is needed for IPQ4019 radios
+CT_MAKEDEFS += CONFIG_ATH10K_AHB=m
+NOSTDINC_FLAGS += -DCONFIG_ATH10K_AHB
+
 NOSTDINC_FLAGS += -DSTANDALONE_CT

 ifdef CONFIG_PACKAGE_MAC80211_DEBUGFS
diff --git 
a/package/kernel/ath10k-ct/patches/130-ath10k-activate-user-space-firmware-loading-again.patch
b/package/kernel/ath10k-ct/patches/130-ath10k-activate-user-space-firmware-loading-again.patch
deleted file mode 100644
index dc02a9d..000
--- 
a/package/kernel/ath10k-ct/patches/130-ath10k-activate-user-space-firmware-loading-again.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From c0cc00f250e19c717fc9cdbdb7f55aaa569c7498 Mon Sep 17 00:00:00 2001
-From: Hauke Mehrtens 
-Date: Thu, 24 Aug 2017 23:06:41 +0200
-Subject: [PATCH] ath10k: activate user space firmware loading again
-
-In commit 9f5bcfe93315 ("ath10k: silence firmware file probing
-warnings") the firmware loading was changed from request_firmware() to
-request_firmware_direct() to silence some warnings in case it fails.
-request_firmware_direct() directly searches in the file system only and
-does not send a hotplug event to user space in case it 

Re: [LEDE-DEV] [PATCH-v2 1/3] Update to latest ath10k-ct driver, enable AHB.

2018-02-13 Thread Ben Greear

What is the status on this?

I have some new firmware/driver changes I'd like to get upstream
as well, but this series is stuck in limbo.  The first two patches
should should be useful for anyone using my ath10k-ct stuff, and the
third will at least help IPQ4019 have a better chance at running my
code, even if they cannot currently select the options w/out applying
a few patches to relax some of the REQUIRES stuff that the 4019
platforms may currently have.

Thanks,
Ben

On 01/19/2018 04:27 PM, gree...@candelatech.com wrote:

From: Ben Greear 

The driver updates include:

ath10k driver backport to fix WPA 'pn' related security bugs
(4.13 based driver only currently),
a fix for off-channel TX for CT wave-1 firmware, a likely
fix for napi related crashes, and a backport of the firmware fetch
patch.

AHB is needed for the IPQ4019 platform radios.

Signed-off-by: Ben Greear 
---

v2:  Don't remove stock 4019 firmware from 4019 platform depends.
 Add ability to load ct-firmware-[52].bin before other firmware.
 Add ath10k-ct driver specific firmware option for 4019.

 Verified driver loads on Jalapeno board.

package/kernel/ath10k-ct/Makefile  | 14 +
 ...ctivate-user-space-firmware-loading-again.patch | 36 --
 2 files changed, 8 insertions(+), 42 deletions(-)
 delete mode 100644 
package/kernel/ath10k-ct/patches/130-ath10k-activate-user-space-firmware-loading-again.patch

diff --git a/package/kernel/ath10k-ct/Makefile 
b/package/kernel/ath10k-ct/Makefile
index fe094e7..83d3a05 100644
--- a/package/kernel/ath10k-ct/Makefile
+++ b/package/kernel/ath10k-ct/Makefile
@@ -9,8 +9,8 @@ PKG_LICENSE_FILES:=
 PKG_SOURCE_URL:=https://github.com/greearb/ath10k-ct.git
 PKG_SOURCE_PROTO:=git
 PKG_SOURCE_DATE:=2017-06-13
-PKG_SOURCE_VERSION:=bded1823912549017d819d1796273b3134c3de20
-PKG_MIRROR_HASH:=616174650e12a82edb6b6bd18ac186e2c6a48fdad0082df9d2011ab20940814b
+PKG_SOURCE_VERSION:=e1edd74d5f0c5291b0be72c81033e74e267929d4
+PKG_MIRROR_HASH:=945dc7110017a80c33cac20d9d2a9beda0a6a98b50178319403568098534e60a

 PKG_MAINTAINER:=Ben Greear 
 PKG_BUILD_PARALLEL:=1
@@ -29,7 +29,7 @@ include $(INCLUDE_DIR)/package.mk
 define KernelPackage/ath10k-ct
   SUBMENU:=Wireless Drivers
   TITLE:=ath10k-ct driver optimized for CT ath10k firmware
-  DEPENDS:=+kmod-mac80211 +kmod-ath +@DRIVER_11N_SUPPORT +@DRIVER_11AC_SUPPORT 
@PCI_SUPPORT +kmod-hwmon-core
+  DEPENDS:=+kmod-mac80211 +kmod-ath +@DRIVER_11N_SUPPORT +@DRIVER_11AC_SUPPORT 
+@DRIVER_11W_SUPPORT +kmod-hwmon-core
   FILES:=\
$(PKG_BUILD_DIR)/ath10k$(CT_KVER)/ath10k_pci.ko \
$(PKG_BUILD_DIR)/ath10k$(CT_KVER)/ath10k_core.ko
@@ -50,9 +50,11 @@ ifdef CONFIG_PACKAGE_MAC80211_MESH
 endif

 CT_MAKEDEFS += CONFIG_ATH10K=m CONFIG_ATH10K_PCI=m
-# No AHB support enabled yet.  Could conditionally enable it later.
-#CT_MAKEDEFS += CONFIG_ATH10K_AHB=y
-#NOSTDINC_FLAGS += -DCONFIG_ATH10K_AHB
+
+# This AHB logic is needed for IPQ4019 radios
+CT_MAKEDEFS += CONFIG_ATH10K_AHB=m
+NOSTDINC_FLAGS += -DCONFIG_ATH10K_AHB
+
 NOSTDINC_FLAGS += -DSTANDALONE_CT

 ifdef CONFIG_PACKAGE_MAC80211_DEBUGFS
diff --git 
a/package/kernel/ath10k-ct/patches/130-ath10k-activate-user-space-firmware-loading-again.patch
 
b/package/kernel/ath10k-ct/patches/130-ath10k-activate-user-space-firmware-loading-again.patch
deleted file mode 100644
index dc02a9d..000
--- 
a/package/kernel/ath10k-ct/patches/130-ath10k-activate-user-space-firmware-loading-again.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From c0cc00f250e19c717fc9cdbdb7f55aaa569c7498 Mon Sep 17 00:00:00 2001
-From: Hauke Mehrtens 
-Date: Thu, 24 Aug 2017 23:06:41 +0200
-Subject: [PATCH] ath10k: activate user space firmware loading again
-
-In commit 9f5bcfe93315 ("ath10k: silence firmware file probing
-warnings") the firmware loading was changed from request_firmware() to
-request_firmware_direct() to silence some warnings in case it fails.
-request_firmware_direct() directly searches in the file system only and
-does not send a hotplug event to user space in case it could not find
-the firmware directly.
-In LEDE we use a user space script to extract the calibration data from
-the flash memory which gets triggered by the hotplug event. This way the
-firmware gets extracted from some vendor specific partition when the
-driver requests this firmware. This mechanism does not work any more
-after this change.
-
-Fixes: 9f5bcfe93315 ("ath10k: silence firmware file probing warnings")
-Signed-off-by: Hauke Mehrtens 
-Cc: Michal Kazior 
-Signed-off-by: Kalle Valo 

- ath10k-4.13/core.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
 a/ath10k-4.13/core.c
-+++ b/ath10k-4.13/core.c
-@@ -556,7 +556,7 @@ static const struct firmware *ath10k_fet
-   dir = ".";
-
-   snprintf(filename, sizeof(filename), "%s/%s", dir, file);
--