From patchwork Sun Sep 23 18:28:44 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Frank_Sch=C3=A4fer?= X-Patchwork-Id: 1495721 Return-Path: X-Original-To: patchwork-linux-media@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork1.kernel.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by patchwork1.kernel.org (Postfix) with ESMTP id D32E3400EC for ; Sun, 23 Sep 2012 19:29:07 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754052Ab2IWT3F (ORCPT ); Sun, 23 Sep 2012 15:29:05 -0400 Received: from mail-we0-f174.google.com ([74.125.82.174]:51387 "EHLO mail-we0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753956Ab2IWT3E (ORCPT ); Sun, 23 Sep 2012 15:29:04 -0400 Received: by weyx8 with SMTP id x8so2978759wey.19 for ; Sun, 23 Sep 2012 12:29:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20120113; h=from:to:cc:subject:date:message-id:x-mailer:mime-version :content-type:content-transfer-encoding; bh=vg+Fee1azhJTkAU+9UvTz8wi58DuEybCYF53IlbQQcA=; b=cl74JkkW0brLDUq9JwcoSDyb5mKbxLxyp19CqnRt+etXPGaM5kNDUtxmWvkF/7q+NS YEIE/7JjAOtI6MEYrXSWZ2PYHFIspn2rGP13LNis3LrD30l02Dll4ED4N0BhjbKgqGPf 7G+xNTR3cnRGsdwVqB4OZVR4WkH23uNPHT31iwKNjDcgFdnxjOj/dwM7zf2go7keg6LS xu9iYduxkP4S7CMUomgbCh6Tv+lVrQJUlQLPqNWxCJg1tDmM/5xwh0IP9KLX9jO0Q7gX LMaNiubPtTCbXQHtY/aKr55BLBZ36oQMHbuN/GTACtXSDAKpPLm0dcx1LmL6D7Xb0AAb UKzA== Received: by 10.180.83.66 with SMTP id o2mr9601385wiy.14.1348428543600; Sun, 23 Sep 2012 12:29:03 -0700 (PDT) Received: from Athlon64X2-5000.site (ip-176-199-46-78.unitymediagroup.de. [176.199.46.78]) by mx.google.com with ESMTPS id fr4sm12301871wib.8.2012.09.23.12.29.02 (version=TLSv1/SSLv3 cipher=OTHER); Sun, 23 Sep 2012 12:29:02 -0700 (PDT) From: =?UTF-8?q?Frank=20Sch=C3=A4fer?= To: g.liakhovetski@gmx.de Cc: maramaopercheseimorto@gmail.com, linux-media@vger.kernel.org, =?UTF-8?q?Frank=20Sch=C3=A4fer?= Subject: [PATCH v2 1/3] ov2640: select sensor register bank before applying h/v-flip settings Date: Sun, 23 Sep 2012 21:28:44 +0300 Message-Id: <1348424926-12864-1-git-send-email-fschaefer.oss@googlemail.com> X-Mailer: git-send-email 1.7.10.4 MIME-Version: 1.0 Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org We currently don't select the register bank in ov2640_s_ctrl, so we can end up writing to DSP register 0x04 instead of sensor register 0x04. This happens for example when calling ov2640_s_ctrl after ov2640_s_fmt. Signed-off-by: Frank Schäfer Cc: stable@kernel.org --- drivers/media/i2c/soc_camera/ov2640.c | 8 ++++++++ 1 Datei geändert, 8 Zeilen hinzugefügt(+) diff --git a/drivers/media/i2c/soc_camera/ov2640.c b/drivers/media/i2c/soc_camera/ov2640.c index 78ac574..e4fc79e 100644 --- a/drivers/media/i2c/soc_camera/ov2640.c +++ b/drivers/media/i2c/soc_camera/ov2640.c @@ -683,8 +683,16 @@ static int ov2640_s_ctrl(struct v4l2_ctrl *ctrl) struct v4l2_subdev *sd = &container_of(ctrl->handler, struct ov2640_priv, hdl)->subdev; struct i2c_client *client = v4l2_get_subdevdata(sd); + struct regval_list regval; + int ret; u8 val; + regval.reg_num = BANK_SEL; + regval.value = BANK_SEL_SENS; + ret = ov2640_write_array(client, ®val); + if (ret < 0) + return ret; + switch (ctrl->id) { case V4L2_CID_VFLIP: val = ctrl->val ? REG04_VFLIP_IMG : 0x00;