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