qcacld-3.0: fix CFI failure by abstracting the callback

Abstract the callback hdd_softap_ipa_start_xmit by
hdd_softap_ipa_start_xmit, to match the return type of
wlan_ipa_softap_xmit pointer, to fix a CFI failure.

Change-Id: If1cb1a80801558d5c7831ec89ad5281b0bbe36f3
This commit is contained in:
Vevek Venkatesan
2019-05-23 17:16:28 +05:30
committed by nshrivas
parent 904ab4d3ca
commit 9d39916b5f
6 changed files with 21 additions and 12 deletions

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
@@ -478,7 +478,8 @@ void wlan_ipa_uc_rt_debug_init(struct wlan_ipa_priv *ipa_ctx);
* Return: None
*/
static inline
void wlan_ipa_reg_sap_xmit_cb(struct wlan_ipa_priv *ipa_ctx, void *cb)
void wlan_ipa_reg_sap_xmit_cb(struct wlan_ipa_priv *ipa_ctx,
wlan_ipa_softap_xmit cb)
{
ipa_ctx->softap_xmit = cb;
}

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2018 The Linux Foundation. All rights reserved.
* Copyright (c) 2018-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
@@ -243,7 +243,8 @@ void ipa_uc_stat_query(struct wlan_objmgr_pdev *pdev,
*
* Return: None
*/
void ipa_reg_sap_xmit_cb(struct wlan_objmgr_pdev *pdev, void *cb);
void ipa_reg_sap_xmit_cb(struct wlan_objmgr_pdev *pdev,
wlan_ipa_softap_xmit cb);
/**
* ipa_reg_send_to_nw_cb() - Register cb to send IPA Rx packet to network
@@ -429,5 +430,9 @@ void ipa_component_config_update(struct wlan_objmgr_psoc *psoc);
*/
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);
#endif /* IPA_OFFLOAD */
#endif /* end of _WLAN_IPA_MAIN_H_ */

View File

@@ -566,7 +566,7 @@ struct wlan_ipa_tx_desc {
qdf_ipa_rx_data_t *ipa_tx_desc_ptr;
};
typedef int (*wlan_ipa_softap_xmit)(qdf_nbuf_t skb, qdf_netdev_t dev);
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);
/* IPA private context structure definition */

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2018 The Linux Foundation. All rights reserved.
* Copyright (c) 2018-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
@@ -282,7 +282,7 @@ void ipa_uc_stat_query(struct wlan_objmgr_pdev *pdev,
return wlan_ipa_uc_stat_query(ipa_obj, ipa_tx_diff, ipa_rx_diff);
}
void ipa_reg_sap_xmit_cb(struct wlan_objmgr_pdev *pdev, void *cb)
void ipa_reg_sap_xmit_cb(struct wlan_objmgr_pdev *pdev, wlan_ipa_softap_xmit cb)
{
struct wlan_ipa_priv *ipa_obj;

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2018 The Linux Foundation. All rights reserved.
* Copyright (c) 2018-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
@@ -151,7 +151,8 @@ void ucfg_ipa_uc_stat_query(struct wlan_objmgr_pdev *pdev,
*
* Return: None
*/
void ucfg_ipa_reg_sap_xmit_cb(struct wlan_objmgr_pdev *pdev, void *cb);
void ucfg_ipa_reg_sap_xmit_cb(struct wlan_objmgr_pdev *pdev,
wlan_ipa_softap_xmit cb);
/**
* ucfg_ipa_reg_send_to_nw_cb() - Register cb to send IPA Rx packet to network
@@ -416,7 +417,8 @@ void ucfg_ipa_uc_stat_query(struct wlan_objmgr_pdev *pdev,
}
static inline
void ucfg_ipa_reg_sap_xmit_cb(struct wlan_objmgr_pdev *pdev, void *cb)
void ucfg_ipa_reg_sap_xmit_cb(struct wlan_objmgr_pdev *pdev,
wlan_ipa_softap_xmit cb)
{
}

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2018 The Linux Foundation. All rights reserved.
* Copyright (c) 2018-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
@@ -89,7 +89,8 @@ void ucfg_ipa_uc_stat_query(struct wlan_objmgr_pdev *pdev,
return ipa_uc_stat_query(pdev, ipa_tx_diff, ipa_rx_diff);
}
void ucfg_ipa_reg_sap_xmit_cb(struct wlan_objmgr_pdev *pdev, void *cb)
void ucfg_ipa_reg_sap_xmit_cb(struct wlan_objmgr_pdev *pdev,
wlan_ipa_softap_xmit cb)
{
return ipa_reg_sap_xmit_cb(pdev, cb);
}