Loading...
1#ifndef ASM_SCHID_H
2#define ASM_SCHID_H
3
4#include <linux/types.h>
5
6struct 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)));
14
15#ifdef __KERNEL__
16#include <linux/string.h>
17
18/* Helper function for sane state of pre-allocated subchannel_id. */
19static inline void
20init_subchannel_id(struct subchannel_id *schid)
21{
22 memset(schid, 0, sizeof(struct subchannel_id));
23 schid->one = 1;
24}
25
26static inline int
27schid_equal(struct subchannel_id *schid1, struct subchannel_id *schid2)
28{
29 return !memcmp(schid1, schid2, sizeof(struct subchannel_id));
30}
31
32#endif /* __KERNEL__ */
33
34#endif /* ASM_SCHID_H */
1#ifndef ASM_SCHID_H
2#define ASM_SCHID_H
3
4#include <linux/string.h>
5#include <uapi/asm/schid.h>
6
7/* Helper function for sane state of pre-allocated subchannel_id. */
8static inline void
9init_subchannel_id(struct subchannel_id *schid)
10{
11 memset(schid, 0, sizeof(struct subchannel_id));
12 schid->one = 1;
13}
14
15static inline int
16schid_equal(struct subchannel_id *schid1, struct subchannel_id *schid2)
17{
18 return !memcmp(schid1, schid2, sizeof(struct subchannel_id));
19}
20
21#endif /* ASM_SCHID_H */