patch-2.4.20 linux-2.4.20/include/asm-s390x/s390io.h

Next file: linux-2.4.20/include/asm-s390x/s390mach.h
Previous file: linux-2.4.20/include/asm-s390x/s390_ext.h
Back to the patch index
Back to the overall index

diff -urN linux-2.4.19/include/asm-s390x/s390io.h linux-2.4.20/include/asm-s390x/s390io.h
@@ -18,10 +18,13 @@
 typedef struct _ioinfo {
      unsigned int  irq;           /* aka. subchannel number */
      spinlock_t    irq_lock;      /* irq lock */
+     void          *private_data; /* pointer to private data */
 
      struct _ioinfo *prev;
      struct _ioinfo *next;
 
+     __u8          st;            /* subchannel type */	
+
      union {
         unsigned int info;
         struct {
@@ -53,7 +56,8 @@
            unsigned int  newreq    : 1;  /* new register interface */
            unsigned int  dval      : 1;  /* device number valid */
            unsigned int  unknown   : 1;  /* unknown device - if SenseID failed */
-           unsigned int  unused    : (sizeof(unsigned int)*8 - 24); /* unused */
+	   unsigned int  unfriendly: 1;  /* device is locked by someone else */
+           unsigned int  unused    : (sizeof(unsigned int)*8 - 25); /* unused */
               } __attribute__ ((packed)) flags;
         } ui;
 
@@ -75,6 +79,7 @@
      unsigned long qintparm;      /* queued interruption parameter  */
      unsigned long qflag;         /* queued flags */
      __u8          qlpm;          /* queued logical path mask */
+     ssd_info_t    ssd_info;      /* subchannel description */
 
    } __attribute__ ((aligned(8))) ioinfo_t;
 
@@ -89,6 +94,12 @@
 #define IOINFO_FLAGS_REPALL  0x00800000
 
 extern ioinfo_t *ioinfo[];
+int s390_set_private_data(int irq, void * data);
+void * s390_get_private_data(int irq);
+
+#define CHSC_SEI_ACC_CHPID        1
+#define CHSC_SEI_ACC_LINKADDR     2
+#define CHSC_SEI_ACC_FULLLINKADDR 3
 
 #endif  /* __s390io_h */
 

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