1
2
3
4#line 20 "include/asm-generic/int-ll64.h"
5typedef unsigned char __u8;
6#line 23 "include/asm-generic/int-ll64.h"
7typedef unsigned short __u16;
8#line 25 "include/asm-generic/int-ll64.h"
9typedef int __s32;
10#line 26 "include/asm-generic/int-ll64.h"
11typedef unsigned int __u32;
12#line 30 "include/asm-generic/int-ll64.h"
13typedef unsigned long long __u64;
14#line 43 "include/asm-generic/int-ll64.h"
15typedef unsigned char u8;
16#line 45 "include/asm-generic/int-ll64.h"
17typedef short s16;
18#line 46 "include/asm-generic/int-ll64.h"
19typedef unsigned short u16;
20#line 49 "include/asm-generic/int-ll64.h"
21typedef unsigned int u32;
22#line 51 "include/asm-generic/int-ll64.h"
23typedef long long s64;
24#line 52 "include/asm-generic/int-ll64.h"
25typedef unsigned long long u64;
26#line 14 "include/asm-generic/posix_types.h"
27typedef long __kernel_long_t;
28#line 15 "include/asm-generic/posix_types.h"
29typedef unsigned long __kernel_ulong_t;
30#line 31 "include/asm-generic/posix_types.h"
31typedef int __kernel_pid_t;
32#line 52 "include/asm-generic/posix_types.h"
33typedef unsigned int __kernel_uid32_t;
34#line 53 "include/asm-generic/posix_types.h"
35typedef unsigned int __kernel_gid32_t;
36#line 75 "include/asm-generic/posix_types.h"
37typedef __kernel_ulong_t __kernel_size_t;
38#line 76 "include/asm-generic/posix_types.h"
39typedef __kernel_long_t __kernel_ssize_t;
40#line 91 "include/asm-generic/posix_types.h"
41typedef long long __kernel_loff_t;
42#line 92 "include/asm-generic/posix_types.h"
43typedef __kernel_long_t __kernel_time_t;
44#line 93 "include/asm-generic/posix_types.h"
45typedef __kernel_long_t __kernel_clock_t;
46#line 94 "include/asm-generic/posix_types.h"
47typedef int __kernel_timer_t;
48#line 95 "include/asm-generic/posix_types.h"
49typedef int __kernel_clockid_t;
50#line 21 "include/linux/types.h"
51typedef __u32 __kernel_dev_t;
52#line 24 "include/linux/types.h"
53typedef __kernel_dev_t dev_t;
54#line 27 "include/linux/types.h"
55typedef unsigned short umode_t;
56#line 30 "include/linux/types.h"
57typedef __kernel_pid_t pid_t;
58#line 35 "include/linux/types.h"
59typedef __kernel_clockid_t clockid_t;
60#line 38 "include/linux/types.h"
61typedef _Bool bool;
62#line 40 "include/linux/types.h"
63typedef __kernel_uid32_t uid_t;
64#line 41 "include/linux/types.h"
65typedef __kernel_gid32_t gid_t;
66#line 54 "include/linux/types.h"
67typedef __kernel_loff_t loff_t;
68#line 63 "include/linux/types.h"
69typedef __kernel_size_t size_t;
70#line 68 "include/linux/types.h"
71typedef __kernel_ssize_t ssize_t;
72#line 78 "include/linux/types.h"
73typedef __kernel_time_t time_t;
74#line 111 "include/linux/types.h"
75typedef __s32 int32_t;
76#line 117 "include/linux/types.h"
77typedef __u32 uint32_t;
78#line 202 "include/linux/types.h"
79typedef unsigned int gfp_t;
80#line 206 "include/linux/types.h"
81typedef u64 phys_addr_t;
82#line 211 "include/linux/types.h"
83typedef phys_addr_t resource_size_t;
84#line 221 "include/linux/types.h"
85struct __anonstruct_atomic_t_6 {
86 int counter ;
87};
88#line 221 "include/linux/types.h"
89typedef struct __anonstruct_atomic_t_6 atomic_t;
90#line 226 "include/linux/types.h"
91struct __anonstruct_atomic64_t_7 {
92 long counter ;
93};
94#line 226 "include/linux/types.h"
95typedef struct __anonstruct_atomic64_t_7 atomic64_t;
96#line 227 "include/linux/types.h"
97struct list_head {
98 struct list_head *next ;
99 struct list_head *prev ;
100};
101#line 232
102struct hlist_node;
103#line 232 "include/linux/types.h"
104struct hlist_head {
105 struct hlist_node *first ;
106};
107#line 236 "include/linux/types.h"
108struct hlist_node {
109 struct hlist_node *next ;
110 struct hlist_node **pprev ;
111};
112#line 247 "include/linux/types.h"
113struct rcu_head {
114 struct rcu_head *next ;
115 void (*func)(struct rcu_head * ) ;
116};
117#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
118struct module;
119#line 55
120struct module;
121#line 146 "include/linux/init.h"
122typedef void (*ctor_fn_t)(void);
123#line 46 "include/linux/dynamic_debug.h"
124struct device;
125#line 46
126struct device;
127#line 57
128struct completion;
129#line 57
130struct completion;
131#line 58
132struct pt_regs;
133#line 58
134struct pt_regs;
135#line 348 "include/linux/kernel.h"
136struct pid;
137#line 348
138struct pid;
139#line 112 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/stat.h"
140struct timespec;
141#line 112
142struct timespec;
143#line 58 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page_types.h"
144struct page;
145#line 58
146struct page;
147#line 26 "include/asm-generic/getorder.h"
148struct task_struct;
149#line 26
150struct task_struct;
151#line 28
152struct mm_struct;
153#line 28
154struct mm_struct;
155#line 268 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/segment.h"
156struct pt_regs {
157 unsigned long r15 ;
158 unsigned long r14 ;
159 unsigned long r13 ;
160 unsigned long r12 ;
161 unsigned long bp ;
162 unsigned long bx ;
163 unsigned long r11 ;
164 unsigned long r10 ;
165 unsigned long r9 ;
166 unsigned long r8 ;
167 unsigned long ax ;
168 unsigned long cx ;
169 unsigned long dx ;
170 unsigned long si ;
171 unsigned long di ;
172 unsigned long orig_ax ;
173 unsigned long ip ;
174 unsigned long cs ;
175 unsigned long flags ;
176 unsigned long sp ;
177 unsigned long ss ;
178};
179#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
180struct __anonstruct_ldv_2180_13 {
181 unsigned int a ;
182 unsigned int b ;
183};
184#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
185struct __anonstruct_ldv_2195_14 {
186 u16 limit0 ;
187 u16 base0 ;
188 unsigned char base1 ;
189 unsigned char type : 4 ;
190 unsigned char s : 1 ;
191 unsigned char dpl : 2 ;
192 unsigned char p : 1 ;
193 unsigned char limit : 4 ;
194 unsigned char avl : 1 ;
195 unsigned char l : 1 ;
196 unsigned char d : 1 ;
197 unsigned char g : 1 ;
198 unsigned char base2 ;
199};
200#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
201union __anonunion_ldv_2196_12 {
202 struct __anonstruct_ldv_2180_13 ldv_2180 ;
203 struct __anonstruct_ldv_2195_14 ldv_2195 ;
204};
205#line 125 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
206struct desc_struct {
207 union __anonunion_ldv_2196_12 ldv_2196 ;
208};
209#line 13 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
210typedef unsigned long pgdval_t;
211#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
212typedef unsigned long pgprotval_t;
213#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
214struct pgprot {
215 pgprotval_t pgprot ;
216};
217#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
218typedef struct pgprot pgprot_t;
219#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
220struct __anonstruct_pgd_t_16 {
221 pgdval_t pgd ;
222};
223#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
224typedef struct __anonstruct_pgd_t_16 pgd_t;
225#line 282 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
226typedef struct page *pgtable_t;
227#line 290
228struct file;
229#line 290
230struct file;
231#line 337
232struct thread_struct;
233#line 337
234struct thread_struct;
235#line 339
236struct cpumask;
237#line 339
238struct cpumask;
239#line 327 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
240struct arch_spinlock;
241#line 327
242struct arch_spinlock;
243#line 300 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
244struct kernel_vm86_regs {
245 struct pt_regs pt ;
246 unsigned short es ;
247 unsigned short __esh ;
248 unsigned short ds ;
249 unsigned short __dsh ;
250 unsigned short fs ;
251 unsigned short __fsh ;
252 unsigned short gs ;
253 unsigned short __gsh ;
254};
255#line 203 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
256union __anonunion_ldv_2824_19 {
257 struct pt_regs *regs ;
258 struct kernel_vm86_regs *vm86 ;
259};
260#line 203 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
261struct math_emu_info {
262 long ___orig_eip ;
263 union __anonunion_ldv_2824_19 ldv_2824 ;
264};
265#line 306 "include/linux/bitmap.h"
266struct bug_entry {
267 int bug_addr_disp ;
268 int file_disp ;
269 unsigned short line ;
270 unsigned short flags ;
271};
272#line 89 "include/linux/bug.h"
273struct cpumask {
274 unsigned long bits[64U] ;
275};
276#line 14 "include/linux/cpumask.h"
277typedef struct cpumask cpumask_t;
278#line 637 "include/linux/cpumask.h"
279typedef struct cpumask *cpumask_var_t;
280#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
281struct static_key;
282#line 234
283struct static_key;
284#line 287 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
285struct i387_fsave_struct {
286 u32 cwd ;
287 u32 swd ;
288 u32 twd ;
289 u32 fip ;
290 u32 fcs ;
291 u32 foo ;
292 u32 fos ;
293 u32 st_space[20U] ;
294 u32 status ;
295};
296#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
297struct __anonstruct_ldv_5180_24 {
298 u64 rip ;
299 u64 rdp ;
300};
301#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
302struct __anonstruct_ldv_5186_25 {
303 u32 fip ;
304 u32 fcs ;
305 u32 foo ;
306 u32 fos ;
307};
308#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
309union __anonunion_ldv_5187_23 {
310 struct __anonstruct_ldv_5180_24 ldv_5180 ;
311 struct __anonstruct_ldv_5186_25 ldv_5186 ;
312};
313#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
314union __anonunion_ldv_5196_26 {
315 u32 padding1[12U] ;
316 u32 sw_reserved[12U] ;
317};
318#line 305 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
319struct i387_fxsave_struct {
320 u16 cwd ;
321 u16 swd ;
322 u16 twd ;
323 u16 fop ;
324 union __anonunion_ldv_5187_23 ldv_5187 ;
325 u32 mxcsr ;
326 u32 mxcsr_mask ;
327 u32 st_space[32U] ;
328 u32 xmm_space[64U] ;
329 u32 padding[12U] ;
330 union __anonunion_ldv_5196_26 ldv_5196 ;
331};
332#line 339 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
333struct i387_soft_struct {
334 u32 cwd ;
335 u32 swd ;
336 u32 twd ;
337 u32 fip ;
338 u32 fcs ;
339 u32 foo ;
340 u32 fos ;
341 u32 st_space[20U] ;
342 u8 ftop ;
343 u8 changed ;
344 u8 lookahead ;
345 u8 no_update ;
346 u8 rm ;
347 u8 alimit ;
348 struct math_emu_info *info ;
349 u32 entry_eip ;
350};
351#line 360 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
352struct ymmh_struct {
353 u32 ymmh_space[64U] ;
354};
355#line 365 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
356struct xsave_hdr_struct {
357 u64 xstate_bv ;
358 u64 reserved1[2U] ;
359 u64 reserved2[5U] ;
360};
361#line 371 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
362struct xsave_struct {
363 struct i387_fxsave_struct i387 ;
364 struct xsave_hdr_struct xsave_hdr ;
365 struct ymmh_struct ymmh ;
366};
367#line 377 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
368union thread_xstate {
369 struct i387_fsave_struct fsave ;
370 struct i387_fxsave_struct fxsave ;
371 struct i387_soft_struct soft ;
372 struct xsave_struct xsave ;
373};
374#line 385 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
375struct fpu {
376 unsigned int last_cpu ;
377 unsigned int has_fpu ;
378 union thread_xstate *state ;
379};
380#line 433
381struct kmem_cache;
382#line 434
383struct perf_event;
384#line 434
385struct perf_event;
386#line 435 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
387struct thread_struct {
388 struct desc_struct tls_array[3U] ;
389 unsigned long sp0 ;
390 unsigned long sp ;
391 unsigned long usersp ;
392 unsigned short es ;
393 unsigned short ds ;
394 unsigned short fsindex ;
395 unsigned short gsindex ;
396 unsigned long fs ;
397 unsigned long gs ;
398 struct perf_event *ptrace_bps[4U] ;
399 unsigned long debugreg6 ;
400 unsigned long ptrace_dr7 ;
401 unsigned long cr2 ;
402 unsigned long trap_nr ;
403 unsigned long error_code ;
404 struct fpu fpu ;
405 unsigned long *io_bitmap_ptr ;
406 unsigned long iopl ;
407 unsigned int io_bitmap_max ;
408};
409#line 23 "include/asm-generic/atomic-long.h"
410typedef atomic64_t atomic_long_t;
411#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
412typedef u16 __ticket_t;
413#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
414typedef u32 __ticketpair_t;
415#line 16 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
416struct __raw_tickets {
417 __ticket_t head ;
418 __ticket_t tail ;
419};
420#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
421union __anonunion_ldv_5907_29 {
422 __ticketpair_t head_tail ;
423 struct __raw_tickets tickets ;
424};
425#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
426struct arch_spinlock {
427 union __anonunion_ldv_5907_29 ldv_5907 ;
428};
429#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
430typedef struct arch_spinlock arch_spinlock_t;
431#line 34 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
432struct lockdep_map;
433#line 34
434struct lockdep_map;
435#line 55 "include/linux/debug_locks.h"
436struct stack_trace {
437 unsigned int nr_entries ;
438 unsigned int max_entries ;
439 unsigned long *entries ;
440 int skip ;
441};
442#line 26 "include/linux/stacktrace.h"
443struct lockdep_subclass_key {
444 char __one_byte ;
445};
446#line 53 "include/linux/lockdep.h"
447struct lock_class_key {
448 struct lockdep_subclass_key subkeys[8U] ;
449};
450#line 59 "include/linux/lockdep.h"
451struct lock_class {
452 struct list_head hash_entry ;
453 struct list_head lock_entry ;
454 struct lockdep_subclass_key *key ;
455 unsigned int subclass ;
456 unsigned int dep_gen_id ;
457 unsigned long usage_mask ;
458 struct stack_trace usage_traces[13U] ;
459 struct list_head locks_after ;
460 struct list_head locks_before ;
461 unsigned int version ;
462 unsigned long ops ;
463 char const *name ;
464 int name_version ;
465 unsigned long contention_point[4U] ;
466 unsigned long contending_point[4U] ;
467};
468#line 144 "include/linux/lockdep.h"
469struct lockdep_map {
470 struct lock_class_key *key ;
471 struct lock_class *class_cache[2U] ;
472 char const *name ;
473 int cpu ;
474 unsigned long ip ;
475};
476#line 187 "include/linux/lockdep.h"
477struct held_lock {
478 u64 prev_chain_key ;
479 unsigned long acquire_ip ;
480 struct lockdep_map *instance ;
481 struct lockdep_map *nest_lock ;
482 u64 waittime_stamp ;
483 u64 holdtime_stamp ;
484 unsigned short class_idx : 13 ;
485 unsigned char irq_context : 2 ;
486 unsigned char trylock : 1 ;
487 unsigned char read : 2 ;
488 unsigned char check : 2 ;
489 unsigned char hardirqs_off : 1 ;
490 unsigned short references : 11 ;
491};
492#line 556 "include/linux/lockdep.h"
493struct raw_spinlock {
494 arch_spinlock_t raw_lock ;
495 unsigned int magic ;
496 unsigned int owner_cpu ;
497 void *owner ;
498 struct lockdep_map dep_map ;
499};
500#line 32 "include/linux/spinlock_types.h"
501typedef struct raw_spinlock raw_spinlock_t;
502#line 33 "include/linux/spinlock_types.h"
503struct __anonstruct_ldv_6122_33 {
504 u8 __padding[24U] ;
505 struct lockdep_map dep_map ;
506};
507#line 33 "include/linux/spinlock_types.h"
508union __anonunion_ldv_6123_32 {
509 struct raw_spinlock rlock ;
510 struct __anonstruct_ldv_6122_33 ldv_6122 ;
511};
512#line 33 "include/linux/spinlock_types.h"
513struct spinlock {
514 union __anonunion_ldv_6123_32 ldv_6123 ;
515};
516#line 76 "include/linux/spinlock_types.h"
517typedef struct spinlock spinlock_t;
518#line 110 "include/linux/seqlock.h"
519struct seqcount {
520 unsigned int sequence ;
521};
522#line 121 "include/linux/seqlock.h"
523typedef struct seqcount seqcount_t;
524#line 254 "include/linux/seqlock.h"
525struct timespec {
526 __kernel_time_t tv_sec ;
527 long tv_nsec ;
528};
529#line 48 "include/linux/wait.h"
530struct __wait_queue_head {
531 spinlock_t lock ;
532 struct list_head task_list ;
533};
534#line 53 "include/linux/wait.h"
535typedef struct __wait_queue_head wait_queue_head_t;
536#line 98 "include/linux/nodemask.h"
537struct __anonstruct_nodemask_t_36 {
538 unsigned long bits[16U] ;
539};
540#line 98 "include/linux/nodemask.h"
541typedef struct __anonstruct_nodemask_t_36 nodemask_t;
542#line 670 "include/linux/mmzone.h"
543struct mutex {
544 atomic_t count ;
545 spinlock_t wait_lock ;
546 struct list_head wait_list ;
547 struct task_struct *owner ;
548 char const *name ;
549 void *magic ;
550 struct lockdep_map dep_map ;
551};
552#line 63 "include/linux/mutex.h"
553struct mutex_waiter {
554 struct list_head list ;
555 struct task_struct *task ;
556 void *magic ;
557};
558#line 171
559struct rw_semaphore;
560#line 171
561struct rw_semaphore;
562#line 172 "include/linux/mutex.h"
563struct rw_semaphore {
564 long count ;
565 raw_spinlock_t wait_lock ;
566 struct list_head wait_list ;
567 struct lockdep_map dep_map ;
568};
569#line 128 "include/linux/rwsem.h"
570struct completion {
571 unsigned int done ;
572 wait_queue_head_t wait ;
573};
574#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/e820.h"
575struct resource {
576 resource_size_t start ;
577 resource_size_t end ;
578 char const *name ;
579 unsigned long flags ;
580 struct resource *parent ;
581 struct resource *sibling ;
582 struct resource *child ;
583};
584#line 312 "include/linux/jiffies.h"
585union ktime {
586 s64 tv64 ;
587};
588#line 59 "include/linux/ktime.h"
589typedef union ktime ktime_t;
590#line 341
591struct tvec_base;
592#line 341
593struct tvec_base;
594#line 342 "include/linux/ktime.h"
595struct timer_list {
596 struct list_head entry ;
597 unsigned long expires ;
598 struct tvec_base *base ;
599 void (*function)(unsigned long ) ;
600 unsigned long data ;
601 int slack ;
602 int start_pid ;
603 void *start_site ;
604 char start_comm[16U] ;
605 struct lockdep_map lockdep_map ;
606};
607#line 289 "include/linux/timer.h"
608struct hrtimer;
609#line 289
610struct hrtimer;
611#line 290
612enum hrtimer_restart;
613#line 302
614struct work_struct;
615#line 302
616struct work_struct;
617#line 45 "include/linux/workqueue.h"
618struct work_struct {
619 atomic_long_t data ;
620 struct list_head entry ;
621 void (*func)(struct work_struct * ) ;
622 struct lockdep_map lockdep_map ;
623};
624#line 46 "include/linux/pm.h"
625struct pm_message {
626 int event ;
627};
628#line 52 "include/linux/pm.h"
629typedef struct pm_message pm_message_t;
630#line 53 "include/linux/pm.h"
631struct dev_pm_ops {
632 int (*prepare)(struct device * ) ;
633 void (*complete)(struct device * ) ;
634 int (*suspend)(struct device * ) ;
635 int (*resume)(struct device * ) ;
636 int (*freeze)(struct device * ) ;
637 int (*thaw)(struct device * ) ;
638 int (*poweroff)(struct device * ) ;
639 int (*restore)(struct device * ) ;
640 int (*suspend_late)(struct device * ) ;
641 int (*resume_early)(struct device * ) ;
642 int (*freeze_late)(struct device * ) ;
643 int (*thaw_early)(struct device * ) ;
644 int (*poweroff_late)(struct device * ) ;
645 int (*restore_early)(struct device * ) ;
646 int (*suspend_noirq)(struct device * ) ;
647 int (*resume_noirq)(struct device * ) ;
648 int (*freeze_noirq)(struct device * ) ;
649 int (*thaw_noirq)(struct device * ) ;
650 int (*poweroff_noirq)(struct device * ) ;
651 int (*restore_noirq)(struct device * ) ;
652 int (*runtime_suspend)(struct device * ) ;
653 int (*runtime_resume)(struct device * ) ;
654 int (*runtime_idle)(struct device * ) ;
655};
656#line 289
657enum rpm_status {
658 RPM_ACTIVE = 0,
659 RPM_RESUMING = 1,
660 RPM_SUSPENDED = 2,
661 RPM_SUSPENDING = 3
662} ;
663#line 296
664enum rpm_request {
665 RPM_REQ_NONE = 0,
666 RPM_REQ_IDLE = 1,
667 RPM_REQ_SUSPEND = 2,
668 RPM_REQ_AUTOSUSPEND = 3,
669 RPM_REQ_RESUME = 4
670} ;
671#line 304
672struct wakeup_source;
673#line 304
674struct wakeup_source;
675#line 494 "include/linux/pm.h"
676struct pm_subsys_data {
677 spinlock_t lock ;
678 unsigned int refcount ;
679};
680#line 499
681struct dev_pm_qos_request;
682#line 499
683struct pm_qos_constraints;
684#line 499 "include/linux/pm.h"
685struct dev_pm_info {
686 pm_message_t power_state ;
687 unsigned char can_wakeup : 1 ;
688 unsigned char async_suspend : 1 ;
689 bool is_prepared ;
690 bool is_suspended ;
691 bool ignore_children ;
692 spinlock_t lock ;
693 struct list_head entry ;
694 struct completion completion ;
695 struct wakeup_source *wakeup ;
696 bool wakeup_path ;
697 struct timer_list suspend_timer ;
698 unsigned long timer_expires ;
699 struct work_struct work ;
700 wait_queue_head_t wait_queue ;
701 atomic_t usage_count ;
702 atomic_t child_count ;
703 unsigned char disable_depth : 3 ;
704 unsigned char idle_notification : 1 ;
705 unsigned char request_pending : 1 ;
706 unsigned char deferred_resume : 1 ;
707 unsigned char run_wake : 1 ;
708 unsigned char runtime_auto : 1 ;
709 unsigned char no_callbacks : 1 ;
710 unsigned char irq_safe : 1 ;
711 unsigned char use_autosuspend : 1 ;
712 unsigned char timer_autosuspends : 1 ;
713 enum rpm_request request ;
714 enum rpm_status runtime_status ;
715 int runtime_error ;
716 int autosuspend_delay ;
717 unsigned long last_busy ;
718 unsigned long active_jiffies ;
719 unsigned long suspended_jiffies ;
720 unsigned long accounting_timestamp ;
721 ktime_t suspend_time ;
722 s64 max_time_suspended_ns ;
723 struct dev_pm_qos_request *pq_req ;
724 struct pm_subsys_data *subsys_data ;
725 struct pm_qos_constraints *constraints ;
726};
727#line 558 "include/linux/pm.h"
728struct dev_pm_domain {
729 struct dev_pm_ops ops ;
730};
731#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
732struct __anonstruct_mm_context_t_101 {
733 void *ldt ;
734 int size ;
735 unsigned short ia32_compat ;
736 struct mutex lock ;
737 void *vdso ;
738};
739#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
740typedef struct __anonstruct_mm_context_t_101 mm_context_t;
741#line 18 "include/asm-generic/pci_iomap.h"
742struct vm_area_struct;
743#line 18
744struct vm_area_struct;
745#line 835 "include/linux/sysctl.h"
746struct rb_node {
747 unsigned long rb_parent_color ;
748 struct rb_node *rb_right ;
749 struct rb_node *rb_left ;
750};
751#line 108 "include/linux/rbtree.h"
752struct rb_root {
753 struct rb_node *rb_node ;
754};
755#line 176
756struct nsproxy;
757#line 176
758struct nsproxy;
759#line 37 "include/linux/kmod.h"
760struct cred;
761#line 37
762struct cred;
763#line 18 "include/linux/elf.h"
764typedef __u64 Elf64_Addr;
765#line 19 "include/linux/elf.h"
766typedef __u16 Elf64_Half;
767#line 23 "include/linux/elf.h"
768typedef __u32 Elf64_Word;
769#line 24 "include/linux/elf.h"
770typedef __u64 Elf64_Xword;
771#line 193 "include/linux/elf.h"
772struct elf64_sym {
773 Elf64_Word st_name ;
774 unsigned char st_info ;
775 unsigned char st_other ;
776 Elf64_Half st_shndx ;
777 Elf64_Addr st_value ;
778 Elf64_Xword st_size ;
779};
780#line 201 "include/linux/elf.h"
781typedef struct elf64_sym Elf64_Sym;
782#line 445
783struct sock;
784#line 445
785struct sock;
786#line 446
787struct kobject;
788#line 446
789struct kobject;
790#line 447
791enum kobj_ns_type {
792 KOBJ_NS_TYPE_NONE = 0,
793 KOBJ_NS_TYPE_NET = 1,
794 KOBJ_NS_TYPES = 2
795} ;
796#line 453 "include/linux/elf.h"
797struct kobj_ns_type_operations {
798 enum kobj_ns_type type ;
799 void *(*grab_current_ns)(void) ;
800 void const *(*netlink_ns)(struct sock * ) ;
801 void const *(*initial_ns)(void) ;
802 void (*drop_ns)(void * ) ;
803};
804#line 57 "include/linux/kobject_ns.h"
805struct attribute {
806 char const *name ;
807 umode_t mode ;
808 struct lock_class_key *key ;
809 struct lock_class_key skey ;
810};
811#line 33 "include/linux/sysfs.h"
812struct attribute_group {
813 char const *name ;
814 umode_t (*is_visible)(struct kobject * , struct attribute * , int ) ;
815 struct attribute **attrs ;
816};
817#line 62 "include/linux/sysfs.h"
818struct bin_attribute {
819 struct attribute attr ;
820 size_t size ;
821 void *private ;
822 ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
823 loff_t , size_t ) ;
824 ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
825 loff_t , size_t ) ;
826 int (*mmap)(struct file * , struct kobject * , struct bin_attribute * , struct vm_area_struct * ) ;
827};
828#line 98 "include/linux/sysfs.h"
829struct sysfs_ops {
830 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
831 ssize_t (*store)(struct kobject * , struct attribute * , char const * , size_t ) ;
832 void const *(*namespace)(struct kobject * , struct attribute const * ) ;
833};
834#line 117
835struct sysfs_dirent;
836#line 117
837struct sysfs_dirent;
838#line 182 "include/linux/sysfs.h"
839struct kref {
840 atomic_t refcount ;
841};
842#line 49 "include/linux/kobject.h"
843struct kset;
844#line 49
845struct kobj_type;
846#line 49 "include/linux/kobject.h"
847struct kobject {
848 char const *name ;
849 struct list_head entry ;
850 struct kobject *parent ;
851 struct kset *kset ;
852 struct kobj_type *ktype ;
853 struct sysfs_dirent *sd ;
854 struct kref kref ;
855 unsigned char state_initialized : 1 ;
856 unsigned char state_in_sysfs : 1 ;
857 unsigned char state_add_uevent_sent : 1 ;
858 unsigned char state_remove_uevent_sent : 1 ;
859 unsigned char uevent_suppress : 1 ;
860};
861#line 107 "include/linux/kobject.h"
862struct kobj_type {
863 void (*release)(struct kobject * ) ;
864 struct sysfs_ops const *sysfs_ops ;
865 struct attribute **default_attrs ;
866 struct kobj_ns_type_operations const *(*child_ns_type)(struct kobject * ) ;
867 void const *(*namespace)(struct kobject * ) ;
868};
869#line 115 "include/linux/kobject.h"
870struct kobj_uevent_env {
871 char *envp[32U] ;
872 int envp_idx ;
873 char buf[2048U] ;
874 int buflen ;
875};
876#line 122 "include/linux/kobject.h"
877struct kset_uevent_ops {
878 int (* const filter)(struct kset * , struct kobject * ) ;
879 char const *(* const name)(struct kset * , struct kobject * ) ;
880 int (* const uevent)(struct kset * , struct kobject * , struct kobj_uevent_env * ) ;
881};
882#line 139 "include/linux/kobject.h"
883struct kset {
884 struct list_head list ;
885 spinlock_t list_lock ;
886 struct kobject kobj ;
887 struct kset_uevent_ops const *uevent_ops ;
888};
889#line 215
890struct kernel_param;
891#line 215
892struct kernel_param;
893#line 216 "include/linux/kobject.h"
894struct kernel_param_ops {
895 int (*set)(char const * , struct kernel_param const * ) ;
896 int (*get)(char * , struct kernel_param const * ) ;
897 void (*free)(void * ) ;
898};
899#line 49 "include/linux/moduleparam.h"
900struct kparam_string;
901#line 49
902struct kparam_array;
903#line 49 "include/linux/moduleparam.h"
904union __anonunion_ldv_13363_134 {
905 void *arg ;
906 struct kparam_string const *str ;
907 struct kparam_array const *arr ;
908};
909#line 49 "include/linux/moduleparam.h"
910struct kernel_param {
911 char const *name ;
912 struct kernel_param_ops const *ops ;
913 u16 perm ;
914 s16 level ;
915 union __anonunion_ldv_13363_134 ldv_13363 ;
916};
917#line 61 "include/linux/moduleparam.h"
918struct kparam_string {
919 unsigned int maxlen ;
920 char *string ;
921};
922#line 67 "include/linux/moduleparam.h"
923struct kparam_array {
924 unsigned int max ;
925 unsigned int elemsize ;
926 unsigned int *num ;
927 struct kernel_param_ops const *ops ;
928 void *elem ;
929};
930#line 458 "include/linux/moduleparam.h"
931struct static_key {
932 atomic_t enabled ;
933};
934#line 225 "include/linux/jump_label.h"
935struct tracepoint;
936#line 225
937struct tracepoint;
938#line 226 "include/linux/jump_label.h"
939struct tracepoint_func {
940 void *func ;
941 void *data ;
942};
943#line 29 "include/linux/tracepoint.h"
944struct tracepoint {
945 char const *name ;
946 struct static_key key ;
947 void (*regfunc)(void) ;
948 void (*unregfunc)(void) ;
949 struct tracepoint_func *funcs ;
950};
951#line 86 "include/linux/tracepoint.h"
952struct kernel_symbol {
953 unsigned long value ;
954 char const *name ;
955};
956#line 27 "include/linux/export.h"
957struct mod_arch_specific {
958
959};
960#line 34 "include/linux/module.h"
961struct module_param_attrs;
962#line 34 "include/linux/module.h"
963struct module_kobject {
964 struct kobject kobj ;
965 struct module *mod ;
966 struct kobject *drivers_dir ;
967 struct module_param_attrs *mp ;
968};
969#line 43 "include/linux/module.h"
970struct module_attribute {
971 struct attribute attr ;
972 ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
973 ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const * ,
974 size_t ) ;
975 void (*setup)(struct module * , char const * ) ;
976 int (*test)(struct module * ) ;
977 void (*free)(struct module * ) ;
978};
979#line 69
980struct exception_table_entry;
981#line 69
982struct exception_table_entry;
983#line 198
984enum module_state {
985 MODULE_STATE_LIVE = 0,
986 MODULE_STATE_COMING = 1,
987 MODULE_STATE_GOING = 2
988} ;
989#line 204 "include/linux/module.h"
990struct module_ref {
991 unsigned long incs ;
992 unsigned long decs ;
993};
994#line 219
995struct module_sect_attrs;
996#line 219
997struct module_notes_attrs;
998#line 219
999struct ftrace_event_call;
1000#line 219 "include/linux/module.h"
1001struct module {
1002 enum module_state state ;
1003 struct list_head list ;
1004 char name[56U] ;
1005 struct module_kobject mkobj ;
1006 struct module_attribute *modinfo_attrs ;
1007 char const *version ;
1008 char const *srcversion ;
1009 struct kobject *holders_dir ;
1010 struct kernel_symbol const *syms ;
1011 unsigned long const *crcs ;
1012 unsigned int num_syms ;
1013 struct kernel_param *kp ;
1014 unsigned int num_kp ;
1015 unsigned int num_gpl_syms ;
1016 struct kernel_symbol const *gpl_syms ;
1017 unsigned long const *gpl_crcs ;
1018 struct kernel_symbol const *unused_syms ;
1019 unsigned long const *unused_crcs ;
1020 unsigned int num_unused_syms ;
1021 unsigned int num_unused_gpl_syms ;
1022 struct kernel_symbol const *unused_gpl_syms ;
1023 unsigned long const *unused_gpl_crcs ;
1024 struct kernel_symbol const *gpl_future_syms ;
1025 unsigned long const *gpl_future_crcs ;
1026 unsigned int num_gpl_future_syms ;
1027 unsigned int num_exentries ;
1028 struct exception_table_entry *extable ;
1029 int (*init)(void) ;
1030 void *module_init ;
1031 void *module_core ;
1032 unsigned int init_size ;
1033 unsigned int core_size ;
1034 unsigned int init_text_size ;
1035 unsigned int core_text_size ;
1036 unsigned int init_ro_size ;
1037 unsigned int core_ro_size ;
1038 struct mod_arch_specific arch ;
1039 unsigned int taints ;
1040 unsigned int num_bugs ;
1041 struct list_head bug_list ;
1042 struct bug_entry *bug_table ;
1043 Elf64_Sym *symtab ;
1044 Elf64_Sym *core_symtab ;
1045 unsigned int num_symtab ;
1046 unsigned int core_num_syms ;
1047 char *strtab ;
1048 char *core_strtab ;
1049 struct module_sect_attrs *sect_attrs ;
1050 struct module_notes_attrs *notes_attrs ;
1051 char *args ;
1052 void *percpu ;
1053 unsigned int percpu_size ;
1054 unsigned int num_tracepoints ;
1055 struct tracepoint * const *tracepoints_ptrs ;
1056 unsigned int num_trace_bprintk_fmt ;
1057 char const **trace_bprintk_fmt_start ;
1058 struct ftrace_event_call **trace_events ;
1059 unsigned int num_trace_events ;
1060 struct list_head source_list ;
1061 struct list_head target_list ;
1062 struct task_struct *waiter ;
1063 void (*exit)(void) ;
1064 struct module_ref *refptr ;
1065 ctor_fn_t (**ctors)(void) ;
1066 unsigned int num_ctors ;
1067};
1068#line 88 "include/linux/kmemleak.h"
1069struct kmem_cache_cpu {
1070 void **freelist ;
1071 unsigned long tid ;
1072 struct page *page ;
1073 struct page *partial ;
1074 int node ;
1075 unsigned int stat[26U] ;
1076};
1077#line 55 "include/linux/slub_def.h"
1078struct kmem_cache_node {
1079 spinlock_t list_lock ;
1080 unsigned long nr_partial ;
1081 struct list_head partial ;
1082 atomic_long_t nr_slabs ;
1083 atomic_long_t total_objects ;
1084 struct list_head full ;
1085};
1086#line 66 "include/linux/slub_def.h"
1087struct kmem_cache_order_objects {
1088 unsigned long x ;
1089};
1090#line 76 "include/linux/slub_def.h"
1091struct kmem_cache {
1092 struct kmem_cache_cpu *cpu_slab ;
1093 unsigned long flags ;
1094 unsigned long min_partial ;
1095 int size ;
1096 int objsize ;
1097 int offset ;
1098 int cpu_partial ;
1099 struct kmem_cache_order_objects oo ;
1100 struct kmem_cache_order_objects max ;
1101 struct kmem_cache_order_objects min ;
1102 gfp_t allocflags ;
1103 int refcount ;
1104 void (*ctor)(void * ) ;
1105 int inuse ;
1106 int align ;
1107 int reserved ;
1108 char const *name ;
1109 struct list_head list ;
1110 struct kobject kobj ;
1111 int remote_node_defrag_ratio ;
1112 struct kmem_cache_node *node[1024U] ;
1113};
1114#line 12 "include/linux/mod_devicetable.h"
1115typedef unsigned long kernel_ulong_t;
1116#line 215 "include/linux/mod_devicetable.h"
1117struct of_device_id {
1118 char name[32U] ;
1119 char type[32U] ;
1120 char compatible[128U] ;
1121 void *data ;
1122};
1123#line 425 "include/linux/mod_devicetable.h"
1124struct i2c_device_id {
1125 char name[20U] ;
1126 kernel_ulong_t driver_data ;
1127};
1128#line 492 "include/linux/mod_devicetable.h"
1129struct platform_device_id {
1130 char name[20U] ;
1131 kernel_ulong_t driver_data ;
1132};
1133#line 584
1134struct klist_node;
1135#line 584
1136struct klist_node;
1137#line 37 "include/linux/klist.h"
1138struct klist_node {
1139 void *n_klist ;
1140 struct list_head n_node ;
1141 struct kref n_ref ;
1142};
1143#line 67
1144struct dma_map_ops;
1145#line 67 "include/linux/klist.h"
1146struct dev_archdata {
1147 void *acpi_handle ;
1148 struct dma_map_ops *dma_ops ;
1149 void *iommu ;
1150};
1151#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
1152struct pdev_archdata {
1153
1154};
1155#line 17
1156struct device_private;
1157#line 17
1158struct device_private;
1159#line 18
1160struct device_driver;
1161#line 18
1162struct device_driver;
1163#line 19
1164struct driver_private;
1165#line 19
1166struct driver_private;
1167#line 20
1168struct class;
1169#line 20
1170struct class;
1171#line 21
1172struct subsys_private;
1173#line 21
1174struct subsys_private;
1175#line 22
1176struct bus_type;
1177#line 22
1178struct bus_type;
1179#line 23
1180struct device_node;
1181#line 23
1182struct device_node;
1183#line 24
1184struct iommu_ops;
1185#line 24
1186struct iommu_ops;
1187#line 25 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
1188struct bus_attribute {
1189 struct attribute attr ;
1190 ssize_t (*show)(struct bus_type * , char * ) ;
1191 ssize_t (*store)(struct bus_type * , char const * , size_t ) ;
1192};
1193#line 51 "include/linux/device.h"
1194struct device_attribute;
1195#line 51
1196struct driver_attribute;
1197#line 51 "include/linux/device.h"
1198struct bus_type {
1199 char const *name ;
1200 char const *dev_name ;
1201 struct device *dev_root ;
1202 struct bus_attribute *bus_attrs ;
1203 struct device_attribute *dev_attrs ;
1204 struct driver_attribute *drv_attrs ;
1205 int (*match)(struct device * , struct device_driver * ) ;
1206 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
1207 int (*probe)(struct device * ) ;
1208 int (*remove)(struct device * ) ;
1209 void (*shutdown)(struct device * ) ;
1210 int (*suspend)(struct device * , pm_message_t ) ;
1211 int (*resume)(struct device * ) ;
1212 struct dev_pm_ops const *pm ;
1213 struct iommu_ops *iommu_ops ;
1214 struct subsys_private *p ;
1215};
1216#line 125
1217struct device_type;
1218#line 182 "include/linux/device.h"
1219struct device_driver {
1220 char const *name ;
1221 struct bus_type *bus ;
1222 struct module *owner ;
1223 char const *mod_name ;
1224 bool suppress_bind_attrs ;
1225 struct of_device_id const *of_match_table ;
1226 int (*probe)(struct device * ) ;
1227 int (*remove)(struct device * ) ;
1228 void (*shutdown)(struct device * ) ;
1229 int (*suspend)(struct device * , pm_message_t ) ;
1230 int (*resume)(struct device * ) ;
1231 struct attribute_group const **groups ;
1232 struct dev_pm_ops const *pm ;
1233 struct driver_private *p ;
1234};
1235#line 245 "include/linux/device.h"
1236struct driver_attribute {
1237 struct attribute attr ;
1238 ssize_t (*show)(struct device_driver * , char * ) ;
1239 ssize_t (*store)(struct device_driver * , char const * , size_t ) ;
1240};
1241#line 299
1242struct class_attribute;
1243#line 299 "include/linux/device.h"
1244struct class {
1245 char const *name ;
1246 struct module *owner ;
1247 struct class_attribute *class_attrs ;
1248 struct device_attribute *dev_attrs ;
1249 struct bin_attribute *dev_bin_attrs ;
1250 struct kobject *dev_kobj ;
1251 int (*dev_uevent)(struct device * , struct kobj_uevent_env * ) ;
1252 char *(*devnode)(struct device * , umode_t * ) ;
1253 void (*class_release)(struct class * ) ;
1254 void (*dev_release)(struct device * ) ;
1255 int (*suspend)(struct device * , pm_message_t ) ;
1256 int (*resume)(struct device * ) ;
1257 struct kobj_ns_type_operations const *ns_type ;
1258 void const *(*namespace)(struct device * ) ;
1259 struct dev_pm_ops const *pm ;
1260 struct subsys_private *p ;
1261};
1262#line 394 "include/linux/device.h"
1263struct class_attribute {
1264 struct attribute attr ;
1265 ssize_t (*show)(struct class * , struct class_attribute * , char * ) ;
1266 ssize_t (*store)(struct class * , struct class_attribute * , char const * , size_t ) ;
1267 void const *(*namespace)(struct class * , struct class_attribute const * ) ;
1268};
1269#line 447 "include/linux/device.h"
1270struct device_type {
1271 char const *name ;
1272 struct attribute_group const **groups ;
1273 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
1274 char *(*devnode)(struct device * , umode_t * ) ;
1275 void (*release)(struct device * ) ;
1276 struct dev_pm_ops const *pm ;
1277};
1278#line 474 "include/linux/device.h"
1279struct device_attribute {
1280 struct attribute attr ;
1281 ssize_t (*show)(struct device * , struct device_attribute * , char * ) ;
1282 ssize_t (*store)(struct device * , struct device_attribute * , char const * ,
1283 size_t ) ;
1284};
1285#line 557 "include/linux/device.h"
1286struct device_dma_parameters {
1287 unsigned int max_segment_size ;
1288 unsigned long segment_boundary_mask ;
1289};
1290#line 567
1291struct dma_coherent_mem;
1292#line 567 "include/linux/device.h"
1293struct device {
1294 struct device *parent ;
1295 struct device_private *p ;
1296 struct kobject kobj ;
1297 char const *init_name ;
1298 struct device_type const *type ;
1299 struct mutex mutex ;
1300 struct bus_type *bus ;
1301 struct device_driver *driver ;
1302 void *platform_data ;
1303 struct dev_pm_info power ;
1304 struct dev_pm_domain *pm_domain ;
1305 int numa_node ;
1306 u64 *dma_mask ;
1307 u64 coherent_dma_mask ;
1308 struct device_dma_parameters *dma_parms ;
1309 struct list_head dma_pools ;
1310 struct dma_coherent_mem *dma_mem ;
1311 struct dev_archdata archdata ;
1312 struct device_node *of_node ;
1313 dev_t devt ;
1314 u32 id ;
1315 spinlock_t devres_lock ;
1316 struct list_head devres_head ;
1317 struct klist_node knode_class ;
1318 struct class *class ;
1319 struct attribute_group const **groups ;
1320 void (*release)(struct device * ) ;
1321};
1322#line 681 "include/linux/device.h"
1323struct wakeup_source {
1324 char const *name ;
1325 struct list_head entry ;
1326 spinlock_t lock ;
1327 struct timer_list timer ;
1328 unsigned long timer_expires ;
1329 ktime_t total_time ;
1330 ktime_t max_time ;
1331 ktime_t last_time ;
1332 unsigned long event_count ;
1333 unsigned long active_count ;
1334 unsigned long relax_count ;
1335 unsigned long hit_count ;
1336 unsigned char active : 1 ;
1337};
1338#line 93 "include/linux/capability.h"
1339struct kernel_cap_struct {
1340 __u32 cap[2U] ;
1341};
1342#line 96 "include/linux/capability.h"
1343typedef struct kernel_cap_struct kernel_cap_t;
1344#line 104
1345struct dentry;
1346#line 104
1347struct dentry;
1348#line 105
1349struct user_namespace;
1350#line 105
1351struct user_namespace;
1352#line 554
1353struct prio_tree_node;
1354#line 554 "include/linux/capability.h"
1355struct raw_prio_tree_node {
1356 struct prio_tree_node *left ;
1357 struct prio_tree_node *right ;
1358 struct prio_tree_node *parent ;
1359};
1360#line 19 "include/linux/prio_tree.h"
1361struct prio_tree_node {
1362 struct prio_tree_node *left ;
1363 struct prio_tree_node *right ;
1364 struct prio_tree_node *parent ;
1365 unsigned long start ;
1366 unsigned long last ;
1367};
1368#line 116
1369struct address_space;
1370#line 116
1371struct address_space;
1372#line 117 "include/linux/prio_tree.h"
1373union __anonunion_ldv_15299_138 {
1374 unsigned long index ;
1375 void *freelist ;
1376};
1377#line 117 "include/linux/prio_tree.h"
1378struct __anonstruct_ldv_15309_142 {
1379 unsigned short inuse ;
1380 unsigned short objects : 15 ;
1381 unsigned char frozen : 1 ;
1382};
1383#line 117 "include/linux/prio_tree.h"
1384union __anonunion_ldv_15310_141 {
1385 atomic_t _mapcount ;
1386 struct __anonstruct_ldv_15309_142 ldv_15309 ;
1387};
1388#line 117 "include/linux/prio_tree.h"
1389struct __anonstruct_ldv_15312_140 {
1390 union __anonunion_ldv_15310_141 ldv_15310 ;
1391 atomic_t _count ;
1392};
1393#line 117 "include/linux/prio_tree.h"
1394union __anonunion_ldv_15313_139 {
1395 unsigned long counters ;
1396 struct __anonstruct_ldv_15312_140 ldv_15312 ;
1397};
1398#line 117 "include/linux/prio_tree.h"
1399struct __anonstruct_ldv_15314_137 {
1400 union __anonunion_ldv_15299_138 ldv_15299 ;
1401 union __anonunion_ldv_15313_139 ldv_15313 ;
1402};
1403#line 117 "include/linux/prio_tree.h"
1404struct __anonstruct_ldv_15321_144 {
1405 struct page *next ;
1406 int pages ;
1407 int pobjects ;
1408};
1409#line 117 "include/linux/prio_tree.h"
1410union __anonunion_ldv_15322_143 {
1411 struct list_head lru ;
1412 struct __anonstruct_ldv_15321_144 ldv_15321 ;
1413};
1414#line 117 "include/linux/prio_tree.h"
1415union __anonunion_ldv_15327_145 {
1416 unsigned long private ;
1417 struct kmem_cache *slab ;
1418 struct page *first_page ;
1419};
1420#line 117 "include/linux/prio_tree.h"
1421struct page {
1422 unsigned long flags ;
1423 struct address_space *mapping ;
1424 struct __anonstruct_ldv_15314_137 ldv_15314 ;
1425 union __anonunion_ldv_15322_143 ldv_15322 ;
1426 union __anonunion_ldv_15327_145 ldv_15327 ;
1427 unsigned long debug_flags ;
1428};
1429#line 192 "include/linux/mm_types.h"
1430struct __anonstruct_vm_set_147 {
1431 struct list_head list ;
1432 void *parent ;
1433 struct vm_area_struct *head ;
1434};
1435#line 192 "include/linux/mm_types.h"
1436union __anonunion_shared_146 {
1437 struct __anonstruct_vm_set_147 vm_set ;
1438 struct raw_prio_tree_node prio_tree_node ;
1439};
1440#line 192
1441struct anon_vma;
1442#line 192
1443struct vm_operations_struct;
1444#line 192
1445struct mempolicy;
1446#line 192 "include/linux/mm_types.h"
1447struct vm_area_struct {
1448 struct mm_struct *vm_mm ;
1449 unsigned long vm_start ;
1450 unsigned long vm_end ;
1451 struct vm_area_struct *vm_next ;
1452 struct vm_area_struct *vm_prev ;
1453 pgprot_t vm_page_prot ;
1454 unsigned long vm_flags ;
1455 struct rb_node vm_rb ;
1456 union __anonunion_shared_146 shared ;
1457 struct list_head anon_vma_chain ;
1458 struct anon_vma *anon_vma ;
1459 struct vm_operations_struct const *vm_ops ;
1460 unsigned long vm_pgoff ;
1461 struct file *vm_file ;
1462 void *vm_private_data ;
1463 struct mempolicy *vm_policy ;
1464};
1465#line 255 "include/linux/mm_types.h"
1466struct core_thread {
1467 struct task_struct *task ;
1468 struct core_thread *next ;
1469};
1470#line 261 "include/linux/mm_types.h"
1471struct core_state {
1472 atomic_t nr_threads ;
1473 struct core_thread dumper ;
1474 struct completion startup ;
1475};
1476#line 274 "include/linux/mm_types.h"
1477struct mm_rss_stat {
1478 atomic_long_t count[3U] ;
1479};
1480#line 287
1481struct linux_binfmt;
1482#line 287
1483struct mmu_notifier_mm;
1484#line 287 "include/linux/mm_types.h"
1485struct mm_struct {
1486 struct vm_area_struct *mmap ;
1487 struct rb_root mm_rb ;
1488 struct vm_area_struct *mmap_cache ;
1489 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
1490 unsigned long , unsigned long ) ;
1491 void (*unmap_area)(struct mm_struct * , unsigned long ) ;
1492 unsigned long mmap_base ;
1493 unsigned long task_size ;
1494 unsigned long cached_hole_size ;
1495 unsigned long free_area_cache ;
1496 pgd_t *pgd ;
1497 atomic_t mm_users ;
1498 atomic_t mm_count ;
1499 int map_count ;
1500 spinlock_t page_table_lock ;
1501 struct rw_semaphore mmap_sem ;
1502 struct list_head mmlist ;
1503 unsigned long hiwater_rss ;
1504 unsigned long hiwater_vm ;
1505 unsigned long total_vm ;
1506 unsigned long locked_vm ;
1507 unsigned long pinned_vm ;
1508 unsigned long shared_vm ;
1509 unsigned long exec_vm ;
1510 unsigned long stack_vm ;
1511 unsigned long reserved_vm ;
1512 unsigned long def_flags ;
1513 unsigned long nr_ptes ;
1514 unsigned long start_code ;
1515 unsigned long end_code ;
1516 unsigned long start_data ;
1517 unsigned long end_data ;
1518 unsigned long start_brk ;
1519 unsigned long brk ;
1520 unsigned long start_stack ;
1521 unsigned long arg_start ;
1522 unsigned long arg_end ;
1523 unsigned long env_start ;
1524 unsigned long env_end ;
1525 unsigned long saved_auxv[44U] ;
1526 struct mm_rss_stat rss_stat ;
1527 struct linux_binfmt *binfmt ;
1528 cpumask_var_t cpu_vm_mask_var ;
1529 mm_context_t context ;
1530 unsigned int faultstamp ;
1531 unsigned int token_priority ;
1532 unsigned int last_interval ;
1533 unsigned long flags ;
1534 struct core_state *core_state ;
1535 spinlock_t ioctx_lock ;
1536 struct hlist_head ioctx_list ;
1537 struct task_struct *owner ;
1538 struct file *exe_file ;
1539 unsigned long num_exe_file_vmas ;
1540 struct mmu_notifier_mm *mmu_notifier_mm ;
1541 pgtable_t pmd_huge_pte ;
1542 struct cpumask cpumask_allocation ;
1543};
1544#line 7 "include/asm-generic/cputime.h"
1545typedef unsigned long cputime_t;
1546#line 98 "include/linux/sem.h"
1547struct sem_undo_list;
1548#line 98 "include/linux/sem.h"
1549struct sysv_sem {
1550 struct sem_undo_list *undo_list ;
1551};
1552#line 107
1553struct siginfo;
1554#line 107
1555struct siginfo;
1556#line 32 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1557struct __anonstruct_sigset_t_148 {
1558 unsigned long sig[1U] ;
1559};
1560#line 32 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1561typedef struct __anonstruct_sigset_t_148 sigset_t;
1562#line 17 "include/asm-generic/signal-defs.h"
1563typedef void __signalfn_t(int );
1564#line 18 "include/asm-generic/signal-defs.h"
1565typedef __signalfn_t *__sighandler_t;
1566#line 20 "include/asm-generic/signal-defs.h"
1567typedef void __restorefn_t(void);
1568#line 21 "include/asm-generic/signal-defs.h"
1569typedef __restorefn_t *__sigrestore_t;
1570#line 126 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1571struct sigaction {
1572 __sighandler_t sa_handler ;
1573 unsigned long sa_flags ;
1574 __sigrestore_t sa_restorer ;
1575 sigset_t sa_mask ;
1576};
1577#line 173 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1578struct k_sigaction {
1579 struct sigaction sa ;
1580};
1581#line 185 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1582union sigval {
1583 int sival_int ;
1584 void *sival_ptr ;
1585};
1586#line 10 "include/asm-generic/siginfo.h"
1587typedef union sigval sigval_t;
1588#line 11 "include/asm-generic/siginfo.h"
1589struct __anonstruct__kill_150 {
1590 __kernel_pid_t _pid ;
1591 __kernel_uid32_t _uid ;
1592};
1593#line 11 "include/asm-generic/siginfo.h"
1594struct __anonstruct__timer_151 {
1595 __kernel_timer_t _tid ;
1596 int _overrun ;
1597 char _pad[0U] ;
1598 sigval_t _sigval ;
1599 int _sys_private ;
1600};
1601#line 11 "include/asm-generic/siginfo.h"
1602struct __anonstruct__rt_152 {
1603 __kernel_pid_t _pid ;
1604 __kernel_uid32_t _uid ;
1605 sigval_t _sigval ;
1606};
1607#line 11 "include/asm-generic/siginfo.h"
1608struct __anonstruct__sigchld_153 {
1609 __kernel_pid_t _pid ;
1610 __kernel_uid32_t _uid ;
1611 int _status ;
1612 __kernel_clock_t _utime ;
1613 __kernel_clock_t _stime ;
1614};
1615#line 11 "include/asm-generic/siginfo.h"
1616struct __anonstruct__sigfault_154 {
1617 void *_addr ;
1618 short _addr_lsb ;
1619};
1620#line 11 "include/asm-generic/siginfo.h"
1621struct __anonstruct__sigpoll_155 {
1622 long _band ;
1623 int _fd ;
1624};
1625#line 11 "include/asm-generic/siginfo.h"
1626union __anonunion__sifields_149 {
1627 int _pad[28U] ;
1628 struct __anonstruct__kill_150 _kill ;
1629 struct __anonstruct__timer_151 _timer ;
1630 struct __anonstruct__rt_152 _rt ;
1631 struct __anonstruct__sigchld_153 _sigchld ;
1632 struct __anonstruct__sigfault_154 _sigfault ;
1633 struct __anonstruct__sigpoll_155 _sigpoll ;
1634};
1635#line 11 "include/asm-generic/siginfo.h"
1636struct siginfo {
1637 int si_signo ;
1638 int si_errno ;
1639 int si_code ;
1640 union __anonunion__sifields_149 _sifields ;
1641};
1642#line 102 "include/asm-generic/siginfo.h"
1643typedef struct siginfo siginfo_t;
1644#line 14 "include/linux/signal.h"
1645struct user_struct;
1646#line 24 "include/linux/signal.h"
1647struct sigpending {
1648 struct list_head list ;
1649 sigset_t signal ;
1650};
1651#line 395
1652struct pid_namespace;
1653#line 395 "include/linux/signal.h"
1654struct upid {
1655 int nr ;
1656 struct pid_namespace *ns ;
1657 struct hlist_node pid_chain ;
1658};
1659#line 56 "include/linux/pid.h"
1660struct pid {
1661 atomic_t count ;
1662 unsigned int level ;
1663 struct hlist_head tasks[3U] ;
1664 struct rcu_head rcu ;
1665 struct upid numbers[1U] ;
1666};
1667#line 68 "include/linux/pid.h"
1668struct pid_link {
1669 struct hlist_node node ;
1670 struct pid *pid ;
1671};
1672#line 10 "include/linux/seccomp.h"
1673struct __anonstruct_seccomp_t_158 {
1674 int mode ;
1675};
1676#line 10 "include/linux/seccomp.h"
1677typedef struct __anonstruct_seccomp_t_158 seccomp_t;
1678#line 427 "include/linux/rculist.h"
1679struct plist_head {
1680 struct list_head node_list ;
1681};
1682#line 84 "include/linux/plist.h"
1683struct plist_node {
1684 int prio ;
1685 struct list_head prio_list ;
1686 struct list_head node_list ;
1687};
1688#line 20 "include/linux/rtmutex.h"
1689struct rt_mutex {
1690 raw_spinlock_t wait_lock ;
1691 struct plist_head wait_list ;
1692 struct task_struct *owner ;
1693 int save_state ;
1694 char const *name ;
1695 char const *file ;
1696 int line ;
1697 void *magic ;
1698};
1699#line 38
1700struct rt_mutex_waiter;
1701#line 38
1702struct rt_mutex_waiter;
1703#line 41 "include/linux/resource.h"
1704struct rlimit {
1705 unsigned long rlim_cur ;
1706 unsigned long rlim_max ;
1707};
1708#line 85 "include/linux/resource.h"
1709struct timerqueue_node {
1710 struct rb_node node ;
1711 ktime_t expires ;
1712};
1713#line 12 "include/linux/timerqueue.h"
1714struct timerqueue_head {
1715 struct rb_root head ;
1716 struct timerqueue_node *next ;
1717};
1718#line 50
1719struct hrtimer_clock_base;
1720#line 50
1721struct hrtimer_clock_base;
1722#line 51
1723struct hrtimer_cpu_base;
1724#line 51
1725struct hrtimer_cpu_base;
1726#line 60
1727enum hrtimer_restart {
1728 HRTIMER_NORESTART = 0,
1729 HRTIMER_RESTART = 1
1730} ;
1731#line 65 "include/linux/timerqueue.h"
1732struct hrtimer {
1733 struct timerqueue_node node ;
1734 ktime_t _softexpires ;
1735 enum hrtimer_restart (*function)(struct hrtimer * ) ;
1736 struct hrtimer_clock_base *base ;
1737 unsigned long state ;
1738 int start_pid ;
1739 void *start_site ;
1740 char start_comm[16U] ;
1741};
1742#line 132 "include/linux/hrtimer.h"
1743struct hrtimer_clock_base {
1744 struct hrtimer_cpu_base *cpu_base ;
1745 int index ;
1746 clockid_t clockid ;
1747 struct timerqueue_head active ;
1748 ktime_t resolution ;
1749 ktime_t (*get_time)(void) ;
1750 ktime_t softirq_time ;
1751 ktime_t offset ;
1752};
1753#line 162 "include/linux/hrtimer.h"
1754struct hrtimer_cpu_base {
1755 raw_spinlock_t lock ;
1756 unsigned long active_bases ;
1757 ktime_t expires_next ;
1758 int hres_active ;
1759 int hang_detected ;
1760 unsigned long nr_events ;
1761 unsigned long nr_retries ;
1762 unsigned long nr_hangs ;
1763 ktime_t max_hang_time ;
1764 struct hrtimer_clock_base clock_base[3U] ;
1765};
1766#line 452 "include/linux/hrtimer.h"
1767struct task_io_accounting {
1768 u64 rchar ;
1769 u64 wchar ;
1770 u64 syscr ;
1771 u64 syscw ;
1772 u64 read_bytes ;
1773 u64 write_bytes ;
1774 u64 cancelled_write_bytes ;
1775};
1776#line 45 "include/linux/task_io_accounting.h"
1777struct latency_record {
1778 unsigned long backtrace[12U] ;
1779 unsigned int count ;
1780 unsigned long time ;
1781 unsigned long max ;
1782};
1783#line 29 "include/linux/key.h"
1784typedef int32_t key_serial_t;
1785#line 32 "include/linux/key.h"
1786typedef uint32_t key_perm_t;
1787#line 33
1788struct key;
1789#line 33
1790struct key;
1791#line 34
1792struct signal_struct;
1793#line 34
1794struct signal_struct;
1795#line 35
1796struct key_type;
1797#line 35
1798struct key_type;
1799#line 37
1800struct keyring_list;
1801#line 37
1802struct keyring_list;
1803#line 115
1804struct key_user;
1805#line 115 "include/linux/key.h"
1806union __anonunion_ldv_16563_159 {
1807 time_t expiry ;
1808 time_t revoked_at ;
1809};
1810#line 115 "include/linux/key.h"
1811union __anonunion_type_data_160 {
1812 struct list_head link ;
1813 unsigned long x[2U] ;
1814 void *p[2U] ;
1815 int reject_error ;
1816};
1817#line 115 "include/linux/key.h"
1818union __anonunion_payload_161 {
1819 unsigned long value ;
1820 void *rcudata ;
1821 void *data ;
1822 struct keyring_list *subscriptions ;
1823};
1824#line 115 "include/linux/key.h"
1825struct key {
1826 atomic_t usage ;
1827 key_serial_t serial ;
1828 struct rb_node serial_node ;
1829 struct key_type *type ;
1830 struct rw_semaphore sem ;
1831 struct key_user *user ;
1832 void *security ;
1833 union __anonunion_ldv_16563_159 ldv_16563 ;
1834 uid_t uid ;
1835 gid_t gid ;
1836 key_perm_t perm ;
1837 unsigned short quotalen ;
1838 unsigned short datalen ;
1839 unsigned long flags ;
1840 char *description ;
1841 union __anonunion_type_data_160 type_data ;
1842 union __anonunion_payload_161 payload ;
1843};
1844#line 316
1845struct audit_context;
1846#line 316
1847struct audit_context;
1848#line 28 "include/linux/selinux.h"
1849struct group_info {
1850 atomic_t usage ;
1851 int ngroups ;
1852 int nblocks ;
1853 gid_t small_block[32U] ;
1854 gid_t *blocks[0U] ;
1855};
1856#line 77 "include/linux/cred.h"
1857struct thread_group_cred {
1858 atomic_t usage ;
1859 pid_t tgid ;
1860 spinlock_t lock ;
1861 struct key *session_keyring ;
1862 struct key *process_keyring ;
1863 struct rcu_head rcu ;
1864};
1865#line 91 "include/linux/cred.h"
1866struct cred {
1867 atomic_t usage ;
1868 atomic_t subscribers ;
1869 void *put_addr ;
1870 unsigned int magic ;
1871 uid_t uid ;
1872 gid_t gid ;
1873 uid_t suid ;
1874 gid_t sgid ;
1875 uid_t euid ;
1876 gid_t egid ;
1877 uid_t fsuid ;
1878 gid_t fsgid ;
1879 unsigned int securebits ;
1880 kernel_cap_t cap_inheritable ;
1881 kernel_cap_t cap_permitted ;
1882 kernel_cap_t cap_effective ;
1883 kernel_cap_t cap_bset ;
1884 unsigned char jit_keyring ;
1885 struct key *thread_keyring ;
1886 struct key *request_key_auth ;
1887 struct thread_group_cred *tgcred ;
1888 void *security ;
1889 struct user_struct *user ;
1890 struct user_namespace *user_ns ;
1891 struct group_info *group_info ;
1892 struct rcu_head rcu ;
1893};
1894#line 264
1895struct llist_node;
1896#line 64 "include/linux/llist.h"
1897struct llist_node {
1898 struct llist_node *next ;
1899};
1900#line 185
1901struct futex_pi_state;
1902#line 185
1903struct futex_pi_state;
1904#line 186
1905struct robust_list_head;
1906#line 186
1907struct robust_list_head;
1908#line 187
1909struct bio_list;
1910#line 187
1911struct bio_list;
1912#line 188
1913struct fs_struct;
1914#line 188
1915struct fs_struct;
1916#line 189
1917struct perf_event_context;
1918#line 189
1919struct perf_event_context;
1920#line 190
1921struct blk_plug;
1922#line 190
1923struct blk_plug;
1924#line 149 "include/linux/sched.h"
1925struct cfs_rq;
1926#line 149
1927struct cfs_rq;
1928#line 406 "include/linux/sched.h"
1929struct sighand_struct {
1930 atomic_t count ;
1931 struct k_sigaction action[64U] ;
1932 spinlock_t siglock ;
1933 wait_queue_head_t signalfd_wqh ;
1934};
1935#line 449 "include/linux/sched.h"
1936struct pacct_struct {
1937 int ac_flag ;
1938 long ac_exitcode ;
1939 unsigned long ac_mem ;
1940 cputime_t ac_utime ;
1941 cputime_t ac_stime ;
1942 unsigned long ac_minflt ;
1943 unsigned long ac_majflt ;
1944};
1945#line 457 "include/linux/sched.h"
1946struct cpu_itimer {
1947 cputime_t expires ;
1948 cputime_t incr ;
1949 u32 error ;
1950 u32 incr_error ;
1951};
1952#line 464 "include/linux/sched.h"
1953struct task_cputime {
1954 cputime_t utime ;
1955 cputime_t stime ;
1956 unsigned long long sum_exec_runtime ;
1957};
1958#line 481 "include/linux/sched.h"
1959struct thread_group_cputimer {
1960 struct task_cputime cputime ;
1961 int running ;
1962 raw_spinlock_t lock ;
1963};
1964#line 517
1965struct autogroup;
1966#line 517
1967struct autogroup;
1968#line 518
1969struct tty_struct;
1970#line 518
1971struct taskstats;
1972#line 518
1973struct tty_audit_buf;
1974#line 518 "include/linux/sched.h"
1975struct signal_struct {
1976 atomic_t sigcnt ;
1977 atomic_t live ;
1978 int nr_threads ;
1979 wait_queue_head_t wait_chldexit ;
1980 struct task_struct *curr_target ;
1981 struct sigpending shared_pending ;
1982 int group_exit_code ;
1983 int notify_count ;
1984 struct task_struct *group_exit_task ;
1985 int group_stop_count ;
1986 unsigned int flags ;
1987 unsigned char is_child_subreaper : 1 ;
1988 unsigned char has_child_subreaper : 1 ;
1989 struct list_head posix_timers ;
1990 struct hrtimer real_timer ;
1991 struct pid *leader_pid ;
1992 ktime_t it_real_incr ;
1993 struct cpu_itimer it[2U] ;
1994 struct thread_group_cputimer cputimer ;
1995 struct task_cputime cputime_expires ;
1996 struct list_head cpu_timers[3U] ;
1997 struct pid *tty_old_pgrp ;
1998 int leader ;
1999 struct tty_struct *tty ;
2000 struct autogroup *autogroup ;
2001 cputime_t utime ;
2002 cputime_t stime ;
2003 cputime_t cutime ;
2004 cputime_t cstime ;
2005 cputime_t gtime ;
2006 cputime_t cgtime ;
2007 cputime_t prev_utime ;
2008 cputime_t prev_stime ;
2009 unsigned long nvcsw ;
2010 unsigned long nivcsw ;
2011 unsigned long cnvcsw ;
2012 unsigned long cnivcsw ;
2013 unsigned long min_flt ;
2014 unsigned long maj_flt ;
2015 unsigned long cmin_flt ;
2016 unsigned long cmaj_flt ;
2017 unsigned long inblock ;
2018 unsigned long oublock ;
2019 unsigned long cinblock ;
2020 unsigned long coublock ;
2021 unsigned long maxrss ;
2022 unsigned long cmaxrss ;
2023 struct task_io_accounting ioac ;
2024 unsigned long long sum_sched_runtime ;
2025 struct rlimit rlim[16U] ;
2026 struct pacct_struct pacct ;
2027 struct taskstats *stats ;
2028 unsigned int audit_tty ;
2029 struct tty_audit_buf *tty_audit_buf ;
2030 struct rw_semaphore group_rwsem ;
2031 int oom_adj ;
2032 int oom_score_adj ;
2033 int oom_score_adj_min ;
2034 struct mutex cred_guard_mutex ;
2035};
2036#line 699 "include/linux/sched.h"
2037struct user_struct {
2038 atomic_t __count ;
2039 atomic_t processes ;
2040 atomic_t files ;
2041 atomic_t sigpending ;
2042 atomic_t inotify_watches ;
2043 atomic_t inotify_devs ;
2044 atomic_t fanotify_listeners ;
2045 atomic_long_t epoll_watches ;
2046 unsigned long mq_bytes ;
2047 unsigned long locked_shm ;
2048 struct key *uid_keyring ;
2049 struct key *session_keyring ;
2050 struct hlist_node uidhash_node ;
2051 uid_t uid ;
2052 struct user_namespace *user_ns ;
2053 atomic_long_t locked_vm ;
2054};
2055#line 744
2056struct backing_dev_info;
2057#line 744
2058struct backing_dev_info;
2059#line 745
2060struct reclaim_state;
2061#line 745
2062struct reclaim_state;
2063#line 746 "include/linux/sched.h"
2064struct sched_info {
2065 unsigned long pcount ;
2066 unsigned long long run_delay ;
2067 unsigned long long last_arrival ;
2068 unsigned long long last_queued ;
2069};
2070#line 760 "include/linux/sched.h"
2071struct task_delay_info {
2072 spinlock_t lock ;
2073 unsigned int flags ;
2074 struct timespec blkio_start ;
2075 struct timespec blkio_end ;
2076 u64 blkio_delay ;
2077 u64 swapin_delay ;
2078 u32 blkio_count ;
2079 u32 swapin_count ;
2080 struct timespec freepages_start ;
2081 struct timespec freepages_end ;
2082 u64 freepages_delay ;
2083 u32 freepages_count ;
2084};
2085#line 1069
2086struct io_context;
2087#line 1069
2088struct io_context;
2089#line 1097
2090struct pipe_inode_info;
2091#line 1097
2092struct pipe_inode_info;
2093#line 1099
2094struct rq;
2095#line 1099
2096struct rq;
2097#line 1100 "include/linux/sched.h"
2098struct sched_class {
2099 struct sched_class const *next ;
2100 void (*enqueue_task)(struct rq * , struct task_struct * , int ) ;
2101 void (*dequeue_task)(struct rq * , struct task_struct * , int ) ;
2102 void (*yield_task)(struct rq * ) ;
2103 bool (*yield_to_task)(struct rq * , struct task_struct * , bool ) ;
2104 void (*check_preempt_curr)(struct rq * , struct task_struct * , int ) ;
2105 struct task_struct *(*pick_next_task)(struct rq * ) ;
2106 void (*put_prev_task)(struct rq * , struct task_struct * ) ;
2107 int (*select_task_rq)(struct task_struct * , int , int ) ;
2108 void (*pre_schedule)(struct rq * , struct task_struct * ) ;
2109 void (*post_schedule)(struct rq * ) ;
2110 void (*task_waking)(struct task_struct * ) ;
2111 void (*task_woken)(struct rq * , struct task_struct * ) ;
2112 void (*set_cpus_allowed)(struct task_struct * , struct cpumask const * ) ;
2113 void (*rq_online)(struct rq * ) ;
2114 void (*rq_offline)(struct rq * ) ;
2115 void (*set_curr_task)(struct rq * ) ;
2116 void (*task_tick)(struct rq * , struct task_struct * , int ) ;
2117 void (*task_fork)(struct task_struct * ) ;
2118 void (*switched_from)(struct rq * , struct task_struct * ) ;
2119 void (*switched_to)(struct rq * , struct task_struct * ) ;
2120 void (*prio_changed)(struct rq * , struct task_struct * , int ) ;
2121 unsigned int (*get_rr_interval)(struct rq * , struct task_struct * ) ;
2122 void (*task_move_group)(struct task_struct * , int ) ;
2123};
2124#line 1165 "include/linux/sched.h"
2125struct load_weight {
2126 unsigned long weight ;
2127 unsigned long inv_weight ;
2128};
2129#line 1170 "include/linux/sched.h"
2130struct sched_statistics {
2131 u64 wait_start ;
2132 u64 wait_max ;
2133 u64 wait_count ;
2134 u64 wait_sum ;
2135 u64 iowait_count ;
2136 u64 iowait_sum ;
2137 u64 sleep_start ;
2138 u64 sleep_max ;
2139 s64 sum_sleep_runtime ;
2140 u64 block_start ;
2141 u64 block_max ;
2142 u64 exec_max ;
2143 u64 slice_max ;
2144 u64 nr_migrations_cold ;
2145 u64 nr_failed_migrations_affine ;
2146 u64 nr_failed_migrations_running ;
2147 u64 nr_failed_migrations_hot ;
2148 u64 nr_forced_migrations ;
2149 u64 nr_wakeups ;
2150 u64 nr_wakeups_sync ;
2151 u64 nr_wakeups_migrate ;
2152 u64 nr_wakeups_local ;
2153 u64 nr_wakeups_remote ;
2154 u64 nr_wakeups_affine ;
2155 u64 nr_wakeups_affine_attempts ;
2156 u64 nr_wakeups_passive ;
2157 u64 nr_wakeups_idle ;
2158};
2159#line 1205 "include/linux/sched.h"
2160struct sched_entity {
2161 struct load_weight load ;
2162 struct rb_node run_node ;
2163 struct list_head group_node ;
2164 unsigned int on_rq ;
2165 u64 exec_start ;
2166 u64 sum_exec_runtime ;
2167 u64 vruntime ;
2168 u64 prev_sum_exec_runtime ;
2169 u64 nr_migrations ;
2170 struct sched_statistics statistics ;
2171 struct sched_entity *parent ;
2172 struct cfs_rq *cfs_rq ;
2173 struct cfs_rq *my_q ;
2174};
2175#line 1231
2176struct rt_rq;
2177#line 1231 "include/linux/sched.h"
2178struct sched_rt_entity {
2179 struct list_head run_list ;
2180 unsigned long timeout ;
2181 unsigned int time_slice ;
2182 int nr_cpus_allowed ;
2183 struct sched_rt_entity *back ;
2184 struct sched_rt_entity *parent ;
2185 struct rt_rq *rt_rq ;
2186 struct rt_rq *my_q ;
2187};
2188#line 1255
2189struct mem_cgroup;
2190#line 1255 "include/linux/sched.h"
2191struct memcg_batch_info {
2192 int do_batch ;
2193 struct mem_cgroup *memcg ;
2194 unsigned long nr_pages ;
2195 unsigned long memsw_nr_pages ;
2196};
2197#line 1616
2198struct files_struct;
2199#line 1616
2200struct css_set;
2201#line 1616
2202struct compat_robust_list_head;
2203#line 1616 "include/linux/sched.h"
2204struct task_struct {
2205 long volatile state ;
2206 void *stack ;
2207 atomic_t usage ;
2208 unsigned int flags ;
2209 unsigned int ptrace ;
2210 struct llist_node wake_entry ;
2211 int on_cpu ;
2212 int on_rq ;
2213 int prio ;
2214 int static_prio ;
2215 int normal_prio ;
2216 unsigned int rt_priority ;
2217 struct sched_class const *sched_class ;
2218 struct sched_entity se ;
2219 struct sched_rt_entity rt ;
2220 struct hlist_head preempt_notifiers ;
2221 unsigned char fpu_counter ;
2222 unsigned int policy ;
2223 cpumask_t cpus_allowed ;
2224 struct sched_info sched_info ;
2225 struct list_head tasks ;
2226 struct plist_node pushable_tasks ;
2227 struct mm_struct *mm ;
2228 struct mm_struct *active_mm ;
2229 unsigned char brk_randomized : 1 ;
2230 int exit_state ;
2231 int exit_code ;
2232 int exit_signal ;
2233 int pdeath_signal ;
2234 unsigned int jobctl ;
2235 unsigned int personality ;
2236 unsigned char did_exec : 1 ;
2237 unsigned char in_execve : 1 ;
2238 unsigned char in_iowait : 1 ;
2239 unsigned char sched_reset_on_fork : 1 ;
2240 unsigned char sched_contributes_to_load : 1 ;
2241 unsigned char irq_thread : 1 ;
2242 pid_t pid ;
2243 pid_t tgid ;
2244 unsigned long stack_canary ;
2245 struct task_struct *real_parent ;
2246 struct task_struct *parent ;
2247 struct list_head children ;
2248 struct list_head sibling ;
2249 struct task_struct *group_leader ;
2250 struct list_head ptraced ;
2251 struct list_head ptrace_entry ;
2252 struct pid_link pids[3U] ;
2253 struct list_head thread_group ;
2254 struct completion *vfork_done ;
2255 int *set_child_tid ;
2256 int *clear_child_tid ;
2257 cputime_t utime ;
2258 cputime_t stime ;
2259 cputime_t utimescaled ;
2260 cputime_t stimescaled ;
2261 cputime_t gtime ;
2262 cputime_t prev_utime ;
2263 cputime_t prev_stime ;
2264 unsigned long nvcsw ;
2265 unsigned long nivcsw ;
2266 struct timespec start_time ;
2267 struct timespec real_start_time ;
2268 unsigned long min_flt ;
2269 unsigned long maj_flt ;
2270 struct task_cputime cputime_expires ;
2271 struct list_head cpu_timers[3U] ;
2272 struct cred const *real_cred ;
2273 struct cred const *cred ;
2274 struct cred *replacement_session_keyring ;
2275 char comm[16U] ;
2276 int link_count ;
2277 int total_link_count ;
2278 struct sysv_sem sysvsem ;
2279 unsigned long last_switch_count ;
2280 struct thread_struct thread ;
2281 struct fs_struct *fs ;
2282 struct files_struct *files ;
2283 struct nsproxy *nsproxy ;
2284 struct signal_struct *signal ;
2285 struct sighand_struct *sighand ;
2286 sigset_t blocked ;
2287 sigset_t real_blocked ;
2288 sigset_t saved_sigmask ;
2289 struct sigpending pending ;
2290 unsigned long sas_ss_sp ;
2291 size_t sas_ss_size ;
2292 int (*notifier)(void * ) ;
2293 void *notifier_data ;
2294 sigset_t *notifier_mask ;
2295 struct audit_context *audit_context ;
2296 uid_t loginuid ;
2297 unsigned int sessionid ;
2298 seccomp_t seccomp ;
2299 u32 parent_exec_id ;
2300 u32 self_exec_id ;
2301 spinlock_t alloc_lock ;
2302 raw_spinlock_t pi_lock ;
2303 struct plist_head pi_waiters ;
2304 struct rt_mutex_waiter *pi_blocked_on ;
2305 struct mutex_waiter *blocked_on ;
2306 unsigned int irq_events ;
2307 unsigned long hardirq_enable_ip ;
2308 unsigned long hardirq_disable_ip ;
2309 unsigned int hardirq_enable_event ;
2310 unsigned int hardirq_disable_event ;
2311 int hardirqs_enabled ;
2312 int hardirq_context ;
2313 unsigned long softirq_disable_ip ;
2314 unsigned long softirq_enable_ip ;
2315 unsigned int softirq_disable_event ;
2316 unsigned int softirq_enable_event ;
2317 int softirqs_enabled ;
2318 int softirq_context ;
2319 u64 curr_chain_key ;
2320 int lockdep_depth ;
2321 unsigned int lockdep_recursion ;
2322 struct held_lock held_locks[48U] ;
2323 gfp_t lockdep_reclaim_gfp ;
2324 void *journal_info ;
2325 struct bio_list *bio_list ;
2326 struct blk_plug *plug ;
2327 struct reclaim_state *reclaim_state ;
2328 struct backing_dev_info *backing_dev_info ;
2329 struct io_context *io_context ;
2330 unsigned long ptrace_message ;
2331 siginfo_t *last_siginfo ;
2332 struct task_io_accounting ioac ;
2333 u64 acct_rss_mem1 ;
2334 u64 acct_vm_mem1 ;
2335 cputime_t acct_timexpd ;
2336 nodemask_t mems_allowed ;
2337 seqcount_t mems_allowed_seq ;
2338 int cpuset_mem_spread_rotor ;
2339 int cpuset_slab_spread_rotor ;
2340 struct css_set *cgroups ;
2341 struct list_head cg_list ;
2342 struct robust_list_head *robust_list ;
2343 struct compat_robust_list_head *compat_robust_list ;
2344 struct list_head pi_state_list ;
2345 struct futex_pi_state *pi_state_cache ;
2346 struct perf_event_context *perf_event_ctxp[2U] ;
2347 struct mutex perf_event_mutex ;
2348 struct list_head perf_event_list ;
2349 struct mempolicy *mempolicy ;
2350 short il_next ;
2351 short pref_node_fork ;
2352 struct rcu_head rcu ;
2353 struct pipe_inode_info *splice_pipe ;
2354 struct task_delay_info *delays ;
2355 int make_it_fail ;
2356 int nr_dirtied ;
2357 int nr_dirtied_pause ;
2358 unsigned long dirty_paused_when ;
2359 int latency_record_count ;
2360 struct latency_record latency_record[32U] ;
2361 unsigned long timer_slack_ns ;
2362 unsigned long default_timer_slack_ns ;
2363 struct list_head *scm_work_list ;
2364 unsigned long trace ;
2365 unsigned long trace_recursion ;
2366 struct memcg_batch_info memcg_batch ;
2367 atomic_t ptrace_bp_refcnt ;
2368};
2369#line 28 "include/linux/of.h"
2370typedef u32 phandle;
2371#line 30 "include/linux/of.h"
2372struct property {
2373 char *name ;
2374 int length ;
2375 void *value ;
2376 struct property *next ;
2377 unsigned long _flags ;
2378 unsigned int unique_id ;
2379};
2380#line 39
2381struct proc_dir_entry;
2382#line 39 "include/linux/of.h"
2383struct device_node {
2384 char const *name ;
2385 char const *type ;
2386 phandle phandle ;
2387 char *full_name ;
2388 struct property *properties ;
2389 struct property *deadprops ;
2390 struct device_node *parent ;
2391 struct device_node *child ;
2392 struct device_node *sibling ;
2393 struct device_node *next ;
2394 struct device_node *allnext ;
2395 struct proc_dir_entry *pde ;
2396 struct kref kref ;
2397 unsigned long _flags ;
2398 void *data ;
2399};
2400#line 41 "include/linux/i2c.h"
2401struct i2c_msg;
2402#line 41
2403struct i2c_msg;
2404#line 42
2405struct i2c_algorithm;
2406#line 42
2407struct i2c_algorithm;
2408#line 43
2409struct i2c_adapter;
2410#line 43
2411struct i2c_adapter;
2412#line 44
2413struct i2c_client;
2414#line 44
2415struct i2c_client;
2416#line 45
2417struct i2c_driver;
2418#line 45
2419struct i2c_driver;
2420#line 46
2421union i2c_smbus_data;
2422#line 46
2423union i2c_smbus_data;
2424#line 47
2425struct i2c_board_info;
2426#line 47
2427struct i2c_board_info;
2428#line 119 "include/linux/i2c.h"
2429struct i2c_driver {
2430 unsigned int class ;
2431 int (*attach_adapter)(struct i2c_adapter * ) ;
2432 int (*detach_adapter)(struct i2c_adapter * ) ;
2433 int (*probe)(struct i2c_client * , struct i2c_device_id const * ) ;
2434 int (*remove)(struct i2c_client * ) ;
2435 void (*shutdown)(struct i2c_client * ) ;
2436 int (*suspend)(struct i2c_client * , pm_message_t ) ;
2437 int (*resume)(struct i2c_client * ) ;
2438 void (*alert)(struct i2c_client * , unsigned int ) ;
2439 int (*command)(struct i2c_client * , unsigned int , void * ) ;
2440 struct device_driver driver ;
2441 struct i2c_device_id const *id_table ;
2442 int (*detect)(struct i2c_client * , struct i2c_board_info * ) ;
2443 unsigned short const *address_list ;
2444 struct list_head clients ;
2445};
2446#line 200 "include/linux/i2c.h"
2447struct i2c_client {
2448 unsigned short flags ;
2449 unsigned short addr ;
2450 char name[20U] ;
2451 struct i2c_adapter *adapter ;
2452 struct i2c_driver *driver ;
2453 struct device dev ;
2454 int irq ;
2455 struct list_head detected ;
2456};
2457#line 251 "include/linux/i2c.h"
2458struct i2c_board_info {
2459 char type[20U] ;
2460 unsigned short flags ;
2461 unsigned short addr ;
2462 void *platform_data ;
2463 struct dev_archdata *archdata ;
2464 struct device_node *of_node ;
2465 int irq ;
2466};
2467#line 336 "include/linux/i2c.h"
2468struct i2c_algorithm {
2469 int (*master_xfer)(struct i2c_adapter * , struct i2c_msg * , int ) ;
2470 int (*smbus_xfer)(struct i2c_adapter * , u16 , unsigned short , char , u8 ,
2471 int , union i2c_smbus_data * ) ;
2472 u32 (*functionality)(struct i2c_adapter * ) ;
2473};
2474#line 368 "include/linux/i2c.h"
2475struct i2c_adapter {
2476 struct module *owner ;
2477 unsigned int class ;
2478 struct i2c_algorithm const *algo ;
2479 void *algo_data ;
2480 struct rt_mutex bus_lock ;
2481 int timeout ;
2482 int retries ;
2483 struct device dev ;
2484 int nr ;
2485 char name[48U] ;
2486 struct completion dev_released ;
2487 struct mutex userspace_clients_lock ;
2488 struct list_head userspace_clients ;
2489};
2490#line 486 "include/linux/i2c.h"
2491struct i2c_msg {
2492 __u16 addr ;
2493 __u16 flags ;
2494 __u16 len ;
2495 __u8 *buf ;
2496};
2497#line 551 "include/linux/i2c.h"
2498union i2c_smbus_data {
2499 __u8 byte ;
2500 __u16 word ;
2501 __u8 block[34U] ;
2502};
2503#line 601
2504struct mfd_cell;
2505#line 601
2506struct mfd_cell;
2507#line 602 "include/linux/i2c.h"
2508struct platform_device {
2509 char const *name ;
2510 int id ;
2511 struct device dev ;
2512 u32 num_resources ;
2513 struct resource *resource ;
2514 struct platform_device_id const *id_entry ;
2515 struct mfd_cell *mfd_cell ;
2516 struct pdev_archdata archdata ;
2517};
2518#line 272 "include/linux/platform_device.h"
2519struct mfd_cell {
2520 char const *name ;
2521 int id ;
2522 atomic_t *usage_count ;
2523 int (*enable)(struct platform_device * ) ;
2524 int (*disable)(struct platform_device * ) ;
2525 int (*suspend)(struct platform_device * ) ;
2526 int (*resume)(struct platform_device * ) ;
2527 void *platform_data ;
2528 size_t pdata_size ;
2529 int num_resources ;
2530 struct resource const *resources ;
2531 bool ignore_resource_conflicts ;
2532 bool pm_runtime_no_callbacks ;
2533};
2534#line 189 "include/linux/regulator/consumer.h"
2535struct taskstats {
2536 __u16 version ;
2537 __u32 ac_exitcode ;
2538 __u8 ac_flag ;
2539 __u8 ac_nice ;
2540 __u64 cpu_count ;
2541 __u64 cpu_delay_total ;
2542 __u64 blkio_count ;
2543 __u64 blkio_delay_total ;
2544 __u64 swapin_count ;
2545 __u64 swapin_delay_total ;
2546 __u64 cpu_run_real_total ;
2547 __u64 cpu_run_virtual_total ;
2548 char ac_comm[32U] ;
2549 __u8 ac_sched ;
2550 __u8 ac_pad[3U] ;
2551 __u32 ac_uid ;
2552 __u32 ac_gid ;
2553 __u32 ac_pid ;
2554 __u32 ac_ppid ;
2555 __u32 ac_btime ;
2556 __u64 ac_etime ;
2557 __u64 ac_utime ;
2558 __u64 ac_stime ;
2559 __u64 ac_minflt ;
2560 __u64 ac_majflt ;
2561 __u64 coremem ;
2562 __u64 virtmem ;
2563 __u64 hiwater_rss ;
2564 __u64 hiwater_vm ;
2565 __u64 read_char ;
2566 __u64 write_char ;
2567 __u64 read_syscalls ;
2568 __u64 write_syscalls ;
2569 __u64 read_bytes ;
2570 __u64 write_bytes ;
2571 __u64 cancelled_write_bytes ;
2572 __u64 nvcsw ;
2573 __u64 nivcsw ;
2574 __u64 ac_utimescaled ;
2575 __u64 ac_stimescaled ;
2576 __u64 cpu_scaled_run_real_total ;
2577 __u64 freepages_count ;
2578 __u64 freepages_delay_total ;
2579};
2580#line 154 "include/linux/idr.h"
2581struct cgroupfs_root;
2582#line 154
2583struct cgroupfs_root;
2584#line 156
2585struct cgroup;
2586#line 156
2587struct cgroup;
2588#line 157
2589struct css_id;
2590#line 157
2591struct css_id;
2592#line 56 "include/linux/cgroup.h"
2593struct cgroup_subsys_state {
2594 struct cgroup *cgroup ;
2595 atomic_t refcnt ;
2596 unsigned long flags ;
2597 struct css_id *id ;
2598};
2599#line 149 "include/linux/cgroup.h"
2600struct cgroup {
2601 unsigned long flags ;
2602 atomic_t count ;
2603 struct list_head sibling ;
2604 struct list_head children ;
2605 struct cgroup *parent ;
2606 struct dentry *dentry ;
2607 struct cgroup_subsys_state *subsys[64U] ;
2608 struct cgroupfs_root *root ;
2609 struct cgroup *top_cgroup ;
2610 struct list_head css_sets ;
2611 struct list_head release_list ;
2612 struct list_head pidlists ;
2613 struct mutex pidlist_mutex ;
2614 struct rcu_head rcu_head ;
2615 struct list_head event_list ;
2616 spinlock_t event_list_lock ;
2617};
2618#line 215 "include/linux/cgroup.h"
2619struct css_set {
2620 atomic_t refcount ;
2621 struct hlist_node hlist ;
2622 struct list_head tasks ;
2623 struct list_head cg_links ;
2624 struct cgroup_subsys_state *subsys[64U] ;
2625 struct rcu_head rcu_head ;
2626};
2627#line 108 "include/linux/swap.h"
2628struct reclaim_state {
2629 unsigned long reclaimed_slab ;
2630};
2631#line 178 "include/linux/mm.h"
2632struct vm_fault {
2633 unsigned int flags ;
2634 unsigned long pgoff ;
2635 void *virtual_address ;
2636 struct page *page ;
2637};
2638#line 195 "include/linux/mm.h"
2639struct vm_operations_struct {
2640 void (*open)(struct vm_area_struct * ) ;
2641 void (*close)(struct vm_area_struct * ) ;
2642 int (*fault)(struct vm_area_struct * , struct vm_fault * ) ;
2643 int (*page_mkwrite)(struct vm_area_struct * , struct vm_fault * ) ;
2644 int (*access)(struct vm_area_struct * , unsigned long , void * , int , int ) ;
2645 int (*set_policy)(struct vm_area_struct * , struct mempolicy * ) ;
2646 struct mempolicy *(*get_policy)(struct vm_area_struct * , unsigned long ) ;
2647 int (*migrate)(struct vm_area_struct * , nodemask_t const * , nodemask_t const * ,
2648 unsigned long ) ;
2649};
2650#line 191 "include/linux/regulator/machine.h"
2651struct wm8400_platform_data {
2652 int (*platform_init)(struct device * ) ;
2653};
2654#line 38 "include/linux/mfd/wm8400.h"
2655struct regmap;
2656#line 38
2657struct regmap;
2658#line 39 "include/linux/mfd/wm8400.h"
2659struct wm8400 {
2660 struct device *dev ;
2661 struct mutex io_lock ;
2662 struct regmap *regmap ;
2663 u16 reg_cache[85U] ;
2664 struct platform_device regulators[6U] ;
2665};
2666#line 1187 "include/linux/mfd/wm8400-audio.h"
2667enum regcache_type {
2668 REGCACHE_NONE = 0,
2669 REGCACHE_RBTREE = 1,
2670 REGCACHE_COMPRESSED = 2
2671} ;
2672#line 1193 "include/linux/mfd/wm8400-audio.h"
2673struct reg_default {
2674 unsigned int reg ;
2675 unsigned int def ;
2676};
2677#line 43 "include/linux/regmap.h"
2678struct regmap_config {
2679 int reg_bits ;
2680 int pad_bits ;
2681 int val_bits ;
2682 bool (*writeable_reg)(struct device * , unsigned int ) ;
2683 bool (*readable_reg)(struct device * , unsigned int ) ;
2684 bool (*volatile_reg)(struct device * , unsigned int ) ;
2685 bool (*precious_reg)(struct device * , unsigned int ) ;
2686 unsigned int max_register ;
2687 struct reg_default const *reg_defaults ;
2688 unsigned int num_reg_defaults ;
2689 enum regcache_type cache_type ;
2690 void const *reg_defaults_raw ;
2691 unsigned int num_reg_defaults_raw ;
2692 u8 read_flag_mask ;
2693 u8 write_flag_mask ;
2694};
2695#line 47 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
2696struct __anonstruct_reg_data_167 {
2697 u16 readable ;
2698 u16 writable ;
2699 u16 vol ;
2700 int is_codec ;
2701 u16 default_val ;
2702};
2703#line 1 "<compiler builtins>"
2704
2705#line 1
2706long __builtin_expect(long , long ) ;
2707#line 2 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
2708void ldv_spin_lock(void) ;
2709#line 3
2710void ldv_spin_unlock(void) ;
2711#line 4
2712int ldv_spin_trylock(void) ;
2713#line 46 "include/linux/swab.h"
2714__inline static __u16 __fswab16(__u16 val )
2715{ int __cil_tmp2 ;
2716 int __cil_tmp3 ;
2717 short __cil_tmp4 ;
2718 int __cil_tmp5 ;
2719 int __cil_tmp6 ;
2720 int __cil_tmp7 ;
2721 short __cil_tmp8 ;
2722 int __cil_tmp9 ;
2723 int __cil_tmp10 ;
2724
2725 {
2726 {
2727#line 51
2728 __cil_tmp2 = (int )val;
2729#line 51
2730 __cil_tmp3 = __cil_tmp2 >> 8;
2731#line 51
2732 __cil_tmp4 = (short )__cil_tmp3;
2733#line 51
2734 __cil_tmp5 = (int )__cil_tmp4;
2735#line 51
2736 __cil_tmp6 = (int )val;
2737#line 51
2738 __cil_tmp7 = __cil_tmp6 << 8;
2739#line 51
2740 __cil_tmp8 = (short )__cil_tmp7;
2741#line 51
2742 __cil_tmp9 = (int )__cil_tmp8;
2743#line 51
2744 __cil_tmp10 = __cil_tmp9 | __cil_tmp5;
2745#line 51
2746 return ((__u16 )__cil_tmp10);
2747 }
2748}
2749}
2750#line 101 "include/linux/printk.h"
2751extern int printk(char const * , ...) ;
2752#line 27 "include/linux/err.h"
2753__inline static long PTR_ERR(void const *ptr )
2754{
2755
2756 {
2757#line 29
2758 return ((long )ptr);
2759}
2760}
2761#line 32 "include/linux/err.h"
2762__inline static long IS_ERR(void const *ptr )
2763{ long tmp ;
2764 unsigned long __cil_tmp3 ;
2765 int __cil_tmp4 ;
2766 long __cil_tmp5 ;
2767
2768 {
2769 {
2770#line 34
2771 __cil_tmp3 = (unsigned long )ptr;
2772#line 34
2773 __cil_tmp4 = __cil_tmp3 > 0xfffffffffffff000UL;
2774#line 34
2775 __cil_tmp5 = (long )__cil_tmp4;
2776#line 34
2777 tmp = __builtin_expect(__cil_tmp5, 0L);
2778 }
2779#line 34
2780 return (tmp);
2781}
2782}
2783#line 115 "include/linux/mutex.h"
2784extern void __mutex_init(struct mutex * , char const * , struct lock_class_key * ) ;
2785#line 134
2786extern void mutex_lock_nested(struct mutex * , unsigned int ) ;
2787#line 169
2788extern void mutex_unlock(struct mutex * ) ;
2789#line 26 "include/linux/export.h"
2790extern struct module __this_module ;
2791#line 220 "include/linux/slub_def.h"
2792extern void *kmem_cache_alloc(struct kmem_cache * , gfp_t ) ;
2793#line 223
2794void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
2795#line 11 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
2796void ldv_check_alloc_flags(gfp_t flags ) ;
2797#line 12
2798void ldv_check_alloc_nonatomic(void) ;
2799#line 14
2800struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags ) ;
2801#line 553 "include/linux/device.h"
2802extern void *devm_kzalloc(struct device * , size_t , gfp_t ) ;
2803#line 792
2804extern void *dev_get_drvdata(struct device const * ) ;
2805#line 793
2806extern int dev_set_drvdata(struct device * , void * ) ;
2807#line 892
2808extern int dev_err(struct device const * , char const * , ...) ;
2809#line 894
2810extern int dev_warn(struct device const * , char const * , ...) ;
2811#line 898
2812extern int _dev_info(struct device const * , char const * , ...) ;
2813#line 242 "include/linux/i2c.h"
2814__inline static void *i2c_get_clientdata(struct i2c_client const *dev )
2815{ void *tmp ;
2816 unsigned long __cil_tmp3 ;
2817 unsigned long __cil_tmp4 ;
2818 struct device const *__cil_tmp5 ;
2819
2820 {
2821 {
2822#line 244
2823 __cil_tmp3 = (unsigned long )dev;
2824#line 244
2825 __cil_tmp4 = __cil_tmp3 + 40;
2826#line 244
2827 __cil_tmp5 = (struct device const *)__cil_tmp4;
2828#line 244
2829 tmp = dev_get_drvdata(__cil_tmp5);
2830 }
2831#line 244
2832 return (tmp);
2833}
2834}
2835#line 247 "include/linux/i2c.h"
2836__inline static void i2c_set_clientdata(struct i2c_client *dev , void *data )
2837{ unsigned long __cil_tmp3 ;
2838 unsigned long __cil_tmp4 ;
2839 struct device *__cil_tmp5 ;
2840
2841 {
2842 {
2843#line 249
2844 __cil_tmp3 = (unsigned long )dev;
2845#line 249
2846 __cil_tmp4 = __cil_tmp3 + 40;
2847#line 249
2848 __cil_tmp5 = (struct device *)__cil_tmp4;
2849#line 249
2850 dev_set_drvdata(__cil_tmp5, data);
2851 }
2852#line 250
2853 return;
2854}
2855}
2856#line 450
2857extern int i2c_register_driver(struct module * , struct i2c_driver * ) ;
2858#line 451
2859extern void i2c_del_driver(struct i2c_driver * ) ;
2860#line 93 "include/linux/mfd/core.h"
2861extern int mfd_add_devices(struct device * , int , struct mfd_cell * , int , struct resource * ,
2862 int ) ;
2863#line 98
2864extern void mfd_remove_devices(struct device * ) ;
2865#line 931 "include/linux/mfd/wm8400-private.h"
2866u16 wm8400_reg_read(struct wm8400 *wm8400 , u8 reg ) ;
2867#line 932
2868int wm8400_block_read(struct wm8400 *wm8400 , u8 reg , int count , u16 *data ) ;
2869#line 933
2870int wm8400_set_bits(struct wm8400 *wm8400 , u8 reg , u16 mask , u16 val ) ;
2871#line 1185 "include/linux/mfd/wm8400-audio.h"
2872void wm8400_reset_codec_reg_cache(struct wm8400 *wm8400 ) ;
2873#line 138 "include/linux/regmap.h"
2874extern struct regmap *devm_regmap_init_i2c(struct i2c_client * , struct regmap_config const * ) ;
2875#line 146
2876extern int regmap_write(struct regmap * , unsigned int , unsigned int ) ;
2877#line 151
2878extern int regmap_read(struct regmap * , unsigned int , unsigned int * ) ;
2879#line 152
2880extern int regmap_raw_read(struct regmap * , unsigned int , void * , size_t ) ;
2881#line 154
2882extern int regmap_bulk_read(struct regmap * , unsigned int , void * , size_t ) ;
2883#line 47 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
2884static struct __anonstruct_reg_data_167 reg_data[85U] =
2885#line 47 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
2886 { {(u16 )65535U, (u16 )65535U, (u16 )0U, 0, (u16 )24946U},
2887 {(u16 )28672U, (u16 )0U, (u16 )32768U, 0, (u16 )0U},
2888 {(u16 )65303U, (u16 )65303U, (u16 )0U, 0, (u16 )0U},
2889 {(u16 )60403U, (u16 )60403U, (u16 )0U, 1, (u16 )24576U},
2890 {(u16 )15603U, (u16 )15603U, (u16 )0U, 1, (u16 )0U},
2891 {(u16 )61944U, (u16 )61944U, (u16 )0U, 1, (u16 )16464U},
2892 {(u16 )64543U, (u16 )64543U, (u16 )0U, 1, (u16 )16384U},
2893 {(u16 )57310U, (u16 )57310U, (u16 )0U, 1, (u16 )456U},
2894 {(u16 )64764U, (u16 )64764U, (u16 )0U, 1, (u16 )0U},
2895 {(u16 )61439U, (u16 )61439U, (u16 )0U, 1, (u16 )64U},
2896 {(u16 )61439U, (u16 )61439U, (u16 )0U, 1, (u16 )64U},
2897 {(u16 )10231U, (u16 )10231U, (u16 )0U, 1, (u16 )4U},
2898 {(u16 )511U, (u16 )511U, (u16 )0U, 1, (u16 )192U},
2899 {(u16 )511U, (u16 )511U, (u16 )0U, 1, (u16 )192U},
2900 {(u16 )8175U, (u16 )8175U, (u16 )0U, 1, (u16 )0U},
2901 {(u16 )355U, (u16 )355U, (u16 )0U, 1, (u16 )256U},
2902 {(u16 )511U, (u16 )511U, (u16 )0U, 1, (u16 )192U},
2903 {(u16 )511U, (u16 )511U, (u16 )0U, 1, (u16 )192U},
2904 {(u16 )8191U, (u16 )4095U, (u16 )0U, 1, (u16 )0U},
2905 {(u16 )65535U, (u16 )65535U, (u16 )0U, 1, (u16 )4096U},
2906 {(u16 )65535U, (u16 )65535U, (u16 )0U, 1, (u16 )4112U},
2907 {(u16 )65535U, (u16 )65535U, (u16 )0U, 1, (u16 )4112U},
2908 {(u16 )4061U, (u16 )4061U, (u16 )0U, 1, (u16 )32768U},
2909 {(u16 )8191U, (u16 )8191U, (u16 )0U, 1, (u16 )2048U},
2910 {(u16 )0U, (u16 )479U, (u16 )0U, 1, (u16 )139U},
2911 {(u16 )0U, (u16 )479U, (u16 )0U, 1, (u16 )139U},
2912 {(u16 )0U, (u16 )479U, (u16 )0U, 1, (u16 )139U},
2913 {(u16 )0U, (u16 )479U, (u16 )0U, 1, (u16 )139U},
2914 {(u16 )0U, (u16 )511U, (u16 )0U, 1, (u16 )0U},
2915 {(u16 )0U, (u16 )511U, (u16 )0U, 1, (u16 )0U},
2916 {(u16 )0U, (u16 )119U, (u16 )0U, 1, (u16 )102U},
2917 {(u16 )0U, (u16 )51U, (u16 )0U, 1, (u16 )34U},
2918 {(u16 )0U, (u16 )511U, (u16 )0U, 1, (u16 )121U},
2919 {(u16 )0U, (u16 )511U, (u16 )0U, 1, (u16 )121U},
2920 {(u16 )0U, (u16 )3U, (u16 )0U, 1, (u16 )3U},
2921 {(u16 )0U, (u16 )511U, (u16 )0U, 1, (u16 )3U},
2922 {(u16 )0U, (u16 )0U, (u16 )0U, 0, (u16 )0U},
2923 {(u16 )0U, (u16 )63U, (u16 )0U, 1, (u16 )256U},
2924 {(u16 )0U, (u16 )0U, (u16 )0U, 0, (u16 )0U},
2925 {(u16 )0U, (u16 )15U, (u16 )0U, 0, (u16 )0U},
2926 {(u16 )0U, (u16 )255U, (u16 )0U, 1, (u16 )0U},
2927 {(u16 )0U, (u16 )439U, (u16 )0U, 1, (u16 )0U},
2928 {(u16 )0U, (u16 )439U, (u16 )0U, 1, (u16 )0U},
2929 {(u16 )0U, (u16 )511U, (u16 )0U, 1, (u16 )0U},
2930 {(u16 )0U, (u16 )511U, (u16 )0U, 1, (u16 )0U},
2931 {(u16 )0U, (u16 )253U, (u16 )0U, 1, (u16 )0U},
2932 {(u16 )0U, (u16 )253U, (u16 )0U, 1, (u16 )0U},
2933 {(u16 )0U, (u16 )511U, (u16 )0U, 1, (u16 )0U},
2934 {(u16 )0U, (u16 )511U, (u16 )0U, 1, (u16 )0U},
2935 {(u16 )0U, (u16 )511U, (u16 )0U, 1, (u16 )0U},
2936 {(u16 )0U, (u16 )511U, (u16 )0U, 1, (u16 )0U},
2937 {(u16 )0U, (u16 )435U, (u16 )0U, 1, (u16 )384U},
2938 {(u16 )0U, (u16 )119U, (u16 )0U, 1, (u16 )0U},
2939 {(u16 )0U, (u16 )119U, (u16 )0U, 1, (u16 )0U},
2940 {(u16 )0U, (u16 )255U, (u16 )0U, 1, (u16 )0U},
2941 {(u16 )0U, (u16 )1U, (u16 )0U, 1, (u16 )0U},
2942 {(u16 )0U, (u16 )63U, (u16 )0U, 1, (u16 )0U},
2943 {(u16 )0U, (u16 )79U, (u16 )0U, 1, (u16 )0U},
2944 {(u16 )0U, (u16 )253U, (u16 )0U, 1, (u16 )0U},
2945 {(u16 )0U, (u16 )0U, (u16 )0U, 0, (u16 )0U},
2946 {(u16 )8191U, (u16 )8191U, (u16 )0U, 1, (u16 )0U},
2947 {(u16 )65535U, (u16 )65535U, (u16 )0U, 1, (u16 )0U},
2948 {(u16 )1023U, (u16 )1023U, (u16 )0U, 1, (u16 )0U},
2949 {(u16 )127U, (u16 )127U, (u16 )0U, 1, (u16 )0U},
2950 {(u16 )0U, (u16 )0U, (u16 )0U, 0, (u16 )0U},
2951 {(u16 )57343U, (u16 )57343U, (u16 )0U, 0, (u16 )0U},
2952 {(u16 )57343U, (u16 )57343U, (u16 )0U, 0, (u16 )0U},
2953 {(u16 )57343U, (u16 )57343U, (u16 )0U, 0, (u16 )0U},
2954 {(u16 )57343U, (u16 )57343U, (u16 )0U, 0, (u16 )0U},
2955 {(u16 )0U, (u16 )0U, (u16 )0U, 0, (u16 )0U},
2956 {(u16 )65535U, (u16 )65535U, (u16 )0U, 0, (u16 )17408U},
2957 {(u16 )9215U, (u16 )9215U, (u16 )0U, 0, (u16 )0U},
2958 {(u16 )65535U, (u16 )65535U, (u16 )0U, 0, (u16 )17408U},
2959 {(u16 )9215U, (u16 )9215U, (u16 )0U, 0, (u16 )0U},
2960 {(u16 )0U, (u16 )0U, (u16 )0U, 0, (u16 )0U},
2961 {(u16 )14U, (u16 )14U, (u16 )0U, 0, (u16 )8U},
2962 {(u16 )57359U, (u16 )57359U, (u16 )0U, 0, (u16 )0U},
2963 {(u16 )0U, (u16 )0U, (u16 )0U, 0, (u16 )0U},
2964 {(u16 )960U, (u16 )960U, (u16 )0U, 0, (u16 )704U},
2965 {(u16 )65535U, (u16 )0U, (u16 )65535U, 0, (u16 )0U},
2966 {(u16 )65535U, (u16 )65535U, (u16 )0U, 0, (u16 )0U},
2967 {(u16 )65535U, (u16 )0U, (u16 )65535U, 0, (u16 )0U},
2968 {(u16 )11263U, (u16 )0U, (u16 )65535U, 0, (u16 )0U},
2969 {(u16 )0U, (u16 )0U, (u16 )0U, 0, (u16 )0U},
2970 {(u16 )33023U, (u16 )33023U, (u16 )0U, 0, (u16 )255U}};
2971#line 135 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
2972static int wm8400_read(struct wm8400 *wm8400 , u8 reg , int num_regs , u16 *dest )
2973{ int i ;
2974 int ret ;
2975 long tmp ;
2976 size_t __len ;
2977 void *__ret ;
2978 int __cil_tmp10 ;
2979 int __cil_tmp11 ;
2980 unsigned int __cil_tmp12 ;
2981 int __cil_tmp13 ;
2982 long __cil_tmp14 ;
2983 unsigned long __cil_tmp15 ;
2984 unsigned long __cil_tmp16 ;
2985 unsigned long __cil_tmp17 ;
2986 u16 __cil_tmp18 ;
2987 unsigned int __cil_tmp19 ;
2988 unsigned long __cil_tmp20 ;
2989 unsigned long __cil_tmp21 ;
2990 struct regmap *__cil_tmp22 ;
2991 unsigned int __cil_tmp23 ;
2992 void *__cil_tmp24 ;
2993 size_t __cil_tmp25 ;
2994 int __cil_tmp26 ;
2995 int __cil_tmp27 ;
2996 unsigned long __cil_tmp28 ;
2997 void *__cil_tmp29 ;
2998 unsigned long __cil_tmp30 ;
2999 unsigned long __cil_tmp31 ;
3000 unsigned long __cil_tmp32 ;
3001 u16 (*__cil_tmp33)[85U] ;
3002 void const *__cil_tmp34 ;
3003 void const *__cil_tmp35 ;
3004
3005 {
3006 {
3007#line 137
3008 ret = 0;
3009#line 139
3010 __cil_tmp10 = (int )reg;
3011#line 139
3012 __cil_tmp11 = __cil_tmp10 + num_regs;
3013#line 139
3014 __cil_tmp12 = (unsigned int )__cil_tmp11;
3015#line 139
3016 __cil_tmp13 = __cil_tmp12 > 85U;
3017#line 139
3018 __cil_tmp14 = (long )__cil_tmp13;
3019#line 139
3020 tmp = __builtin_expect(__cil_tmp14, 0L);
3021 }
3022#line 139
3023 if (tmp != 0L) {
3024#line 139
3025 __asm__ volatile ("1:\tud2\n.pushsection __bug_table,\"a\"\n2:\t.long 1b - 2b, %c0 - 2b\n\t.word %c1, 0\n\t.org 2b+%c2\n.popsection": : "i" ((char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"),
3026 "i" (139), "i" (12UL));
3027 ldv_22883: ;
3028#line 139
3029 goto ldv_22883;
3030 } else {
3031
3032 }
3033#line 142
3034 i = (int )reg;
3035#line 142
3036 goto ldv_22885;
3037 ldv_22884: ;
3038 {
3039#line 143
3040 __cil_tmp15 = i * 16UL;
3041#line 143
3042 __cil_tmp16 = __cil_tmp15 + 4;
3043#line 143
3044 __cil_tmp17 = (unsigned long )(reg_data) + __cil_tmp16;
3045#line 143
3046 __cil_tmp18 = *((u16 *)__cil_tmp17);
3047#line 143
3048 __cil_tmp19 = (unsigned int )__cil_tmp18;
3049#line 143
3050 if (__cil_tmp19 != 0U) {
3051 {
3052#line 144
3053 __cil_tmp20 = (unsigned long )wm8400;
3054#line 144
3055 __cil_tmp21 = __cil_tmp20 + 176;
3056#line 144
3057 __cil_tmp22 = *((struct regmap **)__cil_tmp21);
3058#line 144
3059 __cil_tmp23 = (unsigned int )reg;
3060#line 144
3061 __cil_tmp24 = (void *)dest;
3062#line 144
3063 __cil_tmp25 = (size_t )num_regs;
3064#line 144
3065 ret = regmap_bulk_read(__cil_tmp22, __cil_tmp23, __cil_tmp24, __cil_tmp25);
3066 }
3067#line 146
3068 return (ret);
3069 } else {
3070
3071 }
3072 }
3073#line 142
3074 i = i + 1;
3075 ldv_22885: ;
3076 {
3077#line 142
3078 __cil_tmp26 = (int )reg;
3079#line 142
3080 __cil_tmp27 = __cil_tmp26 + num_regs;
3081#line 142
3082 if (__cil_tmp27 > i) {
3083#line 143
3084 goto ldv_22884;
3085 } else {
3086#line 145
3087 goto ldv_22886;
3088 }
3089 }
3090 ldv_22886:
3091 {
3092#line 150
3093 __cil_tmp28 = (unsigned long )num_regs;
3094#line 150
3095 __len = __cil_tmp28 * 2UL;
3096#line 150
3097 __cil_tmp29 = (void *)dest;
3098#line 150
3099 __cil_tmp30 = (unsigned long )reg;
3100#line 150
3101 __cil_tmp31 = (unsigned long )wm8400;
3102#line 150
3103 __cil_tmp32 = __cil_tmp31 + 184;
3104#line 150
3105 __cil_tmp33 = (u16 (*)[85U])__cil_tmp32;
3106#line 150
3107 __cil_tmp34 = (void const *)__cil_tmp33;
3108#line 150
3109 __cil_tmp35 = __cil_tmp34 + __cil_tmp30;
3110#line 150
3111 __ret = __builtin_memcpy(__cil_tmp29, __cil_tmp35, __len);
3112 }
3113#line 152
3114 return (0);
3115}
3116}
3117#line 155 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
3118static int wm8400_write(struct wm8400 *wm8400 , u8 reg , int num_regs , u16 *src )
3119{ int ret ;
3120 int i ;
3121 long tmp ;
3122 long tmp___0 ;
3123 int __cil_tmp9 ;
3124 int __cil_tmp10 ;
3125 unsigned int __cil_tmp11 ;
3126 int __cil_tmp12 ;
3127 long __cil_tmp13 ;
3128 int __cil_tmp14 ;
3129 int __cil_tmp15 ;
3130 unsigned long __cil_tmp16 ;
3131 unsigned long __cil_tmp17 ;
3132 unsigned long __cil_tmp18 ;
3133 u16 __cil_tmp19 ;
3134 unsigned int __cil_tmp20 ;
3135 int __cil_tmp21 ;
3136 long __cil_tmp22 ;
3137 int __cil_tmp23 ;
3138 int __cil_tmp24 ;
3139 unsigned long __cil_tmp25 ;
3140 unsigned long __cil_tmp26 ;
3141 unsigned long __cil_tmp27 ;
3142 unsigned long __cil_tmp28 ;
3143 unsigned long __cil_tmp29 ;
3144 u16 *__cil_tmp30 ;
3145 unsigned long __cil_tmp31 ;
3146 unsigned long __cil_tmp32 ;
3147 struct regmap *__cil_tmp33 ;
3148 unsigned int __cil_tmp34 ;
3149 unsigned long __cil_tmp35 ;
3150 u16 *__cil_tmp36 ;
3151 u16 __cil_tmp37 ;
3152 unsigned int __cil_tmp38 ;
3153
3154 {
3155 {
3156#line 160
3157 __cil_tmp9 = (int )reg;
3158#line 160
3159 __cil_tmp10 = __cil_tmp9 + num_regs;
3160#line 160
3161 __cil_tmp11 = (unsigned int )__cil_tmp10;
3162#line 160
3163 __cil_tmp12 = __cil_tmp11 > 85U;
3164#line 160
3165 __cil_tmp13 = (long )__cil_tmp12;
3166#line 160
3167 tmp = __builtin_expect(__cil_tmp13, 0L);
3168 }
3169#line 160
3170 if (tmp != 0L) {
3171#line 160
3172 __asm__ volatile ("1:\tud2\n.pushsection __bug_table,\"a\"\n2:\t.long 1b - 2b, %c0 - 2b\n\t.word %c1, 0\n\t.org 2b+%c2\n.popsection": : "i" ((char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"),
3173 "i" (160), "i" (12UL));
3174 ldv_22900: ;
3175#line 160
3176 goto ldv_22900;
3177 } else {
3178
3179 }
3180#line 162
3181 i = 0;
3182#line 162
3183 goto ldv_22903;
3184 ldv_22902:
3185 {
3186#line 163
3187 __cil_tmp14 = (int )reg;
3188#line 163
3189 __cil_tmp15 = __cil_tmp14 + i;
3190#line 163
3191 __cil_tmp16 = __cil_tmp15 * 16UL;
3192#line 163
3193 __cil_tmp17 = __cil_tmp16 + 2;
3194#line 163
3195 __cil_tmp18 = (unsigned long )(reg_data) + __cil_tmp17;
3196#line 163
3197 __cil_tmp19 = *((u16 *)__cil_tmp18);
3198#line 163
3199 __cil_tmp20 = (unsigned int )__cil_tmp19;
3200#line 163
3201 __cil_tmp21 = __cil_tmp20 == 0U;
3202#line 163
3203 __cil_tmp22 = (long )__cil_tmp21;
3204#line 163
3205 tmp___0 = __builtin_expect(__cil_tmp22, 0L);
3206 }
3207#line 163
3208 if (tmp___0 != 0L) {
3209#line 163
3210 __asm__ volatile ("1:\tud2\n.pushsection __bug_table,\"a\"\n2:\t.long 1b - 2b, %c0 - 2b\n\t.word %c1, 0\n\t.org 2b+%c2\n.popsection": : "i" ((char *)"/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"),
3211 "i" (163), "i" (12UL));
3212 ldv_22901: ;
3213#line 163
3214 goto ldv_22901;
3215 } else {
3216
3217 }
3218 {
3219#line 164
3220 __cil_tmp23 = (int )reg;
3221#line 164
3222 __cil_tmp24 = __cil_tmp23 + i;
3223#line 164
3224 __cil_tmp25 = __cil_tmp24 * 2UL;
3225#line 164
3226 __cil_tmp26 = 184 + __cil_tmp25;
3227#line 164
3228 __cil_tmp27 = (unsigned long )wm8400;
3229#line 164
3230 __cil_tmp28 = __cil_tmp27 + __cil_tmp26;
3231#line 164
3232 __cil_tmp29 = (unsigned long )i;
3233#line 164
3234 __cil_tmp30 = src + __cil_tmp29;
3235#line 164
3236 *((u16 *)__cil_tmp28) = *__cil_tmp30;
3237#line 165
3238 __cil_tmp31 = (unsigned long )wm8400;
3239#line 165
3240 __cil_tmp32 = __cil_tmp31 + 176;
3241#line 165
3242 __cil_tmp33 = *((struct regmap **)__cil_tmp32);
3243#line 165
3244 __cil_tmp34 = (unsigned int )reg;
3245#line 165
3246 __cil_tmp35 = (unsigned long )i;
3247#line 165
3248 __cil_tmp36 = src + __cil_tmp35;
3249#line 165
3250 __cil_tmp37 = *__cil_tmp36;
3251#line 165
3252 __cil_tmp38 = (unsigned int )__cil_tmp37;
3253#line 165
3254 ret = regmap_write(__cil_tmp33, __cil_tmp34, __cil_tmp38);
3255 }
3256#line 166
3257 if (ret != 0) {
3258#line 167
3259 return (ret);
3260 } else {
3261
3262 }
3263#line 162
3264 i = i + 1;
3265 ldv_22903: ;
3266#line 162
3267 if (i < num_regs) {
3268#line 163
3269 goto ldv_22902;
3270 } else {
3271#line 165
3272 goto ldv_22904;
3273 }
3274 ldv_22904: ;
3275#line 170
3276 return (0);
3277}
3278}
3279#line 181 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
3280u16 wm8400_reg_read(struct wm8400 *wm8400 , u8 reg )
3281{ u16 val ;
3282 unsigned long __cil_tmp4 ;
3283 unsigned long __cil_tmp5 ;
3284 struct mutex *__cil_tmp6 ;
3285 int __cil_tmp7 ;
3286 u8 __cil_tmp8 ;
3287 unsigned long __cil_tmp9 ;
3288 unsigned long __cil_tmp10 ;
3289 struct mutex *__cil_tmp11 ;
3290 u16 *__cil_tmp12 ;
3291
3292 {
3293 {
3294#line 185
3295 __cil_tmp4 = (unsigned long )wm8400;
3296#line 185
3297 __cil_tmp5 = __cil_tmp4 + 8;
3298#line 185
3299 __cil_tmp6 = (struct mutex *)__cil_tmp5;
3300#line 185
3301 mutex_lock_nested(__cil_tmp6, 0U);
3302#line 187
3303 __cil_tmp7 = (int )reg;
3304#line 187
3305 __cil_tmp8 = (u8 )__cil_tmp7;
3306#line 187
3307 wm8400_read(wm8400, __cil_tmp8, 1, & val);
3308#line 189
3309 __cil_tmp9 = (unsigned long )wm8400;
3310#line 189
3311 __cil_tmp10 = __cil_tmp9 + 8;
3312#line 189
3313 __cil_tmp11 = (struct mutex *)__cil_tmp10;
3314#line 189
3315 mutex_unlock(__cil_tmp11);
3316 }
3317 {
3318#line 191
3319 __cil_tmp12 = & val;
3320#line 191
3321 return (*__cil_tmp12);
3322 }
3323}
3324}
3325#line 195 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
3326int wm8400_block_read(struct wm8400 *wm8400 , u8 reg , int count , u16 *data )
3327{ int ret ;
3328 unsigned long __cil_tmp6 ;
3329 unsigned long __cil_tmp7 ;
3330 struct mutex *__cil_tmp8 ;
3331 int __cil_tmp9 ;
3332 u8 __cil_tmp10 ;
3333 unsigned long __cil_tmp11 ;
3334 unsigned long __cil_tmp12 ;
3335 struct mutex *__cil_tmp13 ;
3336
3337 {
3338 {
3339#line 199
3340 __cil_tmp6 = (unsigned long )wm8400;
3341#line 199
3342 __cil_tmp7 = __cil_tmp6 + 8;
3343#line 199
3344 __cil_tmp8 = (struct mutex *)__cil_tmp7;
3345#line 199
3346 mutex_lock_nested(__cil_tmp8, 0U);
3347#line 201
3348 __cil_tmp9 = (int )reg;
3349#line 201
3350 __cil_tmp10 = (u8 )__cil_tmp9;
3351#line 201
3352 ret = wm8400_read(wm8400, __cil_tmp10, count, data);
3353#line 203
3354 __cil_tmp11 = (unsigned long )wm8400;
3355#line 203
3356 __cil_tmp12 = __cil_tmp11 + 8;
3357#line 203
3358 __cil_tmp13 = (struct mutex *)__cil_tmp12;
3359#line 203
3360 mutex_unlock(__cil_tmp13);
3361 }
3362#line 205
3363 return (ret);
3364}
3365}
3366#line 217 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
3367int wm8400_set_bits(struct wm8400 *wm8400 , u8 reg , u16 mask , u16 val )
3368{ u16 tmp ;
3369 int ret ;
3370 unsigned long __cil_tmp7 ;
3371 unsigned long __cil_tmp8 ;
3372 struct mutex *__cil_tmp9 ;
3373 int __cil_tmp10 ;
3374 u8 __cil_tmp11 ;
3375 u16 *__cil_tmp12 ;
3376 short __cil_tmp13 ;
3377 int __cil_tmp14 ;
3378 u16 *__cil_tmp15 ;
3379 u16 __cil_tmp16 ;
3380 short __cil_tmp17 ;
3381 int __cil_tmp18 ;
3382 short __cil_tmp19 ;
3383 int __cil_tmp20 ;
3384 int __cil_tmp21 ;
3385 int __cil_tmp22 ;
3386 int __cil_tmp23 ;
3387 int __cil_tmp24 ;
3388 u8 __cil_tmp25 ;
3389 unsigned long __cil_tmp26 ;
3390 unsigned long __cil_tmp27 ;
3391 struct mutex *__cil_tmp28 ;
3392
3393 {
3394 {
3395#line 222
3396 __cil_tmp7 = (unsigned long )wm8400;
3397#line 222
3398 __cil_tmp8 = __cil_tmp7 + 8;
3399#line 222
3400 __cil_tmp9 = (struct mutex *)__cil_tmp8;
3401#line 222
3402 mutex_lock_nested(__cil_tmp9, 0U);
3403#line 224
3404 __cil_tmp10 = (int )reg;
3405#line 224
3406 __cil_tmp11 = (u8 )__cil_tmp10;
3407#line 224
3408 ret = wm8400_read(wm8400, __cil_tmp11, 1, & tmp);
3409#line 225
3410 __cil_tmp12 = & tmp;
3411#line 225
3412 __cil_tmp13 = (short )val;
3413#line 225
3414 __cil_tmp14 = (int )__cil_tmp13;
3415#line 225
3416 __cil_tmp15 = & tmp;
3417#line 225
3418 __cil_tmp16 = *__cil_tmp15;
3419#line 225
3420 __cil_tmp17 = (short )__cil_tmp16;
3421#line 225
3422 __cil_tmp18 = (int )__cil_tmp17;
3423#line 225
3424 __cil_tmp19 = (short )mask;
3425#line 225
3426 __cil_tmp20 = (int )__cil_tmp19;
3427#line 225
3428 __cil_tmp21 = ~ __cil_tmp20;
3429#line 225
3430 __cil_tmp22 = __cil_tmp21 & __cil_tmp18;
3431#line 225
3432 __cil_tmp23 = __cil_tmp22 | __cil_tmp14;
3433#line 225
3434 *__cil_tmp12 = (u16 )__cil_tmp23;
3435 }
3436#line 226
3437 if (ret == 0) {
3438 {
3439#line 227
3440 __cil_tmp24 = (int )reg;
3441#line 227
3442 __cil_tmp25 = (u8 )__cil_tmp24;
3443#line 227
3444 ret = wm8400_write(wm8400, __cil_tmp25, 1, & tmp);
3445 }
3446 } else {
3447
3448 }
3449 {
3450#line 229
3451 __cil_tmp26 = (unsigned long )wm8400;
3452#line 229
3453 __cil_tmp27 = __cil_tmp26 + 8;
3454#line 229
3455 __cil_tmp28 = (struct mutex *)__cil_tmp27;
3456#line 229
3457 mutex_unlock(__cil_tmp28);
3458 }
3459#line 231
3460 return (ret);
3461}
3462}
3463#line 239 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
3464void wm8400_reset_codec_reg_cache(struct wm8400 *wm8400 )
3465{ int i ;
3466 unsigned long __cil_tmp3 ;
3467 unsigned long __cil_tmp4 ;
3468 struct mutex *__cil_tmp5 ;
3469 unsigned long __cil_tmp6 ;
3470 unsigned long __cil_tmp7 ;
3471 unsigned long __cil_tmp8 ;
3472 int __cil_tmp9 ;
3473 unsigned long __cil_tmp10 ;
3474 unsigned long __cil_tmp11 ;
3475 unsigned long __cil_tmp12 ;
3476 unsigned long __cil_tmp13 ;
3477 unsigned long __cil_tmp14 ;
3478 unsigned long __cil_tmp15 ;
3479 unsigned long __cil_tmp16 ;
3480 unsigned int __cil_tmp17 ;
3481 unsigned long __cil_tmp18 ;
3482 unsigned long __cil_tmp19 ;
3483 struct mutex *__cil_tmp20 ;
3484
3485 {
3486 {
3487#line 243
3488 __cil_tmp3 = (unsigned long )wm8400;
3489#line 243
3490 __cil_tmp4 = __cil_tmp3 + 8;
3491#line 243
3492 __cil_tmp5 = (struct mutex *)__cil_tmp4;
3493#line 243
3494 mutex_lock_nested(__cil_tmp5, 0U);
3495#line 246
3496 i = 0;
3497 }
3498#line 246
3499 goto ldv_22957;
3500 ldv_22956: ;
3501 {
3502#line 247
3503 __cil_tmp6 = i * 16UL;
3504#line 247
3505 __cil_tmp7 = __cil_tmp6 + 8;
3506#line 247
3507 __cil_tmp8 = (unsigned long )(reg_data) + __cil_tmp7;
3508#line 247
3509 __cil_tmp9 = *((int *)__cil_tmp8);
3510#line 247
3511 if (__cil_tmp9 != 0) {
3512#line 248
3513 __cil_tmp10 = i * 2UL;
3514#line 248
3515 __cil_tmp11 = 184 + __cil_tmp10;
3516#line 248
3517 __cil_tmp12 = (unsigned long )wm8400;
3518#line 248
3519 __cil_tmp13 = __cil_tmp12 + __cil_tmp11;
3520#line 248
3521 __cil_tmp14 = i * 16UL;
3522#line 248
3523 __cil_tmp15 = __cil_tmp14 + 12;
3524#line 248
3525 __cil_tmp16 = (unsigned long )(reg_data) + __cil_tmp15;
3526#line 248
3527 *((u16 *)__cil_tmp13) = *((u16 *)__cil_tmp16);
3528 } else {
3529
3530 }
3531 }
3532#line 246
3533 i = i + 1;
3534 ldv_22957: ;
3535 {
3536#line 246
3537 __cil_tmp17 = (unsigned int )i;
3538#line 246
3539 if (__cil_tmp17 <= 84U) {
3540#line 247
3541 goto ldv_22956;
3542 } else {
3543#line 249
3544 goto ldv_22958;
3545 }
3546 }
3547 ldv_22958:
3548 {
3549#line 250
3550 __cil_tmp18 = (unsigned long )wm8400;
3551#line 250
3552 __cil_tmp19 = __cil_tmp18 + 8;
3553#line 250
3554 __cil_tmp20 = (struct mutex *)__cil_tmp19;
3555#line 250
3556 mutex_unlock(__cil_tmp20);
3557 }
3558#line 251
3559 return;
3560}
3561}
3562#line 254 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
3563static int wm8400_register_codec(struct wm8400 *wm8400 )
3564{ struct mfd_cell cell ;
3565 int tmp ;
3566 struct mfd_cell *__cil_tmp4 ;
3567 unsigned long __cil_tmp5 ;
3568 unsigned long __cil_tmp6 ;
3569 unsigned long __cil_tmp7 ;
3570 unsigned long __cil_tmp8 ;
3571 unsigned long __cil_tmp9 ;
3572 unsigned long __cil_tmp10 ;
3573 unsigned long __cil_tmp11 ;
3574 unsigned long __cil_tmp12 ;
3575 unsigned long __cil_tmp13 ;
3576 unsigned long __cil_tmp14 ;
3577 unsigned long __cil_tmp15 ;
3578 unsigned long __cil_tmp16 ;
3579 struct device *__cil_tmp17 ;
3580 struct resource *__cil_tmp18 ;
3581
3582 {
3583 {
3584#line 256
3585 __cil_tmp4 = & cell;
3586#line 256
3587 *((char const **)__cil_tmp4) = "wm8400-codec";
3588#line 256
3589 __cil_tmp5 = (unsigned long )(& cell) + 8;
3590#line 256
3591 *((int *)__cil_tmp5) = 0;
3592#line 256
3593 __cil_tmp6 = (unsigned long )(& cell) + 16;
3594#line 256
3595 *((atomic_t **)__cil_tmp6) = (atomic_t *)0;
3596#line 256
3597 __cil_tmp7 = (unsigned long )(& cell) + 24;
3598#line 256
3599 *((int (**)(struct platform_device * ))__cil_tmp7) = (int (*)(struct platform_device * ))0;
3600#line 256
3601 __cil_tmp8 = (unsigned long )(& cell) + 32;
3602#line 256
3603 *((int (**)(struct platform_device * ))__cil_tmp8) = (int (*)(struct platform_device * ))0;
3604#line 256
3605 __cil_tmp9 = (unsigned long )(& cell) + 40;
3606#line 256
3607 *((int (**)(struct platform_device * ))__cil_tmp9) = (int (*)(struct platform_device * ))0;
3608#line 256
3609 __cil_tmp10 = (unsigned long )(& cell) + 48;
3610#line 256
3611 *((int (**)(struct platform_device * ))__cil_tmp10) = (int (*)(struct platform_device * ))0;
3612#line 256
3613 __cil_tmp11 = (unsigned long )(& cell) + 56;
3614#line 256
3615 *((void **)__cil_tmp11) = (void *)wm8400;
3616#line 256
3617 __cil_tmp12 = (unsigned long )(& cell) + 64;
3618#line 256
3619 *((size_t *)__cil_tmp12) = 7560UL;
3620#line 256
3621 __cil_tmp13 = (unsigned long )(& cell) + 72;
3622#line 256
3623 *((int *)__cil_tmp13) = 0;
3624#line 256
3625 __cil_tmp14 = (unsigned long )(& cell) + 80;
3626#line 256
3627 *((struct resource const **)__cil_tmp14) = (struct resource const *)0;
3628#line 256
3629 __cil_tmp15 = (unsigned long )(& cell) + 88;
3630#line 256
3631 *((bool *)__cil_tmp15) = (_Bool)0;
3632#line 256
3633 __cil_tmp16 = (unsigned long )(& cell) + 89;
3634#line 256
3635 *((bool *)__cil_tmp16) = (_Bool)0;
3636#line 262
3637 __cil_tmp17 = *((struct device **)wm8400);
3638#line 262
3639 __cil_tmp18 = (struct resource *)0;
3640#line 262
3641 tmp = mfd_add_devices(__cil_tmp17, -1, & cell, 1, __cil_tmp18, 0);
3642 }
3643#line 262
3644 return (tmp);
3645}
3646}
3647#line 272 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
3648static int wm8400_init(struct wm8400 *wm8400 , struct wm8400_platform_data *pdata )
3649{ u16 reg ;
3650 int ret ;
3651 int i ;
3652 struct lock_class_key __key ;
3653 __u16 tmp ;
3654 unsigned long __cil_tmp8 ;
3655 unsigned long __cil_tmp9 ;
3656 struct mutex *__cil_tmp10 ;
3657 struct device *__cil_tmp11 ;
3658 void *__cil_tmp12 ;
3659 unsigned long __cil_tmp13 ;
3660 unsigned long __cil_tmp14 ;
3661 struct regmap *__cil_tmp15 ;
3662 unsigned int *__cil_tmp16 ;
3663 struct device *__cil_tmp17 ;
3664 struct device const *__cil_tmp18 ;
3665 int *__cil_tmp19 ;
3666 int __cil_tmp20 ;
3667 unsigned long __cil_tmp21 ;
3668 unsigned long __cil_tmp22 ;
3669 unsigned long __cil_tmp23 ;
3670 u16 __cil_tmp24 ;
3671 int __cil_tmp25 ;
3672 struct device *__cil_tmp26 ;
3673 struct device const *__cil_tmp27 ;
3674 int *__cil_tmp28 ;
3675 int __cil_tmp29 ;
3676 unsigned long __cil_tmp30 ;
3677 unsigned long __cil_tmp31 ;
3678 struct regmap *__cil_tmp32 ;
3679 unsigned long __cil_tmp33 ;
3680 unsigned long __cil_tmp34 ;
3681 u16 (*__cil_tmp35)[85U] ;
3682 void *__cil_tmp36 ;
3683 struct device *__cil_tmp37 ;
3684 struct device const *__cil_tmp38 ;
3685 int *__cil_tmp39 ;
3686 int *__cil_tmp40 ;
3687 int __cil_tmp41 ;
3688 unsigned long __cil_tmp42 ;
3689 unsigned long __cil_tmp43 ;
3690 unsigned long __cil_tmp44 ;
3691 unsigned long __cil_tmp45 ;
3692 u16 __cil_tmp46 ;
3693 int __cil_tmp47 ;
3694 __u16 __cil_tmp48 ;
3695 int *__cil_tmp49 ;
3696 int __cil_tmp50 ;
3697 unsigned long __cil_tmp51 ;
3698 unsigned long __cil_tmp52 ;
3699 unsigned long __cil_tmp53 ;
3700 unsigned long __cil_tmp54 ;
3701 int *__cil_tmp55 ;
3702 int *__cil_tmp56 ;
3703 int __cil_tmp57 ;
3704 int *__cil_tmp58 ;
3705 int __cil_tmp59 ;
3706 unsigned int __cil_tmp60 ;
3707 unsigned long __cil_tmp61 ;
3708 unsigned long __cil_tmp62 ;
3709 unsigned long __cil_tmp63 ;
3710 unsigned long __cil_tmp64 ;
3711 u16 __cil_tmp65 ;
3712 short __cil_tmp66 ;
3713 int __cil_tmp67 ;
3714 int *__cil_tmp68 ;
3715 int *__cil_tmp69 ;
3716 int __cil_tmp70 ;
3717 unsigned long __cil_tmp71 ;
3718 unsigned long __cil_tmp72 ;
3719 unsigned long __cil_tmp73 ;
3720 int __cil_tmp74 ;
3721 int *__cil_tmp75 ;
3722 int __cil_tmp76 ;
3723 unsigned long __cil_tmp77 ;
3724 unsigned long __cil_tmp78 ;
3725 unsigned long __cil_tmp79 ;
3726 unsigned long __cil_tmp80 ;
3727 int *__cil_tmp81 ;
3728 int __cil_tmp82 ;
3729 unsigned long __cil_tmp83 ;
3730 unsigned long __cil_tmp84 ;
3731 unsigned long __cil_tmp85 ;
3732 int *__cil_tmp86 ;
3733 int *__cil_tmp87 ;
3734 int __cil_tmp88 ;
3735 int *__cil_tmp89 ;
3736 int __cil_tmp90 ;
3737 unsigned int __cil_tmp91 ;
3738 u8 __cil_tmp92 ;
3739 struct device *__cil_tmp93 ;
3740 struct device const *__cil_tmp94 ;
3741 u16 *__cil_tmp95 ;
3742 u16 *__cil_tmp96 ;
3743 u16 __cil_tmp97 ;
3744 int __cil_tmp98 ;
3745 int __cil_tmp99 ;
3746 int __cil_tmp100 ;
3747 struct device *__cil_tmp101 ;
3748 struct device const *__cil_tmp102 ;
3749 u16 *__cil_tmp103 ;
3750 u16 __cil_tmp104 ;
3751 int __cil_tmp105 ;
3752 struct device *__cil_tmp106 ;
3753 struct device const *__cil_tmp107 ;
3754 struct wm8400_platform_data *__cil_tmp108 ;
3755 unsigned long __cil_tmp109 ;
3756 unsigned long __cil_tmp110 ;
3757 int (*__cil_tmp111)(struct device * ) ;
3758 unsigned long __cil_tmp112 ;
3759 int (*__cil_tmp113)(struct device * ) ;
3760 unsigned long __cil_tmp114 ;
3761 int (*__cil_tmp115)(struct device * ) ;
3762 struct device *__cil_tmp116 ;
3763 struct device *__cil_tmp117 ;
3764 struct device const *__cil_tmp118 ;
3765 struct device *__cil_tmp119 ;
3766 struct device const *__cil_tmp120 ;
3767 struct device *__cil_tmp121 ;
3768 struct device const *__cil_tmp122 ;
3769 struct device *__cil_tmp123 ;
3770
3771 {
3772 {
3773#line 278
3774 __cil_tmp8 = (unsigned long )wm8400;
3775#line 278
3776 __cil_tmp9 = __cil_tmp8 + 8;
3777#line 278
3778 __cil_tmp10 = (struct mutex *)__cil_tmp9;
3779#line 278
3780 __mutex_init(__cil_tmp10, "&wm8400->io_lock", & __key);
3781#line 280
3782 __cil_tmp11 = *((struct device **)wm8400);
3783#line 280
3784 __cil_tmp12 = (void *)wm8400;
3785#line 280
3786 dev_set_drvdata(__cil_tmp11, __cil_tmp12);
3787#line 283
3788 __cil_tmp13 = (unsigned long )wm8400;
3789#line 283
3790 __cil_tmp14 = __cil_tmp13 + 176;
3791#line 283
3792 __cil_tmp15 = *((struct regmap **)__cil_tmp14);
3793#line 283
3794 __cil_tmp16 = (unsigned int *)(& i);
3795#line 283
3796 ret = regmap_read(__cil_tmp15, 0U, __cil_tmp16);
3797 }
3798#line 284
3799 if (ret != 0) {
3800 {
3801#line 285
3802 __cil_tmp17 = *((struct device **)wm8400);
3803#line 285
3804 __cil_tmp18 = (struct device const *)__cil_tmp17;
3805#line 285
3806 dev_err(__cil_tmp18, "Chip ID register read failed\n");
3807 }
3808#line 286
3809 return (-5);
3810 } else {
3811
3812 }
3813 {
3814#line 288
3815 __cil_tmp19 = & i;
3816#line 288
3817 __cil_tmp20 = *__cil_tmp19;
3818#line 288
3819 __cil_tmp21 = 0 * 16UL;
3820#line 288
3821 __cil_tmp22 = __cil_tmp21 + 12;
3822#line 288
3823 __cil_tmp23 = (unsigned long )(reg_data) + __cil_tmp22;
3824#line 288
3825 __cil_tmp24 = *((u16 *)__cil_tmp23);
3826#line 288
3827 __cil_tmp25 = (int )__cil_tmp24;
3828#line 288
3829 if (__cil_tmp25 != __cil_tmp20) {
3830 {
3831#line 289
3832 __cil_tmp26 = *((struct device **)wm8400);
3833#line 289
3834 __cil_tmp27 = (struct device const *)__cil_tmp26;
3835#line 289
3836 __cil_tmp28 = & i;
3837#line 289
3838 __cil_tmp29 = *__cil_tmp28;
3839#line 289
3840 dev_err(__cil_tmp27, "Device is not a WM8400, ID is %x\n", __cil_tmp29);
3841 }
3842#line 290
3843 return (-19);
3844 } else {
3845
3846 }
3847 }
3848 {
3849#line 297
3850 __cil_tmp30 = (unsigned long )wm8400;
3851#line 297
3852 __cil_tmp31 = __cil_tmp30 + 176;
3853#line 297
3854 __cil_tmp32 = *((struct regmap **)__cil_tmp31);
3855#line 297
3856 __cil_tmp33 = (unsigned long )wm8400;
3857#line 297
3858 __cil_tmp34 = __cil_tmp33 + 184;
3859#line 297
3860 __cil_tmp35 = (u16 (*)[85U])__cil_tmp34;
3861#line 297
3862 __cil_tmp36 = (void *)__cil_tmp35;
3863#line 297
3864 ret = regmap_raw_read(__cil_tmp32, 0U, __cil_tmp36, 85UL);
3865 }
3866#line 299
3867 if (ret != 0) {
3868 {
3869#line 300
3870 __cil_tmp37 = *((struct device **)wm8400);
3871#line 300
3872 __cil_tmp38 = (struct device const *)__cil_tmp37;
3873#line 300
3874 dev_err(__cil_tmp38, "Register cache read failed\n");
3875 }
3876#line 301
3877 return (-5);
3878 } else {
3879
3880 }
3881#line 303
3882 __cil_tmp39 = & i;
3883#line 303
3884 *__cil_tmp39 = 0;
3885#line 303
3886 goto ldv_22982;
3887 ldv_22981:
3888 {
3889#line 304
3890 __cil_tmp40 = & i;
3891#line 304
3892 __cil_tmp41 = *__cil_tmp40;
3893#line 304
3894 __cil_tmp42 = __cil_tmp41 * 2UL;
3895#line 304
3896 __cil_tmp43 = 184 + __cil_tmp42;
3897#line 304
3898 __cil_tmp44 = (unsigned long )wm8400;
3899#line 304
3900 __cil_tmp45 = __cil_tmp44 + __cil_tmp43;
3901#line 304
3902 __cil_tmp46 = *((u16 *)__cil_tmp45);
3903#line 304
3904 __cil_tmp47 = (int )__cil_tmp46;
3905#line 304
3906 __cil_tmp48 = (__u16 )__cil_tmp47;
3907#line 304
3908 tmp = __fswab16(__cil_tmp48);
3909#line 304
3910 __cil_tmp49 = & i;
3911#line 304
3912 __cil_tmp50 = *__cil_tmp49;
3913#line 304
3914 __cil_tmp51 = __cil_tmp50 * 2UL;
3915#line 304
3916 __cil_tmp52 = 184 + __cil_tmp51;
3917#line 304
3918 __cil_tmp53 = (unsigned long )wm8400;
3919#line 304
3920 __cil_tmp54 = __cil_tmp53 + __cil_tmp52;
3921#line 304
3922 *((u16 *)__cil_tmp54) = tmp;
3923#line 303
3924 __cil_tmp55 = & i;
3925#line 303
3926 __cil_tmp56 = & i;
3927#line 303
3928 __cil_tmp57 = *__cil_tmp56;
3929#line 303
3930 *__cil_tmp55 = __cil_tmp57 + 1;
3931 }
3932 ldv_22982: ;
3933 {
3934#line 303
3935 __cil_tmp58 = & i;
3936#line 303
3937 __cil_tmp59 = *__cil_tmp58;
3938#line 303
3939 __cil_tmp60 = (unsigned int )__cil_tmp59;
3940#line 303
3941 if (__cil_tmp60 <= 84U) {
3942#line 304
3943 goto ldv_22981;
3944 } else {
3945#line 306
3946 goto ldv_22983;
3947 }
3948 }
3949 ldv_22983: ;
3950 {
3951#line 307
3952 __cil_tmp61 = 2 * 2UL;
3953#line 307
3954 __cil_tmp62 = 184 + __cil_tmp61;
3955#line 307
3956 __cil_tmp63 = (unsigned long )wm8400;
3957#line 307
3958 __cil_tmp64 = __cil_tmp63 + __cil_tmp62;
3959#line 307
3960 __cil_tmp65 = *((u16 *)__cil_tmp64);
3961#line 307
3962 __cil_tmp66 = (short )__cil_tmp65;
3963#line 307
3964 __cil_tmp67 = (int )__cil_tmp66;
3965#line 307
3966 if (__cil_tmp67 >= 0) {
3967#line 308
3968 __cil_tmp68 = & i;
3969#line 308
3970 *__cil_tmp68 = 0;
3971#line 308
3972 goto ldv_22987;
3973 ldv_22986: ;
3974 {
3975#line 309
3976 __cil_tmp69 = & i;
3977#line 309
3978 __cil_tmp70 = *__cil_tmp69;
3979#line 309
3980 __cil_tmp71 = __cil_tmp70 * 16UL;
3981#line 309
3982 __cil_tmp72 = __cil_tmp71 + 8;
3983#line 309
3984 __cil_tmp73 = (unsigned long )(reg_data) + __cil_tmp72;
3985#line 309
3986 __cil_tmp74 = *((int *)__cil_tmp73);
3987#line 309
3988 if (__cil_tmp74 != 0) {
3989#line 310
3990 __cil_tmp75 = & i;
3991#line 310
3992 __cil_tmp76 = *__cil_tmp75;
3993#line 310
3994 __cil_tmp77 = __cil_tmp76 * 2UL;
3995#line 310
3996 __cil_tmp78 = 184 + __cil_tmp77;
3997#line 310
3998 __cil_tmp79 = (unsigned long )wm8400;
3999#line 310
4000 __cil_tmp80 = __cil_tmp79 + __cil_tmp78;
4001#line 310
4002 __cil_tmp81 = & i;
4003#line 310
4004 __cil_tmp82 = *__cil_tmp81;
4005#line 310
4006 __cil_tmp83 = __cil_tmp82 * 16UL;
4007#line 310
4008 __cil_tmp84 = __cil_tmp83 + 12;
4009#line 310
4010 __cil_tmp85 = (unsigned long )(reg_data) + __cil_tmp84;
4011#line 310
4012 *((u16 *)__cil_tmp80) = *((u16 *)__cil_tmp85);
4013 } else {
4014
4015 }
4016 }
4017#line 308
4018 __cil_tmp86 = & i;
4019#line 308
4020 __cil_tmp87 = & i;
4021#line 308
4022 __cil_tmp88 = *__cil_tmp87;
4023#line 308
4024 *__cil_tmp86 = __cil_tmp88 + 1;
4025 ldv_22987: ;
4026 {
4027#line 308
4028 __cil_tmp89 = & i;
4029#line 308
4030 __cil_tmp90 = *__cil_tmp89;
4031#line 308
4032 __cil_tmp91 = (unsigned int )__cil_tmp90;
4033#line 308
4034 if (__cil_tmp91 <= 84U) {
4035#line 309
4036 goto ldv_22986;
4037 } else {
4038#line 311
4039 goto ldv_22988;
4040 }
4041 }
4042 ldv_22988: ;
4043 } else {
4044
4045 }
4046 }
4047 {
4048#line 312
4049 __cil_tmp92 = (u8 )1;
4050#line 312
4051 ret = wm8400_read(wm8400, __cil_tmp92, 1, & reg);
4052 }
4053#line 313
4054 if (ret != 0) {
4055 {
4056#line 314
4057 __cil_tmp93 = *((struct device **)wm8400);
4058#line 314
4059 __cil_tmp94 = (struct device const *)__cil_tmp93;
4060#line 314
4061 dev_err(__cil_tmp94, "ID register read failed: %d\n", ret);
4062 }
4063#line 315
4064 return (ret);
4065 } else {
4066
4067 }
4068 {
4069#line 317
4070 __cil_tmp95 = & reg;
4071#line 317
4072 __cil_tmp96 = & reg;
4073#line 317
4074 __cil_tmp97 = *__cil_tmp96;
4075#line 317
4076 __cil_tmp98 = (int )__cil_tmp97;
4077#line 317
4078 __cil_tmp99 = __cil_tmp98 & 28672;
4079#line 317
4080 __cil_tmp100 = __cil_tmp99 >> 12;
4081#line 317
4082 *__cil_tmp95 = (u16 )__cil_tmp100;
4083#line 318
4084 __cil_tmp101 = *((struct device **)wm8400);
4085#line 318
4086 __cil_tmp102 = (struct device const *)__cil_tmp101;
4087#line 318
4088 __cil_tmp103 = & reg;
4089#line 318
4090 __cil_tmp104 = *__cil_tmp103;
4091#line 318
4092 __cil_tmp105 = (int )__cil_tmp104;
4093#line 318
4094 _dev_info(__cil_tmp102, "WM8400 revision %x\n", __cil_tmp105);
4095#line 320
4096 ret = wm8400_register_codec(wm8400);
4097 }
4098#line 321
4099 if (ret != 0) {
4100 {
4101#line 322
4102 __cil_tmp106 = *((struct device **)wm8400);
4103#line 322
4104 __cil_tmp107 = (struct device const *)__cil_tmp106;
4105#line 322
4106 dev_err(__cil_tmp107, "Failed to register codec\n");
4107 }
4108#line 323
4109 goto err_children;
4110 } else {
4111
4112 }
4113 {
4114#line 326
4115 __cil_tmp108 = (struct wm8400_platform_data *)0;
4116#line 326
4117 __cil_tmp109 = (unsigned long )__cil_tmp108;
4118#line 326
4119 __cil_tmp110 = (unsigned long )pdata;
4120#line 326
4121 if (__cil_tmp110 != __cil_tmp109) {
4122 {
4123#line 326
4124 __cil_tmp111 = (int (*)(struct device * ))0;
4125#line 326
4126 __cil_tmp112 = (unsigned long )__cil_tmp111;
4127#line 326
4128 __cil_tmp113 = *((int (**)(struct device * ))pdata);
4129#line 326
4130 __cil_tmp114 = (unsigned long )__cil_tmp113;
4131#line 326
4132 if (__cil_tmp114 != __cil_tmp112) {
4133 {
4134#line 327
4135 __cil_tmp115 = *((int (**)(struct device * ))pdata);
4136#line 327
4137 __cil_tmp116 = *((struct device **)wm8400);
4138#line 327
4139 ret = (*__cil_tmp115)(__cil_tmp116);
4140 }
4141#line 328
4142 if (ret != 0) {
4143 {
4144#line 329
4145 __cil_tmp117 = *((struct device **)wm8400);
4146#line 329
4147 __cil_tmp118 = (struct device const *)__cil_tmp117;
4148#line 329
4149 dev_err(__cil_tmp118, "Platform init failed: %d\n", ret);
4150 }
4151#line 331
4152 goto err_children;
4153 } else {
4154
4155 }
4156 } else {
4157 {
4158#line 334
4159 __cil_tmp119 = *((struct device **)wm8400);
4160#line 334
4161 __cil_tmp120 = (struct device const *)__cil_tmp119;
4162#line 334
4163 dev_warn(__cil_tmp120, "No platform initialisation supplied\n");
4164 }
4165 }
4166 }
4167 } else {
4168 {
4169#line 334
4170 __cil_tmp121 = *((struct device **)wm8400);
4171#line 334
4172 __cil_tmp122 = (struct device const *)__cil_tmp121;
4173#line 334
4174 dev_warn(__cil_tmp122, "No platform initialisation supplied\n");
4175 }
4176 }
4177 }
4178#line 336
4179 return (0);
4180 err_children:
4181 {
4182#line 339
4183 __cil_tmp123 = *((struct device **)wm8400);
4184#line 339
4185 mfd_remove_devices(__cil_tmp123);
4186 }
4187#line 340
4188 return (ret);
4189}
4190}
4191#line 343 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
4192static void wm8400_release(struct wm8400 *wm8400 )
4193{ struct device *__cil_tmp2 ;
4194
4195 {
4196 {
4197#line 345
4198 __cil_tmp2 = *((struct device **)wm8400);
4199#line 345
4200 mfd_remove_devices(__cil_tmp2);
4201 }
4202#line 346
4203 return;
4204}
4205}
4206#line 348 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
4207static struct regmap_config const wm8400_regmap_config =
4208#line 348
4209 {8, 0, 16, (bool (*)(struct device * , unsigned int ))0, (bool (*)(struct device * ,
4210 unsigned int ))0,
4211 (bool (*)(struct device * , unsigned int ))0, (bool (*)(struct device * , unsigned int ))0,
4212 84U, (struct reg_default const *)0, 0U, 0, (void const *)0, 0U, (unsigned char)0,
4213 (unsigned char)0};
4214#line 355 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
4215static int wm8400_i2c_probe(struct i2c_client *i2c , struct i2c_device_id const *id )
4216{ struct wm8400 *wm8400 ;
4217 int ret ;
4218 void *tmp ;
4219 long tmp___0 ;
4220 long tmp___1 ;
4221 unsigned long __cil_tmp8 ;
4222 unsigned long __cil_tmp9 ;
4223 struct device *__cil_tmp10 ;
4224 struct wm8400 *__cil_tmp11 ;
4225 unsigned long __cil_tmp12 ;
4226 unsigned long __cil_tmp13 ;
4227 unsigned long __cil_tmp14 ;
4228 unsigned long __cil_tmp15 ;
4229 unsigned long __cil_tmp16 ;
4230 unsigned long __cil_tmp17 ;
4231 struct regmap *__cil_tmp18 ;
4232 void const *__cil_tmp19 ;
4233 unsigned long __cil_tmp20 ;
4234 unsigned long __cil_tmp21 ;
4235 struct regmap *__cil_tmp22 ;
4236 void const *__cil_tmp23 ;
4237 unsigned long __cil_tmp24 ;
4238 unsigned long __cil_tmp25 ;
4239 void *__cil_tmp26 ;
4240 unsigned long __cil_tmp27 ;
4241 unsigned long __cil_tmp28 ;
4242 unsigned long __cil_tmp29 ;
4243 void *__cil_tmp30 ;
4244 struct wm8400_platform_data *__cil_tmp31 ;
4245
4246 {
4247 {
4248#line 361
4249 __cil_tmp8 = (unsigned long )i2c;
4250#line 361
4251 __cil_tmp9 = __cil_tmp8 + 40;
4252#line 361
4253 __cil_tmp10 = (struct device *)__cil_tmp9;
4254#line 361
4255 tmp = devm_kzalloc(__cil_tmp10, 7560UL, 208U);
4256#line 361
4257 wm8400 = (struct wm8400 *)tmp;
4258 }
4259 {
4260#line 362
4261 __cil_tmp11 = (struct wm8400 *)0;
4262#line 362
4263 __cil_tmp12 = (unsigned long )__cil_tmp11;
4264#line 362
4265 __cil_tmp13 = (unsigned long )wm8400;
4266#line 362
4267 if (__cil_tmp13 == __cil_tmp12) {
4268#line 363
4269 ret = -12;
4270#line 364
4271 goto err;
4272 } else {
4273
4274 }
4275 }
4276 {
4277#line 367
4278 __cil_tmp14 = (unsigned long )wm8400;
4279#line 367
4280 __cil_tmp15 = __cil_tmp14 + 176;
4281#line 367
4282 *((struct regmap **)__cil_tmp15) = devm_regmap_init_i2c(i2c, & wm8400_regmap_config);
4283#line 368
4284 __cil_tmp16 = (unsigned long )wm8400;
4285#line 368
4286 __cil_tmp17 = __cil_tmp16 + 176;
4287#line 368
4288 __cil_tmp18 = *((struct regmap **)__cil_tmp17);
4289#line 368
4290 __cil_tmp19 = (void const *)__cil_tmp18;
4291#line 368
4292 tmp___1 = IS_ERR(__cil_tmp19);
4293 }
4294#line 368
4295 if (tmp___1 != 0L) {
4296 {
4297#line 369
4298 __cil_tmp20 = (unsigned long )wm8400;
4299#line 369
4300 __cil_tmp21 = __cil_tmp20 + 176;
4301#line 369
4302 __cil_tmp22 = *((struct regmap **)__cil_tmp21);
4303#line 369
4304 __cil_tmp23 = (void const *)__cil_tmp22;
4305#line 369
4306 tmp___0 = PTR_ERR(__cil_tmp23);
4307#line 369
4308 ret = (int )tmp___0;
4309 }
4310#line 370
4311 goto err;
4312 } else {
4313
4314 }
4315 {
4316#line 373
4317 __cil_tmp24 = (unsigned long )i2c;
4318#line 373
4319 __cil_tmp25 = __cil_tmp24 + 40;
4320#line 373
4321 *((struct device **)wm8400) = (struct device *)__cil_tmp25;
4322#line 374
4323 __cil_tmp26 = (void *)wm8400;
4324#line 374
4325 i2c_set_clientdata(i2c, __cil_tmp26);
4326#line 376
4327 __cil_tmp27 = 40 + 280;
4328#line 376
4329 __cil_tmp28 = (unsigned long )i2c;
4330#line 376
4331 __cil_tmp29 = __cil_tmp28 + __cil_tmp27;
4332#line 376
4333 __cil_tmp30 = *((void **)__cil_tmp29);
4334#line 376
4335 __cil_tmp31 = (struct wm8400_platform_data *)__cil_tmp30;
4336#line 376
4337 ret = wm8400_init(wm8400, __cil_tmp31);
4338 }
4339#line 377
4340 if (ret != 0) {
4341#line 378
4342 goto err;
4343 } else {
4344
4345 }
4346#line 380
4347 return (0);
4348 err: ;
4349#line 383
4350 return (ret);
4351}
4352}
4353#line 386 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
4354static int wm8400_i2c_remove(struct i2c_client *i2c )
4355{ struct wm8400 *wm8400 ;
4356 void *tmp ;
4357 struct i2c_client const *__cil_tmp4 ;
4358
4359 {
4360 {
4361#line 388
4362 __cil_tmp4 = (struct i2c_client const *)i2c;
4363#line 388
4364 tmp = i2c_get_clientdata(__cil_tmp4);
4365#line 388
4366 wm8400 = (struct wm8400 *)tmp;
4367#line 390
4368 wm8400_release(wm8400);
4369 }
4370#line 392
4371 return (0);
4372}
4373}
4374#line 395 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
4375static struct i2c_device_id const wm8400_i2c_id[2U] = { {{(char )'w', (char )'m', (char )'8', (char )'4', (char )'0', (char )'0', (char )'\000',
4376 (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0,
4377 (char)0, (char)0, (char)0, (char)0}, 0UL},
4378 {{(char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0,
4379 (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0,
4380 (char)0, (char)0}, 0UL}};
4381#line 399 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
4382struct i2c_device_id const __mod_i2c_device_table ;
4383#line 401 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
4384static struct i2c_driver wm8400_i2c_driver =
4385#line 401
4386 {0U, (int (*)(struct i2c_adapter * ))0, (int (*)(struct i2c_adapter * ))0, & wm8400_i2c_probe,
4387 & wm8400_i2c_remove, (void (*)(struct i2c_client * ))0, (int (*)(struct i2c_client * ,
4388 pm_message_t ))0,
4389 (int (*)(struct i2c_client * ))0, (void (*)(struct i2c_client * , unsigned int ))0,
4390 (int (*)(struct i2c_client * , unsigned int , void * ))0, {"WM8400", (struct bus_type *)0,
4391 & __this_module, (char const *)0,
4392 (_Bool)0, (struct of_device_id const *)0,
4393 (int (*)(struct device * ))0,
4394 (int (*)(struct device * ))0,
4395 (void (*)(struct device * ))0,
4396 (int (*)(struct device * ,
4397 pm_message_t ))0,
4398 (int (*)(struct device * ))0,
4399 (struct attribute_group const **)0,
4400 (struct dev_pm_ops const *)0,
4401 (struct driver_private *)0},
4402 (struct i2c_device_id const *)(& wm8400_i2c_id), (int (*)(struct i2c_client * ,
4403 struct i2c_board_info * ))0,
4404 (unsigned short const *)0, {(struct list_head *)0, (struct list_head *)0}};
4405#line 412 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
4406static int wm8400_module_init(void)
4407{ int ret ;
4408
4409 {
4410 {
4411#line 414
4412 ret = -19;
4413#line 417
4414 ret = i2c_register_driver(& __this_module, & wm8400_i2c_driver);
4415 }
4416#line 418
4417 if (ret != 0) {
4418 {
4419#line 419
4420 printk("<3>Failed to register I2C driver: %d\n", ret);
4421 }
4422 } else {
4423
4424 }
4425#line 422
4426 return (ret);
4427}
4428}
4429#line 426 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
4430static void wm8400_module_exit(void)
4431{
4432
4433 {
4434 {
4435#line 429
4436 i2c_del_driver(& wm8400_i2c_driver);
4437 }
4438#line 430
4439 return;
4440}
4441}
4442#line 453
4443extern void ldv_check_final_state(void) ;
4444#line 456
4445extern void ldv_check_return_value(int ) ;
4446#line 459
4447extern void ldv_initialize(void) ;
4448#line 462
4449extern int __VERIFIER_nondet_int(void) ;
4450#line 465 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
4451int LDV_IN_INTERRUPT ;
4452#line 468 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
4453void main(void)
4454{ struct i2c_client *var_group1 ;
4455 struct i2c_device_id const *var_wm8400_i2c_probe_9_p1 ;
4456 int res_wm8400_i2c_probe_9 ;
4457 int res_wm8400_i2c_remove_10 ;
4458 int ldv_s_wm8400_i2c_driver_i2c_driver ;
4459 int tmp ;
4460 int tmp___0 ;
4461 int tmp___1 ;
4462
4463 {
4464 {
4465#line 536
4466 ldv_s_wm8400_i2c_driver_i2c_driver = 0;
4467#line 512
4468 LDV_IN_INTERRUPT = 1;
4469#line 521
4470 ldv_initialize();
4471#line 530
4472 tmp = wm8400_module_init();
4473 }
4474#line 530
4475 if (tmp != 0) {
4476#line 531
4477 goto ldv_final;
4478 } else {
4479
4480 }
4481#line 539
4482 goto ldv_23051;
4483 ldv_23050:
4484 {
4485#line 543
4486 tmp___0 = __VERIFIER_nondet_int();
4487 }
4488#line 545
4489 if (tmp___0 == 0) {
4490#line 545
4491 goto case_0;
4492 } else
4493#line 573
4494 if (tmp___0 == 1) {
4495#line 573
4496 goto case_1;
4497 } else {
4498 {
4499#line 601
4500 goto switch_default;
4501#line 543
4502 if (0) {
4503 case_0: ;
4504#line 548
4505 if (ldv_s_wm8400_i2c_driver_i2c_driver == 0) {
4506 {
4507#line 555
4508 res_wm8400_i2c_probe_9 = wm8400_i2c_probe(var_group1, var_wm8400_i2c_probe_9_p1);
4509#line 556
4510 ldv_check_return_value(res_wm8400_i2c_probe_9);
4511 }
4512#line 557
4513 if (res_wm8400_i2c_probe_9 != 0) {
4514#line 558
4515 goto ldv_module_exit;
4516 } else {
4517
4518 }
4519#line 566
4520 ldv_s_wm8400_i2c_driver_i2c_driver = ldv_s_wm8400_i2c_driver_i2c_driver + 1;
4521 } else {
4522
4523 }
4524#line 572
4525 goto ldv_23047;
4526 case_1: ;
4527#line 576
4528 if (ldv_s_wm8400_i2c_driver_i2c_driver == 1) {
4529 {
4530#line 583
4531 res_wm8400_i2c_remove_10 = wm8400_i2c_remove(var_group1);
4532#line 584
4533 ldv_check_return_value(res_wm8400_i2c_remove_10);
4534 }
4535#line 585
4536 if (res_wm8400_i2c_remove_10 != 0) {
4537#line 586
4538 goto ldv_module_exit;
4539 } else {
4540
4541 }
4542#line 594
4543 ldv_s_wm8400_i2c_driver_i2c_driver = 0;
4544 } else {
4545
4546 }
4547#line 600
4548 goto ldv_23047;
4549 switch_default: ;
4550#line 601
4551 goto ldv_23047;
4552 } else {
4553 switch_break: ;
4554 }
4555 }
4556 }
4557 ldv_23047: ;
4558 ldv_23051:
4559 {
4560#line 539
4561 tmp___1 = __VERIFIER_nondet_int();
4562 }
4563#line 539
4564 if (tmp___1 != 0) {
4565#line 541
4566 goto ldv_23050;
4567 } else
4568#line 539
4569 if (ldv_s_wm8400_i2c_driver_i2c_driver != 0) {
4570#line 541
4571 goto ldv_23050;
4572 } else {
4573#line 543
4574 goto ldv_23052;
4575 }
4576 ldv_23052: ;
4577 ldv_module_exit:
4578 {
4579#line 618
4580 wm8400_module_exit();
4581 }
4582 ldv_final:
4583 {
4584#line 621
4585 ldv_check_final_state();
4586 }
4587#line 624
4588 return;
4589}
4590}
4591#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast-assert.h"
4592void ldv_blast_assert(void)
4593{
4594
4595 {
4596 ERROR: ;
4597#line 6
4598 goto ERROR;
4599}
4600}
4601#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast.h"
4602extern int __VERIFIER_nondet_int(void) ;
4603#line 645 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
4604int ldv_spin = 0;
4605#line 649 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
4606void ldv_check_alloc_flags(gfp_t flags )
4607{
4608
4609 {
4610#line 652
4611 if (ldv_spin != 0) {
4612#line 652
4613 if (flags != 32U) {
4614 {
4615#line 652
4616 ldv_blast_assert();
4617 }
4618 } else {
4619
4620 }
4621 } else {
4622
4623 }
4624#line 655
4625 return;
4626}
4627}
4628#line 655
4629extern struct page *ldv_some_page(void) ;
4630#line 658 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
4631struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags )
4632{ struct page *tmp ;
4633
4634 {
4635#line 661
4636 if (ldv_spin != 0) {
4637#line 661
4638 if (flags != 32U) {
4639 {
4640#line 661
4641 ldv_blast_assert();
4642 }
4643 } else {
4644
4645 }
4646 } else {
4647
4648 }
4649 {
4650#line 663
4651 tmp = ldv_some_page();
4652 }
4653#line 663
4654 return (tmp);
4655}
4656}
4657#line 667 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
4658void ldv_check_alloc_nonatomic(void)
4659{
4660
4661 {
4662#line 670
4663 if (ldv_spin != 0) {
4664 {
4665#line 670
4666 ldv_blast_assert();
4667 }
4668 } else {
4669
4670 }
4671#line 673
4672 return;
4673}
4674}
4675#line 674 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
4676void ldv_spin_lock(void)
4677{
4678
4679 {
4680#line 677
4681 ldv_spin = 1;
4682#line 678
4683 return;
4684}
4685}
4686#line 681 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
4687void ldv_spin_unlock(void)
4688{
4689
4690 {
4691#line 684
4692 ldv_spin = 0;
4693#line 685
4694 return;
4695}
4696}
4697#line 688 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
4698int ldv_spin_trylock(void)
4699{ int is_lock ;
4700
4701 {
4702 {
4703#line 693
4704 is_lock = __VERIFIER_nondet_int();
4705 }
4706#line 695
4707 if (is_lock != 0) {
4708#line 698
4709 return (0);
4710 } else {
4711#line 703
4712 ldv_spin = 1;
4713#line 705
4714 return (1);
4715 }
4716}
4717}
4718#line 872 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/5011/dscv_tempdir/dscv/ri/43_1a/drivers/mfd/wm8400-core.c.p"
4719void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 )
4720{
4721
4722 {
4723 {
4724#line 878
4725 ldv_check_alloc_flags(ldv_func_arg2);
4726#line 880
4727 kmem_cache_alloc(ldv_func_arg1, ldv_func_arg2);
4728 }
4729#line 881
4730 return ((void *)0);
4731}
4732}