From: Jonathan Bakker <xc-racer2@live.ca> To: kyungmin.park@samsung.com, s.nawrocki@samsung.com, mchehab@kernel.org, kgene@kernel.org, krzk@kernel.org, linux-media@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org Cc: devicetree@vger.kernel.org, robh+dt@kernel.org, Jonathan Bakker <xc-racer2@live.ca> Subject: [PATCH v2 06/11] media: exynos4-is: Use global num_sensors rather than local index Date: Thu, 30 Jul 2020 16:01:09 -0700 [thread overview] Message-ID: <BN6PR04MB066025E2D254EF0E5383B7FCA3710@BN6PR04MB0660.namprd04.prod.outlook.com> (raw) In-Reply-To: <20200730230114.8572-1-xc-racer2@live.ca> Instead of keeping a local copy of how many sensors we've probed (which may not even properly represent the number of sensors probed if we have a port without a sensor), use the global num_sensors counter that has the actual number used. This will also make it easier to add support for multiple sensors being connected to the same port. Signed-off-by: Jonathan Bakker <xc-racer2@live.ca> --- Changes from v1: - New patch --- drivers/media/platform/exynos4-is/media-dev.c | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/drivers/media/platform/exynos4-is/media-dev.c b/drivers/media/platform/exynos4-is/media-dev.c index 5c32abc7251b..70b0a70840cf 100644 --- a/drivers/media/platform/exynos4-is/media-dev.c +++ b/drivers/media/platform/exynos4-is/media-dev.c @@ -396,9 +396,9 @@ static void fimc_md_pipelines_free(struct fimc_md *fmd) /* Parse port node and register as a sub-device any sensor specified there. */ static int fimc_md_parse_port_node(struct fimc_md *fmd, - struct device_node *port, - unsigned int index) + struct device_node *port) { + int index = fmd->num_sensors; struct fimc_source_info *pd = &fmd->sensor[index].pdata; struct device_node *rem, *ep, *np; struct v4l2_fwnode_endpoint endpoint = { .bus_type = 0 }; @@ -488,7 +488,6 @@ static int fimc_md_register_sensor_entities(struct fimc_md *fmd) struct device_node *parent = fmd->pdev->dev.of_node; struct device_node *ports = NULL; struct device_node *node; - int index = 0; int ret; /* @@ -515,13 +514,12 @@ static int fimc_md_register_sensor_entities(struct fimc_md *fmd) if (!port) continue; - ret = fimc_md_parse_port_node(fmd, port, index); + ret = fimc_md_parse_port_node(fmd, port); of_node_put(port); if (ret < 0) { of_node_put(node); goto cleanup; } - index++; } /* Attach sensors listed in the parallel-ports node */ @@ -530,12 +528,11 @@ static int fimc_md_register_sensor_entities(struct fimc_md *fmd) goto rpm_put; for_each_child_of_node(ports, node) { - ret = fimc_md_parse_port_node(fmd, node, index); + ret = fimc_md_parse_port_node(fmd, node); if (ret < 0) { of_node_put(node); goto cleanup; } - index++; } of_node_put(ports); -- 2.20.1
WARNING: multiple messages have this Message-ID (diff)
From: Jonathan Bakker <xc-racer2@live.ca> To: kyungmin.park@samsung.com, s.nawrocki@samsung.com, mchehab@kernel.org, kgene@kernel.org, krzk@kernel.org, linux-media@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org Cc: devicetree@vger.kernel.org, Jonathan Bakker <xc-racer2@live.ca>, robh+dt@kernel.org Subject: [PATCH v2 06/11] media: exynos4-is: Use global num_sensors rather than local index Date: Thu, 30 Jul 2020 16:01:09 -0700 [thread overview] Message-ID: <BN6PR04MB066025E2D254EF0E5383B7FCA3710@BN6PR04MB0660.namprd04.prod.outlook.com> (raw) In-Reply-To: <20200730230114.8572-1-xc-racer2@live.ca> Instead of keeping a local copy of how many sensors we've probed (which may not even properly represent the number of sensors probed if we have a port without a sensor), use the global num_sensors counter that has the actual number used. This will also make it easier to add support for multiple sensors being connected to the same port. Signed-off-by: Jonathan Bakker <xc-racer2@live.ca> --- Changes from v1: - New patch --- drivers/media/platform/exynos4-is/media-dev.c | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/drivers/media/platform/exynos4-is/media-dev.c b/drivers/media/platform/exynos4-is/media-dev.c index 5c32abc7251b..70b0a70840cf 100644 --- a/drivers/media/platform/exynos4-is/media-dev.c +++ b/drivers/media/platform/exynos4-is/media-dev.c @@ -396,9 +396,9 @@ static void fimc_md_pipelines_free(struct fimc_md *fmd) /* Parse port node and register as a sub-device any sensor specified there. */ static int fimc_md_parse_port_node(struct fimc_md *fmd, - struct device_node *port, - unsigned int index) + struct device_node *port) { + int index = fmd->num_sensors; struct fimc_source_info *pd = &fmd->sensor[index].pdata; struct device_node *rem, *ep, *np; struct v4l2_fwnode_endpoint endpoint = { .bus_type = 0 }; @@ -488,7 +488,6 @@ static int fimc_md_register_sensor_entities(struct fimc_md *fmd) struct device_node *parent = fmd->pdev->dev.of_node; struct device_node *ports = NULL; struct device_node *node; - int index = 0; int ret; /* @@ -515,13 +514,12 @@ static int fimc_md_register_sensor_entities(struct fimc_md *fmd) if (!port) continue; - ret = fimc_md_parse_port_node(fmd, port, index); + ret = fimc_md_parse_port_node(fmd, port); of_node_put(port); if (ret < 0) { of_node_put(node); goto cleanup; } - index++; } /* Attach sensors listed in the parallel-ports node */ @@ -530,12 +528,11 @@ static int fimc_md_register_sensor_entities(struct fimc_md *fmd) goto rpm_put; for_each_child_of_node(ports, node) { - ret = fimc_md_parse_port_node(fmd, node, index); + ret = fimc_md_parse_port_node(fmd, node); if (ret < 0) { of_node_put(node); goto cleanup; } - index++; } of_node_put(ports); -- 2.20.1 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2020-07-30 23:02 UTC|newest] Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top [not found] <20200730230114.8572-1-xc-racer2@live.ca> 2020-07-30 23:01 ` [PATCH v2 01/11] media: exynos4-is: Remove static driver data for S5PV210 FIMC variants Jonathan Bakker 2020-07-30 23:01 ` Jonathan Bakker 2020-07-30 23:01 ` [PATCH v2 02/11] media: exynos4-is: Request syscon only if ISP writeback is present Jonathan Bakker 2020-07-30 23:01 ` Jonathan Bakker 2020-07-30 23:01 ` [PATCH v2 03/11] media: exynos4-is: Fix nullptr when no CSIS device present Jonathan Bakker 2020-07-30 23:01 ` Jonathan Bakker 2020-07-30 23:01 ` [PATCH v2 04/11] media: exynos4-is: Correct missing entity function initialization Jonathan Bakker 2020-07-30 23:01 ` Jonathan Bakker 2020-07-31 9:41 ` Sylwester Nawrocki 2020-07-31 9:41 ` Sylwester Nawrocki 2020-07-30 23:01 ` [PATCH v2 05/11] media: exynos4-is: Properly set JPEG options for parallel ports Jonathan Bakker 2020-07-30 23:01 ` Jonathan Bakker 2020-07-30 23:01 ` Jonathan Bakker [this message] 2020-07-30 23:01 ` [PATCH v2 06/11] media: exynos4-is: Use global num_sensors rather than local index Jonathan Bakker 2020-07-31 9:44 ` Sylwester Nawrocki 2020-07-31 9:44 ` Sylwester Nawrocki 2020-07-30 23:01 ` [PATCH v2 07/11] media: exynos4-is: Add support for multiple sensors on one port Jonathan Bakker 2020-07-30 23:01 ` Jonathan Bakker 2020-07-31 9:49 ` Sylwester Nawrocki 2020-07-31 9:49 ` Sylwester Nawrocki 2020-07-30 23:01 ` [PATCH v2 08/11] media: exynos4-is: Remove inh_sensor_ctrls Jonathan Bakker 2020-07-30 23:01 ` Jonathan Bakker 2020-07-30 23:01 ` [PATCH v2 09/11] media: exynos4-is: Remove unused struct member input_index Jonathan Bakker 2020-07-30 23:01 ` Jonathan Bakker 2020-07-30 23:01 ` [PATCH v2 10/11] media: exynos4-is: Handle duplicate calls to vidioc_streamoff Jonathan Bakker 2020-07-30 23:01 ` Jonathan Bakker 2020-07-31 9:54 ` Sylwester Nawrocki 2020-07-31 9:54 ` Sylwester Nawrocki 2020-07-30 23:01 ` [PATCH v2 11/11] dt-bindings: media: Correct samsung-fimc parallel port numbering Jonathan Bakker 2020-07-30 23:01 ` Jonathan Bakker 2020-07-31 9:59 ` Sylwester Nawrocki 2020-07-31 9:59 ` Sylwester Nawrocki 2020-07-31 22:43 ` Rob Herring 2020-07-31 22:43 ` Rob Herring
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=BN6PR04MB066025E2D254EF0E5383B7FCA3710@BN6PR04MB0660.namprd04.prod.outlook.com \ --to=xc-racer2@live.ca \ --cc=devicetree@vger.kernel.org \ --cc=kgene@kernel.org \ --cc=krzk@kernel.org \ --cc=kyungmin.park@samsung.com \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-media@vger.kernel.org \ --cc=linux-samsung-soc@vger.kernel.org \ --cc=mchehab@kernel.org \ --cc=robh+dt@kernel.org \ --cc=s.nawrocki@samsung.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.