[S390] cio: move orb definitions to separate header
authorSebastian Ott <sebott@linux.vnet.ibm.com>
Tue, 15 Mar 2011 16:08:23 +0000 (17:08 +0100)
committerMartin Schwidefsky <sky@mschwide.boeblingen.de.ibm.com>
Tue, 15 Mar 2011 16:08:23 +0000 (17:08 +0100)
Move the data definition for the orb union to a separate
header file. Also apply the curent codingstyle.

Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
drivers/s390/cio/io_sch.h
drivers/s390/cio/orb.h [new file with mode: 0644]

index d024d2c..20e7a1b 100644 (file)
@@ -5,59 +5,7 @@
 #include <asm/schid.h>
 #include <asm/ccwdev.h>
 #include "css.h"
-
-/*
- * command-mode operation request block
- */
-struct cmd_orb {
-       u32 intparm;    /* interruption parameter */
-       u32 key  : 4;   /* flags, like key, suspend control, etc. */
-       u32 spnd : 1;   /* suspend control */
-       u32 res1 : 1;   /* reserved */
-       u32 mod  : 1;   /* modification control */
-       u32 sync : 1;   /* synchronize control */
-       u32 fmt  : 1;   /* format control */
-       u32 pfch : 1;   /* prefetch control */
-       u32 isic : 1;   /* initial-status-interruption control */
-       u32 alcc : 1;   /* address-limit-checking control */
-       u32 ssic : 1;   /* suppress-suspended-interr. control */
-       u32 res2 : 1;   /* reserved */
-       u32 c64  : 1;   /* IDAW/QDIO 64 bit control  */
-       u32 i2k  : 1;   /* IDAW 2/4kB block size control */
-       u32 lpm  : 8;   /* logical path mask */
-       u32 ils  : 1;   /* incorrect length */
-       u32 zero : 6;   /* reserved zeros */
-       u32 orbx : 1;   /* ORB extension control */
-       u32 cpa;        /* channel program address */
-}  __attribute__ ((packed, aligned(4)));
-
-/*
- * transport-mode operation request block
- */
-struct tm_orb {
-       u32 intparm;
-       u32 key:4;
-       u32 :9;
-       u32 b:1;
-       u32 :2;
-       u32 lpm:8;
-       u32 :7;
-       u32 x:1;
-       u32 tcw;
-       u32 prio:8;
-       u32 :8;
-       u32 rsvpgm:8;
-       u32 :8;
-       u32 :32;
-       u32 :32;
-       u32 :32;
-       u32 :32;
-}  __attribute__ ((packed, aligned(4)));
-
-union orb {
-       struct cmd_orb cmd;
-       struct tm_orb tm;
-}  __attribute__ ((packed, aligned(4)));
+#include "orb.h"
 
 struct io_subchannel_private {
        union orb orb;          /* operation request block */
diff --git a/drivers/s390/cio/orb.h b/drivers/s390/cio/orb.h
new file mode 100644 (file)
index 0000000..45a9865
--- /dev/null
@@ -0,0 +1,67 @@
+/*
+ * Orb related data structures.
+ *
+ * Copyright IBM Corp. 2007, 2011
+ *
+ * Author(s): Cornelia Huck <cornelia.huck@de.ibm.com>
+ *           Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
+ *           Sebastian Ott <sebott@linux.vnet.ibm.com>
+ */
+
+#ifndef S390_ORB_H
+#define S390_ORB_H
+
+/*
+ * Command-mode operation request block
+ */
+struct cmd_orb {
+       u32 intparm;    /* interruption parameter */
+       u32 key:4;      /* flags, like key, suspend control, etc. */
+       u32 spnd:1;     /* suspend control */
+       u32 res1:1;     /* reserved */
+       u32 mod:1;      /* modification control */
+       u32 sync:1;     /* synchronize control */
+       u32 fmt:1;      /* format control */
+       u32 pfch:1;     /* prefetch control */
+       u32 isic:1;     /* initial-status-interruption control */
+       u32 alcc:1;     /* address-limit-checking control */
+       u32 ssic:1;     /* suppress-suspended-interr. control */
+       u32 res2:1;     /* reserved */
+       u32 c64:1;      /* IDAW/QDIO 64 bit control  */
+       u32 i2k:1;      /* IDAW 2/4kB block size control */
+       u32 lpm:8;      /* logical path mask */
+       u32 ils:1;      /* incorrect length */
+       u32 zero:6;     /* reserved zeros */
+       u32 orbx:1;     /* ORB extension control */
+       u32 cpa;        /* channel program address */
+}  __packed __aligned(4);
+
+/*
+ * Transport-mode operation request block
+ */
+struct tm_orb {
+       u32 intparm;
+       u32 key:4;
+       u32:9;
+       u32 b:1;
+       u32:2;
+       u32 lpm:8;
+       u32:7;
+       u32 x:1;
+       u32 tcw;
+       u32 prio:8;
+       u32:8;
+       u32 rsvpgm:8;
+       u32:8;
+       u32:32;
+       u32:32;
+       u32:32;
+       u32:32;
+}  __packed __aligned(4);
+
+union orb {
+       struct cmd_orb cmd;
+       struct tm_orb tm;
+}  __packed __aligned(4);
+
+#endif /* S390_ORB_H */