aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media
diff options
context:
space:
mode:
authorcodeworkx <codeworkx@cyanogenmod.org>2013-02-25 20:19:27 +0000
committercodeworkx <codeworkx@cyanogenmod.org>2013-02-25 20:24:48 +0000
commitc96eeb5fd3bdbb59d4f7781dcaf28737f906e3d1 (patch)
treea630fd2c96daa5ddc83859fdeab60dc4ff82273b /drivers/media
parent6974a50b47c896d59938ca5cf45f3412e28f5bfc (diff)
downloadkernel_samsung_smdk4412-c96eeb5fd3bdbb59d4f7781dcaf28737f906e3d1.zip
kernel_samsung_smdk4412-c96eeb5fd3bdbb59d4f7781dcaf28737f906e3d1.tar.gz
kernel_samsung_smdk4412-c96eeb5fd3bdbb59d4f7781dcaf28737f906e3d1.tar.bz2
s5c73m3: only use camera fw from system if newer than on data
if firmware versions from system and data are equal, firmware from system is used which results in a crash. <7>[ 71.566024] c0 s5c73m3_load_fw: Writing Firmware... <2>[ 71.566095] c0 kernel BUG at /android/cm-10.1/kernel/samsung/smdk4412/arch /arm/mm/dma-mapping.c:436! <1>[ 71.566145] c0 Unable to handle kernel NULL pointer dereference at virtual address 00000000 use firmware from data as workaround for now. Change-Id: I4df190dee7342bc1db94de285c1ccfa1f05892e8
Diffstat (limited to 'drivers/media')
-rw-r--r--drivers/media/video/s5c73m3.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/media/video/s5c73m3.c b/drivers/media/video/s5c73m3.c
index 1aa495c..3d24612 100644
--- a/drivers/media/video/s5c73m3.c
+++ b/drivers/media/video/s5c73m3.c
@@ -1056,7 +1056,8 @@ request_fw:
retVal = s5c73m3_compare_date(sd,
S5C73M3_IN_DATA,
S5C73M3_IN_SYSTEM);
- if (retVal <= 0) {
+ /* only use firmware from system if it's newer than firmware on data */
+ if (retVal < 0) {
/*unlink(&fw_path_in_data);*/
state->fw_index = S5C73M3_IN_SYSTEM;
} else {