aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/misc
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/misc')
-rw-r--r--drivers/misc/ioc4.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/drivers/misc/ioc4.c b/drivers/misc/ioc4.c
index 06f6ad29ceff..3336ddca45ac 100644
--- a/drivers/misc/ioc4.c
+++ b/drivers/misc/ioc4.c
@@ -145,7 +145,6 @@ ioc4_clock_calibrate(struct ioc4_driver_data *idd)
145 union ioc4_int_out int_out; 145 union ioc4_int_out int_out;
146 union ioc4_gpcr gpcr; 146 union ioc4_gpcr gpcr;
147 unsigned int state, last_state = 1; 147 unsigned int state, last_state = 1;
148 struct timespec start_ts, end_ts;
149 uint64_t start, end, period; 148 uint64_t start, end, period;
150 unsigned int count = 0; 149 unsigned int count = 0;
151 150
@@ -174,10 +173,10 @@ ioc4_clock_calibrate(struct ioc4_driver_data *idd)
174 if (!last_state && state) { 173 if (!last_state && state) {
175 count++; 174 count++;
176 if (count == IOC4_CALIBRATE_END) { 175 if (count == IOC4_CALIBRATE_END) {
177 ktime_get_ts(&end_ts); 176 end = ktime_get_ns();
178 break; 177 break;
179 } else if (count == IOC4_CALIBRATE_DISCARD) 178 } else if (count == IOC4_CALIBRATE_DISCARD)
180 ktime_get_ts(&start_ts); 179 start = ktime_get_ns();
181 } 180 }
182 last_state = state; 181 last_state = state;
183 } while (1); 182 } while (1);
@@ -192,8 +191,6 @@ ioc4_clock_calibrate(struct ioc4_driver_data *idd)
192 * by which the IOC4 generates the square wave, to get the 191 * by which the IOC4 generates the square wave, to get the
193 * period of an IOC4 INT_OUT count. 192 * period of an IOC4 INT_OUT count.
194 */ 193 */
195 end = end_ts.tv_sec * NSEC_PER_SEC + end_ts.tv_nsec;
196 start = start_ts.tv_sec * NSEC_PER_SEC + start_ts.tv_nsec;
197 period = (end - start) / 194 period = (end - start) /
198 (IOC4_CALIBRATE_CYCLES * 2 * (IOC4_CALIBRATE_COUNT + 1)); 195 (IOC4_CALIBRATE_CYCLES * 2 * (IOC4_CALIBRATE_COUNT + 1));
199 196