Index: i33.c =================================================================== RCS file: /cvsroot/marvel/driver_fb/i33.c,v retrieving revision 1.7 diff -r1.7 i33.c 119a120,122 > #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20) > static void i33_fill_stream(struct work_struct *work); > #else 120a124 > #endif 315a320,322 > #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20) > i33_fill_stream(&i33->decompress); > #else 316a324 > #endif 443a452,457 > #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20) > static void > i33_get_stream(struct work_struct *work) > { > struct i33_dev_s *i33 = container_of(work, struct i33_dev_s, compress); > #else 447a462 > #endif 555a571,574 > #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20) > static void > i33_fill_stream(struct work_struct *work) > #else 557a577 > #endif 570c590,593 < --- > > #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20) > i33 = container_of(work, struct i33_dev_s, decompress); > #else 571a595,596 > #endif > 909a935,938 > #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20) > INIT_WORK(&i33->compress, i33_get_stream); > INIT_WORK(&i33->decompress, i33_fill_stream); > #else 911a941 > #endif Index: mgacap.c =================================================================== RCS file: /cvsroot/marvel/driver_fb/mgacap.c,v retrieving revision 1.9 diff -r1.9 mgacap.c 645a646,654 > #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20) > static void capture_interrupt (struct work_struct *work) > { > struct mga_grab_s *video= container_of(work, struct mga_grab_s, tqnode_dpc); > struct mga_dev_s *dev = video->mga; > > wake_up_interruptible(&dev->cap_v4l1->captureq); > } > #else 652c661 < --- > #endif 752a762,764 > #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20) > mgagrab_register_bh(mga->grab, capture_interrupt); > #else 753a766 > #endif Index: mgagrab.c =================================================================== RCS file: /cvsroot/marvel/driver_fb/mgagrab.c,v retrieving revision 1.7 diff -r1.7 mgagrab.c 76,115d75 < < struct mga_grab_s { < struct mga_dev_s *mga; < < spinlock_t lock; < < long vsync_active; < < /* address for even and odd frames */ < u32 vin_addr[4]; < u32 vbi_addr[4]; < u32 vinctl_value; //VINCTL0/1 < u32 vin_size; < u32 vbi_size; < u32 vinctl; //VINCTL < < u32 buffer_flags[4]; < u32 buffer_stamp[4]; < int active_buffer; /* buffer being grabbed (0..3) */ < < int preview_active; /* shows if the preview is active in the moment */ < int grabber_active; /* refcount for vin grabber activation */ < < int next_active_buffer; /* next buffer being grabbed (0..3) */ < < int grabbed; < int vin_active; < < int interrupt_count; < < /* registered bottom half of isr */ < struct work_struct tqnode_dpc; < < /* Shall we launch the bottom half handler */ < int grab_needed; < < grab_image_func_t on_grab_image; < }; < < 1256c1216,1222 < void mgagrab_register_bh(struct mga_grab_s *video, void(*routine)(void*), void* data) --- > #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20) > void mgagrab_register_bh(struct mga_grab_s *video, work_func_t routine) > { > INIT_WORK(&video->tqnode_dpc, routine); > } > #else > void mgagrab_register_bh(struct mga_grab_s *video, void(*routine)(struct work_struct *), void* data) 1260c1226 < --- > #endif Index: mgagrab.h =================================================================== RCS file: /cvsroot/marvel/driver_fb/mgagrab.h,v retrieving revision 1.2 diff -r1.2 mgagrab.h 36a37,39 > #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,20) > void mgagrab_register_bh(struct mga_grab_s *video, work_func_t routine); > #else 37a41 > #endif 41a46,83 > struct mga_grab_s { > struct mga_dev_s *mga; > > spinlock_t lock; > > long vsync_active; > > /* address for even and odd frames */ > u32 vin_addr[4]; > u32 vbi_addr[4]; > u32 vinctl_value; //VINCTL0/1 > u32 vin_size; > u32 vbi_size; > u32 vinctl; //VINCTL > > u32 buffer_flags[4]; > u32 buffer_stamp[4]; > int active_buffer; /* buffer being grabbed (0..3) */ > > int preview_active; /* shows if the preview is active in the moment */ > int grabber_active; /* refcount for vin grabber activation */ > > int next_active_buffer; /* next buffer being grabbed (0..3) */ > > int grabbed; > int vin_active; > > int interrupt_count; > > /* registered bottom half of isr */ > struct work_struct tqnode_dpc; > > /* Shall we launch the bottom half handler */ > int grab_needed; > > grab_image_func_t on_grab_image; > }; >