forked from luck/tmp_suning_uos_patched
V4L/DVB (4949a): Fix INIT_WORK
INIT_WORK syntax changed on kernel 2.6.19. Fixing it on usbvision and cx88-input. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
This commit is contained in:
parent
f35db23c1b
commit
67952e8cb1
@ -158,7 +158,7 @@ static void cx88_ir_work(struct work_struct *work)
|
|||||||
static void cx88_ir_start(struct cx88_core *core, struct cx88_IR *ir)
|
static void cx88_ir_start(struct cx88_core *core, struct cx88_IR *ir)
|
||||||
{
|
{
|
||||||
if (ir->polling) {
|
if (ir->polling) {
|
||||||
INIT_WORK(&ir->work, cx88_ir_work, ir);
|
INIT_WORK(&ir->work, cx88_ir_work);
|
||||||
init_timer(&ir->timer);
|
init_timer(&ir->timer);
|
||||||
ir->timer.function = ir_timer;
|
ir->timer.function = ir_timer;
|
||||||
ir->timer.data = (unsigned long)ir;
|
ir->timer.data = (unsigned long)ir;
|
||||||
|
@ -1708,7 +1708,6 @@ int usbvision_power_off(struct usb_usbvision *usbvision)
|
|||||||
return errCode;
|
return errCode;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* usbvision_set_video_format()
|
* usbvision_set_video_format()
|
||||||
*
|
*
|
||||||
@ -2217,14 +2216,15 @@ int usbvision_power_on(struct usb_usbvision *usbvision)
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
// to call usbvision_power_off from task queue
|
// to call usbvision_power_off from task queue
|
||||||
static void call_usbvision_power_off(void *_usbvision)
|
static void call_usbvision_power_off(struct work_struct *work)
|
||||||
{
|
{
|
||||||
struct usb_usbvision *usbvision = _usbvision;
|
struct usb_usbvision *usbvision = container_of(work, struct usb_usbvision, work);
|
||||||
|
|
||||||
PDEBUG(DBG_FUNC, "");
|
PDEBUG(DBG_FUNC, "");
|
||||||
down_interruptible(&usbvision->lock);
|
down_interruptible(&usbvision->lock);
|
||||||
if(usbvision->user == 0) {
|
if(usbvision->user == 0) {
|
||||||
usbvision_i2c_usb_del_bus(&usbvision->i2c_adap);
|
usbvision_i2c_usb_del_bus(&usbvision->i2c_adap);
|
||||||
|
|
||||||
usbvision_power_off(usbvision);
|
usbvision_power_off(usbvision);
|
||||||
usbvision->initialized = 0;
|
usbvision->initialized = 0;
|
||||||
}
|
}
|
||||||
@ -2237,7 +2237,7 @@ static void usbvision_powerOffTimer(unsigned long data)
|
|||||||
|
|
||||||
PDEBUG(DBG_FUNC, "");
|
PDEBUG(DBG_FUNC, "");
|
||||||
del_timer(&usbvision->powerOffTimer);
|
del_timer(&usbvision->powerOffTimer);
|
||||||
INIT_WORK(&usbvision->powerOffWork, call_usbvision_power_off, usbvision);
|
INIT_WORK(&usbvision->powerOffWork, call_usbvision_power_off);
|
||||||
(void) schedule_work(&usbvision->powerOffWork);
|
(void) schedule_work(&usbvision->powerOffWork);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -381,6 +381,8 @@ struct usb_usbvision {
|
|||||||
struct video_device *rdev; /* Radio Device */
|
struct video_device *rdev; /* Radio Device */
|
||||||
struct video_device *vbi; /* VBI Device */
|
struct video_device *vbi; /* VBI Device */
|
||||||
|
|
||||||
|
struct work_struct work;
|
||||||
|
|
||||||
/* i2c Declaration Section*/
|
/* i2c Declaration Section*/
|
||||||
struct i2c_adapter i2c_adap;
|
struct i2c_adapter i2c_adap;
|
||||||
struct i2c_algo_usb_data i2c_algo;
|
struct i2c_algo_usb_data i2c_algo;
|
||||||
|
Loading…
Reference in New Issue
Block a user