From patchwork Thu Sep 22 10:42:23 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bryan O'Donoghue X-Patchwork-Id: 12984948 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7145CC6FA86 for ; Thu, 22 Sep 2022 10:42:53 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230526AbiIVKmw (ORCPT ); Thu, 22 Sep 2022 06:42:52 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41298 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229554AbiIVKmu (ORCPT ); Thu, 22 Sep 2022 06:42:50 -0400 Received: from mail-wm1-x331.google.com (mail-wm1-x331.google.com [IPv6:2a00:1450:4864:20::331]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 93A4AAB196 for ; Thu, 22 Sep 2022 03:42:48 -0700 (PDT) Received: by mail-wm1-x331.google.com with SMTP id l8so6492247wmi.2 for ; Thu, 22 Sep 2022 03:42:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date; bh=mQ+WNR4+ZoBFRpRt6BX4yAkPkUqFNL1hRrx7xYLMtk8=; b=PgWdZgfrJefnWF/n4ifxlIEjRffqFfIoc3y4HiJxPtzvttkQBtH/r2gfE3duDFqKvL sUKB8zBmXge77vqh8v3MrdBvtF3u9LU6K++qY4YDeoDzx95zqUf6IqhF/yh+Z3aSwKLS /FlSKBDozGC7dTYGLAWJ/gAjoUZ0P0J56PWxHaLXhfEHGcwk1ULAxrZr2ypgQV3uuYt8 94viaLtZAuD80nicqmJbWg/lXRVZ/CRii5ivaa6Inigh76qhsOwce/028S9OwKrAlj2o 1OkYR2GU7+R5cydLbPnr+bz6aEjsJQfB+qkkcxNTmODqXbl28Dbw78BwraZgL/6MzRif JK8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date; bh=mQ+WNR4+ZoBFRpRt6BX4yAkPkUqFNL1hRrx7xYLMtk8=; b=S6RgNPQ/6SKDAAyHrohQDH+pb8fVFOKXOvoWUNSB90obdjSTuB9z0n6DchJGUd4PMn s7R1cbFjuxC/gSlNdl9nur3jK7KKxD6yKGX1l9UC+cWkGR6xQ+ZV4E259OsJm613IDDm pg1gkBgCvb40k/JLGflh75oTBdQoAUKKafXyMNS0HwQ9ZqxYxlsLA0ehoyH31kgdE5Q9 8mTL/TKFQaN/XBMRYMMJpLkAljJnKODtpZc+JkdRqL5PlEWRp+btikc2tOh57woZ8ACx a1gjyt511xmSguvmWKav77BO1Fbgez4YrpFcSgkU2NqtSZKdfRUvy2BXUclhGBKIiPuC jzqw== X-Gm-Message-State: ACrzQf08j8i3BxGy9fabq2b2hqxOlimTKZ5h49B1eP8JG31KkEJFMqbw 8e9k7F92KizTJ89GQiE4EHHo3A== X-Google-Smtp-Source: AMsMyM4g1PzDnLatQtptROUHPkEKU+6SmG/6W1gYw8Lt1FC+tukxL2CrnObjKmTj99K/Ed96OCP7bA== X-Received: by 2002:a7b:c404:0:b0:3b4:faca:cf50 with SMTP id k4-20020a7bc404000000b003b4facacf50mr4779575wmi.67.1663843367145; Thu, 22 Sep 2022 03:42:47 -0700 (PDT) Received: from planet9.chello.ie (188-141-3-169.dynamic.upc.ie. [188.141.3.169]) by smtp.gmail.com with ESMTPSA id x12-20020adfffcc000000b0022ac672654dsm4647150wrs.58.2022.09.22.03.42.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Sep 2022 03:42:46 -0700 (PDT) From: Bryan O'Donoghue To: sakari.ailus@iki.fi, dave.stevenson@raspberrypi.com, jacopo@jmondi.org, paul.j.murphy@intel.com, daniele.alessandrelli@intel.com, mchehab@kernel.org, linux-media@vger.kernel.org, krzysztof.kozlowski+dt@linaro.org, robh+dt@kernel.org Cc: bryan.odonoghue@linaro.org Subject: [PATCH v4 RESEND 1/3] media: dt-bindings: imx412: Extend compatible strings Date: Thu, 22 Sep 2022 11:42:23 +0100 Message-Id: <20220922104225.1375331-2-bryan.odonoghue@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220922104225.1375331-1-bryan.odonoghue@linaro.org> References: <20220922104225.1375331-1-bryan.odonoghue@linaro.org> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org Add compatible bindings for imx477 and imx577 both of which use the same silicon enabling reference code from Sony in the available examples provided. Signed-off-by: Bryan O'Donoghue --- .../devicetree/bindings/media/i2c/sony,imx412.yaml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/media/i2c/sony,imx412.yaml b/Documentation/devicetree/bindings/media/i2c/sony,imx412.yaml index 26d1807d0bb6..ebb649c5e4c5 100644 --- a/Documentation/devicetree/bindings/media/i2c/sony,imx412.yaml +++ b/Documentation/devicetree/bindings/media/i2c/sony,imx412.yaml @@ -19,7 +19,11 @@ description: properties: compatible: - const: sony,imx412 + items: + - enum: + - sony,imx412 + - sony,imx477 + - sony,imx577 reg: description: I2C address maxItems: 1 From patchwork Thu Sep 22 10:42:24 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bryan O'Donoghue X-Patchwork-Id: 12984949 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id CC3EBC6FA82 for ; Thu, 22 Sep 2022 10:42:59 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231220AbiIVKm6 (ORCPT ); Thu, 22 Sep 2022 06:42:58 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41418 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230225AbiIVKm5 (ORCPT ); Thu, 22 Sep 2022 06:42:57 -0400 Received: from mail-wr1-x435.google.com (mail-wr1-x435.google.com [IPv6:2a00:1450:4864:20::435]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 06750B40CF for ; Thu, 22 Sep 2022 03:42:55 -0700 (PDT) Received: by mail-wr1-x435.google.com with SMTP id r7so14873323wrm.2 for ; Thu, 22 Sep 2022 03:42:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date; bh=p+c48jxk3f8O5xMrsXo92bCrPamQN4CKrrxle6FJKe4=; b=lGdZ7JGM0czygzCBQUx+/XQnScNbBHvg3JiqStEYuksbqy8vG8m+a1M4f31NFbIxzj zITJDr2x2eOnCUVrSG1u2CdYZVoPUM4wu7+muHDQ1XYGOxN1g0Q8ulzAdKx0dM70ZPpN cNbGXxmZoLNsppFdz92EI2c8JJLFYOVc+0VRAobS46OUE2eaMacJ96hJcv0X3FV2gKQe DhowcILXILtv8oTxJ1QAJFsp9dRCxn/MWpm7KmuJvJq9s9GuRjO8kQ8W5cPFcYwYsJTl tDplgS2H0TN7e2iBWN9Ahkj1OXROR5J3DgBKvXQT4Gqn/R7oTWrppp21mHVMigwuQyvE OA0A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date; bh=p+c48jxk3f8O5xMrsXo92bCrPamQN4CKrrxle6FJKe4=; b=UmuRPUkMqNCdO++Fo+f/N/jAcQEVzu1ToU4JRPMvE34zvvJvQ3iCUWEhzKYRFcbcih 7o1jwKCmkD73cwo4Srcx7M2cBm2Peklr/8Q+PAa6OHoON36gx+dUZ82vrcf5l0SfNl2C 6jW3PkdyvyMvrObo28ul/Vab1ULJepX7Z630wZZ3ZNigabT3S9ko6fubWNaMEE+Hrdaq CV+FMUIjlteXfd5dggy8kNu2iAdaHbRbaTXtSaR54cDw5va+wC6jpN/JVnuw6bnfAfBL rGyx5IRly9sCQsh6GQPpnqvjDeutGIIYIxi0TNPqc2FtXtkIObqp71LNlGIzsCBohx9h m6uQ== X-Gm-Message-State: ACrzQf0HCtga5rRJTWLh6VWbktg0JWs6cejHOiViXXZl+Xs93DJkks7/ 4f6g3W9Y5awHJeZHSILJtC3Nxg== X-Google-Smtp-Source: AMsMyM5xSALxhGxIVROTo02ChLevHK/9glk2v4D33SjsGgawbeZvDxg8DD0Dutjp04I8hpGfDjIVXg== X-Received: by 2002:a5d:47c5:0:b0:22a:6c7a:10f3 with SMTP id o5-20020a5d47c5000000b0022a6c7a10f3mr1517392wrc.523.1663843373397; Thu, 22 Sep 2022 03:42:53 -0700 (PDT) Received: from planet9.chello.ie (188-141-3-169.dynamic.upc.ie. [188.141.3.169]) by smtp.gmail.com with ESMTPSA id x12-20020adfffcc000000b0022ac672654dsm4647150wrs.58.2022.09.22.03.42.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Sep 2022 03:42:53 -0700 (PDT) From: Bryan O'Donoghue To: sakari.ailus@iki.fi, dave.stevenson@raspberrypi.com, jacopo@jmondi.org, paul.j.murphy@intel.com, daniele.alessandrelli@intel.com, mchehab@kernel.org, linux-media@vger.kernel.org, krzysztof.kozlowski+dt@linaro.org, robh+dt@kernel.org Cc: bryan.odonoghue@linaro.org Subject: [PATCH v4 RESEND 2/3] media: i2c: imx412: Assign v4l2 device subname based on compat string Date: Thu, 22 Sep 2022 11:42:24 +0100 Message-Id: <20220922104225.1375331-3-bryan.odonoghue@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220922104225.1375331-1-bryan.odonoghue@linaro.org> References: <20220922104225.1375331-1-bryan.odonoghue@linaro.org> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org imx412, imx477 and imx577 all return the same chip-id when interrogated via i2c. I've confirmed this myself by - Looking at the code in Qcom and Nvidia stacks - Running the upstream imx412 driver on imx577 with a Qcom sm8250 RB5 - Running the downstream Qcom stack on the same hardware. This uses a commercial licensed stack with a driver/userspace pair that make no differentiation between imx412, imx477 and imx577. - Running the imx412 and imx577 on a Nvidia Nano with cameras from Leopard Imaging. Again this is a commercial non-upstream user-space/kernel-space pairing and again the same imx driver, works for both parts. Sakari suggested we should add a new compat but that the compat string should also set the media entity name also https://patchwork.kernel.org/project/linux-media/patch/20220607134057.2427663-3-bryan.odonoghue@linaro.org/#24894500 Set up the .data parameter of of_device_id to pass a string which we use to set the media entity name. Once done we can add in imx477 and imx577 as compatible chips with the media names reflecting the directed compat string. Signed-off-by: Bryan O'Donoghue --- drivers/media/i2c/imx412.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/media/i2c/imx412.c b/drivers/media/i2c/imx412.c index a1394d6c1432..9f854a1a4c2f 100644 --- a/drivers/media/i2c/imx412.c +++ b/drivers/media/i2c/imx412.c @@ -1172,6 +1172,7 @@ static int imx412_init_controls(struct imx412 *imx412) static int imx412_probe(struct i2c_client *client) { struct imx412 *imx412; + const char *name; int ret; imx412 = devm_kzalloc(&client->dev, sizeof(*imx412), GFP_KERNEL); @@ -1179,6 +1180,9 @@ static int imx412_probe(struct i2c_client *client) return -ENOMEM; imx412->dev = &client->dev; + name = device_get_match_data(&client->dev); + if (!name) + return -ENODEV; /* Initialize subdev */ v4l2_i2c_subdev_init(&imx412->sd, client, &imx412_subdev_ops); @@ -1218,6 +1222,8 @@ static int imx412_probe(struct i2c_client *client) imx412->sd.flags |= V4L2_SUBDEV_FL_HAS_DEVNODE; imx412->sd.entity.function = MEDIA_ENT_F_CAM_SENSOR; + v4l2_i2c_subdev_set_name(&imx412->sd, client, name, NULL); + /* Initialize source pad */ imx412->pad.flags = MEDIA_PAD_FL_SOURCE; ret = media_entity_pads_init(&imx412->sd.entity, 1, &imx412->pad); @@ -1281,7 +1287,7 @@ static const struct dev_pm_ops imx412_pm_ops = { }; static const struct of_device_id imx412_of_match[] = { - { .compatible = "sony,imx412" }, + { .compatible = "sony,imx412", .data = "imx412" }, { } }; From patchwork Thu Sep 22 10:42:25 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bryan O'Donoghue X-Patchwork-Id: 12984950 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2BC02C6FA82 for ; Thu, 22 Sep 2022 10:43:07 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231228AbiIVKnG (ORCPT ); Thu, 22 Sep 2022 06:43:06 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41630 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231210AbiIVKnE (ORCPT ); Thu, 22 Sep 2022 06:43:04 -0400 Received: from mail-wm1-x32a.google.com (mail-wm1-x32a.google.com [IPv6:2a00:1450:4864:20::32a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 947D8B440D for ; Thu, 22 Sep 2022 03:43:01 -0700 (PDT) Received: by mail-wm1-x32a.google.com with SMTP id n35-20020a05600c502300b003b4924c6868so3618350wmr.1 for ; Thu, 22 Sep 2022 03:43:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date; bh=6CvF1XXx94MfM8P5Aw9kd8Rda9CjzbWOT+YyUiF/JnY=; b=eFdWFp09jFFMGrtSUOWH84ERgKDuQ/cmgREPiMqnW7m6F9fmPUipTASEAKUnhNGEG1 tACr7x6fY6CGL91YhSjrnNAHQo9y2WE1LtM7qp88fgFL+FLnSzNTvSPh8WFV//gZNzkO YUUXilvkJoLG080NJxjtFn4HLqB18qVjkZbLt2C+RsdPiGmBAQwrUVY40ZACS8XREZk9 vT12maefVJWh3TjC0GlGI6UXFirtIWAHcrLvs4b75krmeWQRAP2hfxvQsJF4xiZSLwPR c6SrX+sE1KXElEkm0qm9KjQUBSFGEG2zyFncOr8qlsbZb18C9+WqfEnCmxnduzly+bH9 juIw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date; bh=6CvF1XXx94MfM8P5Aw9kd8Rda9CjzbWOT+YyUiF/JnY=; b=6Xf5kaUPhs9En3X6bWg+5KSdrpUQSnXfQyvpxKU+OgcSZQIHvkttym8MF0siWiZQRz szn56qLtviBbisQHPR95EiiHcwxFekdSrLc5mKpEVlFTswzhHXCoYWRpb8wJDfooxLfc bbjGmHluWrWxfd2HBq9QBiOtFSnCGeR2CAO2+Ccmpd6XbQgEfkvKLpEK/aDsHfkaMNEO Mh1kTK1JNCQXcygj9kftFSMkIS2wjZfTNWPgv4ZPEykIoGrmQ7Wef9c6Zg2y3tPu8N7H Vqlq2Zh9oQnqLbe36drniwXVPflqXVbqlFhcJvzxicTO5QMeuqbqOsPjJxq1NUfca5mX s8pw== X-Gm-Message-State: ACrzQf2rFmllN33DkGae/Pkr8r1ER8RgNu4qqHihbBuVmFWFHEAQDnJ/ VD+KV8x1QVVNDYeV4q2oNiD2Rvr717OdvQ== X-Google-Smtp-Source: AMsMyM7rCAVK05zlF7BWj/pxs791vMBIv3APdYJy/CzPsPR+hgD2MgJ5sabiC2849wl+lvsSRObF3A== X-Received: by 2002:a7b:c450:0:b0:3b4:fb1a:325d with SMTP id l16-20020a7bc450000000b003b4fb1a325dmr1920964wmi.138.1663843380110; Thu, 22 Sep 2022 03:43:00 -0700 (PDT) Received: from planet9.chello.ie (188-141-3-169.dynamic.upc.ie. [188.141.3.169]) by smtp.gmail.com with ESMTPSA id x12-20020adfffcc000000b0022ac672654dsm4647150wrs.58.2022.09.22.03.42.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 22 Sep 2022 03:42:59 -0700 (PDT) From: Bryan O'Donoghue To: sakari.ailus@iki.fi, dave.stevenson@raspberrypi.com, jacopo@jmondi.org, paul.j.murphy@intel.com, daniele.alessandrelli@intel.com, mchehab@kernel.org, linux-media@vger.kernel.org, krzysztof.kozlowski+dt@linaro.org, robh+dt@kernel.org Cc: bryan.odonoghue@linaro.org Subject: [PATCH v4 RESEND 3/3] media: i2c: imx412: Add new compatible strings Date: Thu, 22 Sep 2022 11:42:25 +0100 Message-Id: <20220922104225.1375331-4-bryan.odonoghue@linaro.org> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220922104225.1375331-1-bryan.odonoghue@linaro.org> References: <20220922104225.1375331-1-bryan.odonoghue@linaro.org> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org The Sony imx477 and imx577 use the same silicon enabling reference code from Sony in the available examples provided as the imx412. Add in compatible strings to differentiate the parts. Signed-off-by: Bryan O'Donoghue --- drivers/media/i2c/imx412.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/media/i2c/imx412.c b/drivers/media/i2c/imx412.c index 9f854a1a4c2f..93f362e3b132 100644 --- a/drivers/media/i2c/imx412.c +++ b/drivers/media/i2c/imx412.c @@ -1288,6 +1288,8 @@ static const struct dev_pm_ops imx412_pm_ops = { static const struct of_device_id imx412_of_match[] = { { .compatible = "sony,imx412", .data = "imx412" }, + { .compatible = "sony,imx477", .data = "imx477" }, + { .compatible = "sony,imx577", .data = "imx577" }, { } };