summaryrefslogtreecommitdiff
path: root/cleopatre/devkit/mt7601udrv/os/linux/inf_ppa.c
diff options
context:
space:
mode:
Diffstat (limited to 'cleopatre/devkit/mt7601udrv/os/linux/inf_ppa.c')
-rw-r--r--cleopatre/devkit/mt7601udrv/os/linux/inf_ppa.c62
1 files changed, 62 insertions, 0 deletions
diff --git a/cleopatre/devkit/mt7601udrv/os/linux/inf_ppa.c b/cleopatre/devkit/mt7601udrv/os/linux/inf_ppa.c
new file mode 100644
index 0000000000..78a9f2b9b1
--- /dev/null
+++ b/cleopatre/devkit/mt7601udrv/os/linux/inf_ppa.c
@@ -0,0 +1,62 @@
+/****************************************************************************
+ * Ralink Tech Inc.
+ * 4F, No. 2 Technology 5th Rd.
+ * Science-based Industrial Park
+ * Hsin-chu, Taiwan, R.O.C.
+ * (c) Copyright 2002, Ralink Technology, Inc.
+ *
+ * All rights reserved. Ralink's source code is an unpublished work and the
+ * use of a copyright notice does not imply otherwise. This source code
+ * contains confidential trade secret material of Ralink Tech. Any attemp
+ * or participation in deciphering, decoding, reverse engineering or in any
+ * way altering the source code is stricitly prohibited, unless the prior
+ * written consent of Ralink Technology, Inc. is obtained.
+ ****************************************************************************
+
+ Module Name:
+ inf_ppa.c
+
+ Abstract:
+ Only for Infineon PPA Direct path feature.
+
+
+
+ Revision History:
+ Who When What
+ -------- ---------- ----------------------------------------------
+ carella 06-01-2010 Created
+
+ */
+
+#ifdef INF_PPA_SUPPORT
+
+#include "rt_config.h"
+#include <linux/skbuff.h>
+#include <linux/netdevice.h>
+
+extern INT rt28xx_send_packets(
+ IN struct sk_buff *skb_p,
+ IN struct net_device *net_dev);
+
+int ifx_ra_start_xmit(
+ struct net_device *rx_dev,
+ struct net_device *tx_dev,
+ struct sk_buff *skb, int len)
+{
+ if(tx_dev != NULL)
+ {
+ SET_OS_PKT_NETDEV(skb, tx_dev);
+ rt28xx_send_packets(skb, tx_dev);
+ }
+ else if(rx_dev != NULL)
+ {
+ skb->protocol = eth_type_trans(skb, skb->dev);
+ netif_rx(skb);
+ }
+ else
+ {
+ dev_kfree_skb_any(skb);
+ }
+ return 0;
+}
+#endif /* INF_PPA_SUPPORT */