| .. | .. |
|---|
| 1 | +// SPDX-License-Identifier: GPL-2.0-only |
|---|
| 1 | 2 | /* |
|---|
| 2 | 3 | * Driver for the mt9m111 sensor |
|---|
| 3 | 4 | * |
|---|
| .. | .. |
|---|
| 9 | 10 | * Copyright (c) 2006 Willem Duinker |
|---|
| 10 | 11 | * v4l2 interface modeled after the V4L2 driver |
|---|
| 11 | 12 | * for SN9C10x PC Camera Controllers |
|---|
| 12 | | - * |
|---|
| 13 | | - * This program is free software; you can redistribute it and/or |
|---|
| 14 | | - * modify it under the terms of the GNU General Public License as |
|---|
| 15 | | - * published by the Free Software Foundation, version 2. |
|---|
| 16 | | - * |
|---|
| 17 | 13 | */ |
|---|
| 18 | 14 | |
|---|
| 19 | 15 | #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt |
|---|
| .. | .. |
|---|
| 199 | 195 | int mt9m111_probe(struct sd *sd) |
|---|
| 200 | 196 | { |
|---|
| 201 | 197 | u8 data[2] = {0x00, 0x00}; |
|---|
| 202 | | - int i; |
|---|
| 198 | + int i, err; |
|---|
| 203 | 199 | struct gspca_dev *gspca_dev = (struct gspca_dev *)sd; |
|---|
| 204 | 200 | |
|---|
| 205 | 201 | if (force_sensor) { |
|---|
| .. | .. |
|---|
| 217 | 213 | /* Do the preinit */ |
|---|
| 218 | 214 | for (i = 0; i < ARRAY_SIZE(preinit_mt9m111); i++) { |
|---|
| 219 | 215 | if (preinit_mt9m111[i][0] == BRIDGE) { |
|---|
| 220 | | - m5602_write_bridge(sd, |
|---|
| 221 | | - preinit_mt9m111[i][1], |
|---|
| 222 | | - preinit_mt9m111[i][2]); |
|---|
| 216 | + err = m5602_write_bridge(sd, |
|---|
| 217 | + preinit_mt9m111[i][1], |
|---|
| 218 | + preinit_mt9m111[i][2]); |
|---|
| 223 | 219 | } else { |
|---|
| 224 | 220 | data[0] = preinit_mt9m111[i][2]; |
|---|
| 225 | 221 | data[1] = preinit_mt9m111[i][3]; |
|---|
| 226 | | - m5602_write_sensor(sd, |
|---|
| 227 | | - preinit_mt9m111[i][1], data, 2); |
|---|
| 222 | + err = m5602_write_sensor(sd, |
|---|
| 223 | + preinit_mt9m111[i][1], data, 2); |
|---|
| 228 | 224 | } |
|---|
| 225 | + if (err < 0) |
|---|
| 226 | + return err; |
|---|
| 229 | 227 | } |
|---|
| 230 | 228 | |
|---|
| 231 | 229 | if (m5602_read_sensor(sd, MT9M111_SC_CHIPVER, data, 2)) |
|---|