qcacld-3.0: abstract Linux identifiers from IPA component

Abstract Linux based OS identifiers from IPA component in
HDD/OSIF layer.

Change-Id: I82a5db8c796d47d552757b1a450df10c72061177
This commit is contained in:
Vevek Venkatesan 2019-05-28 18:19:15 +05:30 • committed by nshrivas
commit 3b6be82e9b
9 changed files with 39 additions and 32 deletions

View file

@ -492,7 +492,8 @@ void wlan_ipa_reg_sap_xmit_cb(struct wlan_ipa_priv *ipa_ctx,
* Return: None
*/
static inline
void wlan_ipa_reg_send_to_nw_cb(struct wlan_ipa_priv *ipa_ctx, void *cb)
void wlan_ipa_reg_send_to_nw_cb(struct wlan_ipa_priv *ipa_ctx,
wlan_ipa_send_to_nw cb)
{
ipa_ctx->send_to_nw = cb;
}

View file

@ -253,7 +253,8 @@ void ipa_reg_sap_xmit_cb(struct wlan_objmgr_pdev *pdev,
*
* Return: None
*/
void ipa_reg_send_to_nw_cb(struct wlan_objmgr_pdev *pdev, void *cb);
void ipa_reg_send_to_nw_cb(struct wlan_objmgr_pdev *pdev,
wlan_ipa_send_to_nw cb);
/**
* ipa_set_mcc_mode() - Set MCC mode
@ -433,6 +434,7 @@ uint32_t ipa_get_tx_buf_count(void);
#else /* Not IPA_OFFLOAD */
typedef QDF_STATUS (*wlan_ipa_softap_xmit)(qdf_nbuf_t nbuf, qdf_netdev_t dev);
typedef void (*wlan_ipa_send_to_nw)(qdf_nbuf_t nbuf, qdf_netdev_t dev);
#endif /* IPA_OFFLOAD */
#endif /* end of _WLAN_IPA_MAIN_H_ */

View file

@ -567,7 +567,7 @@ struct wlan_ipa_tx_desc {
};
typedef QDF_STATUS (*wlan_ipa_softap_xmit)(qdf_nbuf_t nbuf, qdf_netdev_t dev);
typedef void (*wlan_ipa_send_to_nw)(qdf_nbuf_t skb, qdf_netdev_t dev);
typedef void (*wlan_ipa_send_to_nw)(qdf_nbuf_t nbuf, qdf_netdev_t dev);
/* IPA private context structure definition */
struct wlan_ipa_priv {

View file

@ -300,7 +300,8 @@ void ipa_reg_sap_xmit_cb(struct wlan_objmgr_pdev *pdev, wlan_ipa_softap_xmit cb)
return wlan_ipa_reg_sap_xmit_cb(ipa_obj, cb);
}
void ipa_reg_send_to_nw_cb(struct wlan_objmgr_pdev *pdev, void *cb)
void ipa_reg_send_to_nw_cb(struct wlan_objmgr_pdev *pdev,
wlan_ipa_send_to_nw cb)
{
struct wlan_ipa_priv *ipa_obj;

View file

@ -161,7 +161,8 @@ void ucfg_ipa_reg_sap_xmit_cb(struct wlan_objmgr_pdev *pdev,
*
* Return: None
*/
void ucfg_ipa_reg_send_to_nw_cb(struct wlan_objmgr_pdev *pdev, void *cb);
void ucfg_ipa_reg_send_to_nw_cb(struct wlan_objmgr_pdev *pdev,
wlan_ipa_send_to_nw cb);
/**
* ucfg_ipa_set_mcc_mode() - Set MCC mode
@ -423,7 +424,8 @@ void ucfg_ipa_reg_sap_xmit_cb(struct wlan_objmgr_pdev *pdev,
}
static inline
void ucfg_ipa_reg_send_to_nw_cb(struct wlan_objmgr_pdev *pdev, void *cb)
void ucfg_ipa_reg_send_to_nw_cb(struct wlan_objmgr_pdev *pdev,
wlan_ipa_send_to_nw cb)
{
}

View file

@ -95,7 +95,8 @@ void ucfg_ipa_reg_sap_xmit_cb(struct wlan_objmgr_pdev *pdev,
return ipa_reg_sap_xmit_cb(pdev, cb);
}
void ucfg_ipa_reg_send_to_nw_cb(struct wlan_objmgr_pdev *pdev, void *cb)
void ucfg_ipa_reg_send_to_nw_cb(struct wlan_objmgr_pdev *pdev,
wlan_ipa_send_to_nw cb)
{
return ipa_reg_send_to_nw_cb(pdev, cb);

View file

@ -1,5 +1,5 @@
/*
* Copyright (c) 2013-2018 The Linux Foundation. All rights reserved.
* Copyright (c) 2013-2019 The Linux Foundation. All rights reserved.
*
* Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the
@ -30,16 +30,16 @@
#ifdef IPA_OFFLOAD
/**
* hdd_ipa_send_skb_to_network() - Send skb to kernel
* @skb: network buffer
* @adapter: network adapter
* hdd_ipa_send_nbuf_to_network() - Send network buffer to kernel
* @nbuf: network buffer
* @dev: network adapter
*
* Called when a network buffer is received which should not be routed
* to the IPA module.
*
* Return: None
*/
void hdd_ipa_send_skb_to_network(qdf_nbuf_t skb, qdf_netdev_t dev);
void hdd_ipa_send_nbuf_to_network(qdf_nbuf_t nbuf, qdf_netdev_t dev);
/**
* hdd_ipa_set_tx_flow_info() - To set TX flow info if IPA is
@ -63,7 +63,7 @@ void hdd_ipa_set_mcc_mode(bool mcc_mode);
#else
static inline
void hdd_ipa_send_skb_to_network(qdf_nbuf_t skb, qdf_netdev_t dev)
void hdd_ipa_send_nbuf_to_network(qdf_nbuf_t skb, qdf_netdev_t dev)
{
}

View file

@ -399,7 +399,7 @@ static int hdd_ipa_aggregated_rx_ind(qdf_nbuf_t skb)
}
#endif
void hdd_ipa_send_skb_to_network(qdf_nbuf_t skb, qdf_netdev_t dev)
void hdd_ipa_send_nbuf_to_network(qdf_nbuf_t nbuf, qdf_netdev_t dev)
{
struct hdd_adapter *adapter = (struct hdd_adapter *) netdev_priv(dev);
int result;
@ -408,37 +408,37 @@ void hdd_ipa_send_skb_to_network(qdf_nbuf_t skb, qdf_netdev_t dev)
uint32_t enabled;
if (hdd_validate_adapter(adapter)) {
kfree_skb(skb);
kfree_skb(nbuf);
return;
}
if (cds_is_driver_unloading()) {
kfree_skb(skb);
kfree_skb(nbuf);
return;
}
if ((adapter->device_mode == QDF_SAP_MODE) &&
(qdf_nbuf_is_ipv4_dhcp_pkt(skb) == true)) {
(qdf_nbuf_is_ipv4_dhcp_pkt(nbuf) == true)) {
/* Send DHCP Indication to FW */
struct qdf_mac_addr *src_mac =
(struct qdf_mac_addr *)(skb->data +
(struct qdf_mac_addr *)(nbuf->data +
QDF_NBUF_SRC_MAC_OFFSET);
if (QDF_STATUS_SUCCESS ==
hdd_softap_get_sta_id(adapter, src_mac, &sta_id))
hdd_inspect_dhcp_packet(adapter, sta_id, skb, QDF_RX);
hdd_inspect_dhcp_packet(adapter, sta_id, nbuf, QDF_RX);
}
qdf_dp_trace_set_track(skb, QDF_RX);
qdf_dp_trace_set_track(nbuf, QDF_RX);
hdd_event_eapol_log(skb, QDF_RX);
hdd_event_eapol_log(nbuf, QDF_RX);
qdf_dp_trace_log_pkt(adapter->vdev_id,
skb, QDF_RX, QDF_TRACE_DEFAULT_PDEV_ID);
DPTRACE(qdf_dp_trace(skb,
nbuf, QDF_RX, QDF_TRACE_DEFAULT_PDEV_ID);
DPTRACE(qdf_dp_trace(nbuf,
QDF_DP_TRACE_RX_HDD_PACKET_PTR_RECORD,
QDF_TRACE_DEFAULT_PDEV_ID,
qdf_nbuf_data_addr(skb),
sizeof(qdf_nbuf_data(skb)), QDF_RX));
DPTRACE(qdf_dp_trace_data_pkt(skb, QDF_TRACE_DEFAULT_PDEV_ID,
qdf_nbuf_data_addr(nbuf),
sizeof(qdf_nbuf_data(nbuf)), QDF_RX));
DPTRACE(qdf_dp_trace_data_pkt(nbuf, QDF_TRACE_DEFAULT_PDEV_ID,
QDF_DP_TRACE_RX_PACKET_RECORD, 0,
QDF_RX));
@ -450,9 +450,9 @@ void hdd_ipa_send_skb_to_network(qdf_nbuf_t skb, qdf_netdev_t dev)
if (!enabled)
hdd_ipa_set_wake_up_idle(true);
skb->dev = adapter->dev;
skb->protocol = eth_type_trans(skb, skb->dev);
skb->ip_summed = CHECKSUM_NONE;
nbuf->dev = adapter->dev;
nbuf->protocol = eth_type_trans(nbuf, nbuf->dev);
nbuf->ip_summed = CHECKSUM_NONE;
cpu_index = wlan_hdd_get_cpu();
@ -464,9 +464,9 @@ void hdd_ipa_send_skb_to_network(qdf_nbuf_t skb, qdf_netdev_t dev)
*/
++adapter->stats.rx_packets;
adapter->stats.rx_bytes += skb->len;
adapter->stats.rx_bytes += nbuf->len;
result = hdd_ipa_aggregated_rx_ind(skb);
result = hdd_ipa_aggregated_rx_ind(nbuf);
if (result == NET_RX_SUCCESS)
++adapter->hdd_stats.tx_rx_stats.rx_delivered[cpu_index];
else

View file

@ -1827,7 +1827,7 @@ int hdd_update_tgt_cfg(hdd_handle_t hdd_handle, struct wma_tgt_cfg *cfg)
ucfg_ipa_reg_sap_xmit_cb(hdd_ctx->pdev,
hdd_softap_ipa_start_xmit);
ucfg_ipa_reg_send_to_nw_cb(hdd_ctx->pdev,
hdd_ipa_send_skb_to_network);
hdd_ipa_send_nbuf_to_network);
status = ucfg_mlme_get_sub_20_chan_width(hdd_ctx->psoc,
&sub_20_chan_width);