소스 검색

ps3fb: Fix ps3fb free_irq() dev_id

The dev_id arg passed to free_irq() must match that passed to
request_irq().

Fixes this PS3 error message:

  Trying to free already-free IRQ 44

Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
Signed-off-by: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Geoff Levand 17 년 전
부모
커밋
fcbe6e9709
1개의 변경된 파일2개의 추가작업 그리고 2개의 파일을 삭제
  1. 2 2
      drivers/video/ps3fb.c

+ 2 - 2
drivers/video/ps3fb.c

@@ -1212,7 +1212,7 @@ err_fb_dealloc:
 err_framebuffer_release:
 err_framebuffer_release:
 	framebuffer_release(info);
 	framebuffer_release(info);
 err_free_irq:
 err_free_irq:
-	free_irq(ps3fb.irq_no, dev);
+	free_irq(ps3fb.irq_no, &dev->core);
 	ps3_irq_plug_destroy(ps3fb.irq_no);
 	ps3_irq_plug_destroy(ps3fb.irq_no);
 err_iounmap_dinfo:
 err_iounmap_dinfo:
 	iounmap((u8 __iomem *)ps3fb.dinfo);
 	iounmap((u8 __iomem *)ps3fb.dinfo);
@@ -1247,7 +1247,7 @@ static int ps3fb_shutdown(struct ps3_system_bus_device *dev)
 		kthread_stop(task);
 		kthread_stop(task);
 	}
 	}
 	if (ps3fb.irq_no) {
 	if (ps3fb.irq_no) {
-		free_irq(ps3fb.irq_no, dev);
+		free_irq(ps3fb.irq_no, &dev->core);
 		ps3_irq_plug_destroy(ps3fb.irq_no);
 		ps3_irq_plug_destroy(ps3fb.irq_no);
 	}
 	}
 	iounmap((u8 __iomem *)ps3fb.dinfo);
 	iounmap((u8 __iomem *)ps3fb.dinfo);