Received: by 2002:a05:7412:251c:b0:e2:908c:2ebd with SMTP id w28csp1524594rda; Mon, 23 Oct 2023 15:44:30 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGZ8s+rmA7Q6gi5AC6AfqAiH2S7b5pZu31ENzOSXHE56E8YXrjLelyL2tE8sZk1/mpggyom X-Received: by 2002:a05:6a00:c92:b0:6bd:ca1d:c51e with SMTP id a18-20020a056a000c9200b006bdca1dc51emr9322994pfv.16.1698101069975; Mon, 23 Oct 2023 15:44:29 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1698101069; cv=none; d=google.com; s=arc-20160816; b=Jd9S9sENgITw7LP7l1lORJrdFcdaamUTDgSp8e3+Z504DPFoZNPtxgtevf9dYf49KB CtPgosYJZdEHFryCmXTIB8JbcRr1eL9LigmIaRNa10/5WEH82Y9iNzC1/ybiM/fPObV4 l0uftKI3Tg/QReJcg814qRg+NguXYJHOnZBSN/ZThBr2gyy/V2ao5ZqDGV0ev/lEU6lu G9wdOqdLwzvXll/SzTLm6gbF2R77GbtjtGcfNI4pGI3SaMrOvJ0AGT565HOKwe9hI/p/ gmvrG0c4aNLyZ4Ez8NRnsiFl3HZ0OSR/8mdxr0U2r5sgzZ13yh40g9FQhhjL+AxPEf/a tofA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:user-agent:message-id:date:to:cc:from:subject :references:in-reply-to:content-transfer-encoding:mime-version :dkim-signature; bh=F7KBVVb4somw8LN84sfz/emzxr11PBvJEWoPsRVpeDs=; fh=E5MBdOYoAf4sA1EAUAHnzxb7W3TFNU4OZuIHNN8dUX4=; b=GFE556KIRAYheoKIr3+VnekNWQNJBVhp1gWFTUx38obmPVXfKxkKIdQQYM1KR4D6P4 OSwON/y1NTkkLxnSU38ko4Hz5Pp+3h2glcGUczv26KmVeDPvxxlcMskqF1sSYZtia76w Pi0jsOFhDwqEdwrewxBCZFlhNFEoA0rQk2HXRFKJCC61A+5IXUvjFaYzxmdou2A70m9o 9anMwZ0LV9SMqp+meGgsvc4RiwZpNCDW00vjR2OwWK3eevMrhmkMjJkcFi9MPpQXCQMW xtDJApQYFdukksPG2xbFhV8BoSUe7vWufIMK2kqHVBmha++Khy8uiNuEZYXmsaNBqV81 1GSQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=De6296iT; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from groat.vger.email (groat.vger.email. [2620:137:e000::3:5]) by mx.google.com with ESMTPS id u26-20020a056a00099a00b006be5a6cd3f3si7345675pfg.285.2023.10.23.15.44.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 23 Oct 2023 15:44:29 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) client-ip=2620:137:e000::3:5; Authentication-Results: mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=De6296iT; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id B0BA6809A794; Mon, 23 Oct 2023 15:44:27 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230192AbjJWWoR (ORCPT + 99 others); Mon, 23 Oct 2023 18:44:17 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40512 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230491AbjJWWoP (ORCPT ); Mon, 23 Oct 2023 18:44:15 -0400 Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 69C3E10C; Mon, 23 Oct 2023 15:44:13 -0700 (PDT) Received: from pendragon.ideasonboard.com (aztw-30-b2-v4wan-166917-cust845.vm26.cable.virginm.net [82.37.23.78]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id BBDA7AE; Tue, 24 Oct 2023 00:44:00 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1698101040; bh=44kTKbA7H5AWp99DN6cgifPwZ2VCzFypzEW+C2K1y4s=; h=In-Reply-To:References:Subject:From:Cc:To:Date:From; b=De6296iTuinmnZ8SpztkbFF4Sorx4HDQ4khwjbeHZw3sSWxScjmBef2kygkv3UqZn zP11M/saCN2/xzqQ5+IgS01mDJ/Pr1pN8AarH9Loge96YjljuMMOdRgPCdB/6qNkXb 65/tCv5PK9IgaIYqVqyiZRXyhW6Ewm0Eu1U71Fnc= Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable In-Reply-To: <20231023-imx214-v1-1-b33f1bbd1fcf@apitzsch.eu> References: <20231023-imx214-v1-0-b33f1bbd1fcf@apitzsch.eu> <20231023-imx214-v1-1-b33f1bbd1fcf@apitzsch.eu> Subject: Re: [PATCH 1/4] media: i2c: imx214: Explain some magic numbers From: Kieran Bingham Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, ~postmarketos/upstreaming@lists.sr.ht, =?utf-8?q?Andr=C3=A9?= Apitzsch To: =?utf-8?q?Andr=C3=A9?= Apitzsch , Mauro Carvalho Chehab , Ricardo Ribalda , Sakari Ailus Date: Mon, 23 Oct 2023 23:44:09 +0100 Message-ID: <169810104910.2245571.16606813523946813634@ping.linuxembedded.co.uk> User-Agent: alot/0.10 X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Mon, 23 Oct 2023 15:44:27 -0700 (PDT) Quoting Andr=C3=A9 Apitzsch (2023-10-23 22:47:50) > Code refinement, no functional changes. >=20 > Signed-off-by: Andr=C3=A9 Apitzsch > --- > drivers/media/i2c/imx214.c | 24 +++++++++++++++++++----- > 1 file changed, 19 insertions(+), 5 deletions(-) >=20 > diff --git a/drivers/media/i2c/imx214.c b/drivers/media/i2c/imx214.c > index 4f77ea02cc27..9218c149d4c8 100644 > --- a/drivers/media/i2c/imx214.c > +++ b/drivers/media/i2c/imx214.c > @@ -19,12 +19,23 @@ > #include > #include > =20 > +#define IMX214_REG_MODE_SELECT 0x0100 > +#define IMX214_MODE_STANDBY 0x00 > +#define IMX214_MODE_STREAMING 0x01 > + > #define IMX214_DEFAULT_CLK_FREQ 24000000 > #define IMX214_DEFAULT_LINK_FREQ 480000000 > #define IMX214_DEFAULT_PIXEL_RATE ((IMX214_DEFAULT_LINK_FREQ * 8LL) / 10) > #define IMX214_FPS 30 > #define IMX214_MBUS_CODE MEDIA_BUS_FMT_SRGGB10_1X10 > =20 > +/* Exposure control */ > +#define IMX214_REG_EXPOSURE 0x0202 > +#define IMX214_EXPOSURE_MIN 0 > +#define IMX214_EXPOSURE_MAX 3184 > +#define IMX214_EXPOSURE_STEP 1 > +#define IMX214_EXPOSURE_DEFAULT 0x0c70 I like this change, and I see that 0x0c70 was directly moved here from the code below. But could we replace 0xc70 here with 3184 please so that it's /far/ clearer that the Exposure Default =3D=3D Exposure Max which is otherwise hidden? -- Regards Kieran > + > static const char * const imx214_supply_name[] =3D { > "vdda", > "vddd", > @@ -665,7 +676,7 @@ static int imx214_set_ctrl(struct v4l2_ctrl *ctrl) > case V4L2_CID_EXPOSURE: > vals[1] =3D ctrl->val; > vals[0] =3D ctrl->val >> 8; > - ret =3D regmap_bulk_write(imx214->regmap, 0x202, vals, 2); > + ret =3D regmap_bulk_write(imx214->regmap, IMX214_REG_EXPO= SURE, vals, 2); > if (ret < 0) > dev_err(imx214->dev, "Error %d\n", ret); > ret =3D 0; > @@ -743,7 +754,7 @@ static int imx214_start_streaming(struct imx214 *imx2= 14) > dev_err(imx214->dev, "could not sync v4l2 controls\n"); > goto error; > } > - ret =3D regmap_write(imx214->regmap, 0x100, 1); > + ret =3D regmap_write(imx214->regmap, IMX214_REG_MODE_SELECT, IMX2= 14_MODE_STREAMING); > if (ret < 0) { > dev_err(imx214->dev, "could not sent start table %d\n", r= et); > goto error; > @@ -761,7 +772,7 @@ static int imx214_stop_streaming(struct imx214 *imx21= 4) > { > int ret; > =20 > - ret =3D regmap_write(imx214->regmap, 0x100, 0); > + ret =3D regmap_write(imx214->regmap, IMX214_REG_MODE_SELECT, IMX2= 14_MODE_STANDBY); > if (ret < 0) > dev_err(imx214->dev, "could not sent stop table %d\n", r= et); > =20 > @@ -991,9 +1002,12 @@ static int imx214_probe(struct i2c_client *client) > * > * Yours sincerely, Ricardo. > */ > - imx214->exposure =3D v4l2_ctrl_new_std(&imx214->ctrls, &imx214_ct= rl_ops, > + imx214->exposure =3D v4l2_ctrl_new_std(ctrl_hdlr, &imx214_ctrl_op= s, > V4L2_CID_EXPOSURE, > - 0, 3184, 1, 0x0c70); > + IMX214_EXPOSURE_MIN, > + IMX214_EXPOSURE_MAX, > + IMX214_EXPOSURE_STEP, > + IMX214_EXPOSURE_DEFAULT); > =20 > imx214->unit_size =3D v4l2_ctrl_new_std_compound(&imx214->ctrls, > NULL, >=20 > --=20 > 2.42.0 >