patch-2.4.2 linux/include/asm-s390/s390dyn.h

Next file: linux/include/asm-s390/s390io.h
Previous file: linux/include/asm-s390/s390_ext.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.1/linux/include/asm-s390/s390dyn.h linux/include/asm-s390/s390dyn.h
@@ -12,28 +12,20 @@
 
 struct _devreg;
 
-typedef  int (* oper_handler_func_t)( int             irq,
-                                      struct _devreg *dreg);
-typedef  void (* io_handler_func_t) ( int  irq,
-                                      __u32 intparm );
-typedef  void ( * not_oper_handler_func_t)( int irq,
-                                            int status );
+typedef  int  (* oper_handler_func_t)( int             irq,
+                                       struct _devreg *dreg);
+
+typedef struct _devreg_hc_t {
+	__u16 ctype;
+	__u8  cmode;
+	__u16 dtype;
+	__u8  dmode;
+   }  __attribute__ ((packed)) devreg_hc_t;
 
 typedef struct _devreg {
 	union {
-		struct _hc {
-			__u16 ctype;
-			__u8  cmode;
-			__u16 dtype;
-			__u8  dmode;
-		} hc;       /* has controller info */
-
-		struct _hnc {
-			__u16 dtype;
-			__u8  dmode;
-			__u16 res1;
-			__u8  res2;
-		} hnc;      /* has no controller info */
+		int devno;
+		devreg_hc_t hc;       /* has controller info */
 	} ci;
 
 	int                  flag;
@@ -46,15 +38,13 @@
 #define DEVREG_MATCH_DEV_TYPE   0x00000002
 #define DEVREG_MATCH_CU_TYPE    0x00000004
 #define DEVREG_NO_CU_INFO       0x00000008
+#define DEVREG_NO_DEV_INFO      0x00000010
 
+#define DEVREG_TYPE_DEVNO       0x80000000
+#define DEVREG_TYPE_DEVCHARS    0x40000000
 
-int s390_device_register    ( devreg_t *drinfo );
-int s390_device_deregister  ( devreg_t *dreg );
-int s390_request_irq_special( int                      irq,
-                              io_handler_func_t        io_handler,
-                              not_oper_handler_func_t  not_oper_handler,
-                              unsigned long            irqflags,
-                              const char              *devname,
-                              void                    *dev_id);
+int        s390_device_register  ( devreg_t *drinfo );
+int        s390_device_unregister( devreg_t *dreg );
+devreg_t * s390_search_devreg    ( ioinfo_t *ioinfo );
 
 #endif /* __s390dyn */

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)