Merge tag 'v3.3.7' into 3.3/master
[zen-stable.git] / arch / s390 / include / asm / schid.h
blob3e4d401b4e45978a9cad899495d11a05efa07437
1 #ifndef ASM_SCHID_H
2 #define ASM_SCHID_H
4 #include <linux/types.h>
6 struct subchannel_id {
7 __u32 cssid : 8;
8 __u32 : 4;
9 __u32 m : 1;
10 __u32 ssid : 2;
11 __u32 one : 1;
12 __u32 sch_no : 16;
13 } __attribute__ ((packed, aligned(4)));
15 #ifdef __KERNEL__
16 #include <linux/string.h>
18 /* Helper function for sane state of pre-allocated subchannel_id. */
19 static inline void
20 init_subchannel_id(struct subchannel_id *schid)
22 memset(schid, 0, sizeof(struct subchannel_id));
23 schid->one = 1;
26 static inline int
27 schid_equal(struct subchannel_id *schid1, struct subchannel_id *schid2)
29 return !memcmp(schid1, schid2, sizeof(struct subchannel_id));
32 #endif /* __KERNEL__ */
34 #endif /* ASM_SCHID_H */