Skip to content
Permalink
Browse files

ath10k-ct: Update to 2019-02-28

9360f389234a ath10k: Support up to 24 vAP per radio, fix DMA bug in wave-1.
9cbf8d430974 ath10k-ct: Add 4.20 driver, SGI support for fixed-rate tx.

Runtime tested on: ipq806x

Signed-off-by: Michael Yartys <michael.yartys@gmail.com>
  • Loading branch information...
Michael Yartys authored and chunkeey committed Mar 2, 2019
1 parent 33727ec commit 5c83f27ac5764fbd9667d014cc9f5747e655069e
@@ -8,9 +8,9 @@ PKG_LICENSE_FILES:=

PKG_SOURCE_URL:=https://github.com/greearb/ath10k-ct.git
PKG_SOURCE_PROTO:=git
PKG_SOURCE_DATE:=2018-12-20
PKG_SOURCE_VERSION:=118e16da8e82f2e028654f86e47f4c8e5bddccc8
PKG_MIRROR_HASH:=f84616d5c6c3f6c0aded40b821d9b54fd88b78737f534b37a6ed0c51db16ed06
PKG_SOURCE_DATE:=2019-02-28
PKG_SOURCE_VERSION:=9360f389234a58f742c6cb3f8eea5a419c7523f6
PKG_MIRROR_HASH:=7fa9ec0e298767b6dfaa9486e5f316cd03af82fc9d45066dbd80fca32a06b41f

# Build the 4.19 ath10k-ct driver version. Other options are "-4.16", or
# leave un-defined for 4.7 kernel. Probably this should match as closely as
@@ -43,7 +43,7 @@ Origin: upstream, https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux

