root/include/net/ax88796.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0-only */
   2 /* include/net/ax88796.h
   3  *
   4  * Copyright 2005 Simtec Electronics
   5  *      Ben Dooks <ben@simtec.co.uk>
   6 */
   7 
   8 #ifndef __NET_AX88796_PLAT_H
   9 #define __NET_AX88796_PLAT_H
  10 
  11 struct sk_buff;
  12 struct net_device;
  13 struct platform_device;
  14 
  15 #define AXFLG_HAS_EEPROM                (1<<0)
  16 #define AXFLG_MAC_FROMDEV               (1<<1)  /* device already has MAC */
  17 #define AXFLG_HAS_93CX6                 (1<<2)  /* use eeprom_93cx6 driver */
  18 #define AXFLG_MAC_FROMPLATFORM          (1<<3)  /* MAC given by platform data */
  19 
  20 struct ax_plat_data {
  21         unsigned int     flags;
  22         unsigned char    wordlength;    /* 1 or 2 */
  23         unsigned char    dcr_val;       /* default value for DCR */
  24         unsigned char    rcr_val;       /* default value for RCR */
  25         unsigned char    gpoc_val;      /* default value for GPOC */
  26         u32             *reg_offsets;   /* register offsets */
  27         u8              *mac_addr;      /* MAC addr (only used when
  28                                            AXFLG_MAC_FROMPLATFORM is used */
  29 
  30         /* uses default ax88796 buffer if set to NULL */
  31         void (*block_output)(struct net_device *dev, int count,
  32                         const unsigned char *buf, int star_page);
  33         void (*block_input)(struct net_device *dev, int count,
  34                         struct sk_buff *skb, int ring_offset);
  35         /* returns nonzero if a pending interrupt request might by caused by
  36          * the ax88786. Handles all interrupts if set to NULL
  37          */
  38         int (*check_irq)(struct platform_device *pdev);
  39 };
  40 
  41 #endif /* __NET_AX88796_PLAT_H */

/* [<][>][^][v][top][bottom][index][help] */