From bc8d670d43b3818015c157f413406fdb25ea833a Mon Sep 17 00:00:00 2001 From: Satish Kodishala <skodisha@codeaurora.org> Date: Thu, 24 Jul 2014 19:46:20 +0530 Subject: [PATCH] FM: jni: Treat only negative return values as errors FM kernel driver can return zero or positive values in case of success. Make changes to treat only negative return values as errors. Change-Id: Ief859af604349a2e47daee18693723600154d1a9 --- jni/FmIoctlsInterface.cpp | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/jni/FmIoctlsInterface.cpp b/jni/FmIoctlsInterface.cpp index 7528d89..046ca1e 100644 --- a/jni/FmIoctlsInterface.cpp +++ b/jni/FmIoctlsInterface.cpp @@ -50,7 +50,7 @@ int FmIoctlsInterface :: get_cur_freq channel.type = V4L2_TUNER_RADIO; ret = ioctl(fd, VIDIOC_G_FREQUENCY, &channel); - if(ret != IOCTL_SUCC) { + if(ret < IOCTL_SUCC) { return FM_FAILURE; }else { freq = (channel.frequency / TUNE_MULT); @@ -70,7 +70,7 @@ int FmIoctlsInterface :: set_freq channel.frequency = (freq * TUNE_MULT); ret = ioctl(fd, VIDIOC_S_FREQUENCY, &channel); - if(ret != IOCTL_SUCC) { + if(ret < IOCTL_SUCC) { return FM_FAILURE; }else { return FM_SUCCESS; @@ -90,7 +90,7 @@ int FmIoctlsInterface :: set_control for(int i = 0; i < 3; i++) { ret = ioctl(fd, VIDIOC_S_CTRL, &control); - if(ret != IOCTL_SUCC) { + if(ret < IOCTL_SUCC) { ret = FM_FAILURE; }else { ret = FM_SUCCESS; @@ -127,7 +127,7 @@ int FmIoctlsInterface :: set_calibration v4l2_ctls.count = 1; v4l2_ctls.controls = &ext_ctl; ret = ioctl(fd, VIDIOC_S_EXT_CTRLS, &v4l2_ctls); - if(ret != IOCTL_SUCC) { + if(ret < IOCTL_SUCC) { ALOGE("%s: ioctl call failed\n", LOGTAG); return FM_FAILURE; }else { @@ -148,7 +148,7 @@ int FmIoctlsInterface :: get_control control.id = id; ret = ioctl(fd, VIDIOC_G_CTRL, &control); - if(ret != IOCTL_SUCC) { + if(ret < IOCTL_SUCC) { return FM_FAILURE; }else { val = control.value; @@ -168,7 +168,7 @@ int FmIoctlsInterface :: start_search hw_seek.type = V4L2_TUNER_RADIO; ret = ioctl(fd, VIDIOC_S_HW_FREQ_SEEK, &hw_seek); - if(ret != IOCTL_SUCC) { + if(ret < IOCTL_SUCC) { return FM_FAILURE; }else { return FM_SUCCESS; @@ -190,7 +190,7 @@ int FmIoctlsInterface :: set_band ret = ioctl(fd, VIDIOC_S_TUNER, &tuner); ret = set_control(fd, V4L2_CID_PRV_REGION, 0); - if(ret != IOCTL_SUCC) { + if(ret < IOCTL_SUCC) { return FM_FAILURE; }else { return FM_SUCCESS; @@ -208,7 +208,7 @@ int FmIoctlsInterface :: get_rmssi tuner.index = 0; tuner.signal = 0; ret = ioctl(fd, VIDIOC_G_TUNER, &tuner); - if(ret != IOCTL_SUCC) { + if(ret < IOCTL_SUCC) { ret = FM_FAILURE; }else { rmssi = tuner.signal; @@ -227,7 +227,7 @@ int FmIoctlsInterface :: get_upperband_limit tuner.index = 0; ret = ioctl(fd, VIDIOC_G_TUNER, &tuner); - if(ret != IOCTL_SUCC) { + if(ret < IOCTL_SUCC) { return FM_FAILURE; }else { freq = (tuner.rangehigh / TUNE_MULT); @@ -245,7 +245,7 @@ int FmIoctlsInterface :: get_lowerband_limit tuner.index = 0; ret = ioctl(fd, VIDIOC_G_TUNER, &tuner); - if(ret != IOCTL_SUCC) { + if(ret < IOCTL_SUCC) { return FM_FAILURE; }else { freq = (tuner.rangelow / TUNE_MULT); @@ -263,12 +263,12 @@ int FmIoctlsInterface :: set_audio_mode tuner.index = 0; ret = ioctl(fd, VIDIOC_G_TUNER, &tuner); - if(ret != IOCTL_SUCC) { + if(ret < IOCTL_SUCC) { return FM_FAILURE; }else { tuner.audmode = mode; ret = ioctl(fd, VIDIOC_S_TUNER, &tuner); - if(ret != IOCTL_SUCC) { + if(ret < IOCTL_SUCC) { return FM_FAILURE; }else { return FM_SUCCESS; @@ -293,7 +293,7 @@ int FmIoctlsInterface :: get_buffer v4l2_buf.length = STD_BUF_SIZE; v4l2_buf.m.userptr = (ULINT)buff; ret = ioctl(fd, VIDIOC_DQBUF, &v4l2_buf); - if(ret != IOCTL_SUCC) { + if(ret < IOCTL_SUCC) { return FM_FAILURE; }else { return v4l2_buf.bytesused; @@ -311,7 +311,7 @@ int FmIoctlsInterface :: set_ext_control ret = ioctl(fd, VIDIOC_S_EXT_CTRLS, v4l2_ctls); - if(ret != IOCTL_SUCC) { + if(ret < IOCTL_SUCC) { return FM_FAILURE; }else { return FM_SUCCESS; -- GitLab