]> err.no Git - linux-2.6/blobdiff - include/asm-s390/cio.h
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland...
[linux-2.6] / include / asm-s390 / cio.h
index da063cd5f0a006cbb5568d5d0261cbd931cdc446..1982fb3441644f3f178691c69aebd66b8e9dfb26 100644 (file)
@@ -13,6 +13,7 @@
 #ifdef __KERNEL__
 
 #define LPM_ANYPATH 0xff
+#define __MAX_CSSID 0
 
 /*
  * subchannel status word
@@ -257,36 +258,33 @@ struct ciw {
 /* Sick revalidation of device. */
 #define CIO_REVALIDATE 0x0008
 
-struct diag210 {
-       __u16 vrdcdvno : 16;   /* device number (input) */
-       __u16 vrdclen  : 16;   /* data block length (input) */
-       __u32 vrdcvcla : 8;    /* virtual device class (output) */
-       __u32 vrdcvtyp : 8;    /* virtual device type (output) */
-       __u32 vrdcvsta : 8;    /* virtual device status (output) */
-       __u32 vrdcvfla : 8;    /* virtual device flags (output) */
-       __u32 vrdcrccl : 8;    /* real device class (output) */
-       __u32 vrdccrty : 8;    /* real device type (output) */
-       __u32 vrdccrmd : 8;    /* real device model (output) */
-       __u32 vrdccrft : 8;    /* real device feature (output) */
-} __attribute__ ((packed,aligned(4)));
-
 struct ccw_dev_id {
        u8 ssid;
        u16 devno;
 };
 
-extern int diag210(struct diag210 *addr);
+static inline int ccw_dev_id_is_equal(struct ccw_dev_id *dev_id1,
+                                     struct ccw_dev_id *dev_id2)
+{
+       if ((dev_id1->ssid == dev_id2->ssid) &&
+           (dev_id1->devno == dev_id2->devno))
+               return 1;
+       return 0;
+}
 
 extern void wait_cons_dev(void);
 
-extern void clear_all_subchannels(void);
-
-extern void cio_reset_channel_paths(void);
-
 extern void css_schedule_reprobe(void);
 
 extern void reipl_ccw_dev(struct ccw_dev_id *id);
 
+struct cio_iplinfo {
+       u16 devno;
+       int is_qdio;
+};
+
+extern int cio_get_iplinfo(struct cio_iplinfo *iplinfo);
+
 #endif
 
 #endif