Showing error 152

User: Jiri Slaby
Error type: Reachable Error Location
Error type description: A specified error location is reachable in some program path
File location: ldv-drivers/usb_urb-drivers-uwb-i1480-dfu-i1480-dfu-usb.ko_safe.cil.out.i.pp.i
Line in file: 3997
Project: SV-COMP 2013
Project version: 2.6.28
Tools: Manual Work
Entered: 2013-01-17 16:57:54 UTC


Source:

   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"