--- a/ath10k-4.13/core.c
+++ b/ath10k-4.13/core.c
@@ -891,6 +891,28 @@ static int ath10k_core_check_smbios(stru
@@ -893,6 +893,28 @@ static int ath10k_core_check_smbios(stru
return 0;
}

@@ -72,7 +72,7 @@ Origin: upstream, https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux
static int ath10k_download_and_run_otp(struct ath10k *ar)
{
u32 result, address = ar->hw_params.patch_load_addr;
@@ -1530,19 +1552,19 @@ static int ath10k_core_create_board_name
@@ -1532,19 +1554,19 @@ static int ath10k_core_create_board_name
/* strlen(',variant=') + strlen(ar->id.bdf_ext) */
char variant[9 + ATH10K_SMBIOS_BDF_EXT_STR_LENGTH] = { 0 };

@@ -98,7 +98,7 @@ Origin: upstream, https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux
scnprintf(name, name_len,
"bus=%s,vendor=%04x,device=%04x,subsystem-vendor=%04x,subsystem-device=%04x%s",
ath10k_bus_str(ar->hif.bus),
@@ -2975,7 +2997,11 @@ static int ath10k_core_probe_fw(struct a
@@ -2977,7 +2999,11 @@ static int ath10k_core_probe_fw(struct a

ret = ath10k_core_check_smbios(ar);
if (ret)
@@ -97,7 +97,7 @@
ATH10K_DFS_STAT_INC(ar, pulses_total);
--- a/ath10k-4.13/wmi.c
+++ b/ath10k-4.13/wmi.c
@@ -4031,7 +4031,7 @@ static void ath10k_dfs_radar_report(stru
@@ -4030,7 +4030,7 @@ static void ath10k_dfs_radar_report(stru

ATH10K_DFS_STAT_INC(ar, pulses_detected);

@@ -108,7 +108,7 @@
return;
--- a/ath10k-4.16/wmi.c
+++ b/ath10k-4.16/wmi.c
@@ -4065,7 +4065,7 @@ static void ath10k_dfs_radar_report(stru
@@ -4064,7 +4064,7 @@ static void ath10k_dfs_radar_report(stru

ATH10K_DFS_STAT_INC(ar, pulses_detected);

@@ -50,7 +50,7 @@ Origin: backport, https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux

--- a/ath10k-4.13/core.c
+++ b/ath10k-4.13/core.c
@@ -1427,14 +1427,61 @@ out:
@@ -1429,14 +1429,61 @@ out:
return ret;
}

@@ -115,7 +115,7 @@ Origin: backport, https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux

ar->normal_mode_fw.board = ath10k_fetch_fw_file(ar,
ar->hw_params.fw.dir,
@@ -1472,73 +1519,28 @@ static int ath10k_core_fetch_board_data_
@@ -1474,73 +1521,28 @@ static int ath10k_core_fetch_board_data_
data += magic_len;
len -= magic_len;

@@ -198,7 +198,7 @@ Origin: backport, https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux
return 0;

err:
@@ -1547,12 +1549,12 @@ err:
@@ -1549,12 +1551,12 @@ err:
}

static int ath10k_core_create_board_name(struct ath10k *ar, char *name,
@@ -213,7 +213,7 @@ Origin: backport, https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux
scnprintf(variant, sizeof(variant), ",variant=%s",
ar->id.bdf_ext);

@@ -1578,21 +1580,31 @@ out:
@@ -1580,21 +1582,31 @@ out:

static int ath10k_core_fetch_board_file(struct ath10k *ar)
{
@@ -249,7 +249,7 @@ Origin: backport, https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux
goto success;
--- a/ath10k-4.16/core.c
+++ b/ath10k-4.16/core.c
@@ -1560,14 +1560,61 @@ out:
@@ -1561,14 +1561,61 @@ out:
return ret;
}

@@ -314,7 +314,7 @@ Origin: backport, https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux

ar->normal_mode_fw.board = ath10k_fetch_fw_file(ar,
ar->hw_params.fw.dir,
@@ -1605,73 +1652,28 @@ static int ath10k_core_fetch_board_data_
@@ -1606,73 +1653,28 @@ static int ath10k_core_fetch_board_data_
data += magic_len;
len -= magic_len;

@@ -397,7 +397,7 @@ Origin: backport, https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux
return 0;

err:
@@ -1680,12 +1682,12 @@ err:
@@ -1681,12 +1683,12 @@ err:
}

static int ath10k_core_create_board_name(struct ath10k *ar, char *name,
@@ -412,7 +412,7 @@ Origin: backport, https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux
scnprintf(variant, sizeof(variant), ",variant=%s",
ar->id.bdf_ext);

@@ -1711,21 +1713,31 @@ out:
@@ -1712,21 +1714,31 @@ out:

static int ath10k_core_fetch_board_file(struct ath10k *ar)
{
@@ -43,7 +43,7 @@ Origin: backport, https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux
static int ath10k_mac_get_max_vht_mcs_map(u16 mcs_map, int nss)
{
switch ((mcs_map >> (2 * nss)) & 0x3) {
@@ -6248,9 +6264,10 @@ static void ath10k_bss_info_changed(stru
@@ -6262,9 +6278,10 @@ static void ath10k_bss_info_changed(stru
struct cfg80211_chan_def def;
u32 vdev_param, pdev_param, slottime, preamble;
u16 bitrate, hw_value;
@@ -56,7 +56,7 @@ Origin: backport, https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux

mutex_lock(&ar->conf_mutex);

@@ -6456,6 +6473,30 @@ static void ath10k_bss_info_changed(stru
@@ -6470,6 +6487,30 @@ static void ath10k_bss_info_changed(stru
arvif->vdev_id, ret);
}

@@ -26,7 +26,7 @@ Origin: backport, https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux
if (ath10k_rates[i].bitrate == bitrate)
return hw_value_prefix | ath10k_rates[i].hw_value;
}
@@ -6479,22 +6479,22 @@ static void ath10k_bss_info_changed(stru
@@ -6493,22 +6493,22 @@ static void ath10k_bss_info_changed(stru
return;
}

@@ -17,7 +17,7 @@ Origin: other, https://patchwork.kernel.org/patch/10723033/

--- a/ath10k-4.19/mac.c
+++ b/ath10k-4.19/mac.c
@@ -6264,8 +6264,8 @@ static void ath10k_bss_info_changed(stru
@@ -6278,8 +6278,8 @@ static void ath10k_bss_info_changed(stru
struct cfg80211_chan_def def;
u32 vdev_param, pdev_param, slottime, preamble;
u16 bitrate, hw_value;
@@ -28,7 +28,7 @@ Origin: other, https://patchwork.kernel.org/patch/10723033/
enum nl80211_band band;
const struct ieee80211_supported_band *sband;

@@ -6438,7 +6438,11 @@ static void ath10k_bss_info_changed(stru
@@ -6452,7 +6452,11 @@ static void ath10k_bss_info_changed(stru
if (changed & BSS_CHANGED_MCAST_RATE &&
!WARN_ON(ath10k_mac_vif_chan(arvif->vif, &def))) {
band = def.chan->band;
@@ -11,23 +11,23 @@ Signed-off-by: Sven Eckelmann <sven@narfation.org>

--- a/ath10k-4.19/mac.c
+++ b/ath10k-4.19/mac.c
@@ -6460,6 +6460,7 @@ static void ath10k_bss_info_changed(stru
@@ -6474,6 +6474,7 @@ static void ath10k_bss_info_changed(stru
"mac vdev %d mcast_rate %x\n",
arvif->vdev_id, rate);

+ arvif->mcast_rate[band] = rate;
vdev_param = ar->wmi.vdev_param->mcast_data_rate;
ret = ath10k_wmi_vdev_set_param(ar, arvif->vdev_id,
vdev_param, rate);
@@ -6468,6 +6469,7 @@ static void ath10k_bss_info_changed(stru
@@ -6482,6 +6483,7 @@ static void ath10k_bss_info_changed(stru
"failed to set mcast rate on vdev %i: %d\n",
arvif->vdev_id, ret);

+ arvif->bcast_rate[band] = rate;
vdev_param = ar->wmi.vdev_param->bcast_data_rate;
ret = ath10k_wmi_vdev_set_param(ar, arvif->vdev_id,
vdev_param, rate);
@@ -6494,6 +6496,7 @@ static void ath10k_bss_info_changed(stru
@@ -6508,6 +6510,7 @@ static void ath10k_bss_info_changed(stru
return;
}

0 comments on commit 5c83f27

Please sign in to comment.
You can’t perform that action at this time.