Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fa1352fa authored by Subash Abhinov Kasiviswanathan's avatar Subash Abhinov Kasiviswanathan
Browse files

dfc: remove unsupported modes



Removes DFC modes that no longer supported.

Change-Id: I86c5d549ca02b0313dc89ed9e12d770323e55a9e
Acked-by: default avatarWeiyi Chen <weiyic@qti.qualcomm.com>
Signed-off-by: default avatarSubash Abhinov Kasiviswanathan <subashab@codeaurora.org>
parent f45bf5ce
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -486,6 +486,11 @@ int dfc_qmap_client_init(void *port, int index, struct svc_info *psvc,
	if (!port || !qmi)
		return -EINVAL;

	/* Prevent double init */
	data = rcu_dereference(qmap_dfc_data);
	if (data)
		return -EINVAL;

	data = kzalloc(sizeof(struct dfc_qmi_data), GFP_KERNEL);
	if (!data)
		return -ENOMEM;
@@ -499,7 +504,6 @@ int dfc_qmap_client_init(void *port, int index, struct svc_info *psvc,

	atomic_set(&qmap_txid, 0);

	if (!rmnet_ctl)
	rmnet_ctl = symbol_get(rmnet_ctl_if);
	if (!rmnet_ctl) {
		pr_err("rmnet_ctl module not loaded\n");
+4 −10
Original line number Diff line number Diff line
@@ -1479,16 +1479,10 @@ void dfc_qmi_burst_check(struct net_device *dev, struct qos_info *qos,

	spin_lock_bh(&qos->qos_lock);

	if (dfc_mode == DFC_MODE_MQ_NUM) {
		/* Mark is mq num */
		if (likely(mark < MAX_MQ_NUM))
			bearer = qos->mq[mark].bearer;
	} else {
	/* Mark is flow_id */
	itm = qmi_rmnet_get_flow_map(qos, mark, ip_type);
	if (likely(itm))
		bearer = itm->bearer;
	}

	if (unlikely(!bearer))
		goto out;
+6 −26
Original line number Diff line number Diff line
@@ -39,14 +39,12 @@
#define FLAG_TO_MODE(f) ((f) & FLAG_DFC_MASK)

#define DFC_SUPPORTED_MODE(m) \
	((m) == DFC_MODE_FLOW_ID || (m) == DFC_MODE_MQ_NUM || \
	 (m) == DFC_MODE_SA)
	((m) == DFC_MODE_SA)

#define FLAG_TO_QMAP(f) ((f) & FLAG_QMAP_MASK)

int dfc_mode;
int dfc_qmap;
#define IS_ANCILLARY(type) ((type) != AF_INET && (type) != AF_INET6)

unsigned int rmnet_wq_frequency __read_mostly = 1000;

@@ -312,9 +310,6 @@ static void __qmi_rmnet_update_mq(struct net_device *dev,
			bearer->mq_idx = itm->mq_idx;
			bearer->ack_mq_idx = itm->mq_idx + ACK_MQ_OFFSET;
		} else {
			if (IS_ANCILLARY(itm->ip_type))
				bearer->ack_mq_idx = itm->mq_idx;
			else
			bearer->mq_idx = itm->mq_idx;
		}

@@ -855,34 +850,19 @@ int qmi_rmnet_get_queue(struct net_device *dev, struct sk_buff *skb)
	if (!qos)
		return 0;

	/* If mark is mq num return it */
	if (dfc_mode == DFC_MODE_MQ_NUM)
		return mark;

	if (dfc_mode == DFC_MODE_SA)
	if (likely(dfc_mode == DFC_MODE_SA))
		return qmi_rmnet_get_queue_sa(qos, skb);

	/* Default flows */
	if (!mark) {
		if (qmi_rmnet_is_tcp_ack(skb))
			return 1;
		else
			return 0;
	}

	ip_type = (skb->protocol == htons(ETH_P_IPV6)) ? AF_INET6 : AF_INET;

	/* Dedicated flows */
	spin_lock_bh(&qos->qos_lock);

	itm = qmi_rmnet_get_flow_map(qos, mark, ip_type);
	if (unlikely(!itm))
		goto done;

	if (itm)
		txq = itm->mq_idx;

done:
	spin_unlock_bh(&qos->qos_lock);

	return txq;
}
EXPORT_SYMBOL(qmi_rmnet_get_queue);
+0 −2
Original line number Diff line number Diff line
@@ -27,8 +27,6 @@
#define ACK_MQ_OFFSET (MAX_MQ_NUM - 1)
#define INVALID_MQ 0xFF

#define DFC_MODE_FLOW_ID 2
#define DFC_MODE_MQ_NUM 3
#define DFC_MODE_SA 4

#define CONFIG_QTI_QMI_RMNET 1