[media] saa7164: bugfix, avoid oops when driver unloads without firmware

Signed-off-by: Steven Toth <stoth@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
diff --git a/drivers/media/video/saa7164/saa7164-core.c b/drivers/media/video/saa7164/saa7164-core.c
index 222fbda..99819ac 100644
--- a/drivers/media/video/saa7164/saa7164-core.c
+++ b/drivers/media/video/saa7164/saa7164-core.c
@@ -1423,7 +1423,8 @@
 			kthread_stop(dev->kthread);
 			dev->kthread = NULL;
 		}
-		saa7164_api_set_debug(dev, 0x00);
+		if (dev->firmwareloaded)
+			saa7164_api_set_debug(dev, 0x00);
 	}
 
 	saa7164_histogram_print(&dev->ports[ SAA7164_PORT_ENC1 ],
diff --git a/drivers/media/video/saa7164/saa7164-fw.c b/drivers/media/video/saa7164/saa7164-fw.c
index e48e2b4..484533c 100644
--- a/drivers/media/video/saa7164/saa7164-fw.c
+++ b/drivers/media/video/saa7164/saa7164-fw.c
@@ -604,6 +604,7 @@
 		}
 	}
 
+	dev->firmwareloaded = 1;
 	ret = 0;
 
 out:
diff --git a/drivers/media/video/saa7164/saa7164.h b/drivers/media/video/saa7164/saa7164.h
index f16b3f9..5ff79ab 100644
--- a/drivers/media/video/saa7164/saa7164.h
+++ b/drivers/media/video/saa7164/saa7164.h
@@ -452,6 +452,7 @@
 
 	/* firmware status */
 	struct saa7164_fw_status	fw_status;
+	u32				firmwareloaded;
 
 	tmComResHWDescr_t		hwdesc;
 	tmComResInterfaceDescr_t	intfdesc;