mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-07 12:25:00 -04:00
Merge "msm_rmnet.h: Add new ioctls for rmnet to reg/unreg for notification"
This commit is contained in:
commit
40075faa5b
3 changed files with 68 additions and 0 deletions
|
|
@ -225,6 +225,10 @@ struct ipa_fmwk_contex {
|
|||
|
||||
int (*ipa_unregister_rmnet_ll_cb)(void);
|
||||
|
||||
int (*ipa_register_notifier)(void *fn_ptr);
|
||||
|
||||
int (*ipa_unregister_notifier)(void *fn_ptr);
|
||||
|
||||
/* ipa_usb APIs */
|
||||
int (*ipa_usb_init_teth_prot)(enum ipa_usb_teth_prot teth_prot,
|
||||
struct ipa_usb_teth_params *teth_params,
|
||||
|
|
@ -552,6 +556,8 @@ int ipa_fmwk_register_ipa(const struct ipa_core_data *in)
|
|||
ipa_fmwk_ctx->ipa_register_rmnet_ll_cb = in->ipa_register_rmnet_ll_cb;
|
||||
ipa_fmwk_ctx->ipa_unregister_rmnet_ll_cb =
|
||||
in->ipa_unregister_rmnet_ll_cb;
|
||||
ipa_fmwk_ctx->ipa_register_notifier =
|
||||
in->ipa_unregister_notifier;
|
||||
|
||||
ipa_fmwk_ctx->ipa_ready = true;
|
||||
ipa_trigger_ipa_ready_cbs();
|
||||
|
|
@ -1051,6 +1057,26 @@ int ipa_unregister_rmnet_ll_cb(void)
|
|||
}
|
||||
EXPORT_SYMBOL(ipa_unregister_rmnet_ll_cb);
|
||||
|
||||
int ipa_register_notifier(void *fn_ptr)
|
||||
{
|
||||
int ret;
|
||||
|
||||
IPA_FMWK_DISPATCH_RETURN(ipa_register_notifier, fn_ptr);
|
||||
|
||||
return ret;
|
||||
}
|
||||
EXPORT_SYMBOL(ipa_register_notifier);
|
||||
|
||||
int ipa_unregister_notifier(void *fn_ptr)
|
||||
{
|
||||
int ret;
|
||||
|
||||
IPA_FMWK_DISPATCH_RETURN(ipa_unregister_notifier, fn_ptr);
|
||||
|
||||
return ret;
|
||||
}
|
||||
EXPORT_SYMBOL(ipa_unregister_notifier);
|
||||
|
||||
/* registration API for IPA usb module */
|
||||
int ipa_fmwk_register_ipa_usb(const struct ipa_usb_data *in)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -36,6 +36,12 @@
|
|||
#define IPA_SOCKsv5_ADD_V4_V6_COM_PM 2
|
||||
#define IPA_SOCKsv5_ADD_V6_V6_COM_PM 3
|
||||
|
||||
/* Notifiers for rmnet driver */
|
||||
#define BUFF_ABOVE_HIGH_THRESHOLD_FOR_DEFAULT_PIPE 1
|
||||
#define BUFF_ABOVE_HIGH_THRESHOLD_FOR_COAL_PIPE 2
|
||||
#define BUFF_BELOW_LOW_THRESHOLD_FOR_DEFAULT_PIPE 3
|
||||
#define BUFF_BELOW_LOW_THRESHOLD_FOR_COAL_PIPE 4
|
||||
|
||||
/**
|
||||
* enum ipa_transport_type
|
||||
* transport type: either GSI or SPS
|
||||
|
|
@ -1577,6 +1583,24 @@ int ipa_rmnet_ctl_xmit(struct sk_buff *skb);
|
|||
*/
|
||||
int ipa_rmnet_ll_xmit(struct sk_buff *skb);
|
||||
|
||||
/*
|
||||
* ipa_register_notifier - Register for IPA atomic notifier
|
||||
*
|
||||
* @fn_ptr - Function pointer to get the notification
|
||||
*
|
||||
* This funciton will return 0 on success, -EAGAIN if reg fails.
|
||||
*/
|
||||
int ipa_register_notifier(void *fn_ptr);
|
||||
|
||||
/*
|
||||
* ipa_unregister_notifier - Unregister for IPA atomic notifier
|
||||
*
|
||||
* @fn_ptr - Function pointer to get the notification
|
||||
*
|
||||
* This funciton will return 0 on success, -EAGAIN if reg fails.
|
||||
*/
|
||||
int ipa_unregister_notifier(void *fn_ptr);
|
||||
|
||||
void ipa_free_skb(struct ipa_rx_data *data);
|
||||
|
||||
/*
|
||||
|
|
@ -2008,6 +2032,22 @@ static inline int ipa_rmnet_ll_xmit(struct sk_buff *skb)
|
|||
return -EPERM;
|
||||
}
|
||||
|
||||
/*
|
||||
* Rmnet Notifier register
|
||||
*/
|
||||
static inline int ipa_register_notifier(struct sk_buff *skb)
|
||||
{
|
||||
return -EPERM;
|
||||
}
|
||||
|
||||
/*
|
||||
* Rmnet Notifier unregister
|
||||
*/
|
||||
static inline int ipa_unregister_notifier(struct sk_buff *skb)
|
||||
{
|
||||
return -EPERM;
|
||||
}
|
||||
|
||||
static inline void ipa_free_skb(struct ipa_rx_data *rx_in)
|
||||
{
|
||||
}
|
||||
|
|
|
|||
|
|
@ -135,6 +135,8 @@ struct ipa_core_data {
|
|||
void *user_data3);
|
||||
|
||||
int (*ipa_unregister_rmnet_ll_cb)(void);
|
||||
int (*ipa_register_notifier)(void *fn_ptr);
|
||||
int (*ipa_unregister_notifier)(void *fn_ptr);
|
||||
};
|
||||
|
||||
struct ipa_usb_data {
|
||||
|
|
|
|||
Loading…
Reference in a new issue