diff options
author | Alok Makhariya <B46187@freescale.com> | 2014-03-28 12:02:51 (GMT) |
---|---|---|
committer | Jose Rivera <German.Rivera@freescale.com> | 2014-03-31 18:55:00 (GMT) |
commit | 3b3793a20e6740f51683ccd392dcb6d1e435e9fa (patch) | |
tree | 498cac45a76224a321db2b53d0d3bdc0432b18a2 /drivers/net/ethernet/freescale/asf_gianfar.h | |
parent | c159733d68f5f8f602a41c3fe9076c6995307a8c (diff) | |
download | linux-fsl-qoriq-3b3793a20e6740f51683ccd392dcb6d1e435e9fa.tar.xz |
ASF : Adding ASF specific gianfar xmit and clean_rx_ring
New file asf_gianfar.c and asf_gianfar.h is added to support ASF.
CQ ID : ENGR00304852
Change-Id: I44829148111a067476fe212aadcecdbc088e5091
Signed-off-by: Alok Makhariya <B46187@freescale.com>
Reviewed-on: http://git.am.freescale.net:8181/10351
Reviewed-by: Rajan Gupta <rajan.gupta@freescale.com>
Reviewed-by: Claudiu Manoil <claudiu.manoil@freescale.com>
Tested-by: Review Code-CDREVIEW <CDREVIEW@freescale.com>
Reviewed-by: Jose Rivera <German.Rivera@freescale.com>
Diffstat (limited to 'drivers/net/ethernet/freescale/asf_gianfar.h')
-rw-r--r-- | drivers/net/ethernet/freescale/asf_gianfar.h | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/drivers/net/ethernet/freescale/asf_gianfar.h b/drivers/net/ethernet/freescale/asf_gianfar.h new file mode 100644 index 0000000..e53bcca --- /dev/null +++ b/drivers/net/ethernet/freescale/asf_gianfar.h @@ -0,0 +1,38 @@ +/* drivers/net/ethernet/freescale/asf_gianfar.h + * + * ASF Specific Gianfar Ethernet Driver + * + * Copyright 2014 Freescale Semiconductor, Inc. + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation; either version 2 of the License, or (at your + * option) any later version. + * + */ +#ifndef __ASF_GIANFAR_H +#define __ASF_GIANFAR_H + +#define TSTAT_TXF_MASK_ALL 0x0000FF00 +#define TSTAT_TXF0_MASK 0x00008000 + + +#ifdef IMASK_DEFAULT +#undef IMASK_DEFAULT +#endif + +#define IMASK_DEFAULT (IMASK_TXEEN | \ + IMASK_RXFEN0 | IMASK_BSY | IMASK_EBERR | IMASK_BABR | \ + IMASK_XFUN | IMASK_RXC | IMASK_BABT | IMASK_DPE \ + | IMASK_PERR) + +extern DEFINE_PER_CPU(struct sk_buff_head, skb_recycle_list); +extern irqreturn_t gfar_enable_tx_queue(int irq, void *dev_id); +extern void gfar_tx_vlan(struct sk_buff *skb, struct txfcb *fcb); +extern int gfar_asf_start_xmit(struct sk_buff *skb, struct net_device *dev); +extern struct sk_buff *gfar_new_skb(struct net_device *dev); +int gfar_asf_clean_rx_ring(struct gfar_priv_rx_q *rx_queue, int rx_work_limit); +extern void gfar_asf_process_frame(struct net_device *dev, struct sk_buff *skb, + int amount_pull, struct napi_struct *napi); + +#endif /* __ASF_GIANFAR_H */ |