Rev 1363 | Rev 1485 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1363 | Rev 1366 | ||
---|---|---|---|
Line 9... | Line 9... | ||
9 | #define FB_GET_VFB 1024 |
9 | #define FB_GET_VFB 1024 |
10 | #define FB_PUTCHAR 1025 |
10 | #define FB_PUTCHAR 1025 |
11 | 11 | ||
12 | #define METHOD_WIDTH 16 |
12 | #define METHOD_WIDTH 16 |
13 | #define ITEM_WIDTH 16 |
13 | #define ITEM_WIDTH 16 |
14 | #define COUNT_WIDTH 16 /*Should be 8 times integer*/ |
14 | #define COUNT_WIDTH 16 /* Should be 8 times integer */ |
15 | 15 | ||
16 | 16 | ||
17 | struct _fb_method |
17 | struct _fb_method { |
18 | { |
- | |
19 | unsigned m : METHOD_WIDTH; |
18 | unsigned m : METHOD_WIDTH; |
20 | unsigned item : ITEM_WIDTH; |
19 | unsigned item : ITEM_WIDTH; |
21 | } __attribute__ ((packed)); |
20 | } __attribute__((packed)); |
22 | 21 | ||
23 | union fb_method |
22 | union fb_method { |
24 | { |
- | |
25 | struct _fb_method m; |
23 | struct _fb_method m; |
26 | __native fill; |
24 | __native fill; |
27 | }__attribute__ ((packed)); |
25 | } __attribute__((packed)); |
28 | 26 | ||
29 | struct fb_call_args |
27 | struct fb_call_args { |
30 | { |
- | |
31 | union fb_method method; |
28 | union fb_method method; |
32 | union |
29 | union { |
33 | { |
- | |
34 | struct |
30 | struct { |
35 | { |
- | |
36 | unsigned count :COUNT_WIDTH; |
31 | unsigned count : COUNT_WIDTH; |
37 | char chars[3*sizeof(__native)-(COUNT_WIDTH>>3)]; |
32 | char chars[3 * sizeof(__native) - (COUNT_WIDTH >> 3)]; |
38 | }putchar __attribute__ ((packed)); |
33 | } putchar __attribute__((packed)); |
39 | }data ; //__attribute__ ((packed)); |
34 | } data ; // __attribute__((packed)); |
40 | }__attribute__ ((packed)); |
35 | } __attribute__((packed)); |
41 | 36 | ||
42 | struct fb_ipc_args |
37 | struct fb_ipc_args { |
43 | { |
- | |
44 | __native method; |
38 | __native method; |
45 | __native arg1; |
39 | __native arg1; |
46 | __native arg2; |
40 | __native arg2; |
47 | __native arg3; |
41 | __native arg3; |
48 | } __attribute__ ((packed)); |
42 | } __attribute__((packed)); |
49 | 43 | ||
50 | union fb_args |
44 | union fb_args { |
51 | { |
- | |
52 | struct fb_call_args fb_args; |
45 | struct fb_call_args fb_args; |
53 | struct fb_ipc_args ipc_args; |
46 | struct fb_ipc_args ipc_args; |
54 | }__attribute__ ((packed)); |
47 | } __attribute__((packed)); |
55 | 48 | ||
56 | typedef union fb_args fb_args_t; |
49 | typedef union fb_args fb_args_t; |
57 | 50 | ||
58 | #endif |
51 | #endif |
59 | - | ||
60 | - |