1# 1 "ldv/68_1/drivers/uwb/i1480/dfu/i1480-dfu-usb.ko/safe.cil.out.i"
2# 1 "<built-in>"
3# 1 "<command-line>"
4# 1 "ldv/68_1/drivers/uwb/i1480/dfu/i1480-dfu-usb.ko/safe.cil.out.i"
5# 19 "include/asm-generic/int-ll64.h"
6typedef signed char __s8;
7# 20 "include/asm-generic/int-ll64.h"
8typedef unsigned char __u8;
9# 22 "include/asm-generic/int-ll64.h"
10typedef short __s16;
11# 23 "include/asm-generic/int-ll64.h"
12typedef unsigned short __u16;
13# 25 "include/asm-generic/int-ll64.h"
14typedef int __s32;
15# 26 "include/asm-generic/int-ll64.h"
16typedef unsigned int __u32;
17# 29 "include/asm-generic/int-ll64.h"
18typedef long long __s64;
19# 30 "include/asm-generic/int-ll64.h"
20typedef unsigned long long __u64;
21# 43 "include/asm-generic/int-ll64.h"
22typedef unsigned char u8;
23# 46 "include/asm-generic/int-ll64.h"
24typedef unsigned short u16;
25# 49 "include/asm-generic/int-ll64.h"
26typedef unsigned int u32;
27# 51 "include/asm-generic/int-ll64.h"
28typedef long long s64;
29# 52 "include/asm-generic/int-ll64.h"
30typedef unsigned long long u64;
31# 11 "include/asm-generic/types.h"
32typedef unsigned short umode_t;
33# 11 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
34typedef unsigned int __kernel_mode_t;
35# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
36typedef int __kernel_pid_t;
37# 16 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
38typedef unsigned int __kernel_uid_t;
39# 17 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
40typedef unsigned int __kernel_gid_t;
41# 18 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
42typedef unsigned long __kernel_size_t;
43# 19 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
44typedef long __kernel_ssize_t;
45# 21 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
46typedef long __kernel_time_t;
47# 23 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
48typedef long __kernel_clock_t;
49# 24 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
50typedef int __kernel_timer_t;
51# 25 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
52typedef int __kernel_clockid_t;
53# 32 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
54typedef long long __kernel_loff_t;
55# 41 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
56typedef __kernel_uid_t __kernel_uid32_t;
57# 42 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
58typedef __kernel_gid_t __kernel_gid32_t;
59# 21 "include/linux/types.h"
60typedef __u32 __kernel_dev_t;
61# 24 "include/linux/types.h"
62typedef __kernel_dev_t dev_t;
63# 26 "include/linux/types.h"
64typedef __kernel_mode_t mode_t;
65# 29 "include/linux/types.h"
66typedef __kernel_pid_t pid_t;
67# 34 "include/linux/types.h"
68typedef __kernel_clockid_t clockid_t;
69# 37 "include/linux/types.h"
70typedef _Bool bool;
71# 39 "include/linux/types.h"
72typedef __kernel_uid32_t uid_t;
73# 40 "include/linux/types.h"
74typedef __kernel_gid32_t gid_t;
75# 53 "include/linux/types.h"
76typedef __kernel_loff_t loff_t;
77# 62 "include/linux/types.h"
78typedef __kernel_size_t size_t;
79# 67 "include/linux/types.h"
80typedef __kernel_ssize_t ssize_t;
81# 77 "include/linux/types.h"
82typedef __kernel_time_t time_t;
83# 110 "include/linux/types.h"
84typedef __s32 int32_t;
85# 116 "include/linux/types.h"
86typedef __u32 uint32_t;
87# 141 "include/linux/types.h"
88typedef unsigned long sector_t;
89# 142 "include/linux/types.h"
90typedef unsigned long blkcnt_t;
91# 154 "include/linux/types.h"
92typedef u64 dma_addr_t;
93# 177 "include/linux/types.h"
94typedef __u16 __le16;
95# 201 "include/linux/types.h"
96typedef unsigned int gfp_t;
97# 202 "include/linux/types.h"
98typedef unsigned int fmode_t;
99# 212 "include/linux/types.h"
100struct __anonstruct_atomic_t_7 {
101 int counter ;
102};
103# 212 "include/linux/types.h"
104typedef struct __anonstruct_atomic_t_7 atomic_t;
105# 217 "include/linux/types.h"
106struct __anonstruct_atomic64_t_8 {
107 long counter ;
108};
109# 217 "include/linux/types.h"
110typedef struct __anonstruct_atomic64_t_8 atomic64_t;
111# 222 "include/linux/types.h"
112struct list_head {
113 struct list_head *next ;
114 struct list_head *prev ;
115};
116# 226 "include/linux/types.h"
117struct hlist_node;
118# 226 "include/linux/types.h"
119struct hlist_head {
120 struct hlist_node *first ;
121};
122# 230 "include/linux/types.h"
123struct hlist_node {
124 struct hlist_node *next ;
125 struct hlist_node **pprev ;
126};
127# 59 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/alternative.h"
128struct module;
129# 145 "include/linux/init.h"
130typedef void (*ctor_fn_t)(void);
131# 10 "include/asm-generic/bug.h"
132struct bug_entry {
133 int bug_addr_disp ;
134 int file_disp ;
135 unsigned short line ;
136 unsigned short flags ;
137};
138# 113 "include/linux/kernel.h"
139struct completion;
140# 114 "include/linux/kernel.h"
141struct pt_regs;
142# 322 "include/linux/kernel.h"
143struct pid;
144# 476 "include/linux/uwb/spec.h"
145struct uwb_rccb {
146 u8 bCommandType ;
147 __le16 wCommand ;
148 u8 bCommandContext ;
149} __attribute__((__packed__)) ;
150# 484 "include/linux/uwb/spec.h"
151struct uwb_rceb {
152 u8 bEventType ;
153 __le16 wEvent ;
154 u8 bEventContext ;
155} __attribute__((__packed__)) ;
156# 12 "include/linux/thread_info.h"
157struct timespec;
158# 18 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/page.h"
159struct page;
160# 20 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/thread_info.h"
161struct task_struct;
162# 8 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
163struct mm_struct;
164# 99 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/ptrace.h"
165struct pt_regs {
166 unsigned long r15 ;
167 unsigned long r14 ;
168 unsigned long r13 ;
169 unsigned long r12 ;
170 unsigned long bp ;
171 unsigned long bx ;
172 unsigned long r11 ;
173 unsigned long r10 ;
174 unsigned long r9 ;
175 unsigned long r8 ;
176 unsigned long ax ;
177 unsigned long cx ;
178 unsigned long dx ;
179 unsigned long si ;
180 unsigned long di ;
181 unsigned long orig_ax ;
182 unsigned long ip ;
183 unsigned long cs ;
184 unsigned long flags ;
185 unsigned long sp ;
186 unsigned long ss ;
187};
188# 141 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/vm86.h"
189struct kernel_vm86_regs {
190 struct pt_regs pt ;
191 unsigned short es ;
192 unsigned short __esh ;
193 unsigned short ds ;
194 unsigned short __dsh ;
195 unsigned short fs ;
196 unsigned short __fsh ;
197 unsigned short gs ;
198 unsigned short __gsh ;
199};
200# 11 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/math_emu.h"
201union __anonunion____missing_field_name_25 {
202 struct pt_regs *regs ;
203 struct kernel_vm86_regs *vm86 ;
204};
205# 11 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/math_emu.h"
206struct math_emu_info {
207 long ___orig_eip ;
208 union __anonunion____missing_field_name_25 __annonCompField5 ;
209};
210# 13 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_64_types.h"
211typedef unsigned long pgdval_t;
212# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_64_types.h"
213typedef unsigned long pgprotval_t;
214# 190 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
215struct pgprot {
216 pgprotval_t pgprot ;
217};
218# 190 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
219typedef struct pgprot pgprot_t;
220# 192 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
221struct __anonstruct_pgd_t_28 {
222 pgdval_t pgd ;
223};
224# 192 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
225typedef struct __anonstruct_pgd_t_28 pgd_t;
226# 280 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
227typedef struct page *pgtable_t;
228# 293 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
229struct file;
230# 311 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
231struct seq_file;
232# 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
233struct __anonstruct____missing_field_name_33 {
234 unsigned int a ;
235 unsigned int b ;
236};
237# 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
238struct __anonstruct____missing_field_name_34 {
239 u16 limit0 ;
240 u16 base0 ;
241 unsigned int base1 : 8 ;
242 unsigned int type : 4 ;
243 unsigned int s : 1 ;
244 unsigned int dpl : 2 ;
245 unsigned int p : 1 ;
246 unsigned int limit : 4 ;
247 unsigned int avl : 1 ;
248 unsigned int l : 1 ;
249 unsigned int d : 1 ;
250 unsigned int g : 1 ;
251 unsigned int base2 : 8 ;
252};
253# 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
254union __anonunion____missing_field_name_32 {
255 struct __anonstruct____missing_field_name_33 __annonCompField7 ;
256 struct __anonstruct____missing_field_name_34 __annonCompField8 ;
257};
258# 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
259struct desc_struct {
260 union __anonunion____missing_field_name_32 __annonCompField9 ;
261} __attribute__((__packed__)) ;
262# 46 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
263struct thread_struct;
264# 52 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
265struct cpumask;
266# 322 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
267struct arch_spinlock;
268# 13 "include/linux/cpumask.h"
269struct cpumask {
270 unsigned long bits[((4096UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
271};
272# 13 "include/linux/cpumask.h"
273typedef struct cpumask cpumask_t;
274# 622 "include/linux/cpumask.h"
275typedef struct cpumask *cpumask_var_t;
276# 280 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
277struct i387_fsave_struct {
278 u32 cwd ;
279 u32 swd ;
280 u32 twd ;
281 u32 fip ;
282 u32 fcs ;
283 u32 foo ;
284 u32 fos ;
285 u32 st_space[20] ;
286 u32 status ;
287};
288# 296 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
289struct __anonstruct____missing_field_name_42 {
290 u64 rip ;
291 u64 rdp ;
292};
293# 296 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
294struct __anonstruct____missing_field_name_43 {
295 u32 fip ;
296 u32 fcs ;
297 u32 foo ;
298 u32 fos ;
299};
300# 296 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
301union __anonunion____missing_field_name_41 {
302 struct __anonstruct____missing_field_name_42 __annonCompField12 ;
303 struct __anonstruct____missing_field_name_43 __annonCompField13 ;
304};
305# 296 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
306union __anonunion____missing_field_name_44 {
307 u32 padding1[12] ;
308 u32 sw_reserved[12] ;
309};
310# 296 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
311struct i387_fxsave_struct {
312 u16 cwd ;
313 u16 swd ;
314 u16 twd ;
315 u16 fop ;
316 union __anonunion____missing_field_name_41 __annonCompField14 ;
317 u32 mxcsr ;
318 u32 mxcsr_mask ;
319 u32 st_space[32] ;
320 u32 xmm_space[64] ;
321 u32 padding[12] ;
322 union __anonunion____missing_field_name_44 __annonCompField15 ;
323} __attribute__((__aligned__(16))) ;
324# 331 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
325struct i387_soft_struct {
326 u32 cwd ;
327 u32 swd ;
328 u32 twd ;
329 u32 fip ;
330 u32 fcs ;
331 u32 foo ;
332 u32 fos ;
333 u32 st_space[20] ;
334 u8 ftop ;
335 u8 changed ;
336 u8 lookahead ;
337 u8 no_update ;
338 u8 rm ;
339 u8 alimit ;
340 struct math_emu_info *info ;
341 u32 entry_eip ;
342};
343# 351 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
344struct ymmh_struct {
345 u32 ymmh_space[64] ;
346};
347# 356 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
348struct xsave_hdr_struct {
349 u64 xstate_bv ;
350 u64 reserved1[2] ;
351 u64 reserved2[5] ;
352} __attribute__((__packed__)) ;
353# 362 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
354struct xsave_struct {
355 struct i387_fxsave_struct i387 ;
356 struct xsave_hdr_struct xsave_hdr ;
357 struct ymmh_struct ymmh ;
358} __attribute__((__packed__, __aligned__(64))) ;
359# 369 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
360union thread_xstate {
361 struct i387_fsave_struct fsave ;
362 struct i387_fxsave_struct fxsave ;
363 struct i387_soft_struct soft ;
364 struct xsave_struct xsave ;
365};
366# 376 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
367struct fpu {
368 union thread_xstate *state ;
369};
370# 421 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
371struct kmem_cache;
372# 423 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
373struct perf_event;
374# 425 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
375struct thread_struct {
376 struct desc_struct tls_array[3] ;
377 unsigned long sp0 ;
378 unsigned long sp ;
379 unsigned long usersp ;
380 unsigned short es ;
381 unsigned short ds ;
382 unsigned short fsindex ;
383 unsigned short gsindex ;
384 unsigned long fs ;
385 unsigned long gs ;
386 struct perf_event *ptrace_bps[4] ;
387 unsigned long debugreg6 ;
388 unsigned long ptrace_dr7 ;
389 unsigned long cr2 ;
390 unsigned long trap_no ;
391 unsigned long error_code ;
392 struct fpu fpu ;
393 unsigned long *io_bitmap_ptr ;
394 unsigned long iopl ;
395 unsigned int io_bitmap_max ;
396};
397# 23 "include/asm-generic/atomic-long.h"
398typedef atomic64_t atomic_long_t;
399# 8 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
400struct arch_spinlock {
401 unsigned int slock ;
402};
403# 8 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
404typedef struct arch_spinlock arch_spinlock_t;
405# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
406struct __anonstruct_arch_rwlock_t_47 {
407 unsigned int lock ;
408};
409# 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
410typedef struct __anonstruct_arch_rwlock_t_47 arch_rwlock_t;
411# 13 "include/linux/lockdep.h"
412struct lockdep_map;
413# 10 "include/linux/stacktrace.h"
414struct stack_trace {
415 unsigned int nr_entries ;
416 unsigned int max_entries ;
417 unsigned long *entries ;
418 int skip ;
419};
420# 50 "include/linux/lockdep.h"
421struct lockdep_subclass_key {
422 char __one_byte ;
423} __attribute__((__packed__)) ;
424# 54 "include/linux/lockdep.h"
425struct lock_class_key {
426 struct lockdep_subclass_key subkeys[8UL] ;
427};
428# 65 "include/linux/lockdep.h"
429struct lock_class {
430 struct list_head hash_entry ;
431 struct list_head lock_entry ;
432 struct lockdep_subclass_key *key ;
433 unsigned int subclass ;
434 unsigned int dep_gen_id ;
435 unsigned long usage_mask ;
436 struct stack_trace usage_traces[13] ;
437 struct list_head locks_after ;
438 struct list_head locks_before ;
439 unsigned int version ;
440 unsigned long ops ;
441 char const *name ;
442 int name_version ;
443 unsigned long contention_point[4] ;
444 unsigned long contending_point[4] ;
445};
446# 150 "include/linux/lockdep.h"
447struct lockdep_map {
448 struct lock_class_key *key ;
449 struct lock_class *class_cache[2] ;
450 char const *name ;
451 int cpu ;
452 unsigned long ip ;
453};
454# 196 "include/linux/lockdep.h"
455struct held_lock {
456 u64 prev_chain_key ;
457 unsigned long acquire_ip ;
458 struct lockdep_map *instance ;
459 struct lockdep_map *nest_lock ;
460 u64 waittime_stamp ;
461 u64 holdtime_stamp ;
462 unsigned int class_idx : 13 ;
463 unsigned int irq_context : 2 ;
464 unsigned int trylock : 1 ;
465 unsigned int read : 2 ;
466 unsigned int check : 2 ;
467 unsigned int hardirqs_off : 1 ;
468 unsigned int references : 11 ;
469};
470# 20 "include/linux/spinlock_types.h"
471struct raw_spinlock {
472 arch_spinlock_t raw_lock ;
473 unsigned int magic ;
474 unsigned int owner_cpu ;
475 void *owner ;
476 struct lockdep_map dep_map ;
477};
478# 20 "include/linux/spinlock_types.h"
479typedef struct raw_spinlock raw_spinlock_t;
480# 64 "include/linux/spinlock_types.h"
481struct __anonstruct____missing_field_name_49 {
482 u8 __padding[(unsigned int )(& ((struct raw_spinlock *)0)->dep_map)] ;
483 struct lockdep_map dep_map ;
484};
485# 64 "include/linux/spinlock_types.h"
486union __anonunion____missing_field_name_48 {
487 struct raw_spinlock rlock ;
488 struct __anonstruct____missing_field_name_49 __annonCompField17 ;
489};
490# 64 "include/linux/spinlock_types.h"
491struct spinlock {
492 union __anonunion____missing_field_name_48 __annonCompField18 ;
493};
494# 64 "include/linux/spinlock_types.h"
495typedef struct spinlock spinlock_t;
496# 11 "include/linux/rwlock_types.h"
497struct __anonstruct_rwlock_t_50 {
498 arch_rwlock_t raw_lock ;
499 unsigned int magic ;
500 unsigned int owner_cpu ;
501 void *owner ;
502 struct lockdep_map dep_map ;
503};
504# 11 "include/linux/rwlock_types.h"
505typedef struct __anonstruct_rwlock_t_50 rwlock_t;
506# 50 "include/linux/wait.h"
507struct __wait_queue_head {
508 spinlock_t lock ;
509 struct list_head task_list ;
510};
511# 54 "include/linux/wait.h"
512typedef struct __wait_queue_head wait_queue_head_t;
513# 25 "include/linux/completion.h"
514struct completion {
515 unsigned int done ;
516 wait_queue_head_t wait ;
517};
518# 113 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/uwb/i1480/dfu/i1480-dfu.h"
519struct device;
520# 113 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/uwb/i1480/dfu/i1480-dfu.h"
521struct i1480 {
522 struct device *dev ;
523 int (*write)(struct i1480 * , u32 addr , void const * , size_t ) ;
524 int (*read)(struct i1480 * , u32 addr , size_t ) ;
525 int (*rc_setup)(struct i1480 * ) ;
526 void (*rc_release)(struct i1480 * ) ;
527 int (*wait_init_done)(struct i1480 * ) ;
528 int (*cmd)(struct i1480 * , char const *cmd_name , size_t cmd_size ) ;
529 char const *pre_fw_name ;
530 char const *mac_fw_name ;
531 char const *mac_fw_name_deprecate ;
532 char const *phy_fw_name ;
533 u8 hw_rev ;
534 size_t buf_size ;
535 void *evt_buf ;
536 void *cmd_buf ;
537 ssize_t evt_result ;
538 struct completion evt_complete ;
539};
540# 219 "include/linux/mod_devicetable.h"
541struct of_device_id {
542 char name[32] ;
543 char type[32] ;
544 char compatible[128] ;
545 void *data ;
546};
547# 20 "include/linux/kobject_ns.h"
548struct sock;
549# 21 "include/linux/kobject_ns.h"
550struct kobject;
551# 27 "include/linux/kobject_ns.h"
552enum kobj_ns_type {
553 KOBJ_NS_TYPE_NONE = 0,
554 KOBJ_NS_TYPE_NET = 1,
555 KOBJ_NS_TYPES = 2
556} ;
557# 40 "include/linux/kobject_ns.h"
558struct kobj_ns_type_operations {
559 enum kobj_ns_type type ;
560 void *(*grab_current_ns)(void) ;
561 void const *(*netlink_ns)(struct sock *sk ) ;
562 void const *(*initial_ns)(void) ;
563 void (*drop_ns)(void * ) ;
564};
565# 24 "include/linux/sysfs.h"
566enum kobj_ns_type;
567# 26 "include/linux/sysfs.h"
568struct attribute {
569 char const *name ;
570 mode_t mode ;
571 struct lock_class_key *key ;
572 struct lock_class_key skey ;
573};
574# 56 "include/linux/sysfs.h"
575struct attribute_group {
576 char const *name ;
577 mode_t (*is_visible)(struct kobject * , struct attribute * , int ) ;
578 struct attribute **attrs ;
579};
580# 86 "include/linux/sysfs.h"
581struct vm_area_struct;
582# 88 "include/linux/sysfs.h"
583struct bin_attribute {
584 struct attribute attr ;
585 size_t size ;
586 void *private ;
587 ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
588 loff_t , size_t ) ;
589 ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
590 loff_t , size_t ) ;
591 int (*mmap)(struct file * , struct kobject * , struct bin_attribute *attr , struct vm_area_struct *vma ) ;
592};
593# 112 "include/linux/sysfs.h"
594struct sysfs_ops {
595 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
596 ssize_t (*store)(struct kobject * , struct attribute * , char const * , size_t ) ;
597};
598# 117 "include/linux/sysfs.h"
599struct sysfs_dirent;
600# 20 "include/linux/kref.h"
601struct kref {
602 atomic_t refcount ;
603};
604# 60 "include/linux/kobject.h"
605struct kset;
606# 60 "include/linux/kobject.h"
607struct kobj_type;
608# 60 "include/linux/kobject.h"
609struct kobject {
610 char const *name ;
611 struct list_head entry ;
612 struct kobject *parent ;
613 struct kset *kset ;
614 struct kobj_type *ktype ;
615 struct sysfs_dirent *sd ;
616 struct kref kref ;
617 unsigned int state_initialized : 1 ;
618 unsigned int state_in_sysfs : 1 ;
619 unsigned int state_add_uevent_sent : 1 ;
620 unsigned int state_remove_uevent_sent : 1 ;
621 unsigned int uevent_suppress : 1 ;
622};
623# 110 "include/linux/kobject.h"
624struct kobj_type {
625 void (*release)(struct kobject *kobj ) ;
626 struct sysfs_ops const *sysfs_ops ;
627 struct attribute **default_attrs ;
628 struct kobj_ns_type_operations const *(*child_ns_type)(struct kobject *kobj ) ;
629 void const *(*namespace)(struct kobject *kobj ) ;
630};
631# 118 "include/linux/kobject.h"
632struct kobj_uevent_env {
633 char *envp[32] ;
634 int envp_idx ;
635 char buf[2048] ;
636 int buflen ;
637};
638# 125 "include/linux/kobject.h"
639struct kset_uevent_ops {
640 int (* const filter)(struct kset *kset , struct kobject *kobj ) ;
641 char const *(* const name)(struct kset *kset , struct kobject *kobj ) ;
642 int (* const uevent)(struct kset *kset , struct kobject *kobj , struct kobj_uevent_env *env ) ;
643};
644# 161 "include/linux/kobject.h"
645struct kset {
646 struct list_head list ;
647 spinlock_t list_lock ;
648 struct kobject kobj ;
649 struct kset_uevent_ops const *uevent_ops ;
650};
651# 19 "include/linux/klist.h"
652struct klist_node;
653# 39 "include/linux/klist.h"
654struct klist_node {
655 void *n_klist ;
656 struct list_head n_node ;
657 struct kref n_ref ;
658};
659# 119 "include/linux/seqlock.h"
660struct seqcount {
661 unsigned int sequence ;
662};
663# 119 "include/linux/seqlock.h"
664typedef struct seqcount seqcount_t;
665# 14 "include/linux/time.h"
666struct timespec {
667 __kernel_time_t tv_sec ;
668 long tv_nsec ;
669};
670# 62 "include/linux/stat.h"
671struct kstat {
672 u64 ino ;
673 dev_t dev ;
674 umode_t mode ;
675 unsigned int nlink ;
676 uid_t uid ;
677 gid_t gid ;
678 dev_t rdev ;
679 loff_t size ;
680 struct timespec atime ;
681 struct timespec mtime ;
682 struct timespec ctime ;
683 unsigned long blksize ;
684 unsigned long long blocks ;
685};
686# 96 "include/linux/nodemask.h"
687struct __anonstruct_nodemask_t_56 {
688 unsigned long bits[(((unsigned long )(1 << 10) + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
689};
690# 96 "include/linux/nodemask.h"
691typedef struct __anonstruct_nodemask_t_56 nodemask_t;
692# 48 "include/linux/mutex.h"
693struct mutex {
694 atomic_t count ;
695 spinlock_t wait_lock ;
696 struct list_head wait_list ;
697 struct task_struct *owner ;
698 char const *name ;
699 void *magic ;
700 struct lockdep_map dep_map ;
701};
702# 69 "include/linux/mutex.h"
703struct mutex_waiter {
704 struct list_head list ;
705 struct task_struct *task ;
706 void *magic ;
707};
708# 20 "include/linux/rwsem.h"
709struct rw_semaphore;
710# 26 "include/linux/rwsem.h"
711struct rw_semaphore {
712 long count ;
713 spinlock_t wait_lock ;
714 struct list_head wait_list ;
715 struct lockdep_map dep_map ;
716};
717# 46 "include/linux/ktime.h"
718union ktime {
719 s64 tv64 ;
720};
721# 59 "include/linux/ktime.h"
722typedef union ktime ktime_t;
723# 10 "include/linux/timer.h"
724struct tvec_base;
725# 12 "include/linux/timer.h"
726struct timer_list {
727 struct list_head entry ;
728 unsigned long expires ;
729 struct tvec_base *base ;
730 void (*function)(unsigned long ) ;
731 unsigned long data ;
732 int slack ;
733 int start_pid ;
734 void *start_site ;
735 char start_comm[16] ;
736 struct lockdep_map lockdep_map ;
737};
738# 289 "include/linux/timer.h"
739struct hrtimer;
740# 290 "include/linux/timer.h"
741enum hrtimer_restart;
742# 290 "include/linux/timer.h"
743enum hrtimer_restart;
744# 17 "include/linux/workqueue.h"
745struct work_struct;
746# 79 "include/linux/workqueue.h"
747struct work_struct {
748 atomic_long_t data ;
749 struct list_head entry ;
750 void (*func)(struct work_struct *work ) ;
751 struct lockdep_map lockdep_map ;
752};
753# 92 "include/linux/workqueue.h"
754struct delayed_work {
755 struct work_struct work ;
756 struct timer_list timer ;
757};
758# 50 "include/linux/pm.h"
759struct pm_message {
760 int event ;
761};
762# 50 "include/linux/pm.h"
763typedef struct pm_message pm_message_t;
764# 204 "include/linux/pm.h"
765struct dev_pm_ops {
766 int (*prepare)(struct device *dev ) ;
767 void (*complete)(struct device *dev ) ;
768 int (*suspend)(struct device *dev ) ;
769 int (*resume)(struct device *dev ) ;
770 int (*freeze)(struct device *dev ) ;
771 int (*thaw)(struct device *dev ) ;
772 int (*poweroff)(struct device *dev ) ;
773 int (*restore)(struct device *dev ) ;
774 int (*suspend_noirq)(struct device *dev ) ;
775 int (*resume_noirq)(struct device *dev ) ;
776 int (*freeze_noirq)(struct device *dev ) ;
777 int (*thaw_noirq)(struct device *dev ) ;
778 int (*poweroff_noirq)(struct device *dev ) ;
779 int (*restore_noirq)(struct device *dev ) ;
780 int (*runtime_suspend)(struct device *dev ) ;
781 int (*runtime_resume)(struct device *dev ) ;
782 int (*runtime_idle)(struct device *dev ) ;
783};
784# 392 "include/linux/pm.h"
785enum rpm_status {
786 RPM_ACTIVE = 0,
787 RPM_RESUMING = 1,
788 RPM_SUSPENDED = 2,
789 RPM_SUSPENDING = 3
790} ;
791# 414 "include/linux/pm.h"
792enum rpm_request {
793 RPM_REQ_NONE = 0,
794 RPM_REQ_IDLE = 1,
795 RPM_REQ_SUSPEND = 2,
796 RPM_REQ_AUTOSUSPEND = 3,
797 RPM_REQ_RESUME = 4
798} ;
799# 422 "include/linux/pm.h"
800struct wakeup_source;
801# 424 "include/linux/pm.h"
802struct dev_pm_info {
803 pm_message_t power_state ;
804 unsigned int can_wakeup : 1 ;
805 unsigned int async_suspend : 1 ;
806 bool is_prepared : 1 ;
807 bool is_suspended : 1 ;
808 spinlock_t lock ;
809 struct list_head entry ;
810 struct completion completion ;
811 struct wakeup_source *wakeup ;
812 struct timer_list suspend_timer ;
813 unsigned long timer_expires ;
814 struct work_struct work ;
815 wait_queue_head_t wait_queue ;
816 atomic_t usage_count ;
817 atomic_t child_count ;
818 unsigned int disable_depth : 3 ;
819 unsigned int ignore_children : 1 ;
820 unsigned int idle_notification : 1 ;
821 unsigned int request_pending : 1 ;
822 unsigned int deferred_resume : 1 ;
823 unsigned int run_wake : 1 ;
824 unsigned int runtime_auto : 1 ;
825 unsigned int no_callbacks : 1 ;
826 unsigned int irq_safe : 1 ;
827 unsigned int use_autosuspend : 1 ;
828 unsigned int timer_autosuspends : 1 ;
829 enum rpm_request request ;
830 enum rpm_status runtime_status ;
831 int runtime_error ;
832 int autosuspend_delay ;
833 unsigned long last_busy ;
834 unsigned long active_jiffies ;
835 unsigned long suspended_jiffies ;
836 unsigned long accounting_timestamp ;
837 void *subsys_data ;
838};
839# 475 "include/linux/pm.h"
840struct dev_power_domain {
841 struct dev_pm_ops ops ;
842};
843# 11 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/mmu.h"
844struct __anonstruct_mm_context_t_126 {
845 void *ldt ;
846 int size ;
847 unsigned short ia32_compat ;
848 struct mutex lock ;
849 void *vdso ;
850};
851# 11 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/mmu.h"
852typedef struct __anonstruct_mm_context_t_126 mm_context_t;
853# 72 "include/linux/rcupdate.h"
854struct rcu_head {
855 struct rcu_head *next ;
856 void (*func)(struct rcu_head *head ) ;
857};
858# 937 "include/linux/sysctl.h"
859struct nsproxy;
860# 48 "include/linux/kmod.h"
861struct cred;
862# 27 "include/linux/elf.h"
863typedef __u64 Elf64_Addr;
864# 28 "include/linux/elf.h"
865typedef __u16 Elf64_Half;
866# 32 "include/linux/elf.h"
867typedef __u32 Elf64_Word;
868# 33 "include/linux/elf.h"
869typedef __u64 Elf64_Xword;
870# 203 "include/linux/elf.h"
871struct elf64_sym {
872 Elf64_Word st_name ;
873 unsigned char st_info ;
874 unsigned char st_other ;
875 Elf64_Half st_shndx ;
876 Elf64_Addr st_value ;
877 Elf64_Xword st_size ;
878};
879# 203 "include/linux/elf.h"
880typedef struct elf64_sym Elf64_Sym;
881# 34 "include/linux/moduleparam.h"
882struct kernel_param;
883# 36 "include/linux/moduleparam.h"
884struct kernel_param_ops {
885 int (*set)(char const *val , struct kernel_param const *kp ) ;
886 int (*get)(char *buffer , struct kernel_param const *kp ) ;
887 void (*free)(void *arg ) ;
888};
889# 48 "include/linux/moduleparam.h"
890struct kparam_string;
891# 48 "include/linux/moduleparam.h"
892struct kparam_array;
893# 48 "include/linux/moduleparam.h"
894union __anonunion____missing_field_name_210 {
895 void *arg ;
896 struct kparam_string const *str ;
897 struct kparam_array const *arr ;
898};
899# 48 "include/linux/moduleparam.h"
900struct kernel_param {
901 char const *name ;
902 struct kernel_param_ops const *ops ;
903 u16 perm ;
904 u16 flags ;
905 union __anonunion____missing_field_name_210 __annonCompField31 ;
906};
907# 61 "include/linux/moduleparam.h"
908struct kparam_string {
909 unsigned int maxlen ;
910 char *string ;
911};
912# 67 "include/linux/moduleparam.h"
913struct kparam_array {
914 unsigned int max ;
915 unsigned int elemsize ;
916 unsigned int *num ;
917 struct kernel_param_ops const *ops ;
918 void *elem ;
919};
920# 61 "include/linux/jump_label.h"
921struct jump_label_key {
922 atomic_t enabled ;
923};
924# 23 "include/linux/tracepoint.h"
925struct tracepoint;
926# 25 "include/linux/tracepoint.h"
927struct tracepoint_func {
928 void *func ;
929 void *data ;
930};
931# 30 "include/linux/tracepoint.h"
932struct tracepoint {
933 char const *name ;
934 struct jump_label_key key ;
935 void (*regfunc)(void) ;
936 void (*unregfunc)(void) ;
937 struct tracepoint_func *funcs ;
938};
939# 8 "include/asm-generic/module.h"
940struct mod_arch_specific {
941
942};
943# 37 "include/linux/module.h"
944struct kernel_symbol {
945 unsigned long value ;
946 char const *name ;
947};
948# 51 "include/linux/module.h"
949struct module_attribute {
950 struct attribute attr ;
951 ssize_t (*show)(struct module_attribute * , struct module * , char * ) ;
952 ssize_t (*store)(struct module_attribute * , struct module * , char const * ,
953 size_t count ) ;
954 void (*setup)(struct module * , char const * ) ;
955 int (*test)(struct module * ) ;
956 void (*free)(struct module * ) ;
957};
958# 70 "include/linux/module.h"
959struct module_param_attrs;
960# 70 "include/linux/module.h"
961struct module_kobject {
962 struct kobject kobj ;
963 struct module *mod ;
964 struct kobject *drivers_dir ;
965 struct module_param_attrs *mp ;
966};
967# 83 "include/linux/module.h"
968struct exception_table_entry;
969# 265 "include/linux/module.h"
970enum module_state {
971 MODULE_STATE_LIVE = 0,
972 MODULE_STATE_COMING = 1,
973 MODULE_STATE_GOING = 2
974} ;
975# 272 "include/linux/module.h"
976struct module_sect_attrs;
977# 272 "include/linux/module.h"
978struct module_notes_attrs;
979# 272 "include/linux/module.h"
980struct ftrace_event_call;
981# 272 "include/linux/module.h"
982struct module_ref {
983 unsigned int incs ;
984 unsigned int decs ;
985};
986# 272 "include/linux/module.h"
987struct module {
988 enum module_state state ;
989 struct list_head list ;
990 char name[64UL - sizeof(unsigned long )] ;
991 struct module_kobject mkobj ;
992 struct module_attribute *modinfo_attrs ;
993 char const *version ;
994 char const *srcversion ;
995 struct kobject *holders_dir ;
996 struct kernel_symbol const *syms ;
997 unsigned long const *crcs ;
998 unsigned int num_syms ;
999 struct kernel_param *kp ;
1000 unsigned int num_kp ;
1001 unsigned int num_gpl_syms ;
1002 struct kernel_symbol const *gpl_syms ;
1003 unsigned long const *gpl_crcs ;
1004 struct kernel_symbol const *unused_syms ;
1005 unsigned long const *unused_crcs ;
1006 unsigned int num_unused_syms ;
1007 unsigned int num_unused_gpl_syms ;
1008 struct kernel_symbol const *unused_gpl_syms ;
1009 unsigned long const *unused_gpl_crcs ;
1010 struct kernel_symbol const *gpl_future_syms ;
1011 unsigned long const *gpl_future_crcs ;
1012 unsigned int num_gpl_future_syms ;
1013 unsigned int num_exentries ;
1014 struct exception_table_entry *extable ;
1015 int (*init)(void) ;
1016 void *module_init ;
1017 void *module_core ;
1018 unsigned int init_size ;
1019 unsigned int core_size ;
1020 unsigned int init_text_size ;
1021 unsigned int core_text_size ;
1022 unsigned int init_ro_size ;
1023 unsigned int core_ro_size ;
1024 struct mod_arch_specific arch ;
1025 unsigned int taints ;
1026 unsigned int num_bugs ;
1027 struct list_head bug_list ;
1028 struct bug_entry *bug_table ;
1029 Elf64_Sym *symtab ;
1030 Elf64_Sym *core_symtab ;
1031 unsigned int num_symtab ;
1032 unsigned int core_num_syms ;
1033 char *strtab ;
1034 char *core_strtab ;
1035 struct module_sect_attrs *sect_attrs ;
1036 struct module_notes_attrs *notes_attrs ;
1037 char *args ;
1038 void *percpu ;
1039 unsigned int percpu_size ;
1040 unsigned int num_tracepoints ;
1041 struct tracepoint * const *tracepoints_ptrs ;
1042 unsigned int num_trace_bprintk_fmt ;
1043 char const **trace_bprintk_fmt_start ;
1044 struct ftrace_event_call **trace_events ;
1045 unsigned int num_trace_events ;
1046 unsigned int num_ftrace_callsites ;
1047 unsigned long *ftrace_callsites ;
1048 struct list_head source_list ;
1049 struct list_head target_list ;
1050 struct task_struct *waiter ;
1051 void (*exit)(void) ;
1052 struct module_ref *refptr ;
1053 ctor_fn_t *ctors ;
1054 unsigned int num_ctors ;
1055};
1056# 4 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
1057struct dma_map_ops;
1058# 4 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
1059struct dev_archdata {
1060 void *acpi_handle ;
1061 struct dma_map_ops *dma_ops ;
1062 void *iommu ;
1063};
1064# 29 "include/linux/device.h"
1065struct device_private;
1066# 30 "include/linux/device.h"
1067struct device_driver;
1068# 31 "include/linux/device.h"
1069struct driver_private;
1070# 32 "include/linux/device.h"
1071struct class;
1072# 33 "include/linux/device.h"
1073struct subsys_private;
1074# 34 "include/linux/device.h"
1075struct bus_type;
1076# 35 "include/linux/device.h"
1077struct device_node;
1078# 37 "include/linux/device.h"
1079struct bus_attribute {
1080 struct attribute attr ;
1081 ssize_t (*show)(struct bus_type *bus , char *buf ) ;
1082 ssize_t (*store)(struct bus_type *bus , char const *buf , size_t count ) ;
1083};
1084# 82 "include/linux/device.h"
1085struct device_attribute;
1086# 82 "include/linux/device.h"
1087struct driver_attribute;
1088# 82 "include/linux/device.h"
1089struct bus_type {
1090 char const *name ;
1091 struct bus_attribute *bus_attrs ;
1092 struct device_attribute *dev_attrs ;
1093 struct driver_attribute *drv_attrs ;
1094 int (*match)(struct device *dev , struct device_driver *drv ) ;
1095 int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1096 int (*probe)(struct device *dev ) ;
1097 int (*remove)(struct device *dev ) ;
1098 void (*shutdown)(struct device *dev ) ;
1099 int (*suspend)(struct device *dev , pm_message_t state ) ;
1100 int (*resume)(struct device *dev ) ;
1101 struct dev_pm_ops const *pm ;
1102 struct subsys_private *p ;
1103};
1104# 185 "include/linux/device.h"
1105struct device_driver {
1106 char const *name ;
1107 struct bus_type *bus ;
1108 struct module *owner ;
1109 char const *mod_name ;
1110 bool suppress_bind_attrs ;
1111 struct of_device_id const *of_match_table ;
1112 int (*probe)(struct device *dev ) ;
1113 int (*remove)(struct device *dev ) ;
1114 void (*shutdown)(struct device *dev ) ;
1115 int (*suspend)(struct device *dev , pm_message_t state ) ;
1116 int (*resume)(struct device *dev ) ;
1117 struct attribute_group const **groups ;
1118 struct dev_pm_ops const *pm ;
1119 struct driver_private *p ;
1120};
1121# 222 "include/linux/device.h"
1122struct driver_attribute {
1123 struct attribute attr ;
1124 ssize_t (*show)(struct device_driver *driver , char *buf ) ;
1125 ssize_t (*store)(struct device_driver *driver , char const *buf , size_t count ) ;
1126};
1127# 280 "include/linux/device.h"
1128struct class_attribute;
1129# 280 "include/linux/device.h"
1130struct class {
1131 char const *name ;
1132 struct module *owner ;
1133 struct class_attribute *class_attrs ;
1134 struct device_attribute *dev_attrs ;
1135 struct bin_attribute *dev_bin_attrs ;
1136 struct kobject *dev_kobj ;
1137 int (*dev_uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1138 char *(*devnode)(struct device *dev , mode_t *mode ) ;
1139 void (*class_release)(struct class *class ) ;
1140 void (*dev_release)(struct device *dev ) ;
1141 int (*suspend)(struct device *dev , pm_message_t state ) ;
1142 int (*resume)(struct device *dev ) ;
1143 struct kobj_ns_type_operations const *ns_type ;
1144 void const *(*namespace)(struct device *dev ) ;
1145 struct dev_pm_ops const *pm ;
1146 struct subsys_private *p ;
1147};
1148# 306 "include/linux/device.h"
1149struct device_type;
1150# 347 "include/linux/device.h"
1151struct class_attribute {
1152 struct attribute attr ;
1153 ssize_t (*show)(struct class *class , struct class_attribute *attr , char *buf ) ;
1154 ssize_t (*store)(struct class *class , struct class_attribute *attr , char const *buf ,
1155 size_t count ) ;
1156};
1157# 413 "include/linux/device.h"
1158struct device_type {
1159 char const *name ;
1160 struct attribute_group const **groups ;
1161 int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
1162 char *(*devnode)(struct device *dev , mode_t *mode ) ;
1163 void (*release)(struct device *dev ) ;
1164 struct dev_pm_ops const *pm ;
1165};
1166# 424 "include/linux/device.h"
1167struct device_attribute {
1168 struct attribute attr ;
1169 ssize_t (*show)(struct device *dev , struct device_attribute *attr , char *buf ) ;
1170 ssize_t (*store)(struct device *dev , struct device_attribute *attr , char const *buf ,
1171 size_t count ) ;
1172};
1173# 484 "include/linux/device.h"
1174struct device_dma_parameters {
1175 unsigned int max_segment_size ;
1176 unsigned long segment_boundary_mask ;
1177};
1178# 551 "include/linux/device.h"
1179struct dma_coherent_mem;
1180# 551 "include/linux/device.h"
1181struct device {
1182 struct device *parent ;
1183 struct device_private *p ;
1184 struct kobject kobj ;
1185 char const *init_name ;
1186 struct device_type const *type ;
1187 struct mutex mutex ;
1188 struct bus_type *bus ;
1189 struct device_driver *driver ;
1190 void *platform_data ;
1191 struct dev_pm_info power ;
1192 struct dev_power_domain *pwr_domain ;
1193 int numa_node ;
1194 u64 *dma_mask ;
1195 u64 coherent_dma_mask ;
1196 struct device_dma_parameters *dma_parms ;
1197 struct list_head dma_pools ;
1198 struct dma_coherent_mem *dma_mem ;
1199 struct dev_archdata archdata ;
1200 struct device_node *of_node ;
1201 dev_t devt ;
1202 spinlock_t devres_lock ;
1203 struct list_head devres_head ;
1204 struct klist_node knode_class ;
1205 struct class *class ;
1206 struct attribute_group const **groups ;
1207 void (*release)(struct device *dev ) ;
1208};
1209# 43 "include/linux/pm_wakeup.h"
1210struct wakeup_source {
1211 char *name ;
1212 struct list_head entry ;
1213 spinlock_t lock ;
1214 struct timer_list timer ;
1215 unsigned long timer_expires ;
1216 ktime_t total_time ;
1217 ktime_t max_time ;
1218 ktime_t last_time ;
1219 unsigned long event_count ;
1220 unsigned long active_count ;
1221 unsigned long relax_count ;
1222 unsigned long hit_count ;
1223 unsigned int active : 1 ;
1224};
1225# 10 "include/linux/irqreturn.h"
1226enum irqreturn {
1227 IRQ_NONE = 0,
1228 IRQ_HANDLED = 1,
1229 IRQ_WAKE_THREAD = 2
1230} ;
1231# 16 "include/linux/irqreturn.h"
1232typedef enum irqreturn irqreturn_t;
1233# 236 "include/linux/pci.h"
1234struct proc_dir_entry;
1235# 6 "include/asm-generic/scatterlist.h"
1236struct scatterlist {
1237 unsigned long sg_magic ;
1238 unsigned long page_link ;
1239 unsigned int offset ;
1240 unsigned int length ;
1241 dma_addr_t dma_address ;
1242 unsigned int dma_length ;
1243};
1244# 100 "include/linux/rbtree.h"
1245struct rb_node {
1246 unsigned long rb_parent_color ;
1247 struct rb_node *rb_right ;
1248 struct rb_node *rb_left ;
1249} __attribute__((__aligned__(sizeof(long )))) ;
1250# 110 "include/linux/rbtree.h"
1251struct rb_root {
1252 struct rb_node *rb_node ;
1253};
1254# 14 "include/linux/prio_tree.h"
1255struct prio_tree_node;
1256# 14 "include/linux/prio_tree.h"
1257struct raw_prio_tree_node {
1258 struct prio_tree_node *left ;
1259 struct prio_tree_node *right ;
1260 struct prio_tree_node *parent ;
1261};
1262# 20 "include/linux/prio_tree.h"
1263struct prio_tree_node {
1264 struct prio_tree_node *left ;
1265 struct prio_tree_node *right ;
1266 struct prio_tree_node *parent ;
1267 unsigned long start ;
1268 unsigned long last ;
1269};
1270# 28 "include/linux/prio_tree.h"
1271struct prio_tree_root {
1272 struct prio_tree_node *prio_tree_node ;
1273 unsigned short index_bits ;
1274 unsigned short raw ;
1275};
1276# 23 "include/linux/mm_types.h"
1277struct address_space;
1278# 34 "include/linux/mm_types.h"
1279struct __anonstruct____missing_field_name_215 {
1280 u16 inuse ;
1281 u16 objects ;
1282};
1283# 34 "include/linux/mm_types.h"
1284union __anonunion____missing_field_name_214 {
1285 atomic_t _mapcount ;
1286 struct __anonstruct____missing_field_name_215 __annonCompField33 ;
1287};
1288# 34 "include/linux/mm_types.h"
1289struct __anonstruct____missing_field_name_217 {
1290 unsigned long private ;
1291 struct address_space *mapping ;
1292};
1293# 34 "include/linux/mm_types.h"
1294union __anonunion____missing_field_name_216 {
1295 struct __anonstruct____missing_field_name_217 __annonCompField35 ;
1296 struct kmem_cache *slab ;
1297 struct page *first_page ;
1298};
1299# 34 "include/linux/mm_types.h"
1300union __anonunion____missing_field_name_218 {
1301 unsigned long index ;
1302 void *freelist ;
1303};
1304# 34 "include/linux/mm_types.h"
1305struct page {
1306 unsigned long flags ;
1307 atomic_t _count ;
1308 union __anonunion____missing_field_name_214 __annonCompField34 ;
1309 union __anonunion____missing_field_name_216 __annonCompField36 ;
1310 union __anonunion____missing_field_name_218 __annonCompField37 ;
1311 struct list_head lru ;
1312};
1313# 132 "include/linux/mm_types.h"
1314struct __anonstruct_vm_set_220 {
1315 struct list_head list ;
1316 void *parent ;
1317 struct vm_area_struct *head ;
1318};
1319# 132 "include/linux/mm_types.h"
1320union __anonunion_shared_219 {
1321 struct __anonstruct_vm_set_220 vm_set ;
1322 struct raw_prio_tree_node prio_tree_node ;
1323};
1324# 132 "include/linux/mm_types.h"
1325struct anon_vma;
1326# 132 "include/linux/mm_types.h"
1327struct vm_operations_struct;
1328# 132 "include/linux/mm_types.h"
1329struct mempolicy;
1330# 132 "include/linux/mm_types.h"
1331struct vm_area_struct {
1332 struct mm_struct *vm_mm ;
1333 unsigned long vm_start ;
1334 unsigned long vm_end ;
1335 struct vm_area_struct *vm_next ;
1336 struct vm_area_struct *vm_prev ;
1337 pgprot_t vm_page_prot ;
1338 unsigned long vm_flags ;
1339 struct rb_node vm_rb ;
1340 union __anonunion_shared_219 shared ;
1341 struct list_head anon_vma_chain ;
1342 struct anon_vma *anon_vma ;
1343 struct vm_operations_struct const *vm_ops ;
1344 unsigned long vm_pgoff ;
1345 struct file *vm_file ;
1346 void *vm_private_data ;
1347 struct mempolicy *vm_policy ;
1348};
1349# 189 "include/linux/mm_types.h"
1350struct core_thread {
1351 struct task_struct *task ;
1352 struct core_thread *next ;
1353};
1354# 194 "include/linux/mm_types.h"
1355struct core_state {
1356 atomic_t nr_threads ;
1357 struct core_thread dumper ;
1358 struct completion startup ;
1359};
1360# 216 "include/linux/mm_types.h"
1361struct mm_rss_stat {
1362 atomic_long_t count[3] ;
1363};
1364# 220 "include/linux/mm_types.h"
1365struct linux_binfmt;
1366# 220 "include/linux/mm_types.h"
1367struct mmu_notifier_mm;
1368# 220 "include/linux/mm_types.h"
1369struct mm_struct {
1370 struct vm_area_struct *mmap ;
1371 struct rb_root mm_rb ;
1372 struct vm_area_struct *mmap_cache ;
1373 unsigned long (*get_unmapped_area)(struct file *filp , unsigned long addr , unsigned long len ,
1374 unsigned long pgoff , unsigned long flags ) ;
1375 void (*unmap_area)(struct mm_struct *mm , unsigned long addr ) ;
1376 unsigned long mmap_base ;
1377 unsigned long task_size ;
1378 unsigned long cached_hole_size ;
1379 unsigned long free_area_cache ;
1380 pgd_t *pgd ;
1381 atomic_t mm_users ;
1382 atomic_t mm_count ;
1383 int map_count ;
1384 spinlock_t page_table_lock ;
1385 struct rw_semaphore mmap_sem ;
1386 struct list_head mmlist ;
1387 unsigned long hiwater_rss ;
1388 unsigned long hiwater_vm ;
1389 unsigned long total_vm ;
1390 unsigned long locked_vm ;
1391 unsigned long shared_vm ;
1392 unsigned long exec_vm ;
1393 unsigned long stack_vm ;
1394 unsigned long reserved_vm ;
1395 unsigned long def_flags ;
1396 unsigned long nr_ptes ;
1397 unsigned long start_code ;
1398 unsigned long end_code ;
1399 unsigned long start_data ;
1400 unsigned long end_data ;
1401 unsigned long start_brk ;
1402 unsigned long brk ;
1403 unsigned long start_stack ;
1404 unsigned long arg_start ;
1405 unsigned long arg_end ;
1406 unsigned long env_start ;
1407 unsigned long env_end ;
1408 unsigned long saved_auxv[44] ;
1409 struct mm_rss_stat rss_stat ;
1410 struct linux_binfmt *binfmt ;
1411 cpumask_var_t cpu_vm_mask_var ;
1412 mm_context_t context ;
1413 unsigned int faultstamp ;
1414 unsigned int token_priority ;
1415 unsigned int last_interval ;
1416 atomic_t oom_disable_count ;
1417 unsigned long flags ;
1418 struct core_state *core_state ;
1419 spinlock_t ioctx_lock ;
1420 struct hlist_head ioctx_list ;
1421 struct task_struct *owner ;
1422 struct file *exe_file ;
1423 unsigned long num_exe_file_vmas ;
1424 struct mmu_notifier_mm *mmu_notifier_mm ;
1425 pgtable_t pmd_huge_pte ;
1426 struct cpumask cpumask_allocation ;
1427};
1428# 21 "include/linux/mm.h"
1429struct file_ra_state;
1430# 22 "include/linux/mm.h"
1431struct user_struct;
1432# 23 "include/linux/mm.h"
1433struct writeback_control;
1434# 185 "include/linux/mm.h"
1435struct vm_fault {
1436 unsigned int flags ;
1437 unsigned long pgoff ;
1438 void *virtual_address ;
1439 struct page *page ;
1440};
1441# 202 "include/linux/mm.h"
1442struct vm_operations_struct {
1443 void (*open)(struct vm_area_struct *area ) ;
1444 void (*close)(struct vm_area_struct *area ) ;
1445 int (*fault)(struct vm_area_struct *vma , struct vm_fault *vmf ) ;
1446 int (*page_mkwrite)(struct vm_area_struct *vma , struct vm_fault *vmf ) ;
1447 int (*access)(struct vm_area_struct *vma , unsigned long addr , void *buf , int len ,
1448 int write ) ;
1449 int (*set_policy)(struct vm_area_struct *vma , struct mempolicy *new ) ;
1450 struct mempolicy *(*get_policy)(struct vm_area_struct *vma , unsigned long addr ) ;
1451 int (*migrate)(struct vm_area_struct *vma , nodemask_t const *from , nodemask_t const *to ,
1452 unsigned long flags ) ;
1453};
1454# 244 "include/linux/mm.h"
1455struct inode;
1456# 38 "include/linux/slub_def.h"
1457struct kmem_cache_cpu {
1458 void **freelist ;
1459 unsigned long tid ;
1460 struct page *page ;
1461 int node ;
1462 unsigned int stat[19] ;
1463};
1464# 48 "include/linux/slub_def.h"
1465struct kmem_cache_node {
1466 spinlock_t list_lock ;
1467 unsigned long nr_partial ;
1468 struct list_head partial ;
1469 atomic_long_t nr_slabs ;
1470 atomic_long_t total_objects ;
1471 struct list_head full ;
1472};
1473# 64 "include/linux/slub_def.h"
1474struct kmem_cache_order_objects {
1475 unsigned long x ;
1476};
1477# 71 "include/linux/slub_def.h"
1478struct kmem_cache {
1479 struct kmem_cache_cpu *cpu_slab ;
1480 unsigned long flags ;
1481 unsigned long min_partial ;
1482 int size ;
1483 int objsize ;
1484 int offset ;
1485 struct kmem_cache_order_objects oo ;
1486 struct kmem_cache_order_objects max ;
1487 struct kmem_cache_order_objects min ;
1488 gfp_t allocflags ;
1489 int refcount ;
1490 void (*ctor)(void * ) ;
1491 int inuse ;
1492 int align ;
1493 int reserved ;
1494 char const *name ;
1495 struct list_head list ;
1496 struct kobject kobj ;
1497 int remote_node_defrag_ratio ;
1498 struct kmem_cache_node *node[1 << 10] ;
1499};
1500# 25 "include/linux/dma-attrs.h"
1501struct dma_attrs {
1502 unsigned long flags[((2UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
1503};
1504# 11 "include/linux/dma-mapping.h"
1505enum dma_data_direction {
1506 DMA_BIDIRECTIONAL = 0,
1507 DMA_TO_DEVICE = 1,
1508 DMA_FROM_DEVICE = 2,
1509 DMA_NONE = 3
1510} ;
1511# 18 "include/linux/dma-mapping.h"
1512struct dma_map_ops {
1513 void *(*alloc_coherent)(struct device *dev , size_t size , dma_addr_t *dma_handle ,
1514 gfp_t gfp ) ;
1515 void (*free_coherent)(struct device *dev , size_t size , void *vaddr , dma_addr_t dma_handle ) ;
1516 dma_addr_t (*map_page)(struct device *dev , struct page *page , unsigned long offset ,
1517 size_t size , enum dma_data_direction dir , struct dma_attrs *attrs ) ;
1518 void (*unmap_page)(struct device *dev , dma_addr_t dma_handle , size_t size , enum dma_data_direction dir ,
1519 struct dma_attrs *attrs ) ;
1520 int (*map_sg)(struct device *dev , struct scatterlist *sg , int nents , enum dma_data_direction dir ,
1521 struct dma_attrs *attrs ) ;
1522 void (*unmap_sg)(struct device *dev , struct scatterlist *sg , int nents , enum dma_data_direction dir ,
1523 struct dma_attrs *attrs ) ;
1524 void (*sync_single_for_cpu)(struct device *dev , dma_addr_t dma_handle , size_t size ,
1525 enum dma_data_direction dir ) ;
1526 void (*sync_single_for_device)(struct device *dev , dma_addr_t dma_handle , size_t size ,
1527 enum dma_data_direction dir ) ;
1528 void (*sync_sg_for_cpu)(struct device *dev , struct scatterlist *sg , int nents ,
1529 enum dma_data_direction dir ) ;
1530 void (*sync_sg_for_device)(struct device *dev , struct scatterlist *sg , int nents ,
1531 enum dma_data_direction dir ) ;
1532 int (*mapping_error)(struct device *dev , dma_addr_t dma_addr ) ;
1533 int (*dma_supported)(struct device *dev , u64 mask ) ;
1534 int (*set_dma_mask)(struct device *dev , u64 mask ) ;
1535 int is_phys ;
1536};
1537# 452 "include/linux/uwb.h"
1538struct dentry;
1539# 244 "include/linux/usb/ch9.h"
1540struct usb_device_descriptor {
1541 __u8 bLength ;
1542 __u8 bDescriptorType ;
1543 __le16 bcdUSB ;
1544 __u8 bDeviceClass ;
1545 __u8 bDeviceSubClass ;
1546 __u8 bDeviceProtocol ;
1547 __u8 bMaxPacketSize0 ;
1548 __le16 idVendor ;
1549 __le16 idProduct ;
1550 __le16 bcdDevice ;
1551 __u8 iManufacturer ;
1552 __u8 iProduct ;
1553 __u8 iSerialNumber ;
1554 __u8 bNumConfigurations ;
1555} __attribute__((__packed__)) ;
1556# 300 "include/linux/usb/ch9.h"
1557struct usb_config_descriptor {
1558 __u8 bLength ;
1559 __u8 bDescriptorType ;
1560 __le16 wTotalLength ;
1561 __u8 bNumInterfaces ;
1562 __u8 bConfigurationValue ;
1563 __u8 iConfiguration ;
1564 __u8 bmAttributes ;
1565 __u8 bMaxPower ;
1566} __attribute__((__packed__)) ;
1567# 337 "include/linux/usb/ch9.h"
1568struct usb_interface_descriptor {
1569 __u8 bLength ;
1570 __u8 bDescriptorType ;
1571 __u8 bInterfaceNumber ;
1572 __u8 bAlternateSetting ;
1573 __u8 bNumEndpoints ;
1574 __u8 bInterfaceClass ;
1575 __u8 bInterfaceSubClass ;
1576 __u8 bInterfaceProtocol ;
1577 __u8 iInterface ;
1578} __attribute__((__packed__)) ;
1579# 355 "include/linux/usb/ch9.h"
1580struct usb_endpoint_descriptor {
1581 __u8 bLength ;
1582 __u8 bDescriptorType ;
1583 __u8 bEndpointAddress ;
1584 __u8 bmAttributes ;
1585 __le16 wMaxPacketSize ;
1586 __u8 bInterval ;
1587 __u8 bRefresh ;
1588 __u8 bSynchAddress ;
1589} __attribute__((__packed__)) ;
1590# 576 "include/linux/usb/ch9.h"
1591struct usb_ss_ep_comp_descriptor {
1592 __u8 bLength ;
1593 __u8 bDescriptorType ;
1594 __u8 bMaxBurst ;
1595 __u8 bmAttributes ;
1596 __le16 wBytesPerInterval ;
1597} __attribute__((__packed__)) ;
1598# 637 "include/linux/usb/ch9.h"
1599struct usb_interface_assoc_descriptor {
1600 __u8 bLength ;
1601 __u8 bDescriptorType ;
1602 __u8 bFirstInterface ;
1603 __u8 bInterfaceCount ;
1604 __u8 bFunctionClass ;
1605 __u8 bFunctionSubClass ;
1606 __u8 bFunctionProtocol ;
1607 __u8 iFunction ;
1608} __attribute__((__packed__)) ;
1609# 846 "include/linux/usb/ch9.h"
1610enum usb_device_speed {
1611 USB_SPEED_UNKNOWN = 0,
1612 USB_SPEED_LOW = 1,
1613 USB_SPEED_FULL = 2,
1614 USB_SPEED_HIGH = 3,
1615 USB_SPEED_WIRELESS = 4,
1616 USB_SPEED_SUPER = 5
1617} ;
1618# 854 "include/linux/usb/ch9.h"
1619enum usb_device_state {
1620 USB_STATE_NOTATTACHED = 0,
1621 USB_STATE_ATTACHED = 1,
1622 USB_STATE_POWERED = 2,
1623 USB_STATE_RECONNECTING = 3,
1624 USB_STATE_UNAUTHENTICATED = 4,
1625 USB_STATE_DEFAULT = 5,
1626 USB_STATE_ADDRESS = 6,
1627 USB_STATE_CONFIGURED = 7,
1628 USB_STATE_SUSPENDED = 8
1629} ;
1630# 39 "include/linux/irqdesc.h"
1631struct irqaction;
1632# 94 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess.h"
1633struct exception_table_entry {
1634 unsigned long insn ;
1635 unsigned long fixup ;
1636};
1637# 8 "include/linux/timerqueue.h"
1638struct timerqueue_node {
1639 struct rb_node node ;
1640 ktime_t expires ;
1641};
1642# 13 "include/linux/timerqueue.h"
1643struct timerqueue_head {
1644 struct rb_root head ;
1645 struct timerqueue_node *next ;
1646};
1647# 27 "include/linux/hrtimer.h"
1648struct hrtimer_clock_base;
1649# 28 "include/linux/hrtimer.h"
1650struct hrtimer_cpu_base;
1651# 44 "include/linux/hrtimer.h"
1652enum hrtimer_restart {
1653 HRTIMER_NORESTART = 0,
1654 HRTIMER_RESTART = 1
1655} ;
1656# 108 "include/linux/hrtimer.h"
1657struct hrtimer {
1658 struct timerqueue_node node ;
1659 ktime_t _softexpires ;
1660 enum hrtimer_restart (*function)(struct hrtimer * ) ;
1661 struct hrtimer_clock_base *base ;
1662 unsigned long state ;
1663 int start_pid ;
1664 void *start_site ;
1665 char start_comm[16] ;
1666};
1667# 145 "include/linux/hrtimer.h"
1668struct hrtimer_clock_base {
1669 struct hrtimer_cpu_base *cpu_base ;
1670 int index ;
1671 clockid_t clockid ;
1672 struct timerqueue_head active ;
1673 ktime_t resolution ;
1674 ktime_t (*get_time)(void) ;
1675 ktime_t softirq_time ;
1676 ktime_t offset ;
1677};
1678# 178 "include/linux/hrtimer.h"
1679struct hrtimer_cpu_base {
1680 raw_spinlock_t lock ;
1681 unsigned long active_bases ;
1682 ktime_t expires_next ;
1683 int hres_active ;
1684 int hang_detected ;
1685 unsigned long nr_events ;
1686 unsigned long nr_retries ;
1687 unsigned long nr_hangs ;
1688 ktime_t max_hang_time ;
1689 struct hrtimer_clock_base clock_base[3] ;
1690};
1691# 106 "include/linux/interrupt.h"
1692struct irqaction {
1693 irqreturn_t (*handler)(int , void * ) ;
1694 unsigned long flags ;
1695 void *dev_id ;
1696 struct irqaction *next ;
1697 int irq ;
1698 irqreturn_t (*thread_fn)(int , void * ) ;
1699 struct task_struct *thread ;
1700 unsigned long thread_flags ;
1701 unsigned long thread_mask ;
1702 char const *name ;
1703 struct proc_dir_entry *dir ;
1704} __attribute__((__aligned__((1) << (12) ))) ;
1705# 16 "include/linux/blk_types.h"
1706struct block_device;
1707# 33 "include/linux/list_bl.h"
1708struct hlist_bl_node;
1709# 33 "include/linux/list_bl.h"
1710struct hlist_bl_head {
1711 struct hlist_bl_node *first ;
1712};
1713# 37 "include/linux/list_bl.h"
1714struct hlist_bl_node {
1715 struct hlist_bl_node *next ;
1716 struct hlist_bl_node **pprev ;
1717};
1718# 13 "include/linux/dcache.h"
1719struct nameidata;
1720# 14 "include/linux/dcache.h"
1721struct path;
1722# 15 "include/linux/dcache.h"
1723struct vfsmount;
1724# 35 "include/linux/dcache.h"
1725struct qstr {
1726 unsigned int hash ;
1727 unsigned int len ;
1728 unsigned char const *name ;
1729};
1730# 116 "include/linux/dcache.h"
1731struct dentry_operations;
1732# 116 "include/linux/dcache.h"
1733struct super_block;
1734# 116 "include/linux/dcache.h"
1735union __anonunion_d_u_234 {
1736 struct list_head d_child ;
1737 struct rcu_head d_rcu ;
1738};
1739# 116 "include/linux/dcache.h"
1740struct dentry {
1741 unsigned int d_flags ;
1742 seqcount_t d_seq ;
1743 struct hlist_bl_node d_hash ;
1744 struct dentry *d_parent ;
1745 struct qstr d_name ;
1746 struct inode *d_inode ;
1747 unsigned char d_iname[32] ;
1748 unsigned int d_count ;
1749 spinlock_t d_lock ;
1750 struct dentry_operations const *d_op ;
1751 struct super_block *d_sb ;
1752 unsigned long d_time ;
1753 void *d_fsdata ;
1754 struct list_head d_lru ;
1755 union __anonunion_d_u_234 d_u ;
1756 struct list_head d_subdirs ;
1757 struct list_head d_alias ;
1758};
1759# 159 "include/linux/dcache.h"
1760struct dentry_operations {
1761 int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
1762 int (*d_hash)(struct dentry const * , struct inode const * , struct qstr * ) ;
1763 int (*d_compare)(struct dentry const * , struct inode const * , struct dentry const * ,
1764 struct inode const * , unsigned int , char const * , struct qstr const * ) ;
1765 int (*d_delete)(struct dentry const * ) ;
1766 void (*d_release)(struct dentry * ) ;
1767 void (*d_iput)(struct dentry * , struct inode * ) ;
1768 char *(*d_dname)(struct dentry * , char * , int ) ;
1769 struct vfsmount *(*d_automount)(struct path * ) ;
1770 int (*d_manage)(struct dentry * , bool ) ;
1771} __attribute__((__aligned__((1) << (6) ))) ;
1772# 7 "include/linux/path.h"
1773struct path {
1774 struct vfsmount *mnt ;
1775 struct dentry *dentry ;
1776};
1777# 57 "include/linux/radix-tree.h"
1778struct radix_tree_node;
1779# 57 "include/linux/radix-tree.h"
1780struct radix_tree_root {
1781 unsigned int height ;
1782 gfp_t gfp_mask ;
1783 struct radix_tree_node *rnode ;
1784};
1785# 6 "include/linux/pid.h"
1786enum pid_type {
1787 PIDTYPE_PID = 0,
1788 PIDTYPE_PGID = 1,
1789 PIDTYPE_SID = 2,
1790 PIDTYPE_MAX = 3
1791} ;
1792# 50 "include/linux/pid.h"
1793struct pid_namespace;
1794# 50 "include/linux/pid.h"
1795struct upid {
1796 int nr ;
1797 struct pid_namespace *ns ;
1798 struct hlist_node pid_chain ;
1799};
1800# 57 "include/linux/pid.h"
1801struct pid {
1802 atomic_t count ;
1803 unsigned int level ;
1804 struct hlist_head tasks[3] ;
1805 struct rcu_head rcu ;
1806 struct upid numbers[1] ;
1807};
1808# 69 "include/linux/pid.h"
1809struct pid_link {
1810 struct hlist_node node ;
1811 struct pid *pid ;
1812};
1813# 94 "include/linux/capability.h"
1814struct kernel_cap_struct {
1815 __u32 cap[2] ;
1816};
1817# 94 "include/linux/capability.h"
1818typedef struct kernel_cap_struct kernel_cap_t;
1819# 377 "include/linux/capability.h"
1820struct user_namespace;
1821# 16 "include/linux/fiemap.h"
1822struct fiemap_extent {
1823 __u64 fe_logical ;
1824 __u64 fe_physical ;
1825 __u64 fe_length ;
1826 __u64 fe_reserved64[2] ;
1827 __u32 fe_flags ;
1828 __u32 fe_reserved[3] ;
1829};
1830# 399 "include/linux/fs.h"
1831struct export_operations;
1832# 401 "include/linux/fs.h"
1833struct iovec;
1834# 403 "include/linux/fs.h"
1835struct kiocb;
1836# 405 "include/linux/fs.h"
1837struct pipe_inode_info;
1838# 406 "include/linux/fs.h"
1839struct poll_table_struct;
1840# 407 "include/linux/fs.h"
1841struct kstatfs;
1842# 460 "include/linux/fs.h"
1843struct iattr {
1844 unsigned int ia_valid ;
1845 umode_t ia_mode ;
1846 uid_t ia_uid ;
1847 gid_t ia_gid ;
1848 loff_t ia_size ;
1849 struct timespec ia_atime ;
1850 struct timespec ia_mtime ;
1851 struct timespec ia_ctime ;
1852 struct file *ia_file ;
1853};
1854# 129 "include/linux/quota.h"
1855struct if_dqinfo {
1856 __u64 dqi_bgrace ;
1857 __u64 dqi_igrace ;
1858 __u32 dqi_flags ;
1859 __u32 dqi_valid ;
1860};
1861# 50 "include/linux/dqblk_xfs.h"
1862struct fs_disk_quota {
1863 __s8 d_version ;
1864 __s8 d_flags ;
1865 __u16 d_fieldmask ;
1866 __u32 d_id ;
1867 __u64 d_blk_hardlimit ;
1868 __u64 d_blk_softlimit ;
1869 __u64 d_ino_hardlimit ;
1870 __u64 d_ino_softlimit ;
1871 __u64 d_bcount ;
1872 __u64 d_icount ;
1873 __s32 d_itimer ;
1874 __s32 d_btimer ;
1875 __u16 d_iwarns ;
1876 __u16 d_bwarns ;
1877 __s32 d_padding2 ;
1878 __u64 d_rtb_hardlimit ;
1879 __u64 d_rtb_softlimit ;
1880 __u64 d_rtbcount ;
1881 __s32 d_rtbtimer ;
1882 __u16 d_rtbwarns ;
1883 __s16 d_padding3 ;
1884 char d_padding4[8] ;
1885};
1886# 146 "include/linux/dqblk_xfs.h"
1887struct fs_qfilestat {
1888 __u64 qfs_ino ;
1889 __u64 qfs_nblks ;
1890 __u32 qfs_nextents ;
1891};
1892# 146 "include/linux/dqblk_xfs.h"
1893typedef struct fs_qfilestat fs_qfilestat_t;
1894# 152 "include/linux/dqblk_xfs.h"
1895struct fs_quota_stat {
1896 __s8 qs_version ;
1897 __u16 qs_flags ;
1898 __s8 qs_pad ;
1899 fs_qfilestat_t qs_uquota ;
1900 fs_qfilestat_t qs_gquota ;
1901 __u32 qs_incoredqs ;
1902 __s32 qs_btimelimit ;
1903 __s32 qs_itimelimit ;
1904 __s32 qs_rtbtimelimit ;
1905 __u16 qs_bwarnlimit ;
1906 __u16 qs_iwarnlimit ;
1907};
1908# 17 "include/linux/dqblk_qtree.h"
1909struct dquot;
1910# 185 "include/linux/quota.h"
1911typedef __kernel_uid32_t qid_t;
1912# 186 "include/linux/quota.h"
1913typedef long long qsize_t;
1914# 200 "include/linux/quota.h"
1915struct mem_dqblk {
1916 qsize_t dqb_bhardlimit ;
1917 qsize_t dqb_bsoftlimit ;
1918 qsize_t dqb_curspace ;
1919 qsize_t dqb_rsvspace ;
1920 qsize_t dqb_ihardlimit ;
1921 qsize_t dqb_isoftlimit ;
1922 qsize_t dqb_curinodes ;
1923 time_t dqb_btime ;
1924 time_t dqb_itime ;
1925};
1926# 215 "include/linux/quota.h"
1927struct quota_format_type;
1928# 217 "include/linux/quota.h"
1929struct mem_dqinfo {
1930 struct quota_format_type *dqi_format ;
1931 int dqi_fmt_id ;
1932 struct list_head dqi_dirty_list ;
1933 unsigned long dqi_flags ;
1934 unsigned int dqi_bgrace ;
1935 unsigned int dqi_igrace ;
1936 qsize_t dqi_maxblimit ;
1937 qsize_t dqi_maxilimit ;
1938 void *dqi_priv ;
1939};
1940# 284 "include/linux/quota.h"
1941struct dquot {
1942 struct hlist_node dq_hash ;
1943 struct list_head dq_inuse ;
1944 struct list_head dq_free ;
1945 struct list_head dq_dirty ;
1946 struct mutex dq_lock ;
1947 atomic_t dq_count ;
1948 wait_queue_head_t dq_wait_unused ;
1949 struct super_block *dq_sb ;
1950 unsigned int dq_id ;
1951 loff_t dq_off ;
1952 unsigned long dq_flags ;
1953 short dq_type ;
1954 struct mem_dqblk dq_dqb ;
1955};
1956# 301 "include/linux/quota.h"
1957struct quota_format_ops {
1958 int (*check_quota_file)(struct super_block *sb , int type ) ;
1959 int (*read_file_info)(struct super_block *sb , int type ) ;
1960 int (*write_file_info)(struct super_block *sb , int type ) ;
1961 int (*free_file_info)(struct super_block *sb , int type ) ;
1962 int (*read_dqblk)(struct dquot *dquot ) ;
1963 int (*commit_dqblk)(struct dquot *dquot ) ;
1964 int (*release_dqblk)(struct dquot *dquot ) ;
1965};
1966# 312 "include/linux/quota.h"
1967struct dquot_operations {
1968 int (*write_dquot)(struct dquot * ) ;
1969 struct dquot *(*alloc_dquot)(struct super_block * , int ) ;
1970 void (*destroy_dquot)(struct dquot * ) ;
1971 int (*acquire_dquot)(struct dquot * ) ;
1972 int (*release_dquot)(struct dquot * ) ;
1973 int (*mark_dirty)(struct dquot * ) ;
1974 int (*write_info)(struct super_block * , int ) ;
1975 qsize_t *(*get_reserved_space)(struct inode * ) ;
1976};
1977# 328 "include/linux/quota.h"
1978struct quotactl_ops {
1979 int (*quota_on)(struct super_block * , int , int , struct path * ) ;
1980 int (*quota_on_meta)(struct super_block * , int , int ) ;
1981 int (*quota_off)(struct super_block * , int ) ;
1982 int (*quota_sync)(struct super_block * , int , int ) ;
1983 int (*get_info)(struct super_block * , int , struct if_dqinfo * ) ;
1984 int (*set_info)(struct super_block * , int , struct if_dqinfo * ) ;
1985 int (*get_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
1986 int (*set_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
1987 int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
1988 int (*set_xstate)(struct super_block * , unsigned int , int ) ;
1989};
1990# 341 "include/linux/quota.h"
1991struct quota_format_type {
1992 int qf_fmt_id ;
1993 struct quota_format_ops const *qf_ops ;
1994 struct module *qf_owner ;
1995 struct quota_format_type *qf_next ;
1996};
1997# 395 "include/linux/quota.h"
1998struct quota_info {
1999 unsigned int flags ;
2000 struct mutex dqio_mutex ;
2001 struct mutex dqonoff_mutex ;
2002 struct rw_semaphore dqptr_sem ;
2003 struct inode *files[2] ;
2004 struct mem_dqinfo info[2] ;
2005 struct quota_format_ops const *ops[2] ;
2006};
2007# 568 "include/linux/fs.h"
2008union __anonunion_arg_242 {
2009 char *buf ;
2010 void *data ;
2011};
2012# 568 "include/linux/fs.h"
2013struct __anonstruct_read_descriptor_t_241 {
2014 size_t written ;
2015 size_t count ;
2016 union __anonunion_arg_242 arg ;
2017 int error ;
2018};
2019# 568 "include/linux/fs.h"
2020typedef struct __anonstruct_read_descriptor_t_241 read_descriptor_t;
2021# 581 "include/linux/fs.h"
2022struct address_space_operations {
2023 int (*writepage)(struct page *page , struct writeback_control *wbc ) ;
2024 int (*readpage)(struct file * , struct page * ) ;
2025 int (*writepages)(struct address_space * , struct writeback_control * ) ;
2026 int (*set_page_dirty)(struct page *page ) ;
2027 int (*readpages)(struct file *filp , struct address_space *mapping , struct list_head *pages ,
2028 unsigned int nr_pages ) ;
2029 int (*write_begin)(struct file * , struct address_space *mapping , loff_t pos ,
2030 unsigned int len , unsigned int flags , struct page **pagep ,
2031 void **fsdata ) ;
2032 int (*write_end)(struct file * , struct address_space *mapping , loff_t pos , unsigned int len ,
2033 unsigned int copied , struct page *page , void *fsdata ) ;
2034 sector_t (*bmap)(struct address_space * , sector_t ) ;
2035 void (*invalidatepage)(struct page * , unsigned long ) ;
2036 int (*releasepage)(struct page * , gfp_t ) ;
2037 void (*freepage)(struct page * ) ;
2038 ssize_t (*direct_IO)(int , struct kiocb * , struct iovec const *iov , loff_t offset ,
2039 unsigned long nr_segs ) ;
2040 int (*get_xip_mem)(struct address_space * , unsigned long , int , void ** , unsigned long * ) ;
2041 int (*migratepage)(struct address_space * , struct page * , struct page * ) ;
2042 int (*launder_page)(struct page * ) ;
2043 int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long ) ;
2044 int (*error_remove_page)(struct address_space * , struct page * ) ;
2045};
2046# 633 "include/linux/fs.h"
2047struct backing_dev_info;
2048# 634 "include/linux/fs.h"
2049struct address_space {
2050 struct inode *host ;
2051 struct radix_tree_root page_tree ;
2052 spinlock_t tree_lock ;
2053 unsigned int i_mmap_writable ;
2054 struct prio_tree_root i_mmap ;
2055 struct list_head i_mmap_nonlinear ;
2056 struct mutex i_mmap_mutex ;
2057 unsigned long nrpages ;
2058 unsigned long writeback_index ;
2059 struct address_space_operations const *a_ops ;
2060 unsigned long flags ;
2061 struct backing_dev_info *backing_dev_info ;
2062 spinlock_t private_lock ;
2063 struct list_head private_list ;
2064 struct address_space *assoc_mapping ;
2065} __attribute__((__aligned__(sizeof(long )))) ;
2066# 658 "include/linux/fs.h"
2067struct hd_struct;
2068# 658 "include/linux/fs.h"
2069struct gendisk;
2070# 658 "include/linux/fs.h"
2071struct block_device {
2072 dev_t bd_dev ;
2073 int bd_openers ;
2074 struct inode *bd_inode ;
2075 struct super_block *bd_super ;
2076 struct mutex bd_mutex ;
2077 struct list_head bd_inodes ;
2078 void *bd_claiming ;
2079 void *bd_holder ;
2080 int bd_holders ;
2081 bool bd_write_holder ;
2082 struct list_head bd_holder_disks ;
2083 struct block_device *bd_contains ;
2084 unsigned int bd_block_size ;
2085 struct hd_struct *bd_part ;
2086 unsigned int bd_part_count ;
2087 int bd_invalidated ;
2088 struct gendisk *bd_disk ;
2089 struct list_head bd_list ;
2090 unsigned long bd_private ;
2091 int bd_fsfreeze_count ;
2092 struct mutex bd_fsfreeze_mutex ;
2093};
2094# 735 "include/linux/fs.h"
2095struct posix_acl;
2096# 738 "include/linux/fs.h"
2097struct inode_operations;
2098# 738 "include/linux/fs.h"
2099union __anonunion____missing_field_name_243 {
2100 struct list_head i_dentry ;
2101 struct rcu_head i_rcu ;
2102};
2103# 738 "include/linux/fs.h"
2104struct file_operations;
2105# 738 "include/linux/fs.h"
2106struct file_lock;
2107# 738 "include/linux/fs.h"
2108struct cdev;
2109# 738 "include/linux/fs.h"
2110union __anonunion____missing_field_name_244 {
2111 struct pipe_inode_info *i_pipe ;
2112 struct block_device *i_bdev ;
2113 struct cdev *i_cdev ;
2114};
2115# 738 "include/linux/fs.h"
2116struct inode {
2117 umode_t i_mode ;
2118 uid_t i_uid ;
2119 gid_t i_gid ;
2120 struct inode_operations const *i_op ;
2121 struct super_block *i_sb ;
2122 spinlock_t i_lock ;
2123 unsigned int i_flags ;
2124 unsigned long i_state ;
2125 void *i_security ;
2126 struct mutex i_mutex ;
2127 unsigned long dirtied_when ;
2128 struct hlist_node i_hash ;
2129 struct list_head i_wb_list ;
2130 struct list_head i_lru ;
2131 struct list_head i_sb_list ;
2132 union __anonunion____missing_field_name_243 __annonCompField39 ;
2133 unsigned long i_ino ;
2134 atomic_t i_count ;
2135 unsigned int i_nlink ;
2136 dev_t i_rdev ;
2137 unsigned int i_blkbits ;
2138 u64 i_version ;
2139 loff_t i_size ;
2140 struct timespec i_atime ;
2141 struct timespec i_mtime ;
2142 struct timespec i_ctime ;
2143 blkcnt_t i_blocks ;
2144 unsigned short i_bytes ;
2145 struct rw_semaphore i_alloc_sem ;
2146 struct file_operations const *i_fop ;
2147 struct file_lock *i_flock ;
2148 struct address_space *i_mapping ;
2149 struct address_space i_data ;
2150 struct dquot *i_dquot[2] ;
2151 struct list_head i_devices ;
2152 union __anonunion____missing_field_name_244 __annonCompField40 ;
2153 __u32 i_generation ;
2154 __u32 i_fsnotify_mask ;
2155 struct hlist_head i_fsnotify_marks ;
2156 atomic_t i_readcount ;
2157 atomic_t i_writecount ;
2158 struct posix_acl *i_acl ;
2159 struct posix_acl *i_default_acl ;
2160 void *i_private ;
2161};
2162# 903 "include/linux/fs.h"
2163struct fown_struct {
2164 rwlock_t lock ;
2165 struct pid *pid ;
2166 enum pid_type pid_type ;
2167 uid_t uid ;
2168 uid_t euid ;
2169 int signum ;
2170};
2171# 914 "include/linux/fs.h"
2172struct file_ra_state {
2173 unsigned long start ;
2174 unsigned int size ;
2175 unsigned int async_size ;
2176 unsigned int ra_pages ;
2177 unsigned int mmap_miss ;
2178 loff_t prev_pos ;
2179};
2180# 937 "include/linux/fs.h"
2181union __anonunion_f_u_245 {
2182 struct list_head fu_list ;
2183 struct rcu_head fu_rcuhead ;
2184};
2185# 937 "include/linux/fs.h"
2186struct file {
2187 union __anonunion_f_u_245 f_u ;
2188 struct path f_path ;
2189 struct file_operations const *f_op ;
2190 spinlock_t f_lock ;
2191 int f_sb_list_cpu ;
2192 atomic_long_t f_count ;
2193 unsigned int f_flags ;
2194 fmode_t f_mode ;
2195 loff_t f_pos ;
2196 struct fown_struct f_owner ;
2197 struct cred const *f_cred ;
2198 struct file_ra_state f_ra ;
2199 u64 f_version ;
2200 void *f_security ;
2201 void *private_data ;
2202 struct list_head f_ep_links ;
2203 struct address_space *f_mapping ;
2204 unsigned long f_mnt_write_state ;
2205};
2206# 1064 "include/linux/fs.h"
2207struct files_struct;
2208# 1064 "include/linux/fs.h"
2209typedef struct files_struct *fl_owner_t;
2210# 1066 "include/linux/fs.h"
2211struct file_lock_operations {
2212 void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
2213 void (*fl_release_private)(struct file_lock * ) ;
2214};
2215# 1071 "include/linux/fs.h"
2216struct lock_manager_operations {
2217 int (*fl_compare_owner)(struct file_lock * , struct file_lock * ) ;
2218 void (*fl_notify)(struct file_lock * ) ;
2219 int (*fl_grant)(struct file_lock * , struct file_lock * , int ) ;
2220 void (*fl_release_private)(struct file_lock * ) ;
2221 void (*fl_break)(struct file_lock * ) ;
2222 int (*fl_change)(struct file_lock ** , int ) ;
2223};
2224# 8 "include/linux/nfs_fs_i.h"
2225struct nlm_lockowner;
2226# 13 "include/linux/nfs_fs_i.h"
2227struct nfs_lock_info {
2228 u32 state ;
2229 struct nlm_lockowner *owner ;
2230 struct list_head list ;
2231};
2232# 19 "include/linux/nfs_fs_i.h"
2233struct nfs4_lock_state;
2234# 20 "include/linux/nfs_fs_i.h"
2235struct nfs4_lock_info {
2236 struct nfs4_lock_state *owner ;
2237};
2238# 1091 "include/linux/fs.h"
2239struct fasync_struct;
2240# 1091 "include/linux/fs.h"
2241struct __anonstruct_afs_247 {
2242 struct list_head link ;
2243 int state ;
2244};
2245# 1091 "include/linux/fs.h"
2246union __anonunion_fl_u_246 {
2247 struct nfs_lock_info nfs_fl ;
2248 struct nfs4_lock_info nfs4_fl ;
2249 struct __anonstruct_afs_247 afs ;
2250};
2251# 1091 "include/linux/fs.h"
2252struct file_lock {
2253 struct file_lock *fl_next ;
2254 struct list_head fl_link ;
2255 struct list_head fl_block ;
2256 fl_owner_t fl_owner ;
2257 unsigned char fl_flags ;
2258 unsigned char fl_type ;
2259 unsigned int fl_pid ;
2260 struct pid *fl_nspid ;
2261 wait_queue_head_t fl_wait ;
2262 struct file *fl_file ;
2263 loff_t fl_start ;
2264 loff_t fl_end ;
2265 struct fasync_struct *fl_fasync ;
2266 unsigned long fl_break_time ;
2267 struct file_lock_operations const *fl_ops ;
2268 struct lock_manager_operations const *fl_lmops ;
2269 union __anonunion_fl_u_246 fl_u ;
2270};
2271# 1324 "include/linux/fs.h"
2272struct fasync_struct {
2273 spinlock_t fa_lock ;
2274 int magic ;
2275 int fa_fd ;
2276 struct fasync_struct *fa_next ;
2277 struct file *fa_file ;
2278 struct rcu_head fa_rcu ;
2279};
2280# 1364 "include/linux/fs.h"
2281struct file_system_type;
2282# 1364 "include/linux/fs.h"
2283struct super_operations;
2284# 1364 "include/linux/fs.h"
2285struct xattr_handler;
2286# 1364 "include/linux/fs.h"
2287struct mtd_info;
2288# 1364 "include/linux/fs.h"
2289struct super_block {
2290 struct list_head s_list ;
2291 dev_t s_dev ;
2292 unsigned char s_dirt ;
2293 unsigned char s_blocksize_bits ;
2294 unsigned long s_blocksize ;
2295 loff_t s_maxbytes ;
2296 struct file_system_type *s_type ;
2297 struct super_operations const *s_op ;
2298 struct dquot_operations const *dq_op ;
2299 struct quotactl_ops const *s_qcop ;
2300 struct export_operations const *s_export_op ;
2301 unsigned long s_flags ;
2302 unsigned long s_magic ;
2303 struct dentry *s_root ;
2304 struct rw_semaphore s_umount ;
2305 struct mutex s_lock ;
2306 int s_count ;
2307 atomic_t s_active ;
2308 void *s_security ;
2309 struct xattr_handler const **s_xattr ;
2310 struct list_head s_inodes ;
2311 struct hlist_bl_head s_anon ;
2312 struct list_head *s_files ;
2313 struct list_head s_dentry_lru ;
2314 int s_nr_dentry_unused ;
2315 struct block_device *s_bdev ;
2316 struct backing_dev_info *s_bdi ;
2317 struct mtd_info *s_mtd ;
2318 struct list_head s_instances ;
2319 struct quota_info s_dquot ;
2320 int s_frozen ;
2321 wait_queue_head_t s_wait_unfrozen ;
2322 char s_id[32] ;
2323 u8 s_uuid[16] ;
2324 void *s_fs_info ;
2325 fmode_t s_mode ;
2326 u32 s_time_gran ;
2327 struct mutex s_vfs_rename_mutex ;
2328 char *s_subtype ;
2329 char *s_options ;
2330 struct dentry_operations const *s_d_op ;
2331 int cleancache_poolid ;
2332};
2333# 1499 "include/linux/fs.h"
2334struct fiemap_extent_info {
2335 unsigned int fi_flags ;
2336 unsigned int fi_extents_mapped ;
2337 unsigned int fi_extents_max ;
2338 struct fiemap_extent *fi_extents_start ;
2339};
2340# 1546 "include/linux/fs.h"
2341struct file_operations {
2342 struct module *owner ;
2343 loff_t (*llseek)(struct file * , loff_t , int ) ;
2344 ssize_t (*read)(struct file * , char * , size_t , loff_t * ) ;
2345 ssize_t (*write)(struct file * , char const * , size_t , loff_t * ) ;
2346 ssize_t (*aio_read)(struct kiocb * , struct iovec const * , unsigned long ,
2347 loff_t ) ;
2348 ssize_t (*aio_write)(struct kiocb * , struct iovec const * , unsigned long ,
2349 loff_t ) ;
2350 int (*readdir)(struct file * , void * , int (*)(void * , char const * , int ,
2351 loff_t , u64 , unsigned int ) ) ;
2352 unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
2353 long (*unlocked_ioctl)(struct file * , unsigned int , unsigned long ) ;
2354 long (*compat_ioctl)(struct file * , unsigned int , unsigned long ) ;
2355 int (*mmap)(struct file * , struct vm_area_struct * ) ;
2356 int (*open)(struct inode * , struct file * ) ;
2357 int (*flush)(struct file * , fl_owner_t id ) ;
2358 int (*release)(struct inode * , struct file * ) ;
2359 int (*fsync)(struct file * , int datasync ) ;
2360 int (*aio_fsync)(struct kiocb * , int datasync ) ;
2361 int (*fasync)(int , struct file * , int ) ;
2362 int (*lock)(struct file * , int , struct file_lock * ) ;
2363 ssize_t (*sendpage)(struct file * , struct page * , int , size_t , loff_t * ,
2364 int ) ;
2365 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
2366 unsigned long , unsigned long ) ;
2367 int (*check_flags)(int ) ;
2368 int (*flock)(struct file * , int , struct file_lock * ) ;
2369 ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t ,
2370 unsigned int ) ;
2371 ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t ,
2372 unsigned int ) ;
2373 int (*setlease)(struct file * , long , struct file_lock ** ) ;
2374 long (*fallocate)(struct file *file , int mode , loff_t offset , loff_t len ) ;
2375};
2376# 1578 "include/linux/fs.h"
2377struct inode_operations {
2378 struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
2379 void *(*follow_link)(struct dentry * , struct nameidata * ) ;
2380 int (*permission)(struct inode * , int , unsigned int ) ;
2381 int (*check_acl)(struct inode * , int , unsigned int ) ;
2382 int (*readlink)(struct dentry * , char * , int ) ;
2383 void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
2384 int (*create)(struct inode * , struct dentry * , int , struct nameidata * ) ;
2385 int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
2386 int (*unlink)(struct inode * , struct dentry * ) ;
2387 int (*symlink)(struct inode * , struct dentry * , char const * ) ;
2388 int (*mkdir)(struct inode * , struct dentry * , int ) ;
2389 int (*rmdir)(struct inode * , struct dentry * ) ;
2390 int (*mknod)(struct inode * , struct dentry * , int , dev_t ) ;
2391 int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
2392 void (*truncate)(struct inode * ) ;
2393 int (*setattr)(struct dentry * , struct iattr * ) ;
2394 int (*getattr)(struct vfsmount *mnt , struct dentry * , struct kstat * ) ;
2395 int (*setxattr)(struct dentry * , char const * , void const * , size_t , int ) ;
2396 ssize_t (*getxattr)(struct dentry * , char const * , void * , size_t ) ;
2397 ssize_t (*listxattr)(struct dentry * , char * , size_t ) ;
2398 int (*removexattr)(struct dentry * , char const * ) ;
2399 void (*truncate_range)(struct inode * , loff_t , loff_t ) ;
2400 int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 start , u64 len ) ;
2401} __attribute__((__aligned__((1) << (6) ))) ;
2402# 1622 "include/linux/fs.h"
2403struct super_operations {
2404 struct inode *(*alloc_inode)(struct super_block *sb ) ;
2405 void (*destroy_inode)(struct inode * ) ;
2406 void (*dirty_inode)(struct inode * , int flags ) ;
2407 int (*write_inode)(struct inode * , struct writeback_control *wbc ) ;
2408 int (*drop_inode)(struct inode * ) ;
2409 void (*evict_inode)(struct inode * ) ;
2410 void (*put_super)(struct super_block * ) ;
2411 void (*write_super)(struct super_block * ) ;
2412 int (*sync_fs)(struct super_block *sb , int wait ) ;
2413 int (*freeze_fs)(struct super_block * ) ;
2414 int (*unfreeze_fs)(struct super_block * ) ;
2415 int (*statfs)(struct dentry * , struct kstatfs * ) ;
2416 int (*remount_fs)(struct super_block * , int * , char * ) ;
2417 void (*umount_begin)(struct super_block * ) ;
2418 int (*show_options)(struct seq_file * , struct vfsmount * ) ;
2419 int (*show_devname)(struct seq_file * , struct vfsmount * ) ;
2420 int (*show_path)(struct seq_file * , struct vfsmount * ) ;
2421 int (*show_stats)(struct seq_file * , struct vfsmount * ) ;
2422 ssize_t (*quota_read)(struct super_block * , int , char * , size_t , loff_t ) ;
2423 ssize_t (*quota_write)(struct super_block * , int , char const * , size_t ,
2424 loff_t ) ;
2425 int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t ) ;
2426};
2427# 1802 "include/linux/fs.h"
2428struct file_system_type {
2429 char const *name ;
2430 int fs_flags ;
2431 struct dentry *(*mount)(struct file_system_type * , int , char const * , void * ) ;
2432 void (*kill_sb)(struct super_block * ) ;
2433 struct module *owner ;
2434 struct file_system_type *next ;
2435 struct list_head fs_supers ;
2436 struct lock_class_key s_lock_key ;
2437 struct lock_class_key s_umount_key ;
2438 struct lock_class_key s_vfs_rename_key ;
2439 struct lock_class_key i_lock_key ;
2440 struct lock_class_key i_mutex_key ;
2441 struct lock_class_key i_mutex_dir_key ;
2442 struct lock_class_key i_alloc_sem_key ;
2443};
2444# 7 "include/asm-generic/cputime.h"
2445typedef unsigned long cputime_t;
2446# 122 "include/linux/sem.h"
2447struct sem_undo_list;
2448# 135 "include/linux/sem.h"
2449struct sem_undo_list {
2450 atomic_t refcnt ;
2451 spinlock_t lock ;
2452 struct list_head list_proc ;
2453};
2454# 141 "include/linux/sem.h"
2455struct sysv_sem {
2456 struct sem_undo_list *undo_list ;
2457};
2458# 10 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
2459struct siginfo;
2460# 30 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
2461struct __anonstruct_sigset_t_250 {
2462 unsigned long sig[1] ;
2463};
2464# 30 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
2465typedef struct __anonstruct_sigset_t_250 sigset_t;
2466# 17 "include/asm-generic/signal-defs.h"
2467typedef void __signalfn_t(int );
2468# 18 "include/asm-generic/signal-defs.h"
2469typedef __signalfn_t *__sighandler_t;
2470# 20 "include/asm-generic/signal-defs.h"
2471typedef void __restorefn_t(void);
2472# 21 "include/asm-generic/signal-defs.h"
2473typedef __restorefn_t *__sigrestore_t;
2474# 167 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
2475struct sigaction {
2476 __sighandler_t sa_handler ;
2477 unsigned long sa_flags ;
2478 __sigrestore_t sa_restorer ;
2479 sigset_t sa_mask ;
2480};
2481# 174 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
2482struct k_sigaction {
2483 struct sigaction sa ;
2484};
2485# 7 "include/asm-generic/siginfo.h"
2486union sigval {
2487 int sival_int ;
2488 void *sival_ptr ;
2489};
2490# 7 "include/asm-generic/siginfo.h"
2491typedef union sigval sigval_t;
2492# 40 "include/asm-generic/siginfo.h"
2493struct __anonstruct__kill_252 {
2494 __kernel_pid_t _pid ;
2495 __kernel_uid32_t _uid ;
2496};
2497# 40 "include/asm-generic/siginfo.h"
2498struct __anonstruct__timer_253 {
2499 __kernel_timer_t _tid ;
2500 int _overrun ;
2501 char _pad[sizeof(__kernel_uid32_t ) - sizeof(int )] ;
2502 sigval_t _sigval ;
2503 int _sys_private ;
2504};
2505# 40 "include/asm-generic/siginfo.h"
2506struct __anonstruct__rt_254 {
2507 __kernel_pid_t _pid ;
2508 __kernel_uid32_t _uid ;
2509 sigval_t _sigval ;
2510};
2511# 40 "include/asm-generic/siginfo.h"
2512struct __anonstruct__sigchld_255 {
2513 __kernel_pid_t _pid ;
2514 __kernel_uid32_t _uid ;
2515 int _status ;
2516 __kernel_clock_t _utime ;
2517 __kernel_clock_t _stime ;
2518};
2519# 40 "include/asm-generic/siginfo.h"
2520struct __anonstruct__sigfault_256 {
2521 void *_addr ;
2522 short _addr_lsb ;
2523};
2524# 40 "include/asm-generic/siginfo.h"
2525struct __anonstruct__sigpoll_257 {
2526 long _band ;
2527 int _fd ;
2528};
2529# 40 "include/asm-generic/siginfo.h"
2530union __anonunion__sifields_251 {
2531 int _pad[(128UL - 4UL * sizeof(int )) / sizeof(int )] ;
2532 struct __anonstruct__kill_252 _kill ;
2533 struct __anonstruct__timer_253 _timer ;
2534 struct __anonstruct__rt_254 _rt ;
2535 struct __anonstruct__sigchld_255 _sigchld ;
2536 struct __anonstruct__sigfault_256 _sigfault ;
2537 struct __anonstruct__sigpoll_257 _sigpoll ;
2538};
2539# 40 "include/asm-generic/siginfo.h"
2540struct siginfo {
2541 int si_signo ;
2542 int si_errno ;
2543 int si_code ;
2544 union __anonunion__sifields_251 _sifields ;
2545};
2546# 40 "include/asm-generic/siginfo.h"
2547typedef struct siginfo siginfo_t;
2548# 28 "include/linux/signal.h"
2549struct sigpending {
2550 struct list_head list ;
2551 sigset_t signal ;
2552};
2553# 97 "include/linux/proportions.h"
2554struct prop_local_single {
2555 unsigned long events ;
2556 unsigned long period ;
2557 int shift ;
2558 spinlock_t lock ;
2559};
2560# 10 "include/linux/seccomp.h"
2561struct __anonstruct_seccomp_t_260 {
2562 int mode ;
2563};
2564# 10 "include/linux/seccomp.h"
2565typedef struct __anonstruct_seccomp_t_260 seccomp_t;
2566# 82 "include/linux/plist.h"
2567struct plist_head {
2568 struct list_head node_list ;
2569 raw_spinlock_t *rawlock ;
2570 spinlock_t *spinlock ;
2571};
2572# 90 "include/linux/plist.h"
2573struct plist_node {
2574 int prio ;
2575 struct list_head prio_list ;
2576 struct list_head node_list ;
2577};
2578# 40 "include/linux/rtmutex.h"
2579struct rt_mutex_waiter;
2580# 42 "include/linux/resource.h"
2581struct rlimit {
2582 unsigned long rlim_cur ;
2583 unsigned long rlim_max ;
2584};
2585# 11 "include/linux/task_io_accounting.h"
2586struct task_io_accounting {
2587 u64 rchar ;
2588 u64 wchar ;
2589 u64 syscr ;
2590 u64 syscw ;
2591 u64 read_bytes ;
2592 u64 write_bytes ;
2593 u64 cancelled_write_bytes ;
2594};
2595# 18 "include/linux/latencytop.h"
2596struct latency_record {
2597 unsigned long backtrace[12] ;
2598 unsigned int count ;
2599 unsigned long time ;
2600 unsigned long max ;
2601};
2602# 29 "include/linux/key.h"
2603typedef int32_t key_serial_t;
2604# 32 "include/linux/key.h"
2605typedef uint32_t key_perm_t;
2606# 34 "include/linux/key.h"
2607struct key;
2608# 76 "include/linux/key.h"
2609struct signal_struct;
2610# 79 "include/linux/key.h"
2611struct key_type;
2612# 81 "include/linux/key.h"
2613struct keyring_list;
2614# 124 "include/linux/key.h"
2615struct key_user;
2616# 124 "include/linux/key.h"
2617union __anonunion____missing_field_name_261 {
2618 time_t expiry ;
2619 time_t revoked_at ;
2620};
2621# 124 "include/linux/key.h"
2622union __anonunion_type_data_262 {
2623 struct list_head link ;
2624 unsigned long x[2] ;
2625 void *p[2] ;
2626 int reject_error ;
2627};
2628# 124 "include/linux/key.h"
2629union __anonunion_payload_263 {
2630 unsigned long value ;
2631 void *rcudata ;
2632 void *data ;
2633 struct keyring_list *subscriptions ;
2634};
2635# 124 "include/linux/key.h"
2636struct key {
2637 atomic_t usage ;
2638 key_serial_t serial ;
2639 struct rb_node serial_node ;
2640 struct key_type *type ;
2641 struct rw_semaphore sem ;
2642 struct key_user *user ;
2643 void *security ;
2644 union __anonunion____missing_field_name_261 __annonCompField41 ;
2645 uid_t uid ;
2646 gid_t gid ;
2647 key_perm_t perm ;
2648 unsigned short quotalen ;
2649 unsigned short datalen ;
2650 unsigned long flags ;
2651 char *description ;
2652 union __anonunion_type_data_262 type_data ;
2653 union __anonunion_payload_263 payload ;
2654};
2655# 18 "include/linux/selinux.h"
2656struct audit_context;
2657# 31 "include/linux/cred.h"
2658struct group_info {
2659 atomic_t usage ;
2660 int ngroups ;
2661 int nblocks ;
2662 gid_t small_block[32] ;
2663 gid_t *blocks[0] ;
2664};
2665# 83 "include/linux/cred.h"
2666struct thread_group_cred {
2667 atomic_t usage ;
2668 pid_t tgid ;
2669 spinlock_t lock ;
2670 struct key *session_keyring ;
2671 struct key *process_keyring ;
2672 struct rcu_head rcu ;
2673};
2674# 116 "include/linux/cred.h"
2675struct cred {
2676 atomic_t usage ;
2677 atomic_t subscribers ;
2678 void *put_addr ;
2679 unsigned int magic ;
2680 uid_t uid ;
2681 gid_t gid ;
2682 uid_t suid ;
2683 gid_t sgid ;
2684 uid_t euid ;
2685 gid_t egid ;
2686 uid_t fsuid ;
2687 gid_t fsgid ;
2688 unsigned int securebits ;
2689 kernel_cap_t cap_inheritable ;
2690 kernel_cap_t cap_permitted ;
2691 kernel_cap_t cap_effective ;
2692 kernel_cap_t cap_bset ;
2693 unsigned char jit_keyring ;
2694 struct key *thread_keyring ;
2695 struct key *request_key_auth ;
2696 struct thread_group_cred *tgcred ;
2697 void *security ;
2698 struct user_struct *user ;
2699 struct user_namespace *user_ns ;
2700 struct group_info *group_info ;
2701 struct rcu_head rcu ;
2702};
2703# 97 "include/linux/sched.h"
2704struct futex_pi_state;
2705# 98 "include/linux/sched.h"
2706struct robust_list_head;
2707# 99 "include/linux/sched.h"
2708struct bio_list;
2709# 100 "include/linux/sched.h"
2710struct fs_struct;
2711# 101 "include/linux/sched.h"
2712struct perf_event_context;
2713# 102 "include/linux/sched.h"
2714struct blk_plug;
2715# 151 "include/linux/sched.h"
2716struct cfs_rq;
2717# 58 "include/linux/aio_abi.h"
2718struct io_event {
2719 __u64 data ;
2720 __u64 obj ;
2721 __s64 res ;
2722 __s64 res2 ;
2723};
2724# 16 "include/linux/uio.h"
2725struct iovec {
2726 void *iov_base ;
2727 __kernel_size_t iov_len ;
2728};
2729# 15 "include/linux/aio.h"
2730struct kioctx;
2731# 87 "include/linux/aio.h"
2732union __anonunion_ki_obj_265 {
2733 void *user ;
2734 struct task_struct *tsk ;
2735};
2736# 87 "include/linux/aio.h"
2737struct eventfd_ctx;
2738# 87 "include/linux/aio.h"
2739struct kiocb {
2740 struct list_head ki_run_list ;
2741 unsigned long ki_flags ;
2742 int ki_users ;
2743 unsigned int ki_key ;
2744 struct file *ki_filp ;
2745 struct kioctx *ki_ctx ;
2746 int (*ki_cancel)(struct kiocb * , struct io_event * ) ;
2747 ssize_t (*ki_retry)(struct kiocb * ) ;
2748 void (*ki_dtor)(struct kiocb * ) ;
2749 union __anonunion_ki_obj_265 ki_obj ;
2750 __u64 ki_user_data ;
2751 loff_t ki_pos ;
2752 void *private ;
2753 unsigned short ki_opcode ;
2754 size_t ki_nbytes ;
2755 char *ki_buf ;
2756 size_t ki_left ;
2757 struct iovec ki_inline_vec ;
2758 struct iovec *ki_iovec ;
2759 unsigned long ki_nr_segs ;
2760 unsigned long ki_cur_seg ;
2761 struct list_head ki_list ;
2762 struct eventfd_ctx *ki_eventfd ;
2763};
2764# 165 "include/linux/aio.h"
2765struct aio_ring_info {
2766 unsigned long mmap_base ;
2767 unsigned long mmap_size ;
2768 struct page **ring_pages ;
2769 spinlock_t ring_lock ;
2770 long nr_pages ;
2771 unsigned int nr ;
2772 unsigned int tail ;
2773 struct page *internal_pages[8] ;
2774};
2775# 178 "include/linux/aio.h"
2776struct kioctx {
2777 atomic_t users ;
2778 int dead ;
2779 struct mm_struct *mm ;
2780 unsigned long user_id ;
2781 struct hlist_node list ;
2782 wait_queue_head_t wait ;
2783 spinlock_t ctx_lock ;
2784 int reqs_active ;
2785 struct list_head active_reqs ;
2786 struct list_head run_list ;
2787 unsigned int max_reqs ;
2788 struct aio_ring_info ring_info ;
2789 struct delayed_work wq ;
2790 struct rcu_head rcu_head ;
2791};
2792# 441 "include/linux/sched.h"
2793struct sighand_struct {
2794 atomic_t count ;
2795 struct k_sigaction action[64] ;
2796 spinlock_t siglock ;
2797 wait_queue_head_t signalfd_wqh ;
2798};
2799# 448 "include/linux/sched.h"
2800struct pacct_struct {
2801 int ac_flag ;
2802 long ac_exitcode ;
2803 unsigned long ac_mem ;
2804 cputime_t ac_utime ;
2805 cputime_t ac_stime ;
2806 unsigned long ac_minflt ;
2807 unsigned long ac_majflt ;
2808};
2809# 456 "include/linux/sched.h"
2810struct cpu_itimer {
2811 cputime_t expires ;
2812 cputime_t incr ;
2813 u32 error ;
2814 u32 incr_error ;
2815};
2816# 474 "include/linux/sched.h"
2817struct task_cputime {
2818 cputime_t utime ;
2819 cputime_t stime ;
2820 unsigned long long sum_exec_runtime ;
2821};
2822# 510 "include/linux/sched.h"
2823struct thread_group_cputimer {
2824 struct task_cputime cputime ;
2825 int running ;
2826 spinlock_t lock ;
2827};
2828# 517 "include/linux/sched.h"
2829struct autogroup;
2830# 526 "include/linux/sched.h"
2831struct tty_struct;
2832# 526 "include/linux/sched.h"
2833struct taskstats;
2834# 526 "include/linux/sched.h"
2835struct tty_audit_buf;
2836# 526 "include/linux/sched.h"
2837struct signal_struct {
2838 atomic_t sigcnt ;
2839 atomic_t live ;
2840 int nr_threads ;
2841 wait_queue_head_t wait_chldexit ;
2842 struct task_struct *curr_target ;
2843 struct sigpending shared_pending ;
2844 int group_exit_code ;
2845 int notify_count ;
2846 struct task_struct *group_exit_task ;
2847 int group_stop_count ;
2848 unsigned int flags ;
2849 struct list_head posix_timers ;
2850 struct hrtimer real_timer ;
2851 struct pid *leader_pid ;
2852 ktime_t it_real_incr ;
2853 struct cpu_itimer it[2] ;
2854 struct thread_group_cputimer cputimer ;
2855 struct task_cputime cputime_expires ;
2856 struct list_head cpu_timers[3] ;
2857 struct pid *tty_old_pgrp ;
2858 int leader ;
2859 struct tty_struct *tty ;
2860 struct autogroup *autogroup ;
2861 cputime_t utime ;
2862 cputime_t stime ;
2863 cputime_t cutime ;
2864 cputime_t cstime ;
2865 cputime_t gtime ;
2866 cputime_t cgtime ;
2867 cputime_t prev_utime ;
2868 cputime_t prev_stime ;
2869 unsigned long nvcsw ;
2870 unsigned long nivcsw ;
2871 unsigned long cnvcsw ;
2872 unsigned long cnivcsw ;
2873 unsigned long min_flt ;
2874 unsigned long maj_flt ;
2875 unsigned long cmin_flt ;
2876 unsigned long cmaj_flt ;
2877 unsigned long inblock ;
2878 unsigned long oublock ;
2879 unsigned long cinblock ;
2880 unsigned long coublock ;
2881 unsigned long maxrss ;
2882 unsigned long cmaxrss ;
2883 struct task_io_accounting ioac ;
2884 unsigned long long sum_sched_runtime ;
2885 struct rlimit rlim[16] ;
2886 struct pacct_struct pacct ;
2887 struct taskstats *stats ;
2888 unsigned int audit_tty ;
2889 struct tty_audit_buf *tty_audit_buf ;
2890 struct rw_semaphore threadgroup_fork_lock ;
2891 int oom_adj ;
2892 int oom_score_adj ;
2893 int oom_score_adj_min ;
2894 struct mutex cred_guard_mutex ;
2895};
2896# 687 "include/linux/sched.h"
2897struct user_struct {
2898 atomic_t __count ;
2899 atomic_t processes ;
2900 atomic_t files ;
2901 atomic_t sigpending ;
2902 atomic_t inotify_watches ;
2903 atomic_t inotify_devs ;
2904 atomic_t fanotify_listeners ;
2905 atomic_long_t epoll_watches ;
2906 unsigned long mq_bytes ;
2907 unsigned long locked_shm ;
2908 struct key *uid_keyring ;
2909 struct key *session_keyring ;
2910 struct hlist_node uidhash_node ;
2911 uid_t uid ;
2912 struct user_namespace *user_ns ;
2913 atomic_long_t locked_vm ;
2914};
2915# 732 "include/linux/sched.h"
2916struct reclaim_state;
2917# 735 "include/linux/sched.h"
2918struct sched_info {
2919 unsigned long pcount ;
2920 unsigned long long run_delay ;
2921 unsigned long long last_arrival ;
2922 unsigned long long last_queued ;
2923};
2924# 747 "include/linux/sched.h"
2925struct task_delay_info {
2926 spinlock_t lock ;
2927 unsigned int flags ;
2928 struct timespec blkio_start ;
2929 struct timespec blkio_end ;
2930 u64 blkio_delay ;
2931 u64 swapin_delay ;
2932 u32 blkio_count ;
2933 u32 swapin_count ;
2934 struct timespec freepages_start ;
2935 struct timespec freepages_end ;
2936 u64 freepages_delay ;
2937 u32 freepages_count ;
2938};
2939# 1050 "include/linux/sched.h"
2940struct io_context;
2941# 1064 "include/linux/sched.h"
2942struct rq;
2943# 1084 "include/linux/sched.h"
2944struct sched_class {
2945 struct sched_class const *next ;
2946 void (*enqueue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
2947 void (*dequeue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
2948 void (*yield_task)(struct rq *rq ) ;
2949 bool (*yield_to_task)(struct rq *rq , struct task_struct *p , bool preempt ) ;
2950 void (*check_preempt_curr)(struct rq *rq , struct task_struct *p , int flags ) ;
2951 struct task_struct *(*pick_next_task)(struct rq *rq ) ;
2952 void (*put_prev_task)(struct rq *rq , struct task_struct *p ) ;
2953 int (*select_task_rq)(struct task_struct *p , int sd_flag , int flags ) ;
2954 void (*pre_schedule)(struct rq *this_rq , struct task_struct *task ) ;
2955 void (*post_schedule)(struct rq *this_rq ) ;
2956 void (*task_waking)(struct task_struct *task ) ;
2957 void (*task_woken)(struct rq *this_rq , struct task_struct *task ) ;
2958 void (*set_cpus_allowed)(struct task_struct *p , struct cpumask const *newmask ) ;
2959 void (*rq_online)(struct rq *rq ) ;
2960 void (*rq_offline)(struct rq *rq ) ;
2961 void (*set_curr_task)(struct rq *rq ) ;
2962 void (*task_tick)(struct rq *rq , struct task_struct *p , int queued ) ;
2963 void (*task_fork)(struct task_struct *p ) ;
2964 void (*switched_from)(struct rq *this_rq , struct task_struct *task ) ;
2965 void (*switched_to)(struct rq *this_rq , struct task_struct *task ) ;
2966 void (*prio_changed)(struct rq *this_rq , struct task_struct *task , int oldprio ) ;
2967 unsigned int (*get_rr_interval)(struct rq *rq , struct task_struct *task ) ;
2968 void (*task_move_group)(struct task_struct *p , int on_rq ) ;
2969};
2970# 1129 "include/linux/sched.h"
2971struct load_weight {
2972 unsigned long weight ;
2973 unsigned long inv_weight ;
2974};
2975# 1134 "include/linux/sched.h"
2976struct sched_statistics {
2977 u64 wait_start ;
2978 u64 wait_max ;
2979 u64 wait_count ;
2980 u64 wait_sum ;
2981 u64 iowait_count ;
2982 u64 iowait_sum ;
2983 u64 sleep_start ;
2984 u64 sleep_max ;
2985 s64 sum_sleep_runtime ;
2986 u64 block_start ;
2987 u64 block_max ;
2988 u64 exec_max ;
2989 u64 slice_max ;
2990 u64 nr_migrations_cold ;
2991 u64 nr_failed_migrations_affine ;
2992 u64 nr_failed_migrations_running ;
2993 u64 nr_failed_migrations_hot ;
2994 u64 nr_forced_migrations ;
2995 u64 nr_wakeups ;
2996 u64 nr_wakeups_sync ;
2997 u64 nr_wakeups_migrate ;
2998 u64 nr_wakeups_local ;
2999 u64 nr_wakeups_remote ;
3000 u64 nr_wakeups_affine ;
3001 u64 nr_wakeups_affine_attempts ;
3002 u64 nr_wakeups_passive ;
3003 u64 nr_wakeups_idle ;
3004};
3005# 1169 "include/linux/sched.h"
3006struct sched_entity {
3007 struct load_weight load ;
3008 struct rb_node run_node ;
3009 struct list_head group_node ;
3010 unsigned int on_rq ;
3011 u64 exec_start ;
3012 u64 sum_exec_runtime ;
3013 u64 vruntime ;
3014 u64 prev_sum_exec_runtime ;
3015 u64 nr_migrations ;
3016 struct sched_statistics statistics ;
3017 struct sched_entity *parent ;
3018 struct cfs_rq *cfs_rq ;
3019 struct cfs_rq *my_q ;
3020};
3021# 1195 "include/linux/sched.h"
3022struct rt_rq;
3023# 1195 "include/linux/sched.h"
3024struct sched_rt_entity {
3025 struct list_head run_list ;
3026 unsigned long timeout ;
3027 unsigned int time_slice ;
3028 int nr_cpus_allowed ;
3029 struct sched_rt_entity *back ;
3030 struct sched_rt_entity *parent ;
3031 struct rt_rq *rt_rq ;
3032 struct rt_rq *my_q ;
3033};
3034# 1220 "include/linux/sched.h"
3035struct css_set;
3036# 1220 "include/linux/sched.h"
3037struct compat_robust_list_head;
3038# 1220 "include/linux/sched.h"
3039struct ftrace_ret_stack;
3040# 1220 "include/linux/sched.h"
3041struct mem_cgroup;
3042# 1220 "include/linux/sched.h"
3043struct memcg_batch_info {
3044 int do_batch ;
3045 struct mem_cgroup *memcg ;
3046 unsigned long nr_pages ;
3047 unsigned long memsw_nr_pages ;
3048};
3049# 1220 "include/linux/sched.h"
3050struct task_struct {
3051 long volatile state ;
3052 void *stack ;
3053 atomic_t usage ;
3054 unsigned int flags ;
3055 unsigned int ptrace ;
3056 struct task_struct *wake_entry ;
3057 int on_cpu ;
3058 int on_rq ;
3059 int prio ;
3060 int static_prio ;
3061 int normal_prio ;
3062 unsigned int rt_priority ;
3063 struct sched_class const *sched_class ;
3064 struct sched_entity se ;
3065 struct sched_rt_entity rt ;
3066 struct hlist_head preempt_notifiers ;
3067 unsigned char fpu_counter ;
3068 unsigned int btrace_seq ;
3069 unsigned int policy ;
3070 cpumask_t cpus_allowed ;
3071 struct sched_info sched_info ;
3072 struct list_head tasks ;
3073 struct plist_node pushable_tasks ;
3074 struct mm_struct *mm ;
3075 struct mm_struct *active_mm ;
3076 unsigned int brk_randomized : 1 ;
3077 int exit_state ;
3078 int exit_code ;
3079 int exit_signal ;
3080 int pdeath_signal ;
3081 unsigned int group_stop ;
3082 unsigned int personality ;
3083 unsigned int did_exec : 1 ;
3084 unsigned int in_execve : 1 ;
3085 unsigned int in_iowait : 1 ;
3086 unsigned int sched_reset_on_fork : 1 ;
3087 unsigned int sched_contributes_to_load : 1 ;
3088 pid_t pid ;
3089 pid_t tgid ;
3090 unsigned long stack_canary ;
3091 struct task_struct *real_parent ;
3092 struct task_struct *parent ;
3093 struct list_head children ;
3094 struct list_head sibling ;
3095 struct task_struct *group_leader ;
3096 struct list_head ptraced ;
3097 struct list_head ptrace_entry ;
3098 struct pid_link pids[3] ;
3099 struct list_head thread_group ;
3100 struct completion *vfork_done ;
3101 int *set_child_tid ;
3102 int *clear_child_tid ;
3103 cputime_t utime ;
3104 cputime_t stime ;
3105 cputime_t utimescaled ;
3106 cputime_t stimescaled ;
3107 cputime_t gtime ;
3108 cputime_t prev_utime ;
3109 cputime_t prev_stime ;
3110 unsigned long nvcsw ;
3111 unsigned long nivcsw ;
3112 struct timespec start_time ;
3113 struct timespec real_start_time ;
3114 unsigned long min_flt ;
3115 unsigned long maj_flt ;
3116 struct task_cputime cputime_expires ;
3117 struct list_head cpu_timers[3] ;
3118 struct cred const *real_cred ;
3119 struct cred const *cred ;
3120 struct cred *replacement_session_keyring ;
3121 char comm[16] ;
3122 int link_count ;
3123 int total_link_count ;
3124 struct sysv_sem sysvsem ;
3125 unsigned long last_switch_count ;
3126 struct thread_struct thread ;
3127 struct fs_struct *fs ;
3128 struct files_struct *files ;
3129 struct nsproxy *nsproxy ;
3130 struct signal_struct *signal ;
3131 struct sighand_struct *sighand ;
3132 sigset_t blocked ;
3133 sigset_t real_blocked ;
3134 sigset_t saved_sigmask ;
3135 struct sigpending pending ;
3136 unsigned long sas_ss_sp ;
3137 size_t sas_ss_size ;
3138 int (*notifier)(void *priv ) ;
3139 void *notifier_data ;
3140 sigset_t *notifier_mask ;
3141 struct audit_context *audit_context ;
3142 uid_t loginuid ;
3143 unsigned int sessionid ;
3144 seccomp_t seccomp ;
3145 u32 parent_exec_id ;
3146 u32 self_exec_id ;
3147 spinlock_t alloc_lock ;
3148 struct irqaction *irqaction ;
3149 raw_spinlock_t pi_lock ;
3150 struct plist_head pi_waiters ;
3151 struct rt_mutex_waiter *pi_blocked_on ;
3152 struct mutex_waiter *blocked_on ;
3153 unsigned int irq_events ;
3154 unsigned long hardirq_enable_ip ;
3155 unsigned long hardirq_disable_ip ;
3156 unsigned int hardirq_enable_event ;
3157 unsigned int hardirq_disable_event ;
3158 int hardirqs_enabled ;
3159 int hardirq_context ;
3160 unsigned long softirq_disable_ip ;
3161 unsigned long softirq_enable_ip ;
3162 unsigned int softirq_disable_event ;
3163 unsigned int softirq_enable_event ;
3164 int softirqs_enabled ;
3165 int softirq_context ;
3166 u64 curr_chain_key ;
3167 int lockdep_depth ;
3168 unsigned int lockdep_recursion ;
3169 struct held_lock held_locks[48UL] ;
3170 gfp_t lockdep_reclaim_gfp ;
3171 void *journal_info ;
3172 struct bio_list *bio_list ;
3173 struct blk_plug *plug ;
3174 struct reclaim_state *reclaim_state ;
3175 struct backing_dev_info *backing_dev_info ;
3176 struct io_context *io_context ;
3177 unsigned long ptrace_message ;
3178 siginfo_t *last_siginfo ;
3179 struct task_io_accounting ioac ;
3180 u64 acct_rss_mem1 ;
3181 u64 acct_vm_mem1 ;
3182 cputime_t acct_timexpd ;
3183 nodemask_t mems_allowed ;
3184 int mems_allowed_change_disable ;
3185 int cpuset_mem_spread_rotor ;
3186 int cpuset_slab_spread_rotor ;
3187 struct css_set *cgroups ;
3188 struct list_head cg_list ;
3189 struct robust_list_head *robust_list ;
3190 struct compat_robust_list_head *compat_robust_list ;
3191 struct list_head pi_state_list ;
3192 struct futex_pi_state *pi_state_cache ;
3193 struct perf_event_context *perf_event_ctxp[2] ;
3194 struct mutex perf_event_mutex ;
3195 struct list_head perf_event_list ;
3196 struct mempolicy *mempolicy ;
3197 short il_next ;
3198 short pref_node_fork ;
3199 atomic_t fs_excl ;
3200 struct rcu_head rcu ;
3201 struct pipe_inode_info *splice_pipe ;
3202 struct task_delay_info *delays ;
3203 int make_it_fail ;
3204 struct prop_local_single dirties ;
3205 int latency_record_count ;
3206 struct latency_record latency_record[32] ;
3207 unsigned long timer_slack_ns ;
3208 unsigned long default_timer_slack_ns ;
3209 struct list_head *scm_work_list ;
3210 int curr_ret_stack ;
3211 struct ftrace_ret_stack *ret_stack ;
3212 unsigned long long ftrace_timestamp ;
3213 atomic_t trace_overrun ;
3214 atomic_t tracing_graph_pause ;
3215 unsigned long trace ;
3216 unsigned long trace_recursion ;
3217 struct memcg_batch_info memcg_batch ;
3218 atomic_t ptrace_bp_refcnt ;
3219};
3220# 25 "include/linux/usb.h"
3221struct usb_device;
3222# 27 "include/linux/usb.h"
3223struct wusb_dev;
3224# 47 "include/linux/usb.h"
3225struct ep_device;
3226# 64 "include/linux/usb.h"
3227struct usb_host_endpoint {
3228 struct usb_endpoint_descriptor desc ;
3229 struct usb_ss_ep_comp_descriptor ss_ep_comp ;
3230 struct list_head urb_list ;
3231 void *hcpriv ;
3232 struct ep_device *ep_dev ;
3233 unsigned char *extra ;
3234 int extralen ;
3235 int enabled ;
3236};
3237# 77 "include/linux/usb.h"
3238struct usb_host_interface {
3239 struct usb_interface_descriptor desc ;
3240 struct usb_host_endpoint *endpoint ;
3241 char *string ;
3242 unsigned char *extra ;
3243 int extralen ;
3244};
3245# 90 "include/linux/usb.h"
3246enum usb_interface_condition {
3247 USB_INTERFACE_UNBOUND = 0,
3248 USB_INTERFACE_BINDING = 1,
3249 USB_INTERFACE_BOUND = 2,
3250 USB_INTERFACE_UNBINDING = 3
3251} ;
3252# 159 "include/linux/usb.h"
3253struct usb_interface {
3254 struct usb_host_interface *altsetting ;
3255 struct usb_host_interface *cur_altsetting ;
3256 unsigned int num_altsetting ;
3257 struct usb_interface_assoc_descriptor *intf_assoc ;
3258 int minor ;
3259 enum usb_interface_condition condition ;
3260 unsigned int sysfs_files_created : 1 ;
3261 unsigned int ep_devs_created : 1 ;
3262 unsigned int unregistering : 1 ;
3263 unsigned int needs_remote_wakeup : 1 ;
3264 unsigned int needs_altsetting0 : 1 ;
3265 unsigned int needs_binding : 1 ;
3266 unsigned int reset_running : 1 ;
3267 unsigned int resetting_device : 1 ;
3268 struct device dev ;
3269 struct device *usb_dev ;
3270 atomic_t pm_usage_cnt ;
3271 struct work_struct reset_ws ;
3272};
3273# 222 "include/linux/usb.h"
3274struct usb_interface_cache {
3275 unsigned int num_altsetting ;
3276 struct kref ref ;
3277 struct usb_host_interface altsetting[0] ;
3278};
3279# 274 "include/linux/usb.h"
3280struct usb_host_config {
3281 struct usb_config_descriptor desc ;
3282 char *string ;
3283 struct usb_interface_assoc_descriptor *intf_assoc[16] ;
3284 struct usb_interface *interface[32] ;
3285 struct usb_interface_cache *intf_cache[32] ;
3286 unsigned char *extra ;
3287 int extralen ;
3288};
3289# 305 "include/linux/usb.h"
3290struct usb_devmap {
3291 unsigned long devicemap[128UL / (8UL * sizeof(unsigned long ))] ;
3292};
3293# 312 "include/linux/usb.h"
3294struct mon_bus;
3295# 312 "include/linux/usb.h"
3296struct usb_bus {
3297 struct device *controller ;
3298 int busnum ;
3299 char const *bus_name ;
3300 u8 uses_dma ;
3301 u8 uses_pio_for_control ;
3302 u8 otg_port ;
3303 unsigned int is_b_host : 1 ;
3304 unsigned int b_hnp_enable : 1 ;
3305 unsigned int sg_tablesize ;
3306 int devnum_next ;
3307 struct usb_devmap devmap ;
3308 struct usb_device *root_hub ;
3309 struct usb_bus *hs_companion ;
3310 struct list_head bus_list ;
3311 int bandwidth_allocated ;
3312 int bandwidth_int_reqs ;
3313 int bandwidth_isoc_reqs ;
3314 struct dentry *usbfs_dentry ;
3315 struct mon_bus *mon_bus ;
3316 int monitored ;
3317};
3318# 367 "include/linux/usb.h"
3319struct usb_tt;
3320# 426 "include/linux/usb.h"
3321struct usb_device {
3322 int devnum ;
3323 char devpath[16] ;
3324 u32 route ;
3325 enum usb_device_state state ;
3326 enum usb_device_speed speed ;
3327 struct usb_tt *tt ;
3328 int ttport ;
3329 unsigned int toggle[2] ;
3330 struct usb_device *parent ;
3331 struct usb_bus *bus ;
3332 struct usb_host_endpoint ep0 ;
3333 struct device dev ;
3334 struct usb_device_descriptor descriptor ;
3335 struct usb_host_config *config ;
3336 struct usb_host_config *actconfig ;
3337 struct usb_host_endpoint *ep_in[16] ;
3338 struct usb_host_endpoint *ep_out[16] ;
3339 char **rawdescriptors ;
3340 unsigned short bus_mA ;
3341 u8 portnum ;
3342 u8 level ;
3343 unsigned int can_submit : 1 ;
3344 unsigned int persist_enabled : 1 ;
3345 unsigned int have_langid : 1 ;
3346 unsigned int authorized : 1 ;
3347 unsigned int authenticated : 1 ;
3348 unsigned int wusb : 1 ;
3349 int string_langid ;
3350 char *product ;
3351 char *manufacturer ;
3352 char *serial ;
3353 struct list_head filelist ;
3354 struct device *usb_classdev ;
3355 struct dentry *usbfs_dentry ;
3356 int maxchild ;
3357 struct usb_device *children[31] ;
3358 u32 quirks ;
3359 atomic_t urbnum ;
3360 unsigned long active_duration ;
3361 unsigned long connect_time ;
3362 unsigned int do_remote_wakeup : 1 ;
3363 unsigned int reset_resume : 1 ;
3364 struct wusb_dev *wusb_dev ;
3365 int slot_id ;
3366};
3367# 983 "include/linux/usb.h"
3368struct usb_iso_packet_descriptor {
3369 unsigned int offset ;
3370 unsigned int length ;
3371 unsigned int actual_length ;
3372 int status ;
3373};
3374# 990 "include/linux/usb.h"
3375struct urb;
3376# 992 "include/linux/usb.h"
3377struct usb_anchor {
3378 struct list_head urb_list ;
3379 wait_queue_head_t wait ;
3380 spinlock_t lock ;
3381 unsigned int poisoned : 1 ;
3382};
3383# 1183 "include/linux/usb.h"
3384struct urb {
3385 struct kref kref ;
3386 void *hcpriv ;
3387 atomic_t use_count ;
3388 atomic_t reject ;
3389 int unlinked ;
3390 struct list_head urb_list ;
3391 struct list_head anchor_list ;
3392 struct usb_anchor *anchor ;
3393 struct usb_device *dev ;
3394 struct usb_host_endpoint *ep ;
3395 unsigned int pipe ;
3396 unsigned int stream_id ;
3397 int status ;
3398 unsigned int transfer_flags ;
3399 void *transfer_buffer ;
3400 dma_addr_t transfer_dma ;
3401 struct scatterlist *sg ;
3402 int num_sgs ;
3403 u32 transfer_buffer_length ;
3404 u32 actual_length ;
3405 unsigned char *setup_packet ;
3406 dma_addr_t setup_dma ;
3407 int start_frame ;
3408 int number_of_packets ;
3409 int interval ;
3410 int error_count ;
3411 void *context ;
3412 void (*complete)(struct urb * ) ;
3413 struct usb_iso_packet_descriptor iso_frame_desc[0] ;
3414};
3415# 179 "include/linux/types.h"
3416typedef __u32 __le32;
3417# 16 "include/linux/dynamic_debug.h"
3418struct _ddebug {
3419 char const *modname ;
3420 char const *function ;
3421 char const *filename ;
3422 char const *format ;
3423 unsigned int lineno : 24 ;
3424 unsigned int flags : 8 ;
3425 char enabled ;
3426} __attribute__((__aligned__(8))) ;
3427# 24 "include/linux/sysfs.h"
3428enum kobj_ns_type;
3429# 12 "include/linux/firmware.h"
3430struct firmware {
3431 size_t size ;
3432 u8 const *data ;
3433 struct page **pages ;
3434};
3435# 186 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/uwb/i1480/dfu/i1480-dfu.h"
3436struct i1480_rceb {
3437 struct uwb_rceb rceb ;
3438 __le16 wParamLength ;
3439} __attribute__((__packed__)) ;
3440# 38 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
3441struct fw_hdr {
3442 unsigned long address ;
3443 size_t length ;
3444 u32 const *bin ;
3445 struct fw_hdr *next ;
3446};
3447# 392 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
3448struct i1480_evt_reset {
3449 struct uwb_rceb rceb ;
3450 u8 bResultCode ;
3451} __attribute__((__packed__)) ;
3452# 24 "include/linux/sysfs.h"
3453enum kobj_ns_type;
3454# 177 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/uwb/i1480/dfu/i1480-dfu.h"
3455struct i1480_evt_confirm {
3456 struct uwb_rceb rceb ;
3457 __le16 wParamLength ;
3458 u8 bResultCode ;
3459} __attribute__((__packed__)) ;
3460# 231 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/uwb/i1480/dfu/i1480-dfu.h"
3461struct i1480_cmd_mpi_write {
3462 struct uwb_rccb rccb ;
3463 __le16 size ;
3464 u8 data[] ;
3465};
3466# 238 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/uwb/i1480/dfu/i1480-dfu.h"
3467struct __anonstruct_data_213 {
3468 u8 page ;
3469 u8 offset ;
3470} __attribute__((__packed__)) ;
3471# 238 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/uwb/i1480/dfu/i1480-dfu.h"
3472struct i1480_cmd_mpi_read {
3473 struct uwb_rccb rccb ;
3474 __le16 size ;
3475 struct __anonstruct_data_213 data[] ;
3476} __attribute__((__packed__)) ;
3477# 247 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/uwb/i1480/dfu/i1480-dfu.h"
3478struct __anonstruct_data_214 {
3479 u8 page ;
3480 u8 offset ;
3481 u8 value ;
3482} __attribute__((__packed__)) ;
3483# 247 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/uwb/i1480/dfu/i1480-dfu.h"
3484struct i1480_evt_mpi_read {
3485 struct uwb_rceb rceb ;
3486 __le16 wParamLength ;
3487 u8 bResultCode ;
3488 __le16 size ;
3489 struct __anonstruct_data_214 data[] ;
3490} __attribute__((__packed__)) ;
3491# 290 "include/linux/timer.h"
3492enum hrtimer_restart;
3493# 290 "include/linux/timer.h"
3494enum hrtimer_restart;
3495# 24 "include/linux/sysfs.h"
3496enum kobj_ns_type;
3497# 12 "include/linux/mod_devicetable.h"
3498typedef unsigned long kernel_ulong_t;
3499# 98 "include/linux/mod_devicetable.h"
3500struct usb_device_id {
3501 __u16 match_flags ;
3502 __u16 idVendor ;
3503 __u16 idProduct ;
3504 __u16 bcdDevice_lo ;
3505 __u16 bcdDevice_hi ;
3506 __u8 bDeviceClass ;
3507 __u8 bDeviceSubClass ;
3508 __u8 bDeviceProtocol ;
3509 __u8 bInterfaceClass ;
3510 __u8 bInterfaceSubClass ;
3511 __u8 bInterfaceProtocol ;
3512 kernel_ulong_t driver_info ;
3513};
3514# 26 "include/linux/usb.h"
3515struct usb_driver;
3516# 763 "include/linux/usb.h"
3517struct usb_dynids {
3518 spinlock_t lock ;
3519 struct list_head list ;
3520};
3521# 782 "include/linux/usb.h"
3522struct usbdrv_wrap {
3523 struct device_driver driver ;
3524 int for_devices ;
3525};
3526# 843 "include/linux/usb.h"
3527struct usb_driver {
3528 char const *name ;
3529 int (*probe)(struct usb_interface *intf , struct usb_device_id const *id ) ;
3530 void (*disconnect)(struct usb_interface *intf ) ;
3531 int (*unlocked_ioctl)(struct usb_interface *intf , unsigned int code , void *buf ) ;
3532 int (*suspend)(struct usb_interface *intf , pm_message_t message ) ;
3533 int (*resume)(struct usb_interface *intf ) ;
3534 int (*reset_resume)(struct usb_interface *intf ) ;
3535 int (*pre_reset)(struct usb_interface *intf ) ;
3536 int (*post_reset)(struct usb_interface *intf ) ;
3537 struct usb_device_id const *id_table ;
3538 struct usb_dynids dynids ;
3539 struct usbdrv_wrap drvwrap ;
3540 unsigned int no_dynamic_id : 1 ;
3541 unsigned int supports_autosuspend : 1 ;
3542 unsigned int soft_unbind : 1 ;
3543};
3544# 48 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/usb.c"
3545struct i1480_usb {
3546 struct i1480 i1480 ;
3547 struct usb_device *usb_dev ;
3548 struct usb_interface *usb_iface ;
3549 struct urb *neep_urb ;
3550};
3551# 80 "include/linux/wait.h"
3552extern void __init_waitqueue_head(wait_queue_head_t *q , struct lock_class_key * ) ;
3553# 76 "include/linux/completion.h"
3554static struct lock_class_key __key ;
3555# 73 "include/linux/completion.h"
3556__inline static void init_completion(struct completion *x )
3557{
3558
3559 {
3560# 75 "include/linux/completion.h"
3561 x->done = 0U;
3562 {
3563# 76 "include/linux/completion.h"
3564 while (1) {
3565 while_continue: ;
3566 {
3567# 76 "include/linux/completion.h"
3568 __init_waitqueue_head(& x->wait, & __key);
3569 }
3570# 76 "include/linux/completion.h"
3571 goto while_break;
3572 }
3573 while_break___0: ;
3574 }
3575 while_break: ;
3576# 77 "include/linux/completion.h"
3577 return;
3578}
3579}
3580# 84 "include/linux/completion.h"
3581extern long wait_for_completion_interruptible_timeout(struct completion *x , unsigned long timeout ) ;
3582# 141 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/uwb/i1480/dfu/i1480-dfu.h"
3583int i1480_fw_upload(struct i1480 *i1480 ) ;
3584# 142 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/uwb/i1480/dfu/i1480-dfu.h"
3585int i1480_pre_fw_upload(struct i1480 *i1480 ) ;
3586# 143 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/uwb/i1480/dfu/i1480-dfu.h"
3587int i1480_mac_fw_upload(struct i1480 *i1480 ) ;
3588# 144 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/uwb/i1480/dfu/i1480-dfu.h"
3589int i1480_phy_fw_upload(struct i1480 *i1480 ) ;
3590# 145 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/uwb/i1480/dfu/i1480-dfu.h"
3591ssize_t i1480_cmd(struct i1480 *i1480 , char const *cmd_name , size_t cmd_size ,
3592 size_t reply_size ) ;
3593# 146 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/drivers/uwb/i1480/dfu/i1480-dfu.h"
3594int i1480_rceb_check(struct i1480 const *i1480 , struct uwb_rceb const *rceb ,
3595 char const *cmd , u8 context , u8 expected_type , unsigned int expected_event ) ;
3596# 797 "include/linux/device.h"
3597extern int dev_err(struct device const *dev , char const *fmt , ...) ;
3598# 803 "include/linux/device.h"
3599extern int _dev_info(struct device const *dev , char const *fmt , ...) ;
3600# 57 "include/linux/random.h"
3601extern void get_random_bytes(void *buf , int nbytes ) ;
3602# 51 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3603int i1480_rceb_check(struct i1480 const *i1480 , struct uwb_rceb const *rceb ,
3604 char const *cmd , u8 context , u8 expected_type , unsigned int expected_event )
3605{ int result ;
3606 struct device *dev ;
3607
3608 {
3609# 55 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3610 result = 0;
3611# 56 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3612 dev = (struct device *)i1480->dev;
3613# 57 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3614 if ((int const )rceb->bEventContext != (int const )context) {
3615# 58 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3616 if (cmd) {
3617 {
3618# 59 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3619 dev_err((struct device const *)dev, "%s: unexpected context id 0x%02x (expected 0x%02x)\n",
3620 cmd, (int const )rceb->bEventContext, (int )context);
3621 }
3622 } else {
3623
3624 }
3625# 62 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3626 result = -22;
3627 } else {
3628
3629 }
3630# 64 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3631 if ((int const )rceb->bEventType != (int const )expected_type) {
3632# 65 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3633 if (cmd) {
3634 {
3635# 66 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3636 dev_err((struct device const *)dev, "%s: unexpected event type 0x%02x (expected 0x%02x)\n",
3637 cmd, (int const )rceb->bEventType, (int )expected_type);
3638 }
3639 } else {
3640
3641 }
3642# 69 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3643 result = -22;
3644 } else {
3645
3646 }
3647# 71 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3648 if ((unsigned int )((__le16 )rceb->wEvent) != expected_event) {
3649# 72 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3650 if (cmd) {
3651 {
3652# 73 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3653 dev_err((struct device const *)dev, "%s: unexpected event 0x%04x (expected 0x%04x)\n",
3654 cmd, (int )((__le16 )rceb->wEvent), expected_event);
3655 }
3656 } else {
3657
3658 }
3659# 76 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3660 result = -22;
3661 } else {
3662
3663 }
3664# 78 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3665 return (result);
3666}
3667}
3668# 80 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3669extern void *__crc_i1480_rceb_check __attribute__((__weak__)) ;
3670# 80 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3671static unsigned long const __kcrctab_i1480_rceb_check __attribute__((__used__,
3672__unused__, __section__("___kcrctab_gpl+i1480_rceb_check"))) = (unsigned long const )((unsigned long )(& __crc_i1480_rceb_check));
3673# 80 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3674static char const __kstrtab_i1480_rceb_check[17] __attribute__((__section__("__ksymtab_strings"),
3675__aligned__(1))) =
3676# 80 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3677 { (char const )'i', (char const )'1', (char const )'4', (char const )'8',
3678 (char const )'0', (char const )'_', (char const )'r', (char const )'c',
3679 (char const )'e', (char const )'b', (char const )'_', (char const )'c',
3680 (char const )'h', (char const )'e', (char const )'c', (char const )'k',
3681 (char const )'\000'};
3682# 80 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3683static struct kernel_symbol const __ksymtab_i1480_rceb_check __attribute__((__used__,
3684__unused__, __section__("___ksymtab_gpl+i1480_rceb_check"))) = {(unsigned long )(& i1480_rceb_check), __kstrtab_i1480_rceb_check};
3685# 91 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3686ssize_t i1480_cmd(struct i1480 *i1480 , char const *cmd_name , size_t cmd_size ,
3687 size_t reply_size )
3688{ ssize_t result ;
3689 struct uwb_rceb *reply ;
3690 struct uwb_rccb *cmd ;
3691 u16 expected_event ;
3692 u8 expected_type ;
3693 u8 context ;
3694 int tmp ;
3695 int tmp___0 ;
3696 int tmp___1 ;
3697 int tmp___2 ;
3698
3699 {
3700 {
3701# 95 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3702 reply = (struct uwb_rceb *)i1480->evt_buf;
3703# 96 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3704 cmd = (struct uwb_rccb *)i1480->cmd_buf;
3705# 97 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3706 expected_event = reply->wEvent;
3707# 98 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3708 expected_type = reply->bEventType;
3709# 101 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3710 init_completion(& i1480->evt_complete);
3711# 102 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3712 i1480->evt_result = (ssize_t )-115;
3713 }
3714 {
3715# 103 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3716 while (1) {
3717 while_continue: ;
3718 {
3719# 104 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3720 get_random_bytes((void *)(& context), 1);
3721 }
3722# 103 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3723 if ((int )context == 0) {
3724
3725 } else
3726# 103 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3727 if ((int )context == 255) {
3728
3729 } else {
3730# 103 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3731 goto while_break;
3732 }
3733 }
3734 while_break___0: ;
3735 }
3736 while_break:
3737 {
3738# 106 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3739 cmd->bCommandContext = context;
3740# 107 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3741 tmp = (*(i1480->cmd))(i1480, cmd_name, cmd_size);
3742# 107 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3743 result = (ssize_t )tmp;
3744 }
3745# 108 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3746 if (result < 0L) {
3747# 109 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3748 goto error;
3749 } else {
3750
3751 }
3752 {
3753# 111 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3754 result = wait_for_completion_interruptible_timeout(& i1480->evt_complete, 250UL);
3755 }
3756# 113 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3757 if (result == 0L) {
3758# 114 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3759 result = (ssize_t )-110;
3760# 115 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3761 goto error;
3762 } else {
3763
3764 }
3765# 117 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3766 if (result < 0L) {
3767# 118 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3768 goto error;
3769 } else {
3770
3771 }
3772# 119 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3773 result = i1480->evt_result;
3774# 120 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3775 if (result < 0L) {
3776 {
3777# 121 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3778 dev_err((struct device const *)i1480->dev, "%s: command reply reception failed: %zd\n",
3779 cmd_name, result);
3780 }
3781# 123 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3782 goto error;
3783 } else {
3784
3785 }
3786 {
3787# 131 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3788 tmp___1 = i1480_rceb_check((struct i1480 const *)i1480, (struct uwb_rceb const *)i1480->evt_buf,
3789 (char const *)((void *)0), (u8 )0, (u8 )253, 34U);
3790 }
3791# 131 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3792 if (tmp___1 == 0) {
3793 {
3794# 134 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3795 tmp___0 = (*(i1480->wait_init_done))(i1480);
3796# 134 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3797 result = (ssize_t )tmp___0;
3798 }
3799# 135 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3800 if (result < 0L) {
3801# 136 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3802 goto error;
3803 } else {
3804
3805 }
3806# 137 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3807 result = i1480->evt_result;
3808 } else {
3809
3810 }
3811# 139 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3812 if ((size_t )result != reply_size) {
3813 {
3814# 140 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3815 dev_err((struct device const *)i1480->dev, "%s returned only %zu bytes, %zu expected\n",
3816 cmd_name, result, reply_size);
3817# 142 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3818 result = (ssize_t )-22;
3819 }
3820# 143 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3821 goto error;
3822 } else {
3823
3824 }
3825 {
3826# 146 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3827 tmp___2 = i1480_rceb_check((struct i1480 const *)i1480, (struct uwb_rceb const *)i1480->evt_buf,
3828 cmd_name, context, expected_type, (unsigned int )expected_event);
3829# 146 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3830 result = (ssize_t )tmp___2;
3831 }
3832 error:
3833# 149 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3834 return (result);
3835}
3836}
3837# 151 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3838extern void *__crc_i1480_cmd __attribute__((__weak__)) ;
3839# 151 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3840static unsigned long const __kcrctab_i1480_cmd __attribute__((__used__, __unused__,
3841__section__("___kcrctab_gpl+i1480_cmd"))) = (unsigned long const )((unsigned long )(& __crc_i1480_cmd));
3842# 151 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3843static char const __kstrtab_i1480_cmd[10] __attribute__((__section__("__ksymtab_strings"),
3844__aligned__(1))) =
3845# 151 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3846 { (char const )'i', (char const )'1', (char const )'4', (char const )'8',
3847 (char const )'0', (char const )'_', (char const )'c', (char const )'m',
3848 (char const )'d', (char const )'\000'};
3849# 151 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3850static struct kernel_symbol const __ksymtab_i1480_cmd __attribute__((__used__,
3851__unused__, __section__("___ksymtab_gpl+i1480_cmd"))) = {(unsigned long )(& i1480_cmd), __kstrtab_i1480_cmd};
3852# 154 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3853static int i1480_print_state(struct i1480 *i1480 )
3854{ int result ;
3855 u32 *buf ;
3856
3857 {
3858 {
3859# 158 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3860 buf = (u32 *)i1480->cmd_buf;
3861# 160 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3862 result = (*(i1480->read))(i1480, 2148007936U, 2UL * sizeof(*buf));
3863 }
3864# 161 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3865 if (result < 0) {
3866 {
3867# 162 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3868 dev_err((struct device const *)i1480->dev, "cannot read U & L states: %d\n",
3869 result);
3870 }
3871# 163 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3872 goto error;
3873 } else {
3874
3875 }
3876 {
3877# 165 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3878 _dev_info((struct device const *)i1480->dev, "state U 0x%08x, L 0x%08x\n", *(buf + 0),
3879 *(buf + 1));
3880 }
3881 error:
3882# 167 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3883 return (result);
3884}
3885}
3886# 176 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3887int i1480_fw_upload(struct i1480 *i1480 )
3888{ int result ;
3889
3890 {
3891 {
3892# 180 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3893 result = i1480_pre_fw_upload(i1480);
3894 }
3895# 181 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3896 if (result < 0) {
3897# 181 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3898 if (result != -2) {
3899 {
3900# 182 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3901 i1480_print_state(i1480);
3902 }
3903# 183 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3904 goto error;
3905 } else {
3906
3907 }
3908 } else {
3909
3910 }
3911 {
3912# 185 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3913 result = i1480_mac_fw_upload(i1480);
3914 }
3915# 186 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3916 if (result < 0) {
3917# 187 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3918 if (result == -2) {
3919 {
3920# 188 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3921 dev_err((struct device const *)i1480->dev, "Cannot locate MAC FW file \'%s\'\n",
3922 i1480->mac_fw_name);
3923 }
3924 } else {
3925 {
3926# 191 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3927 i1480_print_state(i1480);
3928 }
3929 }
3930# 192 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3931 goto error;
3932 } else {
3933
3934 }
3935 {
3936# 194 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3937 result = i1480_phy_fw_upload(i1480);
3938 }
3939# 195 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3940 if (result < 0) {
3941# 195 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3942 if (result != -2) {
3943 {
3944# 196 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3945 i1480_print_state(i1480);
3946 }
3947# 197 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3948 goto error_rc_release;
3949 } else {
3950
3951 }
3952 } else {
3953
3954 }
3955 {
3956# 203 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3957 _dev_info((struct device const *)i1480->dev, "firmware uploaded successfully\n");
3958 }
3959 error_rc_release:
3960# 205 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3961 if (i1480->rc_release) {
3962 {
3963# 206 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3964 (*(i1480->rc_release))(i1480);
3965 }
3966 } else {
3967
3968 }
3969# 207 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3970 result = 0;
3971 error:
3972# 209 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3973 return (result);
3974}
3975}
3976# 211 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3977extern void *__crc_i1480_fw_upload __attribute__((__weak__)) ;
3978# 211 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3979static unsigned long const __kcrctab_i1480_fw_upload __attribute__((__used__, __unused__,
3980__section__("___kcrctab_gpl+i1480_fw_upload"))) = (unsigned long const )((unsigned long )(& __crc_i1480_fw_upload));
3981# 211 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3982static char const __kstrtab_i1480_fw_upload[16] __attribute__((__section__("__ksymtab_strings"),
3983__aligned__(1))) =
3984# 211 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3985 { (char const )'i', (char const )'1', (char const )'4', (char const )'8',
3986 (char const )'0', (char const )'_', (char const )'f', (char const )'w',
3987 (char const )'_', (char const )'u', (char const )'p', (char const )'l',
3988 (char const )'o', (char const )'a', (char const )'d', (char const )'\000'};
3989# 211 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/dfu.c.common.c"
3990static struct kernel_symbol const __ksymtab_i1480_fw_upload __attribute__((__used__,
3991__unused__, __section__("___ksymtab_gpl+i1480_fw_upload"))) = {(unsigned long )(& i1480_fw_upload), __kstrtab_i1480_fw_upload};
3992# 5 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/engine-blast-assert.h"
3993void ldv_blast_assert(void)
3994{
3995
3996 {
3997 ERROR:
3998# 6 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/engine-blast-assert.h"
3999 goto ERROR;
4000}
4001}
4002# 7 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/engine-blast.h"
4003extern void *ldv_undefined_pointer(void) ;
4004# 1332 "include/linux/usb.h"
4005struct urb *usb_alloc_urb(int iso_packets , gfp_t mem_flags ) __attribute__((__ldv_model__)) ;
4006# 1333 "include/linux/usb.h"
4007void usb_free_urb(struct urb *urb ) __attribute__((__ldv_model__)) ;
4008# 1377 "include/linux/usb.h"
4009void *usb_alloc_coherent(struct usb_device *dev , size_t size , gfp_t mem_flags ,
4010 dma_addr_t *dma ) __attribute__((__ldv_model__)) ;
4011# 1379 "include/linux/usb.h"
4012void usb_free_coherent(struct usb_device *dev , size_t size , void *addr , dma_addr_t dma ) __attribute__((__ldv_model__)) ;
4013# 10 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4014void ldv_assume_stop(void) __attribute__((__ldv_model_inline__)) ;
4015# 17 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4016void ldv_check_final_state(void) __attribute__((__ldv_model__)) ;
4017# 22 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4018void ldv_assume_stop(void) __attribute__((__ldv_model_inline__)) ;
4019# 22 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4020void ldv_assume_stop(void)
4021{
4022
4023 {
4024 LDV_STOP:
4025# 23 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4026 goto LDV_STOP;
4027}
4028}
4029# 29 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4030int ldv_urb_state = 0;
4031# 31 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4032int ldv_coherent_state = 0;
4033# 62 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4034void *usb_alloc_coherent(struct usb_device *dev , size_t size , gfp_t mem_flags ,
4035 dma_addr_t *dma ) __attribute__((__ldv_model__)) ;
4036# 62 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4037void *usb_alloc_coherent(struct usb_device *dev , size_t size , gfp_t mem_flags ,
4038 dma_addr_t *dma )
4039{ void *arbitrary_memory ;
4040 void *tmp___7 ;
4041
4042 {
4043 {
4044# 64 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4045 while (1) {
4046 while_continue: ;
4047 {
4048# 64 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4049 tmp___7 = ldv_undefined_pointer();
4050# 64 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4051 arbitrary_memory = tmp___7;
4052 }
4053# 64 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4054 if (! arbitrary_memory) {
4055# 64 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4056 return ((void *)0);
4057 } else {
4058
4059 }
4060# 64 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4061 ldv_coherent_state = ldv_coherent_state + 1;
4062# 64 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4063 return (arbitrary_memory);
4064# 64 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4065 goto while_break;
4066 }
4067 while_break___0: ;
4068 }
4069 while_break: ;
4070# 65 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4071 return ((void *)0);
4072}
4073}
4074# 68 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4075void usb_free_coherent(struct usb_device *dev , size_t size , void *addr , dma_addr_t dma ) __attribute__((__ldv_model__)) ;
4076# 68 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4077void usb_free_coherent(struct usb_device *dev , size_t size , void *addr , dma_addr_t dma )
4078{
4079
4080 {
4081 {
4082# 70 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4083 while (1) {
4084 while_continue: ;
4085# 70 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4086 if (! ((unsigned long )addr != (unsigned long )((void *)0))) {
4087 {
4088# 70 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4089 ldv_assume_stop();
4090 }
4091 } else {
4092
4093 }
4094# 70 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4095 if (addr) {
4096# 70 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4097 if (ldv_coherent_state >= 1) {
4098
4099 } else {
4100 {
4101# 70 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4102 ldv_blast_assert();
4103 }
4104 }
4105# 70 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4106 ldv_coherent_state = ldv_coherent_state - 1;
4107 } else {
4108
4109 }
4110# 70 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4111 goto while_break;
4112 }
4113 while_break___0: ;
4114 }
4115 while_break: ;
4116# 71 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4117 return;
4118}
4119}
4120# 74 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4121struct urb *usb_alloc_urb(int iso_packets , gfp_t mem_flags ) __attribute__((__ldv_model__)) ;
4122# 74 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4123struct urb *usb_alloc_urb(int iso_packets , gfp_t mem_flags )
4124{ void *arbitrary_memory ;
4125 void *tmp___7 ;
4126
4127 {
4128 {
4129# 75 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4130 while (1) {
4131 while_continue: ;
4132 {
4133# 75 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4134 tmp___7 = ldv_undefined_pointer();
4135# 75 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4136 arbitrary_memory = tmp___7;
4137 }
4138# 75 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4139 if (! arbitrary_memory) {
4140# 75 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4141 return ((struct urb *)((void *)0));
4142 } else {
4143
4144 }
4145# 75 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4146 ldv_urb_state = ldv_urb_state + 1;
4147# 75 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4148 return ((struct urb *)arbitrary_memory);
4149# 75 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4150 goto while_break;
4151 }
4152 while_break___0: ;
4153 }
4154 while_break: ;
4155# 76 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4156 return ((struct urb *)0);
4157}
4158}
4159# 79 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4160void usb_free_urb(struct urb *urb ) __attribute__((__ldv_model__)) ;
4161# 79 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4162void usb_free_urb(struct urb *urb )
4163{
4164
4165 {
4166 {
4167# 80 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4168 while (1) {
4169 while_continue: ;
4170# 80 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4171 if (! ((unsigned long )urb != (unsigned long )((struct urb *)0))) {
4172 {
4173# 80 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4174 ldv_assume_stop();
4175 }
4176 } else {
4177
4178 }
4179# 80 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4180 if (urb) {
4181# 80 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4182 if (ldv_urb_state >= 1) {
4183
4184 } else {
4185 {
4186# 80 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4187 ldv_blast_assert();
4188 }
4189 }
4190# 80 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4191 ldv_urb_state = ldv_urb_state - 1;
4192 } else {
4193
4194 }
4195# 80 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4196 goto while_break;
4197 }
4198 while_break___0: ;
4199 }
4200 while_break: ;
4201# 81 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4202 return;
4203}
4204}
4205# 84 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4206void ldv_check_final_state(void) __attribute__((__ldv_model__)) ;
4207# 84 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4208void ldv_check_final_state(void)
4209{
4210
4211 {
4212# 86 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4213 if (ldv_urb_state == 0) {
4214
4215 } else {
4216 {
4217# 86 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4218 ldv_blast_assert();
4219 }
4220 }
4221# 88 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4222 if (ldv_coherent_state == 0) {
4223
4224 } else {
4225 {
4226# 88 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4227 ldv_blast_assert();
4228 }
4229 }
4230# 89 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/kernel-rules/files/model0068.c"
4231 return;
4232}
4233}
4234# 1 "<compiler builtins>"
4235
4236# 46 "include/linux/delay.h"
4237extern void msleep(unsigned int msecs ) ;
4238# 60 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/string_64.h"
4239extern int memcmp(void const *cs , void const *ct , unsigned long count ) ;
4240# 830 "include/linux/rcupdate.h"
4241extern void kfree(void const * ) ;
4242# 39 "include/linux/firmware.h"
4243extern int request_firmware(struct firmware const **fw , char const *name , struct device *device ) ;
4244# 46 "include/linux/firmware.h"
4245extern void release_firmware(struct firmware const *fw ) ;
4246# 221 "include/linux/slub_def.h"
4247extern void *__kmalloc(size_t size , gfp_t flags ) ;
4248# 255 "include/linux/slub_def.h"
4249__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
4250 gfp_t flags )
4251{ void *tmp___2 ;
4252
4253 {
4254 {
4255# 270 "include/linux/slub_def.h"
4256 tmp___2 = __kmalloc(size, flags);
4257 }
4258# 270 "include/linux/slub_def.h"
4259 return (tmp___2);
4260}
4261}
4262# 788 "include/linux/device.h"
4263extern int dev_printk(char const *level , struct device const *dev , char const *fmt
4264 , ...) ;
4265# 799 "include/linux/device.h"
4266extern int dev_warn(struct device const *dev , char const *fmt , ...) ;
4267# 47 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4268static void fw_hdrs_free(struct fw_hdr *hdr )
4269{ struct fw_hdr *next ;
4270
4271 {
4272 {
4273# 52 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4274 while (1) {
4275 while_continue: ;
4276# 52 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4277 if (hdr) {
4278
4279 } else {
4280# 52 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4281 goto while_break;
4282 }
4283 {
4284# 53 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4285 next = hdr->next;
4286# 54 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4287 kfree((void const *)hdr);
4288# 55 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4289 hdr = next;
4290 }
4291 }
4292 while_break___0: ;
4293 }
4294 while_break: ;
4295# 57 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4296 return;
4297}
4298}
4299# 61 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4300static int fw_hdr_load(struct i1480 *i1480 , struct fw_hdr *hdr , unsigned int hdr_cnt ,
4301 char const *_data , u32 const *data_itr , u32 const *data_top )
4302{ size_t hdr_offset ;
4303 size_t remaining_size ;
4304 u32 const *tmp ;
4305 u32 const *tmp___0 ;
4306
4307 {
4308# 65 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4309 hdr_offset = (size_t )((char const *)data_itr - _data);
4310# 66 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4311 remaining_size = (size_t )((void *)data_top - (void *)data_itr);
4312# 67 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4313 if ((unsigned long )(data_itr + 2) > (unsigned long )data_top) {
4314 {
4315# 68 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4316 dev_err((struct device const *)i1480->dev, "fw hdr #%u/%zu: EOF reached in header at offset %zu, limit %zu\n",
4317 hdr_cnt, hdr_offset, ((char const *)data_itr + 2) - _data, (char const *)data_top - _data);
4318 }
4319# 73 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4320 return (-22);
4321 } else {
4322
4323 }
4324# 75 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4325 hdr->next = (struct fw_hdr *)((void *)0);
4326# 76 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4327 tmp = data_itr;
4328# 76 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4329 data_itr = data_itr + 1;
4330# 76 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4331 hdr->address = (unsigned long )((__le32 )*tmp);
4332# 77 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4333 tmp___0 = data_itr;
4334# 77 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4335 data_itr = data_itr + 1;
4336# 77 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4337 hdr->length = (size_t )((__le32 )*tmp___0);
4338# 78 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4339 hdr->bin = data_itr;
4340# 79 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4341 if (hdr->length > remaining_size) {
4342 {
4343# 80 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4344 dev_err((struct device const *)i1480->dev, "fw hdr #%u/%zu: EOF reached in data; chunk too long (%zu bytes), only %zu left\n",
4345 hdr_cnt, hdr_offset, hdr->length, remaining_size);
4346 }
4347# 83 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4348 return (-22);
4349 } else {
4350
4351 }
4352# 85 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4353 return (0);
4354}
4355}
4356# 107 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4357static int fw_hdrs_load(struct i1480 *i1480 , struct fw_hdr **phdr , char const *_data ,
4358 size_t data_size )
4359{ int result ;
4360 unsigned int hdr_cnt ;
4361 u32 *data ;
4362 u32 *data_itr ;
4363 u32 *data_top ;
4364 struct fw_hdr *hdr ;
4365 struct fw_hdr **prev_hdr ;
4366 void *tmp ;
4367
4368 {
4369# 112 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4370 hdr_cnt = 0U;
4371# 113 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4372 data = (u32 *)_data;
4373# 114 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4374 prev_hdr = phdr;
4375# 116 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4376 result = -22;
4377# 118 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4378 if (data_size % sizeof(u32 ) != 0UL) {
4379# 119 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4380 goto error;
4381 } else {
4382
4383 }
4384# 120 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4385 if ((unsigned long )_data % sizeof(u16 ) != 0UL) {
4386# 121 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4387 goto error;
4388 } else {
4389
4390 }
4391# 122 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4392 *phdr = (struct fw_hdr *)((void *)0);
4393# 123 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4394 data_itr = data;
4395# 124 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4396 data_top = (u32 *)(_data + data_size);
4397 {
4398# 125 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4399 while (1) {
4400 while_continue: ;
4401# 125 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4402 if ((unsigned long )data_itr < (unsigned long )data_top) {
4403
4404 } else {
4405# 125 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4406 goto while_break;
4407 }
4408 {
4409# 126 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4410 result = -12;
4411# 127 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4412 tmp = kmalloc(sizeof(*hdr), 208U);
4413# 127 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4414 hdr = (struct fw_hdr *)tmp;
4415 }
4416# 128 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4417 if ((unsigned long )hdr == (unsigned long )((void *)0)) {
4418 {
4419# 129 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4420 dev_err((struct device const *)i1480->dev, "Cannot allocate fw header for chunk #%u\n",
4421 hdr_cnt);
4422 }
4423# 131 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4424 goto error_alloc;
4425 } else {
4426
4427 }
4428 {
4429# 133 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4430 result = fw_hdr_load(i1480, hdr, hdr_cnt, _data, (u32 const *)data_itr, (u32 const *)data_top);
4431 }
4432# 135 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4433 if (result < 0) {
4434# 136 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4435 goto error_load;
4436 } else {
4437
4438 }
4439# 137 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4440 data_itr = data_itr + (2UL + hdr->length);
4441# 138 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4442 *prev_hdr = hdr;
4443# 139 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4444 prev_hdr = & hdr->next;
4445# 140 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4446 hdr_cnt = hdr_cnt + 1U;
4447 }
4448 while_break___0: ;
4449 }
4450 while_break:
4451# 142 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4452 *prev_hdr = (struct fw_hdr *)((void *)0);
4453# 143 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4454 return (0);
4455 error_load:
4456 {
4457# 146 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4458 kfree((void const *)hdr);
4459 }
4460 error_alloc:
4461 {
4462# 148 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4463 fw_hdrs_free(*phdr);
4464 }
4465 error:
4466# 150 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4467 return (result);
4468}
4469}
4470# 166 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4471static ssize_t i1480_fw_cmp(struct i1480 *i1480 , struct fw_hdr *hdr )
4472{ ssize_t result ;
4473 u32 src_itr ;
4474 u32 cnt ;
4475 size_t size ;
4476 size_t chunk_size ;
4477 u8 *bin ;
4478 int tmp ;
4479 u8 *buf ;
4480 int tmp___0 ;
4481
4482 {
4483# 169 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4484 result = (ssize_t )0;
4485# 170 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4486 src_itr = (u32 )0;
4487# 171 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4488 size = hdr->length * sizeof(*(hdr->bin + 0));
4489# 173 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4490 bin = (u8 *)hdr->bin;
4491 {
4492# 175 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4493 while (1) {
4494 while_continue: ;
4495# 175 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4496 if (size > 0UL) {
4497
4498 } else {
4499# 175 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4500 goto while_break;
4501 }
4502# 176 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4503 if (size < i1480->buf_size) {
4504# 176 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4505 chunk_size = size;
4506 } else {
4507# 176 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4508 chunk_size = i1480->buf_size;
4509 }
4510 {
4511# 177 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4512 tmp = (*(i1480->read))(i1480, (u32 )(hdr->address + (unsigned long )src_itr),
4513 chunk_size);
4514# 177 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4515 result = (ssize_t )tmp;
4516 }
4517# 178 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4518 if (result < 0L) {
4519 {
4520# 179 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4521 dev_err((struct device const *)i1480->dev, "error reading for verification: %zd\n",
4522 result);
4523 }
4524# 181 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4525 goto error;
4526 } else {
4527
4528 }
4529 {
4530# 183 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4531 tmp___0 = memcmp((void const *)i1480->cmd_buf, (void const *)(bin + src_itr),
4532 (unsigned long )result);
4533 }
4534# 183 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4535 if (tmp___0) {
4536# 184 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4537 buf = (u8 *)i1480->cmd_buf;
4538# 185 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4539 cnt = (u32 )0;
4540 {
4541# 185 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4542 while (1) {
4543 while_continue___0: ;
4544# 185 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4545 if ((ssize_t )cnt < result) {
4546
4547 } else {
4548# 185 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4549 goto while_break___0;
4550 }
4551# 186 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4552 if ((int )*(bin + (src_itr + cnt)) != (int )*(buf + cnt)) {
4553 {
4554# 187 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4555 dev_err((struct device const *)i1480->dev, "byte failed at src_itr %u cnt %u [0x%02x vs 0x%02x]\n",
4556 src_itr, cnt, (int )*(bin + (src_itr + cnt)), (int )*(buf + cnt));
4557# 191 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4558 result = (ssize_t )((src_itr + cnt) + 1U);
4559 }
4560# 192 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4561 goto error;
4562 } else {
4563
4564 }
4565# 185 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4566 cnt = cnt + 1U;
4567 }
4568 while_break___2: ;
4569 }
4570 while_break___0: ;
4571 } else {
4572
4573 }
4574# 195 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4575 src_itr = (u32 )((ssize_t )src_itr + result);
4576# 196 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4577 size = size - (size_t )result;
4578 }
4579 while_break___1: ;
4580 }
4581 while_break:
4582# 198 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4583 result = (ssize_t )0;
4584 error:
4585# 201 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4586 return (result);
4587}
4588}
4589# 225 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4590static int mac_fw_hdrs_push(struct i1480 *i1480 , struct fw_hdr *hdr , char const *fw_name ,
4591 char const *fw_tag ) ;
4592# 225 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4593static struct _ddebug descriptor __attribute__((__used__, __section__("__verbose"),
4594__aligned__(8))) = {"i1480_dfu_usb", "mac_fw_hdrs_push", "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c",
4595 "fw chunk (%zu @ 0x%08lx)\n", 227U, 0U, (char)0};
4596# 212 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4597static int mac_fw_hdrs_push(struct i1480 *i1480 , struct fw_hdr *hdr , char const *fw_name ,
4598 char const *fw_tag )
4599{ struct device *dev ;
4600 ssize_t result ;
4601 struct fw_hdr *hdr_itr ;
4602 int verif_retry_count ;
4603 long tmp ;
4604 int tmp___0 ;
4605
4606 {
4607# 216 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4608 dev = i1480->dev;
4609# 217 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4610 result = (ssize_t )0;
4611# 222 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4612 hdr_itr = hdr;
4613 {
4614# 222 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4615 while (1) {
4616 while_continue: ;
4617# 222 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4618 if ((unsigned long )hdr_itr != (unsigned long )((void *)0)) {
4619
4620 } else {
4621# 222 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4622 goto while_break;
4623 }
4624# 223 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4625 verif_retry_count = 0;
4626 retry:
4627 {
4628# 225 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4629 while (1) {
4630 while_continue___0: ;
4631
4632 {
4633# 225 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4634 while (1) {
4635 while_continue___1: ;
4636 {
4637# 225 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4638 tmp = __builtin_expect((long )(! (! descriptor.enabled)), 0L);
4639 }
4640# 225 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4641 if (tmp) {
4642 {
4643# 225 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4644 dev_printk("<7>", (struct device const *)dev, "fw chunk (%zu @ 0x%08lx)\n",
4645 hdr_itr->length * sizeof(*(hdr_itr->bin + 0)), hdr_itr->address);
4646 }
4647 } else {
4648
4649 }
4650# 225 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4651 goto while_break___1;
4652 }
4653 while_break___4: ;
4654 }
4655 while_break___1: ;
4656# 225 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4657 goto while_break___0;
4658 }
4659 while_break___3: ;
4660 }
4661 while_break___0:
4662 {
4663# 228 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4664 tmp___0 = (*(i1480->write))(i1480, (u32 )hdr_itr->address, (void const *)hdr_itr->bin,
4665 hdr_itr->length * sizeof(*(hdr_itr->bin + 0)));
4666# 228 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4667 result = (ssize_t )tmp___0;
4668 }
4669# 230 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4670 if (result < 0L) {
4671 {
4672# 231 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4673 dev_err((struct device const *)dev, "%s fw \'%s\': write failed (%zuB @ 0x%lx): %zd\n",
4674 fw_tag, fw_name, hdr_itr->length * sizeof(*(hdr_itr->bin + 0)), hdr_itr->address,
4675 result);
4676 }
4677# 235 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4678 goto while_break;
4679 } else {
4680
4681 }
4682 {
4683# 237 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4684 result = i1480_fw_cmp(i1480, hdr_itr);
4685 }
4686# 238 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4687 if (result < 0L) {
4688 {
4689# 239 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4690 dev_err((struct device const *)dev, "%s fw \'%s\': verification read failed (%zuB @ 0x%lx): %zd\n",
4691 fw_tag, fw_name, hdr_itr->length * sizeof(*(hdr_itr->bin + 0)), hdr_itr->address,
4692 result);
4693 }
4694# 244 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4695 goto while_break;
4696 } else {
4697
4698 }
4699# 246 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4700 if (result > 0L) {
4701 {
4702# 247 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4703 result = result - 1L;
4704# 248 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4705 dev_err((struct device const *)dev, "%s fw \'%s\': WARNING: verification failed at 0x%lx: retrying\n",
4706 fw_tag, fw_name, hdr_itr->address + (unsigned long )result);
4707# 251 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4708 verif_retry_count = verif_retry_count + 1;
4709 }
4710# 251 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4711 if (verif_retry_count < 3) {
4712# 252 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4713 goto retry;
4714 } else {
4715
4716 }
4717 {
4718# 253 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4719 dev_err((struct device const *)dev, "%s fw \'%s\': verification failed at 0x%lx: tried %d times\n",
4720 fw_tag, fw_name, hdr_itr->address + (unsigned long )result, verif_retry_count);
4721# 256 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4722 result = (ssize_t )-22;
4723 }
4724# 257 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4725 goto while_break;
4726 } else {
4727
4728 }
4729# 222 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4730 hdr_itr = hdr_itr->next;
4731 }
4732 while_break___2: ;
4733 }
4734 while_break: ;
4735# 260 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4736 return ((int )result);
4737}
4738}
4739# 265 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4740static int mac_fw_upload_enable(struct i1480 *i1480 )
4741{ int result ;
4742 u32 reg ;
4743 u32 *buffer ;
4744
4745 {
4746# 269 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4747 reg = 2147483840U;
4748# 270 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4749 buffer = (u32 *)i1480->cmd_buf;
4750# 272 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4751 if ((int )i1480->hw_rev > 1) {
4752# 273 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4753 reg = 2147537108U;
4754 } else {
4755
4756 }
4757 {
4758# 274 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4759 result = (*(i1480->read))(i1480, reg, sizeof(u32 ));
4760 }
4761# 275 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4762 if (result < 0) {
4763# 276 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4764 goto error_cmd;
4765 } else {
4766
4767 }
4768 {
4769# 277 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4770 *buffer = *buffer & 4294967271U;
4771# 278 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4772 result = (*(i1480->write))(i1480, reg, (void const *)buffer, sizeof(u32 ));
4773 }
4774# 279 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4775 if (result < 0) {
4776# 280 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4777 goto error_cmd;
4778 } else {
4779
4780 }
4781# 281 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4782 return (0);
4783 error_cmd:
4784 {
4785# 283 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4786 dev_err((struct device const *)i1480->dev, "can\'t enable fw upload mode: %d\n",
4787 result);
4788 }
4789# 284 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4790 return (result);
4791}
4792}
4793# 289 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4794static int mac_fw_upload_disable(struct i1480 *i1480 )
4795{ int result ;
4796 u32 reg ;
4797 u32 *buffer ;
4798
4799 {
4800# 293 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4801 reg = 2147483840U;
4802# 294 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4803 buffer = (u32 *)i1480->cmd_buf;
4804# 296 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4805 if ((int )i1480->hw_rev > 1) {
4806# 297 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4807 reg = 2147537108U;
4808 } else {
4809
4810 }
4811 {
4812# 298 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4813 result = (*(i1480->read))(i1480, reg, sizeof(u32 ));
4814 }
4815# 299 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4816 if (result < 0) {
4817# 300 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4818 goto error_cmd;
4819 } else {
4820
4821 }
4822 {
4823# 301 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4824 *buffer = *buffer | 24U;
4825# 302 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4826 result = (*(i1480->write))(i1480, reg, (void const *)buffer, sizeof(u32 ));
4827 }
4828# 303 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4829 if (result < 0) {
4830# 304 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4831 goto error_cmd;
4832 } else {
4833
4834 }
4835# 305 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4836 return (0);
4837 error_cmd:
4838 {
4839# 307 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4840 dev_err((struct device const *)i1480->dev, "can\'t disable fw upload mode: %d\n",
4841 result);
4842 }
4843# 308 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4844 return (result);
4845}
4846}
4847# 324 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4848static int __mac_fw_upload(struct i1480 *i1480 , char const *fw_name , char const *fw_tag )
4849{ int result ;
4850 struct firmware const *fw ;
4851 struct fw_hdr *fw_hdrs ;
4852
4853 {
4854 {
4855# 332 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4856 result = request_firmware(& fw, fw_name, i1480->dev);
4857 }
4858# 333 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4859 if (result < 0) {
4860# 334 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4861 goto out;
4862 } else {
4863
4864 }
4865 {
4866# 335 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4867 result = fw_hdrs_load(i1480, & fw_hdrs, (char const *)fw->data, (size_t )fw->size);
4868 }
4869# 336 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4870 if (result < 0) {
4871 {
4872# 337 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4873 dev_err((struct device const *)i1480->dev, "%s fw \'%s\': failed to parse firmware file: %d\n",
4874 fw_tag, fw_name, result);
4875 }
4876# 339 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4877 goto out_release;
4878 } else {
4879
4880 }
4881 {
4882# 341 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4883 result = mac_fw_upload_enable(i1480);
4884 }
4885# 342 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4886 if (result < 0) {
4887# 343 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4888 goto out_hdrs_release;
4889 } else {
4890
4891 }
4892 {
4893# 344 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4894 result = mac_fw_hdrs_push(i1480, fw_hdrs, fw_name, fw_tag);
4895# 345 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4896 mac_fw_upload_disable(i1480);
4897 }
4898 out_hdrs_release:
4899# 347 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4900 if (result >= 0) {
4901 {
4902# 348 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4903 _dev_info((struct device const *)i1480->dev, "%s fw \'%s\': uploaded\n", fw_tag,
4904 fw_name);
4905 }
4906 } else {
4907 {
4908# 350 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4909 dev_err((struct device const *)i1480->dev, "%s fw \'%s\': failed to upload (%d), power cycle device\n",
4910 fw_tag, fw_name, result);
4911 }
4912 }
4913 {
4914# 352 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4915 fw_hdrs_free(fw_hdrs);
4916 }
4917 out_release:
4918 {
4919# 354 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4920 release_firmware(fw);
4921 }
4922 out:
4923# 356 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4924 return (result);
4925}
4926}
4927# 364 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4928int i1480_pre_fw_upload(struct i1480 *i1480 )
4929{ int result ;
4930
4931 {
4932 {
4933# 367 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4934 result = __mac_fw_upload(i1480, i1480->pre_fw_name, "PRE");
4935 }
4936# 368 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4937 if (result == 0) {
4938 {
4939# 369 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4940 msleep(400U);
4941 }
4942 } else {
4943
4944 }
4945# 370 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4946 return (result);
4947}
4948}
4949# 387 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4950static int i1480_cmd_reset(struct i1480 *i1480 )
4951{ int result ;
4952 struct uwb_rccb *cmd ;
4953 struct i1480_evt_reset *reply ;
4954 ssize_t tmp ;
4955
4956 {
4957 {
4958# 391 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4959 cmd = (struct uwb_rccb *)i1480->cmd_buf;
4960# 392 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4961 reply = (struct i1480_evt_reset *)i1480->evt_buf;
4962# 397 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4963 result = -12;
4964# 398 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4965 cmd->bCommandType = (u8 )0;
4966# 399 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4967 cmd->wCommand = (__u16 )19;
4968# 400 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4969 reply->rceb.bEventType = (u8 )0;
4970# 401 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4971 reply->rceb.wEvent = (__le16 )19;
4972# 402 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4973 tmp = i1480_cmd(i1480, "RESET", sizeof(*cmd), sizeof(*reply));
4974# 402 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4975 result = (int )tmp;
4976 }
4977# 403 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4978 if (result < 0) {
4979# 404 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4980 goto out;
4981 } else {
4982
4983 }
4984# 405 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4985 if ((int )reply->bResultCode != 0) {
4986 {
4987# 406 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4988 dev_err((struct device const *)i1480->dev, "RESET: command execution failed: %u\n",
4989 (int )reply->bResultCode);
4990# 408 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4991 result = -5;
4992 }
4993 } else {
4994
4995 }
4996 out:
4997# 411 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
4998 return (result);
4999}
5000}
5001# 417 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5002static int i1480_fw_is_running_q(struct i1480 *i1480 )
5003{ int cnt ;
5004 int result ;
5005 u32 *val ;
5006
5007 {
5008# 420 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5009 cnt = 0;
5010# 422 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5011 val = (u32 *)i1480->cmd_buf;
5012# 424 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5013 cnt = 0;
5014 {
5015# 424 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5016 while (1) {
5017 while_continue: ;
5018# 424 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5019 if (cnt < 10) {
5020
5021 } else {
5022# 424 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5023 goto while_break;
5024 }
5025 {
5026# 425 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5027 msleep(100U);
5028# 426 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5029 result = (*(i1480->read))(i1480, 2148007936U, (size_t )4);
5030 }
5031# 427 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5032 if (result < 0) {
5033 {
5034# 428 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5035 dev_err((struct device const *)i1480->dev, "Can\'t read 0x8008000: %d\n",
5036 result);
5037 }
5038# 429 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5039 goto out;
5040 } else {
5041
5042 }
5043# 431 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5044 if ((unsigned long )*val == 1431655765UL) {
5045# 432 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5046 goto out;
5047 } else {
5048
5049 }
5050# 424 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5051 cnt = cnt + 1;
5052 }
5053 while_break___0: ;
5054 }
5055 while_break:
5056 {
5057# 434 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5058 dev_err((struct device const *)i1480->dev, "Timed out waiting for fw to start\n");
5059# 435 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5060 result = -110;
5061 }
5062 out:
5063# 437 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5064 return (result);
5065}
5066}
5067# 451 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5068int i1480_mac_fw_upload(struct i1480 *i1480 )
5069{ int result ;
5070 int deprecated_name ;
5071 struct i1480_rceb *rcebe ;
5072 int tmp ;
5073 int tmp___0 ;
5074
5075 {
5076 {
5077# 453 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5078 result = 0;
5079# 453 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5080 deprecated_name = 0;
5081# 454 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5082 rcebe = (struct i1480_rceb *)i1480->evt_buf;
5083# 456 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5084 result = __mac_fw_upload(i1480, i1480->mac_fw_name, "MAC");
5085 }
5086# 457 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5087 if (result == -2) {
5088 {
5089# 458 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5090 result = __mac_fw_upload(i1480, i1480->mac_fw_name_deprecate, "MAC");
5091# 460 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5092 deprecated_name = 1;
5093 }
5094 } else {
5095
5096 }
5097# 462 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5098 if (result < 0) {
5099# 463 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5100 return (result);
5101 } else {
5102
5103 }
5104# 464 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5105 if (deprecated_name == 1) {
5106 {
5107# 465 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5108 dev_warn((struct device const *)i1480->dev, "WARNING: firmware file name %s is deprecated, please rename to %s\n",
5109 i1480->mac_fw_name_deprecate, i1480->mac_fw_name);
5110 }
5111 } else {
5112
5113 }
5114 {
5115# 469 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5116 result = i1480_fw_is_running_q(i1480);
5117 }
5118# 470 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5119 if (result < 0) {
5120# 471 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5121 goto error_fw_not_running;
5122 } else {
5123
5124 }
5125# 472 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5126 if (i1480->rc_setup) {
5127 {
5128# 472 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5129 tmp = (*(i1480->rc_setup))(i1480);
5130# 472 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5131 result = tmp;
5132 }
5133 } else {
5134# 472 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5135 result = 0;
5136 }
5137# 473 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5138 if (result < 0) {
5139 {
5140# 474 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5141 dev_err((struct device const *)i1480->dev, "Cannot setup after MAC fw upload: %d\n",
5142 result);
5143 }
5144# 476 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5145 goto error_fw_not_running;
5146 } else {
5147
5148 }
5149 {
5150# 478 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5151 result = (*(i1480->wait_init_done))(i1480);
5152 }
5153# 479 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5154 if (result < 0) {
5155 {
5156# 480 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5157 dev_err((struct device const *)i1480->dev, "MAC fw \'%s\': Initialization timed out (%d)\n",
5158 i1480->mac_fw_name, result);
5159 }
5160# 482 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5161 goto error_fw_not_running;
5162 } else {
5163
5164 }
5165# 485 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5166 if ((unsigned long )i1480->evt_result != sizeof(*rcebe)) {
5167 {
5168# 486 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5169 dev_err((struct device const *)i1480->dev, "MAC fw \'%s\': initialization event returns wrong size (%zu bytes vs %zu needed)\n",
5170 i1480->mac_fw_name, i1480->evt_result, sizeof(*rcebe));
5171 }
5172# 489 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5173 goto error_fw_not_running;
5174 } else {
5175
5176 }
5177 {
5178# 491 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5179 result = -5;
5180# 492 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5181 tmp___0 = i1480_rceb_check((struct i1480 const *)i1480, (struct uwb_rceb const *)(& rcebe->rceb),
5182 (char const *)((void *)0), (u8 )0, (u8 )253, 257U);
5183 }
5184# 492 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5185 if (tmp___0 < 0) {
5186 {
5187# 494 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5188 dev_err((struct device const *)i1480->dev, "wrong initialization event 0x%02x/%04x/%02x received; expected 0x%02x/%04x/00\n",
5189 (int )rcebe->rceb.bEventType, (int )rcebe->rceb.wEvent, (int )rcebe->rceb.bEventContext,
5190 253, 257);
5191 }
5192# 499 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5193 goto error_fw_not_running;
5194 } else {
5195
5196 }
5197 {
5198# 501 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5199 result = i1480_cmd_reset(i1480);
5200 }
5201# 502 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5202 if (result < 0) {
5203 {
5204# 503 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5205 dev_err((struct device const *)i1480->dev, "MAC fw \'%s\': MBOA reset failed (%d)\n",
5206 i1480->mac_fw_name, result);
5207 }
5208 } else {
5209
5210 }
5211 error_fw_not_running:
5212# 509 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/mac.c"
5213 return (result);
5214}
5215}
5216# 1 "<compiler builtins>"
5217
5218# 55 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/string_64.h"
5219extern void *memset(void *s , int c , size_t n ) ;
5220# 51 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5221static int i1480_mpi_write(struct i1480 *i1480 , void const *data , size_t size )
5222{ int result ;
5223 struct i1480_cmd_mpi_write *cmd ;
5224 struct i1480_evt_confirm *reply ;
5225 long tmp ;
5226 size_t __len ;
5227 void *__ret ;
5228 ssize_t tmp___0 ;
5229
5230 {
5231# 55 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5232 cmd = (struct i1480_cmd_mpi_write *)i1480->cmd_buf;
5233# 56 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5234 reply = (struct i1480_evt_confirm *)i1480->evt_buf;
5235 {
5236# 58 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5237 while (1) {
5238 while_continue: ;
5239 {
5240# 58 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5241 tmp = __builtin_expect((long )(! (! (size > 480UL))), 0L);
5242 }
5243# 58 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5244 if (tmp) {
5245 {
5246# 58 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5247 while (1) {
5248 while_continue___0: ;
5249# 58 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5250 __asm__ volatile ("1:\tud2\n"
5251 ".pushsection __bug_table,\"a\"\n"
5252 "2:\t.long 1b - 2b, %c0 - 2b\n"
5253 "\t.word %c1, 0\n"
5254 "\t.org 2b+%c2\n"
5255 ".popsection": : "i" ("/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"),
5256 "i" (58), "i" (sizeof(struct bug_entry )));
5257 {
5258# 58 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5259 while (1) {
5260 while_continue___1: ;
5261
5262 }
5263 while_break___3: ;
5264 }
5265# 58 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5266 goto while_break___0;
5267 }
5268 while_break___2: ;
5269 }
5270 while_break___0: ;
5271 } else {
5272
5273 }
5274# 58 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5275 goto while_break;
5276 }
5277 while_break___1: ;
5278 }
5279 while_break:
5280 {
5281# 59 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5282 result = -12;
5283# 60 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5284 cmd->rccb.bCommandType = (u8 )253;
5285# 61 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5286 cmd->rccb.wCommand = (__u16 )15;
5287# 62 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5288 cmd->size = (__u16 )size;
5289# 63 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5290 __len = size;
5291# 63 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5292 __ret = __builtin_memcpy((void *)(cmd->data), data, __len);
5293# 64 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5294 reply->rceb.bEventType = (u8 )253;
5295# 65 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5296 reply->rceb.wEvent = (__le16 )15;
5297# 66 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5298 tmp___0 = i1480_cmd(i1480, "MPI-WRITE", sizeof(*cmd) + size, sizeof(*reply));
5299# 66 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5300 result = (int )tmp___0;
5301 }
5302# 67 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5303 if (result < 0) {
5304# 68 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5305 goto out;
5306 } else {
5307
5308 }
5309# 69 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5310 if ((int )reply->bResultCode != 0) {
5311 {
5312# 70 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5313 dev_err((struct device const *)i1480->dev, "MPI-WRITE: command execution failed: %d\n",
5314 (int )reply->bResultCode);
5315# 72 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5316 result = -5;
5317 }
5318 } else {
5319
5320 }
5321 out:
5322# 75 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5323 return (result);
5324}
5325}
5326# 99 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5327static int i1480_mpi_read(struct i1480 *i1480 , u8 *data , u16 srcaddr , size_t size )
5328{ int result ;
5329 struct i1480_cmd_mpi_read *cmd ;
5330 struct i1480_evt_mpi_read *reply ;
5331 unsigned int cnt ;
5332 long tmp ;
5333 ssize_t tmp___0 ;
5334
5335 {
5336 {
5337# 103 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5338 cmd = (struct i1480_cmd_mpi_read *)i1480->cmd_buf;
5339# 104 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5340 reply = (struct i1480_evt_mpi_read *)i1480->evt_buf;
5341# 107 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5342 memset(i1480->cmd_buf, 105, (size_t )512);
5343# 108 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5344 memset(i1480->evt_buf, 105, (size_t )512);
5345 }
5346 {
5347# 110 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5348 while (1) {
5349 while_continue: ;
5350 {
5351# 110 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5352 tmp = __builtin_expect((long )(! (! (size > (i1480->buf_size - sizeof(*reply)) / 3UL))),
5353 0L);
5354 }
5355# 110 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5356 if (tmp) {
5357 {
5358# 110 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5359 while (1) {
5360 while_continue___0: ;
5361# 110 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5362 __asm__ volatile ("1:\tud2\n"
5363 ".pushsection __bug_table,\"a\"\n"
5364 "2:\t.long 1b - 2b, %c0 - 2b\n"
5365 "\t.word %c1, 0\n"
5366 "\t.org 2b+%c2\n"
5367 ".popsection": : "i" ("/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"),
5368 "i" (110), "i" (sizeof(struct bug_entry )));
5369 {
5370# 110 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5371 while (1) {
5372 while_continue___1: ;
5373
5374 }
5375 while_break___6: ;
5376 }
5377# 110 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5378 goto while_break___0;
5379 }
5380 while_break___5: ;
5381 }
5382 while_break___0: ;
5383 } else {
5384
5385 }
5386# 110 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5387 goto while_break;
5388 }
5389 while_break___4: ;
5390 }
5391 while_break:
5392# 111 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5393 result = -12;
5394# 112 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5395 cmd->rccb.bCommandType = (u8 )253;
5396# 113 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5397 cmd->rccb.wCommand = (__u16 )16;
5398# 114 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5399 cmd->size = (__u16 )(3UL * size);
5400# 115 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5401 cnt = 0U;
5402 {
5403# 115 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5404 while (1) {
5405 while_continue___2: ;
5406# 115 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5407 if ((size_t )cnt < size) {
5408
5409 } else {
5410# 115 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5411 goto while_break___2;
5412 }
5413# 116 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5414 cmd->data[cnt].page = (u8 )(((unsigned int )srcaddr + cnt) >> 8);
5415# 117 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5416 cmd->data[cnt].offset = (u8 )(((unsigned int )srcaddr + cnt) & 255U);
5417# 115 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5418 cnt = cnt + 1U;
5419 }
5420 while_break___7: ;
5421 }
5422 while_break___2:
5423 {
5424# 119 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5425 reply->rceb.bEventType = (u8 )253;
5426# 120 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5427 reply->rceb.wEvent = (__le16 )16;
5428# 121 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5429 tmp___0 = i1480_cmd(i1480, "MPI-READ", sizeof(*cmd) + 2UL * size, sizeof(*reply) + 3UL * size);
5430# 121 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5431 result = (int )tmp___0;
5432 }
5433# 123 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5434 if (result < 0) {
5435# 124 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5436 goto out;
5437 } else {
5438
5439 }
5440# 125 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5441 if ((int )reply->bResultCode != 0) {
5442 {
5443# 126 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5444 dev_err((struct device const *)i1480->dev, "MPI-READ: command execution failed: %d\n",
5445 (int )reply->bResultCode);
5446# 128 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5447 result = -5;
5448 }
5449 } else {
5450
5451 }
5452# 130 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5453 cnt = 0U;
5454 {
5455# 130 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5456 while (1) {
5457 while_continue___3: ;
5458# 130 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5459 if ((size_t )cnt < size) {
5460
5461 } else {
5462# 130 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5463 goto while_break___3;
5464 }
5465# 131 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5466 if ((unsigned int )reply->data[cnt].page != ((unsigned int )srcaddr + cnt) >> 8) {
5467 {
5468# 132 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5469 dev_err((struct device const *)i1480->dev, "MPI-READ: page inconsistency at index %u: expected 0x%02x, got 0x%02x\n",
5470 cnt, ((unsigned int )srcaddr + cnt) >> 8, (int )reply->data[cnt].page);
5471 }
5472 } else {
5473
5474 }
5475# 135 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5476 if ((unsigned int )reply->data[cnt].offset != (((unsigned int )srcaddr + cnt) & 255U)) {
5477 {
5478# 136 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5479 dev_err((struct device const *)i1480->dev, "MPI-READ: offset inconsistency at index %u: expected 0x%02x, got 0x%02x\n",
5480 cnt, ((unsigned int )srcaddr + cnt) & 255U, (int )reply->data[cnt].offset);
5481 }
5482 } else {
5483
5484 }
5485# 140 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5486 *(data + cnt) = reply->data[cnt].value;
5487# 130 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5488 cnt = cnt + 1U;
5489 }
5490 while_break___8: ;
5491 }
5492 while_break___3:
5493# 142 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5494 result = 0;
5495 out:
5496# 144 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5497 return (result);
5498}
5499}
5500# 162 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5501int i1480_phy_fw_upload(struct i1480 *i1480 )
5502{ int result ;
5503 struct firmware const *fw ;
5504 char const *data_itr ;
5505 char const *data_top ;
5506 size_t MAX_BLK_SIZE ;
5507 size_t data_size ;
5508 u8 phy_stat ;
5509 size_t _min1 ;
5510 size_t _min2 ;
5511 size_t tmp ;
5512
5513 {
5514 {
5515# 167 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5516 MAX_BLK_SIZE = (size_t )480;
5517# 171 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5518 result = request_firmware(& fw, i1480->phy_fw_name, i1480->dev);
5519 }
5520# 172 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5521 if (result < 0) {
5522# 173 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5523 goto out;
5524 } else {
5525
5526 }
5527# 175 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5528 data_itr = (char const *)fw->data;
5529# 175 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5530 data_top = data_itr + fw->size;
5531 {
5532# 175 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5533 while (1) {
5534 while_continue: ;
5535# 175 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5536 if ((unsigned long )data_itr < (unsigned long )data_top) {
5537
5538 } else {
5539# 175 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5540 goto while_break;
5541 }
5542# 177 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5543 _min1 = MAX_BLK_SIZE;
5544# 177 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5545 _min2 = (size_t )(data_top - data_itr);
5546# 177 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5547 if (_min1 < _min2) {
5548# 177 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5549 tmp = _min1;
5550 } else {
5551# 177 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5552 tmp = _min2;
5553 }
5554 {
5555# 177 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5556 data_size = tmp;
5557# 178 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5558 result = i1480_mpi_write(i1480, (void const *)data_itr, data_size);
5559 }
5560# 179 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5561 if (result < 0) {
5562# 180 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5563 goto error_phy_status;
5564 } else {
5565
5566 }
5567# 175 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5568 data_itr = data_itr + MAX_BLK_SIZE;
5569 }
5570 while_break___0: ;
5571 }
5572 while_break:
5573 {
5574# 183 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5575 result = i1480_mpi_read(i1480, & phy_stat, (u16 )6, (size_t )1);
5576 }
5577# 184 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5578 if (result < 0) {
5579 {
5580# 185 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5581 dev_err((struct device const *)i1480->dev, "PHY: can\'t get status: %d\n", result);
5582 }
5583# 186 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5584 goto error_phy_status;
5585 } else {
5586
5587 }
5588# 188 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5589 if ((int )phy_stat != 0) {
5590 {
5591# 189 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5592 result = -19;
5593# 190 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5594 _dev_info((struct device const *)i1480->dev, "error, PHY not ready: %u\n", (int )phy_stat);
5595 }
5596# 191 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5597 goto error_phy_status;
5598 } else {
5599
5600 }
5601 {
5602# 193 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5603 _dev_info((struct device const *)i1480->dev, "PHY fw \'%s\': uploaded\n", i1480->phy_fw_name);
5604 }
5605 error_phy_status:
5606 {
5607# 197 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5608 release_firmware(fw);
5609 }
5610# 198 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5611 if (result < 0) {
5612 {
5613# 199 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5614 dev_err((struct device const *)i1480->dev, "PHY fw \'%s\': failed to upload (%d), power cycle device\n",
5615 i1480->phy_fw_name, result);
5616 }
5617 } else {
5618
5619 }
5620 out:
5621# 202 "/anthill/stuff/tacas-comp/work/current--X--drivers/uwb/i1480/dfu/i1480-dfu-usb.ko--X--bulklinux-3.0.1--X--68_1/linux-3.0.1/csd_deg_dscv/14/dscv_tempdir/dscv/ri/68_1/drivers/uwb/i1480/dfu/phy.c"
5622 return (result);
5623}
5624}
5625# 76 "include/linux/completion.h"
5626static struct lock_class_key __key___2 ;
5627# 73 "include/linux/completion.h"
5628__inline static void init_completion___0(struct completion *x )
5629{
5630
5631 {
5632# 75 "include/linux/completion.h"
5633 x->done = 0U;
5634 {
5635# 76 "include/linux/completion.h"
5636 while (1) {
5637 while_continue: ;
5638 {
5639# 76 "include/linux/completion.h"
5640 __init_waitqueue_head(& x->wait, & __key___2);
5641 }
5642# 76 "include/linux/completion.h"
5643 goto while_break;
5644 }
5645 while_break___0: ;
5646 }
5647 while_break: ;
5648# 77 "include/linux/completion.h"
5649 return;
5650}
5651}
5652# 91 "include/linux/completion.h"
5653extern void complete(struct completion * ) ;
5654# 79 "include/linux/module.h"
5655int init_module(void) ;
5656# 80 "include/linux/module.h"
5657void cleanup_module(void) ;
5658# 99 "include/linux/module.h"
5659extern struct module __this_module ;
5660# 706 "include/linux/device.h"
5661extern int dev_set_drvdata(struct device *dev , void *data ) ;
5662# 196 "include/linux/usb.h"
5663__inline static void usb_set_intfdata(struct usb_interface *intf , void *data )
5664{
5665
5666 {
5667 {
5668# 198 "include/linux/usb.h"
5669 dev_set_drvdata(& intf->dev, data);
5670 }
5671# 199 "include/linux/usb.h"
5672 return;
5673}
5674}
5675# 201 "include/linux/usb.h"
5676extern struct usb_interface *usb_get_intf(struct usb_interface *intf ) ;
5677# 202 "include/linux/usb.h"
5678extern void usb_put_intf(struct usb_interface *intf ) ;
5679# 497 "include/linux/usb.h"
5680__inline static struct usb_device *interface_to_usbdev(struct usb_interface *intf )
5681{ struct device const *__mptr ;
5682
5683 {
5684# 499 "include/linux/usb.h"
5685 __mptr = (struct device const *)intf->dev.parent;
5686# 499 "include/linux/usb.h"
5687 return ((struct usb_device *)((char *)__mptr - (unsigned int )(& ((struct usb_device *)0)->dev)));
5688}
5689}
5690# 502 "include/linux/usb.h"
5691extern struct usb_device *usb_get_dev(struct usb_device *dev ) ;
5692# 503 "include/linux/usb.h"
5693extern void usb_put_dev(struct usb_device *dev ) ;
5694# 513 "include/linux/usb.h"
5695extern int usb_reset_device(struct usb_device *dev ) ;
5696# 929 "include/linux/usb.h"
5697extern int usb_register_driver(struct usb_driver * , struct module * , char const * ) ;
5698# 931 "include/linux/usb.h"
5699__inline static int usb_register(struct usb_driver *driver )
5700{ int tmp___7 ;
5701
5702 {
5703 {
5704# 933 "include/linux/usb.h"
5705 tmp___7 = usb_register_driver(driver, & __this_module, "i1480_dfu_usb");
5706 }
5707# 933 "include/linux/usb.h"
5708 return (tmp___7);
5709}
5710}
5711# 935 "include/linux/usb.h"
5712extern void usb_deregister(struct usb_driver * ) ;
5713# 1309 "include/linux/usb.h"
5714__inline static void usb_fill_int_urb(struct urb *urb , struct usb_device *dev , unsigned int pipe ,
5715 void *transfer_buffer , int buffer_length ,
5716 void (*complete_fn)(struct urb * ) , void *context ,
5717 int interval )
5718{
5719
5720 {
5721# 1318 "include/linux/usb.h"
5722 urb->dev = dev;
5723# 1319 "include/linux/usb.h"
5724 urb->pipe = pipe;
5725# 1320 "include/linux/usb.h"
5726 urb->transfer_buffer = transfer_buffer;
5727# 1321 "include/linux/usb.h"
5728 urb->transfer_buffer_length = (u32 )buffer_length;
5729# 1322 "include/linux/usb.h"
5730 urb->complete = complete_fn;
5731# 1323 "include/linux/usb.h"
5732 urb->context = context;
5733# 1324 "include/linux/usb.h"
5734 if ((unsigned int )dev->speed == 3U) {
5735# 1325 "include/linux/usb.h"
5736 urb->interval = 1 << (interval - 1);
5737 } else
5738# 1324 "include/linux/usb.h"
5739 if ((unsigned int )dev->speed == 5U) {
5740# 1325 "include/linux/usb.h"
5741 urb->interval = 1 << (interval - 1);
5742 } else {
5743# 1327 "include/linux/usb.h"
5744 urb->interval = interval;
5745 }
5746# 1328 "include/linux/usb.h"
5747 urb->start_frame = -1;
5748# 1329 "include/linux/usb.h"
5749 return;
5750}
5751}
5752# 1336 "include/linux/usb.h"
5753extern int usb_submit_urb(struct urb *urb , gfp_t mem_flags ) ;
5754# 1338 "include/linux/usb.h"
5755extern void usb_kill_urb(struct urb *urb ) ;
5756# 1402 "include/linux/usb.h"
5757extern int usb_control_msg(struct usb_device *dev , unsigned int pipe , __u8 request ,
5758 __u8 requesttype , __u16 value , __u16 index , void *data ,
5759 __u16 size , int timeout ) ;
5760# 1422 "include/linux/usb.h"