Browse Source

qcacmn: Use 9 copy engines for QCA6290

Reserve CE9-11 for the MHI driver.

Change-Id: If09c749293f98e9d0d97e73c3720eb5d8800070f
CRs-Fixed: 1093513
Houston Hoffman 8 years ago
parent
commit
710af5a21e
2 changed files with 9 additions and 18 deletions
  1. 6 16
      hif/src/ce/ce_assignment.h
  2. 3 2
      hif/src/ce/ce_main.c

+ 6 - 16
hif/src/ce/ce_assignment.h

@@ -535,6 +535,7 @@ static struct CE_pipe_config target_ce_config_wlan_qca8074[] = {
 	{ /* CE11 */ 11, PIPEDIR_IN,  32, 2048, CE_ATTR_FLAGS, 0,},
 };
 
+#define QCA_6290_CE_COUNT 9
 static struct CE_attr host_ce_config_wlan_qca6290[] = {
 	/* host->target HTC control and raw streams */
 	{ /* CE0 */ CE_ATTR_FLAGS, 0, 16, 2048, 0, NULL,},
@@ -555,14 +556,9 @@ static struct CE_attr host_ce_config_wlan_qca6290[] = {
 	/* ce_diag, the Diagnostic Window */
 	{ /* CE7 */ (CE_ATTR_FLAGS | CE_ATTR_DISABLE_INTR), 0,
 		2, DIAG_TRANSFER_LIMIT, 2, NULL,},
-	/* Target to uMC */
+	/* Reserved for target */
 	{ /* CE8 */ CE_ATTR_FLAGS, 0, 0, 0, 0, NULL,},
-	/* target->host HTT */
-	{ /* CE9 */ CE_ATTR_FLAGS, 0, 0,  2048, 512, NULL,},
-	/* target->host HTT */
-	{ /* CE10 */ CE_ATTR_FLAGS, 0, 0,  2048, 512, NULL,},
-	/* target -> host PKTLOG */
-	{ /* CE11 */ CE_ATTR_FLAGS, 0, 0, 2048, 512, NULL,},
+	/* CE 9, 10, 11 belong to CoreBsp & MHI driver */
 };
 
 static struct CE_pipe_config target_ce_config_wlan_qca6290[] = {
@@ -586,14 +582,8 @@ static struct CE_pipe_config target_ce_config_wlan_qca6290[] = {
 	/* CE7 used only by Host */
 	{ /* CE7 */ 7, PIPEDIR_INOUT_H2H, 0, 0,
 		(CE_ATTR_FLAGS | CE_ATTR_DISABLE_INTR), 0,},
-	/* CE8 used only by IPA */
-	{ /* CE8 */ 8, PIPEDIR_IN, 32, 2048, CE_ATTR_FLAGS, 0,},
-	/* CE9 target->host HTT */
-	{ /* CE9 */ 9, PIPEDIR_IN,  32, 2048, CE_ATTR_FLAGS, 0,},
-	/* CE10 target->host HTT */
-	{ /* CE10 */ 10, PIPEDIR_IN,  32, 2048, CE_ATTR_FLAGS, 0,},
-	/* Target -> host PKTLOG */
-	{ /* CE11 */ 11, PIPEDIR_IN,  32, 2048, CE_ATTR_FLAGS, 0,},
+	/* Reserved for target */
+	{ /* CE8 */ 8, PIPEDIR_INOUT, 32, 16384, CE_ATTR_FLAGS, 0,},
+	/* CE 9, 10, 11 belong to CoreBsp & MHI driver */
 };
-;
 #endif /* __HIF_PCI_INTERNAL_H__ */

+ 3 - 2
hif/src/ce/ce_main.c

@@ -2021,6 +2021,7 @@ void hif_ce_prepare_config(struct hif_softc *scn)
 	struct hif_target_info *tgt_info = hif_get_target_info_handle(hif_hdl);
 	struct HIF_CE_state *hif_state = HIF_GET_CE_STATE(scn);
 
+	scn->ce_count = HOST_CE_COUNT;
 	/* if epping is enabled we need to use the epping configuration. */
 	if (QDF_IS_EPPING_ENABLED(mode)) {
 		if (CE_EPPING_USES_IRQ)
@@ -2094,6 +2095,7 @@ void hif_ce_prepare_config(struct hif_softc *scn)
 		hif_state->target_ce_config = target_ce_config_wlan_qca6290;
 		hif_state->target_ce_config_sz =
 					sizeof(target_ce_config_wlan_qca6290);
+		scn->ce_count = QCA_6290_CE_COUNT;
 		break;
 	}
 }
@@ -2226,8 +2228,7 @@ int hif_config_ce(struct hif_softc *scn)
 	hif_config_rri_on_ddr(scn);
 
 	hif_state->ce_services = ce_services_attach(scn);
-	/* During CE initializtion */
-	scn->ce_count = HOST_CE_COUNT;
+
 	for (pipe_num = 0; pipe_num < scn->ce_count; pipe_num++) {
 		struct CE_attr *attr;
 		pipe_info = &hif_state->pipe_info[pipe_num];