#ifndef XILINX_LL_TEMAC_H
#define XILINX_LL_TEMAC_H
#include <linux/netdevice.h>
#include <linux/of.h>
#include <linux/platform_device.h>
#include <linux/spinlock.h>
#ifdef CONFIG_PPC_DCR
#include <asm/dcr.h>
#include <asm/dcr-regs.h>
#endif
#define XTE_HDR_SIZE …
#define XTE_TRL_SIZE …
#define XTE_JUMBO_MTU …
#define XTE_MAX_JUMBO_FRAME_SIZE …
#define XTE_OPTION_PROMISC …
#define XTE_OPTION_JUMBO …
#define XTE_OPTION_VLAN …
#define XTE_OPTION_FLOW_CONTROL …
#define XTE_OPTION_FCS_STRIP …
#define XTE_OPTION_FCS_INSERT …
#define XTE_OPTION_LENTYPE_ERR …
#define XTE_OPTION_TXEN …
#define XTE_OPTION_RXEN …
#define XTE_OPTION_DEFAULTS …
#define TX_NXTDESC_PTR …
#define TX_CURBUF_ADDR …
#define TX_CURBUF_LENGTH …
#define TX_CURDESC_PTR …
#define TX_TAILDESC_PTR …
#define TX_CHNL_CTRL …
#define CHNL_CTRL_IRQ_IOE …
#define CHNL_CTRL_IRQ_EN …
#define CHNL_CTRL_IRQ_ERR_EN …
#define CHNL_CTRL_IRQ_DLY_EN …
#define CHNL_CTRL_IRQ_COAL_EN …
#define TX_IRQ_REG …
#define TX_CHNL_STS …
#define RX_NXTDESC_PTR …
#define RX_CURBUF_ADDR …
#define RX_CURBUF_LENGTH …
#define RX_CURDESC_PTR …
#define RX_TAILDESC_PTR …
#define RX_CHNL_CTRL …
#define RX_IRQ_REG …
#define IRQ_COAL …
#define IRQ_DLY …
#define IRQ_ERR …
#define IRQ_DMAERR …
#define RX_CHNL_STS …
#define CHNL_STS_ENGBUSY …
#define CHNL_STS_EOP …
#define CHNL_STS_SOP …
#define CHNL_STS_CMPLT …
#define CHNL_STS_SOE …
#define CHNL_STS_IOE …
#define CHNL_STS_ERR …
#define CHNL_STS_BSYWR …
#define CHNL_STS_CURPERR …
#define CHNL_STS_NXTPERR …
#define CHNL_STS_ADDRERR …
#define CHNL_STS_CMPERR …
#define CHNL_STS_TAILERR …
#define DMA_CONTROL_REG …
#define DMA_CONTROL_RST …
#define DMA_TAIL_ENABLE …
#define XTE_RAF0_OFFSET …
#define RAF0_RST …
#define RAF0_MCSTREJ …
#define RAF0_BCSTREJ …
#define XTE_TPF0_OFFSET …
#define XTE_IFGP0_OFFSET …
#define XTE_ISR0_OFFSET …
#define ISR0_HARDACSCMPLT …
#define ISR0_AUTONEG …
#define ISR0_RXCMPLT …
#define ISR0_RXREJ …
#define ISR0_RXFIFOOVR …
#define ISR0_TXCMPLT …
#define ISR0_RXDCMLCK …
#define XTE_IPR0_OFFSET …
#define XTE_IER0_OFFSET …
#define XTE_MSW0_OFFSET …
#define XTE_LSW0_OFFSET …
#define XTE_CTL0_OFFSET …
#define XTE_RDY0_OFFSET …
#define XTE_RSE_MIIM_RR_MASK …
#define XTE_RSE_MIIM_WR_MASK …
#define XTE_RSE_CFG_RR_MASK …
#define XTE_RSE_CFG_WR_MASK …
#define XTE_RDY0_HARD_ACS_RDY_MASK …
#define XTE_RXC0_OFFSET …
#define XTE_RXC1_OFFSET …
#define XTE_RXC1_RXRST_MASK …
#define XTE_RXC1_RXJMBO_MASK …
#define XTE_RXC1_RXFCS_MASK …
#define XTE_RXC1_RXEN_MASK …
#define XTE_RXC1_RXVLAN_MASK …
#define XTE_RXC1_RXHD_MASK …
#define XTE_RXC1_RXLT_MASK …
#define XTE_TXC_OFFSET …
#define XTE_TXC_TXRST_MASK …
#define XTE_TXC_TXJMBO_MASK …
#define XTE_TXC_TXFCS_MASK …
#define XTE_TXC_TXEN_MASK …
#define XTE_TXC_TXVLAN_MASK …
#define XTE_TXC_TXHD_MASK …
#define XTE_FCC_OFFSET …
#define XTE_FCC_RXFLO_MASK …
#define XTE_FCC_TXFLO_MASK …
#define XTE_EMCFG_OFFSET …
#define XTE_EMCFG_LINKSPD_MASK …
#define XTE_EMCFG_HOSTEN_MASK …
#define XTE_EMCFG_LINKSPD_10 …
#define XTE_EMCFG_LINKSPD_100 …
#define XTE_EMCFG_LINKSPD_1000 …
#define XTE_GMIC_OFFSET …
#define XTE_MC_OFFSET …
#define XTE_UAW0_OFFSET …
#define XTE_UAW1_OFFSET …
#define XTE_MAW0_OFFSET …
#define XTE_MAW1_OFFSET …
#define XTE_AFM_OFFSET …
#define XTE_AFM_EPPRM_MASK …
#define XTE_TIS_OFFSET …
#define TIS_FRIS …
#define TIS_MRIS …
#define TIS_MWIS …
#define TIS_ARIS …
#define TIS_AWIS …
#define TIS_CRIS …
#define TIS_CWIS …
#define XTE_TIE_OFFSET …
#define XTE_MGTDR_OFFSET …
#define XTE_MIIMAI_OFFSET …
#define CNTLREG_WRITE_ENABLE_MASK …
#define CNTLREG_EMAC1SEL_MASK …
#define CNTLREG_ADDRESSCODE_MASK …
#define STS_CTRL_APP0_ERR …
#define STS_CTRL_APP0_IRQONEND …
#define STS_CTRL_APP0_STOPONEND …
#define STS_CTRL_APP0_CMPLT …
#define STS_CTRL_APP0_SOP …
#define STS_CTRL_APP0_EOP …
#define STS_CTRL_APP0_ENGBUSY …
#define STS_CTRL_APP0_ENGRST …
#define TX_CONTROL_CALC_CSUM_MASK …
#define MULTICAST_CAM_TABLE_NUM …
#define TEMAC_FEATURE_RX_CSUM …
#define TEMAC_FEATURE_TX_CSUM …
struct cdmac_bd { … };
struct temac_local { … };
#define temac_ior(lp, o) …
#define temac_iow(lp, o, v) …
int temac_indirect_busywait(struct temac_local *lp);
u32 temac_indirect_in32(struct temac_local *lp, int reg);
u32 temac_indirect_in32_locked(struct temac_local *lp, int reg);
void temac_indirect_out32(struct temac_local *lp, int reg, u32 value);
void temac_indirect_out32_locked(struct temac_local *lp, int reg, u32 value);
int temac_mdio_setup(struct temac_local *lp, struct platform_device *pdev);
void temac_mdio_teardown(struct temac_local *lp);
#endif