summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRandy Chiu <wchiu@qca.qualcomm.com>2014-01-27 10:06:47 +0800
committerAkash Patel <c_akashp@qca.qualcomm.com>2014-04-15 12:37:10 -0700
commit70e84eeb126465f198f8fd0908e936fcab3cbe8a (patch)
treee69f49ecd7a8bdc00b48e692cac812cf91127841
parent0622cbbe605016547ea97413b48684e67c3d518e (diff)
qcacld-new: SERVICE BMI:Add USB feature to SERVICE/BMI module
separate different allocate function for PCI and USB modify MAX_SUPPORTED_PEERS to 8 for HL Change-Id: I01af6d4d337e0b1269442bc7c7a17a822d1adec1 CRs-fixed: 607579
-rw-r--r--CORE/SERVICES/BMI/bmi.c30
-rw-r--r--CORE/SERVICES/BMI/ol_fw.c6
2 files changed, 33 insertions, 3 deletions
diff --git a/CORE/SERVICES/BMI/bmi.c b/CORE/SERVICES/BMI/bmi.c
index f9b901b52e66..241a83ddc52d 100644
--- a/CORE/SERVICES/BMI/bmi.c
+++ b/CORE/SERVICES/BMI/bmi.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2013 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2013-2014 Qualcomm Atheros, Inc.
*
* Previously licensed under the ISC license by Qualcomm Atheros, Inc.
*
@@ -97,20 +97,28 @@ BMIInit(struct ol_softc *scn)
*/
if (!scn->pBMICmdBuf) {
+#ifndef HIF_PCI
+ scn->pBMICmdBuf =
+ (A_UCHAR *)A_MALLOC(MAX_BMI_CMDBUF_SZ);
+#else
scn->pBMICmdBuf =
(A_UCHAR *)pci_alloc_consistent(scn->sc_osdev->bdev,
MAX_BMI_CMDBUF_SZ,
&scn->BMICmd_pa);
-
+#endif
ASSERT(scn->pBMICmdBuf);
}
if (!scn->pBMIRspBuf) {
+#ifndef HIF_PCI
+ scn->pBMIRspBuf =
+ (A_UCHAR *)A_MALLOC(MAX_BMI_CMDBUF_SZ);
+#else
scn->pBMIRspBuf =
(A_UCHAR *)pci_alloc_consistent(scn->sc_osdev->bdev,
MAX_BMI_CMDBUF_SZ,
&scn->BMIRsp_pa);
-
+#endif
ASSERT(scn->pBMIRspBuf);
}
@@ -121,15 +129,23 @@ void
BMICleanup(struct ol_softc *scn)
{
if (scn->pBMICmdBuf) {
+#ifndef HIF_PCI
+ A_FREE(scn->pBMICmdBuf );
+#else
pci_free_consistent(scn->sc_osdev->bdev, MAX_BMI_CMDBUF_SZ,
scn->pBMICmdBuf, scn->BMICmd_pa);
+#endif
scn->pBMICmdBuf = NULL;
scn->BMICmd_pa = 0;
}
if (scn->pBMIRspBuf) {
+#ifndef HIF_PCI
+ A_FREE(scn->pBMIRspBuf);
+#else
pci_free_consistent(scn->sc_osdev->bdev, MAX_BMI_CMDBUF_SZ,
scn->pBMIRspBuf, scn->BMIRsp_pa);
+#endif
scn->pBMIRspBuf = NULL;
scn->BMIRsp_pa = 0;
}
@@ -181,15 +197,23 @@ BMIDone(HIF_DEVICE *device, struct ol_softc *scn)
}
if (scn->pBMICmdBuf) {
+#ifndef HIF_PCI
+ A_FREE(scn->pBMICmdBuf);
+#else
pci_free_consistent(scn->sc_osdev->bdev, MAX_BMI_CMDBUF_SZ,
scn->pBMICmdBuf, scn->BMICmd_pa);
+#endif
scn->pBMICmdBuf = NULL;
scn->BMICmd_pa = 0;
}
if (scn->pBMIRspBuf) {
+#ifndef HIF_PCI
+ A_FREE(scn->pBMIRspBuf);
+#else
pci_free_consistent(scn->sc_osdev->bdev, MAX_BMI_CMDBUF_SZ,
scn->pBMIRspBuf, scn->BMIRsp_pa);
+#endif
scn->pBMIRspBuf = NULL;
scn->BMIRsp_pa = 0;
}
diff --git a/CORE/SERVICES/BMI/ol_fw.c b/CORE/SERVICES/BMI/ol_fw.c
index 64b2cb2158a1..932326bd7fdb 100644
--- a/CORE/SERVICES/BMI/ol_fw.c
+++ b/CORE/SERVICES/BMI/ol_fw.c
@@ -1740,8 +1740,14 @@ int ol_target_coredump(void *inst, void *memoryBlock, u_int32_t blockLength)
}
#endif
+#if defined(CONFIG_HL_SUPPORT)
+#define MAX_SUPPORTED_PEERS_REV1_1 8
+#define MAX_SUPPORTED_PEERS_REV1_3 8
+#else
#define MAX_SUPPORTED_PEERS_REV1_1 14
#define MAX_SUPPORTED_PEERS_REV1_3 32
+#endif
+
u_int8_t ol_get_number_of_peers_supported(struct ol_softc *scn)
{
u_int8_t max_no_of_peers = 0;