patch-2.1.54 linux/include/linux/arcdevice.h

Next file: linux/include/linux/fd.h
Previous file: linux/include/asm-sparc64/namei.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.1.53/linux/include/linux/arcdevice.h linux/include/linux/arcdevice.h
@@ -5,7 +5,7 @@
  *
  *		Definitions for the ARCnet handlers.
  *
- * Version:	@(#)arcdevice.h	1.0	31/07/97
+ * Version:	$Id: arcdevice.h,v 1.2 1997/09/05 08:57:56 mj Exp $
  *
  * Authors:	Avery Pennarun <apenwarr@bond.net>
  *              David Woodhouse <dwmw2@cam.ac.uk>
@@ -24,7 +24,6 @@
 
 #ifdef __KERNEL__
 
-
 #define ARC_20020     1
 #define ARC_RIM_I     2
 #define ARC_90xx      3
@@ -50,6 +49,7 @@
 #define DETECT_RECONFIGS
 #undef SHOW_RECONFIGS
 
+
 /* RECON_THRESHOLD is the maximum number of RECON messages to receive within
  * one minute before printing a "cabling problem" warning.  You must have
  * DETECT_RECONFIGS enabled if you want to use this.  The default value
@@ -62,6 +62,7 @@
  */
 #define RECON_THRESHOLD 30
 
+
 /* Define this to the minimum "timeout" value.  If a transmit takes longer
  * than TX_TIMEOUT jiffies, Linux will abort the TX and retry.  On a large
  * network, or one with heavy network traffic, this timeout may need to be
@@ -71,6 +72,11 @@
 #define TX_TIMEOUT 20
 
 
+/* Display warnings about the driver being an ALPHA version.
+ */
+#define ALPHA_WARNING
+
+
 /* New debugging bitflags: each option can be enabled individually.
  *
  * These can be set while the driver is running by typing:
@@ -195,7 +201,6 @@
 };
 
 
-
 	/* the "client data" header - RFC1201 information
 	 * notice that this screws up if it's not an even number of bytes
 	 * <sigh>
@@ -235,7 +240,6 @@
 #define S_EXTRA_CLIENTDATA (sizeof(struct S_ClientData)-1)
 
 
-
 /* "Incoming" is information needed for each address that could be sending
  * to us.  Mostly for partially-received split packets.
  */
@@ -260,7 +264,6 @@
 };
 
 
-
 struct arcnet_local {
   struct net_device_stats stats;
   u_short sequence;	/* sequence number (incs with each packet) */
@@ -268,12 +271,12 @@
   u_char stationid,	/* our 8-bit station address */
     recbuf,		/* receive buffer # (0 or 1) */
     txbuf,		/* transmit buffer # (2 or 3) */
-    txready,	/* buffer where a packet is ready to send */
-    config,         /* current value of CONFIG register */
-    timeout,        /* Extended timeout for COM20020 */
-    backplane,      /* Backplane flag for COM20020 */     
-    setup,          /* Contents of setup register */
-    intmask;	/* current value of INTMASK register */
+    txready,		/* buffer where a packet is ready to send */
+    config,		/* current value of CONFIG register */
+    timeout,		/* Extended timeout for COM20020 */
+    backplane,		/* Backplane flag for COM20020 */     
+    setup,		/* Contents of setup register */
+    intmask;		/* current value of INTMASK register */
   short intx,		/* in TX routine? */
     in_txhandler,	/* in TX_IRQ handler? */
     sending,		/* transmit in progress? */
@@ -282,8 +285,8 @@
   
 #if defined(DETECT_RECONFIGS) && defined(RECON_THRESHOLD)
   time_t first_recon,	/* time of "first" RECON message to count */
-    last_recon;	/* time of most recent RECON */
-  int num_recons,		/* number of RECONs between first and last. */
+    last_recon;		/* time of most recent RECON */
+  int num_recons,	/* number of RECONs between first and last. */
     network_down;	/* do we think the network is down? */
 #endif
   
@@ -302,8 +305,7 @@
   void (*en_dis_able_TX) (struct device *dev, int enable); 
   void (*prepare_tx)(struct device *dev,u_char *hdr,int hdrlen,
 		     char *data,int length,int daddr,int exceptA, int offset);
-  void (*openclose_device)(int open);
-  
+  void (*openclose_device)(int open);  
   
   struct device *adev;	/* RFC1201 protocol device */
   
@@ -318,12 +320,34 @@
 #ifdef CONFIG_ARCNET_1051
   struct device *sdev;	/* RFC1051 protocol device */
 #endif
+};
 
+/* Functions exported by arcnet.c
+ */
 
-};
+#if ARCNET_DEBUG_MAX & D_SKB
+extern void arcnet_dump_skb(struct device *dev,struct sk_buff *skb,
+			    char *desc);
+#else
+#define arcnet_dump_skb(dev,skb,desc) ;
+#endif
 
+#if (ARCNET_DEBUG_MAX & D_RX) || (ARCNET_DEBUG_MAX & D_TX)
+extern void arcnet_dump_packet(struct device *dev,u_char *buffer,int ext,
+			       char *desc);
+#else
+#define arcnet_dump_packet(dev,buffer,ext,desc) ;
+#endif
 
-#endif  /* __KERNEL__ */
-#endif	/* _LINUX_ARCDEVICE_H */
+extern void arcnet_tx_done(struct device *dev, struct arcnet_local *lp);
+extern void arcnet_makename(char *device);
+extern void arcnet_interrupt(int irq,void *dev_id,struct pt_regs *regs);
+extern void arcnet_setup(struct device *dev);
+extern int arcnet_go_tx(struct device *dev,int enable_irq);
+extern void arcnetA_continue_tx(struct device *dev);
+extern void arcnet_rx(struct arcnet_local *lp, u_char *arcsoft, short length, int saddr, int daddr);
+extern void arcnet_use_count(int open);
 
 
+#endif  /* __KERNEL__ */
+#endif	/* _LINUX_ARCDEVICE_H */

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov