summaryrefslogtreecommitdiff
path: root/include/linux/ipa.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/ipa.h')
-rw-r--r--include/linux/ipa.h82
1 files changed, 14 insertions, 68 deletions
diff --git a/include/linux/ipa.h b/include/linux/ipa.h
index fe99c620b85b..3a87177b623f 100644
--- a/include/linux/ipa.h
+++ b/include/linux/ipa.h
@@ -907,12 +907,23 @@ struct IpaHwStatsWDIInfoData_t {
* Rx buffers)
* @rdy_ring_size: size of the Rx ring in bytes
* @rdy_ring_rp_pa: physical address of the location through which IPA uc is
+ * reading (WDI-1.0)
+ * @rdy_comp_ring_base_pa: physical address of the base of the Rx completion
+ * ring (WDI-2.0)
+ * @rdy_comp_ring_wp_pa: physical address of the location through which IPA
+ * uc is writing (WDI-2.0)
+ * @rdy_comp_ring_size: size of the Rx_completion ring in bytes
* expected to communicate about the Read pointer into the Rx Ring
*/
struct ipa_wdi_ul_params {
phys_addr_t rdy_ring_base_pa;
u32 rdy_ring_size;
phys_addr_t rdy_ring_rp_pa;
+ phys_addr_t rdy_comp_ring_base_pa;
+ phys_addr_t rdy_comp_ring_wp_pa;
+ u32 rdy_comp_ring_size;
+ u32 *rdy_ring_rp_va;
+ u32 *rdy_comp_ring_wp_va;
};
/**
@@ -926,6 +937,9 @@ struct ipa_wdi_ul_params_smmu {
struct sg_table rdy_ring;
u32 rdy_ring_size;
phys_addr_t rdy_ring_rp_pa;
+ struct sg_table rdy_comp_ring;
+ phys_addr_t rdy_comp_ring_wp_pa;
+ u32 rdy_comp_ring_size;
};
/**
@@ -1038,30 +1052,6 @@ struct ipa_wdi_buffer_info {
};
/**
- * struct odu_bridge_params - parameters for odu bridge initialization API
- *
- * @netdev_name: network interface name
- * @priv: private data that will be supplied to client's callback
- * @tx_dp_notify: callback for handling SKB. the following event are supported:
- * IPA_WRITE_DONE: will be called after client called to odu_bridge_tx_dp()
- * Client is expected to free the skb.
- * IPA_RECEIVE: will be called for delivering skb to APPS.
- * Client is expected to deliver the skb to network stack.
- * @send_dl_skb: callback for sending skb on downlink direction to adapter.
- * Client is expected to free the skb.
- * @device_ethaddr: device Ethernet address in network order.
- * @ipa_desc_size: IPA Sys Pipe Desc Size
- */
-struct odu_bridge_params {
- const char *netdev_name;
- void *priv;
- ipa_notify_cb tx_dp_notify;
- int (*send_dl_skb)(void *priv, struct sk_buff *skb);
- u8 device_ethaddr[ETH_ALEN];
- u32 ipa_desc_size;
-};
-
-/**
* enum ipa_mhi_event_type - event type for mhi callback
*
* @IPA_MHI_EVENT_READY: IPA MHI is ready and IPA uC is loaded. After getting
@@ -1424,20 +1414,6 @@ enum ipacm_client_enum ipa_get_client(int pipe_idx);
bool ipa_get_client_uplink(int pipe_idx);
/*
- * ODU bridge
- */
-
-int odu_bridge_init(struct odu_bridge_params *params);
-
-int odu_bridge_connect(void);
-
-int odu_bridge_disconnect(void);
-
-int odu_bridge_tx_dp(struct sk_buff *skb, struct ipa_tx_meta *metadata);
-
-int odu_bridge_cleanup(void);
-
-/*
* IPADMA
*/
int ipa_dma_init(void);
@@ -2090,36 +2066,6 @@ static inline bool ipa_get_client_uplink(int pipe_idx)
return -EPERM;
}
-
-/*
- * ODU bridge
- */
-static inline int odu_bridge_init(struct odu_bridge_params *params)
-{
- return -EPERM;
-}
-
-static inline int odu_bridge_disconnect(void)
-{
- return -EPERM;
-}
-
-static inline int odu_bridge_connect(void)
-{
- return -EPERM;
-}
-
-static inline int odu_bridge_tx_dp(struct sk_buff *skb,
- struct ipa_tx_meta *metadata)
-{
- return -EPERM;
-}
-
-static inline int odu_bridge_cleanup(void)
-{
- return -EPERM;
-}
-
/*
* IPADMA
*/