summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTom Hochstein <tom.hochstein@nxp.com>2018-07-27 11:08:36 -0500
committerOtavio Salvador <otavio@ossystems.com.br>2019-04-05 16:38:31 -0300
commitebd01de53e6d2cb8bb494e34c897bfd71986063f (patch)
tree5d674b676b6a0f01f830694adff6c6edf3a50de3
parent5b3ded0efe9ed465cec79d214629f6f8474478d4 (diff)
downloadmeta-freescale-ebd01de53e6d2cb8bb494e34c897bfd71986063f.tar.gz
kernel-module-qca6174: Add support for QCA6174 on i.MX 8 Series
Signed-off-by: Tom Hochstein <tom.hochstein@nxp.com>
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-qca6174/0001-MLK-18491-02-qcacld-2.0-fix-the-overflow-of-bounce-b.patch92
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-qca6174_2.0.bb15
-rw-r--r--recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc2
3 files changed, 108 insertions, 1 deletions
diff --git a/recipes-kernel/kernel-modules/kernel-module-qca6174/0001-MLK-18491-02-qcacld-2.0-fix-the-overflow-of-bounce-b.patch b/recipes-kernel/kernel-modules/kernel-module-qca6174/0001-MLK-18491-02-qcacld-2.0-fix-the-overflow-of-bounce-b.patch
new file mode 100644
index 00000000..3ab1ccdd
--- /dev/null
+++ b/recipes-kernel/kernel-modules/kernel-module-qca6174/0001-MLK-18491-02-qcacld-2.0-fix-the-overflow-of-bounce-b.patch
@@ -0,0 +1,92 @@
1From e480b6825d3670f3517c3b7be0c13fd318cbe985 Mon Sep 17 00:00:00 2001
2From: Hangtian Zhu <hangtian@qti.qualcomm.com>
3Date: Thu, 14 Jun 2018 11:10:05 +0800
4Subject: [PATCH] MLK-18491-02 qcacld-2.0: fix the overflow of bounce buffer
5
6Patch a41baa51cbc5("MLK-18491 qcacld-2.0: avoid overflow of bounce buffer")
7is not reasonable to fix overflow of bounce buffer issue.
8
9The patch is released by Qualcomm to fix the issue.
10(Case Number:03515221)
11
12Upstream-Status: Pending
13
14Signed-off-by: Hangtian Zhu <hangtian@qti.qualcomm.com>
15---
16 CORE/SERVICES/HTC/htc.c | 2 +-
17 CORE/SERVICES/HTC/htc_send.c | 28 ++++++++++++++--------------
18 2 files changed, 15 insertions(+), 15 deletions(-)
19
20diff --git a/CORE/SERVICES/HTC/htc.c b/CORE/SERVICES/HTC/htc.c
21index 1e2450d..09936a0 100644
22--- a/CORE/SERVICES/HTC/htc.c
23+++ b/CORE/SERVICES/HTC/htc.c
24@@ -657,7 +657,7 @@ static void ResetEndpointStates(HTC_TARGET *target)
25 INIT_HTC_PACKET_QUEUE(&pEndpoint->RxBufferHoldQueue);
26 pEndpoint->target = target;
27 //pEndpoint->TxCreditFlowEnabled = (A_BOOL)htc_credit_flow;
28- pEndpoint->TxCreditFlowEnabled = (A_BOOL)0;
29+ pEndpoint->TxCreditFlowEnabled = (A_BOOL)1;
30 adf_os_atomic_init(&pEndpoint->TxProcessCount);
31 }
32 }
33diff --git a/CORE/SERVICES/HTC/htc_send.c b/CORE/SERVICES/HTC/htc_send.c
34index 1a3dd28..19d8065 100644
35--- a/CORE/SERVICES/HTC/htc_send.c
36+++ b/CORE/SERVICES/HTC/htc_send.c
37@@ -105,12 +105,12 @@ void HTCGetControlEndpointTxHostCredits(HTC_HANDLE HTCHandle, int *credits)
38
39 static INLINE void RestoreTxPacket(HTC_TARGET *target, HTC_PACKET *pPacket)
40 {
41+ adf_nbuf_t netbuf = GET_HTC_PACKET_NET_BUF_CONTEXT(pPacket);
42 if (pPacket->PktInfo.AsTx.Flags & HTC_TX_PACKET_FLAG_FIXUP_NETBUF) {
43- adf_nbuf_t netbuf = GET_HTC_PACKET_NET_BUF_CONTEXT(pPacket);
44 adf_nbuf_unmap(target->osdev, netbuf, ADF_OS_DMA_TO_DEVICE);
45- adf_nbuf_pull_head(netbuf, sizeof(HTC_FRAME_HDR));
46 pPacket->PktInfo.AsTx.Flags &= ~HTC_TX_PACKET_FLAG_FIXUP_NETBUF;
47 }
48+ adf_nbuf_pull_head(netbuf, sizeof(HTC_FRAME_HDR));
49
50 }
51
52@@ -641,12 +641,11 @@ static A_STATUS HTCIssuePackets(HTC_TARGET *target,
53 * that is already mapped, or a non-data netbuf that needs to be
54 * mapped.
55 */
56- if (pPacket->PktInfo.AsTx.Flags & HTC_TX_PACKET_FLAG_FIXUP_NETBUF) {
57- adf_nbuf_map(
58- target->osdev,
59- GET_HTC_PACKET_NET_BUF_CONTEXT(pPacket),
60- ADF_OS_DMA_TO_DEVICE);
61- }
62+ pPacket->PktInfo.AsTx.Flags |= HTC_TX_PACKET_FLAG_FIXUP_NETBUF;
63+ adf_nbuf_map(
64+ target->osdev,
65+ GET_HTC_PACKET_NET_BUF_CONTEXT(pPacket),
66+ ADF_OS_DMA_TO_DEVICE);
67 }
68 LOCK_HTC_TX(target);
69 /* store in look up queue to match completions */
70@@ -1261,12 +1260,13 @@ A_STATUS HTCSendPktsMultiple(HTC_HANDLE HTCHandle, HTC_PACKET_QUEUE *pPktQueue)
71 * mapped. This only applies to non-data frames, since data frames
72 * were already mapped as they entered into the driver.
73 */
74- adf_nbuf_map(
75- target->osdev,
76- GET_HTC_PACKET_NET_BUF_CONTEXT(pPacket),
77- ADF_OS_DMA_TO_DEVICE);
78-
79- pPacket->PktInfo.AsTx.Flags |= HTC_TX_PACKET_FLAG_FIXUP_NETBUF;
80+ if(!IS_TX_CREDIT_FLOW_ENABLED(pEndpoint)) {
81+ pPacket->PktInfo.AsTx.Flags |= HTC_TX_PACKET_FLAG_FIXUP_NETBUF;
82+ adf_nbuf_map(
83+ target->osdev,
84+ GET_HTC_PACKET_NET_BUF_CONTEXT(pPacket),
85+ ADF_OS_DMA_TO_DEVICE);
86+ }
87 } HTC_PACKET_QUEUE_ITERATE_END;
88
89 HTCTrySend(target,pEndpoint,pPktQueue);
90--
911.9.1
92
diff --git a/recipes-kernel/kernel-modules/kernel-module-qca6174_2.0.bb b/recipes-kernel/kernel-modules/kernel-module-qca6174_2.0.bb
new file mode 100644
index 00000000..3bc18124
--- /dev/null
+++ b/recipes-kernel/kernel-modules/kernel-module-qca6174_2.0.bb
@@ -0,0 +1,15 @@
1require kernel-module-qcacld-lea.inc
2
3SUMMARY = "Qualcomm WiFi driver for QCA module 6174"
4
5SRC_URI += "file://0001-MLK-18491-02-qcacld-2.0-fix-the-overflow-of-bounce-b.patch"
6
7EXTRA_OEMAKE += " \
8 CONFIG_ROME_IF=pci \
9 CONFIG_WLAN_FEATURE_11W=y \
10 CONFIG_WLAN_FEATURE_FILS=y \
11 CONFIG_WLAN_WAPI_MODE_11AC_DISABLE=y \
12 MODNAME=qca6174 \
13"
14
15RDEPENDS_${PN} += "firmware-qca6174"
diff --git a/recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc b/recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc
index a4597eae..b2aa7599 100644
--- a/recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc
+++ b/recipes-kernel/kernel-modules/kernel-module-qcacld-lea.inc
@@ -1,6 +1,6 @@
1# Copyright 2018 NXP 1# Copyright 2018 NXP
2 2
3SUMMARY = "Qualcomm WiFi driver for QCA module 9377" 3SUMMARY = "Qualcomm WiFi driver for QCA module 9377 and 6174"
4LICENSE = "BSD & GPLv2" 4LICENSE = "BSD & GPLv2"
5LIC_FILES_CHKSUM = "file://CORE/HDD/src/wlan_hdd_main.c;beginline=1;endline=20;md5=ec8d62116b13db773825ebf7cf91be1d;" 5LIC_FILES_CHKSUM = "file://CORE/HDD/src/wlan_hdd_main.c;beginline=1;endline=20;md5=ec8d62116b13db773825ebf7cf91be1d;"
6 6