From: Tsuchiya Yuto <kitakar@gmail.com> To: unlisted-recipients:; (no To-header on input) Cc: Hans de Goede <hdegoede@redhat.com>, Patrik Gfeller <patrik.gfeller@gmail.com>, Tsuchiya Yuto <kitakar@gmail.com>, Mauro Carvalho Chehab <mchehab@kernel.org>, Sakari Ailus <sakari.ailus@linux.intel.com>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Yang Yingliang <yangyingliang@huawei.com>, Hans Verkuil <hverkuil-cisco@xs4all.nl>, Aline Santana Cordeiro <alinesantanacordeiro@gmail.com>, Alan <alan@linux.intel.com>, Dinghao Liu <dinghao.liu@zju.edu.cn>, Deepak R Varma <drv@mailo.com>, Alex Dewar <alex.dewar90@gmail.com>, linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org Subject: [PATCH 04/17] media: atomisp: pci: do not use err var when checking port validity for ISP2400 Date: Mon, 18 Oct 2021 01:19:44 +0900 [thread overview] Message-ID: <20211017161958.44351-5-kitakar@gmail.com> (raw) In-Reply-To: <20211017161958.44351-1-kitakar@gmail.com> Currently, the `port >= N_CSI_PORTS || err` checks for ISP2400 are always evaluated as true because the err variable is set to `-EINVAL` on declaration but the variable is never used until the evaluation. Looking at the diff of commit 3c0538fbad9f ("media: atomisp: get rid of most checks for ISP2401 version"), the `port >= N_CSI_PORTS` check is for ISP2400 and the err variable check is for ISP2401. Fix this issue by adding ISP version test there accordingly. Yes, there are other better ways to fix this issue, like adding support for ISP2400 to ia_css_mipi_is_source_port_valid(). In this way, we can unify the following test: if (!IS_ISP2401) port = (unsigned int)pipe->stream->config.source.port.port; else err = ia_css_mipi_is_source_port_valid(pipe, &port); However, the IS_ISP2401 test here (formerly `ifdef ISP2401`) is not a result of real hardware difference, but just a result of the following two different versions of driver merged by tools [1]: - ISP2400: irci_stable_candrpv_0415_20150521_0458 - ISP2401: irci_ecr-master_20150911_0724 We should eventually remove (not unify) such tests caused by just a driver version difference and use just one version of driver. So, for now, let's avoid further unification. [1] The function ia_css_mipi_is_source_port_valid() and its usage is added on updating css version to irci_master_20150701_0213 https://raw.githubusercontent.com/intel/ProductionKernelQuilts/cht-m1stable-2016_ww31/uefi/cht-m1stable/patches/cam-0439-atomisp2-css2401-and-2401_legacy-irci_master_2015070.patch ("atomisp2: css2401 and 2401_legacy-irci_master_20150701_0213") Fixes: 3c0538fbad9f ("media: atomisp: get rid of most checks for ISP2401 version") Signed-off-by: Tsuchiya Yuto <kitakar@gmail.com> --- drivers/staging/media/atomisp/pci/sh_css_mipi.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/drivers/staging/media/atomisp/pci/sh_css_mipi.c b/drivers/staging/media/atomisp/pci/sh_css_mipi.c index 483d40a467c7..65fc93c5d56b 100644 --- a/drivers/staging/media/atomisp/pci/sh_css_mipi.c +++ b/drivers/staging/media/atomisp/pci/sh_css_mipi.c @@ -430,7 +430,8 @@ allocate_mipi_frames(struct ia_css_pipe *pipe, assert(port < N_CSI_PORTS); - if (port >= N_CSI_PORTS || err) { + if ((!IS_ISP2401 && port >= N_CSI_PORTS) || + (IS_ISP2401 && err)) { ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "allocate_mipi_frames(%p) exit: error: port is not correct (port=%d).\n", pipe, port); @@ -559,7 +560,8 @@ free_mipi_frames(struct ia_css_pipe *pipe) assert(port < N_CSI_PORTS); - if (port >= N_CSI_PORTS || err) { + if ((!IS_ISP2401 && port >= N_CSI_PORTS) || + (IS_ISP2401 && err)) { ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "free_mipi_frames(%p, %d) exit: error: pipe port is not correct.\n", pipe, port); @@ -670,7 +672,8 @@ send_mipi_frames(struct ia_css_pipe *pipe) assert(port < N_CSI_PORTS); - if (port >= N_CSI_PORTS || err) { + if ((!IS_ISP2401 && port >= N_CSI_PORTS) || + (IS_ISP2401 && err)) { IA_CSS_ERROR("send_mipi_frames(%p) exit: invalid port specified (port=%d).\n", pipe, port); return err; -- 2.33.1
WARNING: multiple messages have this Message-ID (diff)
From: Tsuchiya Yuto <kitakar@gmail.com> Cc: Hans de Goede <hdegoede@redhat.com>, Patrik Gfeller <patrik.gfeller@gmail.com>, Tsuchiya Yuto <kitakar@gmail.com>, Mauro Carvalho Chehab <mchehab@kernel.org>, Sakari Ailus <sakari.ailus@linux.intel.com>, Greg Kroah-Hartman <gregkh@linuxfoundation.org>, Yang Yingliang <yangyingliang@huawei.com>, Hans Verkuil <hverkuil-cisco@xs4all.nl>, Aline Santana Cordeiro <alinesantanacordeiro@gmail.com>, Alan <alan@linux.intel.com>, Dinghao Liu <dinghao.liu@zju.edu.cn>, Deepak R Varma <drv@mailo.com>, Alex Dewar <alex.dewar90@gmail.com>, linux-media@vger.kernel.org, linux-staging@lists.linux.dev, linux-kernel@vger.kernel.org Subject: [PATCH 04/17] media: atomisp: pci: do not use err var when checking port validity for ISP2400 Date: Mon, 18 Oct 2021 01:19:44 +0900 [thread overview] Message-ID: <20211017161958.44351-5-kitakar@gmail.com> (raw) In-Reply-To: <20211017161958.44351-1-kitakar@gmail.com> Currently, the `port >= N_CSI_PORTS || err` checks for ISP2400 are always evaluated as true because the err variable is set to `-EINVAL` on declaration but the variable is never used until the evaluation. Looking at the diff of commit 3c0538fbad9f ("media: atomisp: get rid of most checks for ISP2401 version"), the `port >= N_CSI_PORTS` check is for ISP2400 and the err variable check is for ISP2401. Fix this issue by adding ISP version test there accordingly. Yes, there are other better ways to fix this issue, like adding support for ISP2400 to ia_css_mipi_is_source_port_valid(). In this way, we can unify the following test: if (!IS_ISP2401) port = (unsigned int)pipe->stream->config.source.port.port; else err = ia_css_mipi_is_source_port_valid(pipe, &port); However, the IS_ISP2401 test here (formerly `ifdef ISP2401`) is not a result of real hardware difference, but just a result of the following two different versions of driver merged by tools [1]: - ISP2400: irci_stable_candrpv_0415_20150521_0458 - ISP2401: irci_ecr-master_20150911_0724 We should eventually remove (not unify) such tests caused by just a driver version difference and use just one version of driver. So, for now, let's avoid further unification. [1] The function ia_css_mipi_is_source_port_valid() and its usage is added on updating css version to irci_master_20150701_0213 https://raw.githubusercontent.com/intel/ProductionKernelQuilts/cht-m1stable-2016_ww31/uefi/cht-m1stable/patches/cam-0439-atomisp2-css2401-and-2401_legacy-irci_master_2015070.patch ("atomisp2: css2401 and 2401_legacy-irci_master_20150701_0213") Fixes: 3c0538fbad9f ("media: atomisp: get rid of most checks for ISP2401 version") Signed-off-by: Tsuchiya Yuto <kitakar@gmail.com> --- drivers/staging/media/atomisp/pci/sh_css_mipi.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/drivers/staging/media/atomisp/pci/sh_css_mipi.c b/drivers/staging/media/atomisp/pci/sh_css_mipi.c index 483d40a467c7..65fc93c5d56b 100644 --- a/drivers/staging/media/atomisp/pci/sh_css_mipi.c +++ b/drivers/staging/media/atomisp/pci/sh_css_mipi.c @@ -430,7 +430,8 @@ allocate_mipi_frames(struct ia_css_pipe *pipe, assert(port < N_CSI_PORTS); - if (port >= N_CSI_PORTS || err) { + if ((!IS_ISP2401 && port >= N_CSI_PORTS) || + (IS_ISP2401 && err)) { ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "allocate_mipi_frames(%p) exit: error: port is not correct (port=%d).\n", pipe, port); @@ -559,7 +560,8 @@ free_mipi_frames(struct ia_css_pipe *pipe) assert(port < N_CSI_PORTS); - if (port >= N_CSI_PORTS || err) { + if ((!IS_ISP2401 && port >= N_CSI_PORTS) || + (IS_ISP2401 && err)) { ia_css_debug_dtrace(IA_CSS_DEBUG_TRACE_PRIVATE, "free_mipi_frames(%p, %d) exit: error: pipe port is not correct.\n", pipe, port); @@ -670,7 +672,8 @@ send_mipi_frames(struct ia_css_pipe *pipe) assert(port < N_CSI_PORTS); - if (port >= N_CSI_PORTS || err) { + if ((!IS_ISP2401 && port >= N_CSI_PORTS) || + (IS_ISP2401 && err)) { IA_CSS_ERROR("send_mipi_frames(%p) exit: invalid port specified (port=%d).\n", pipe, port); return err; -- 2.33.1
next prev parent reply other threads:[~2021-10-17 16:21 UTC|newest] Thread overview: 98+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-10-17 16:19 [PATCH 00/17] various fixes for atomisp to make it work Tsuchiya Yuto 2021-10-17 16:19 ` Tsuchiya Yuto 2021-10-17 16:19 ` [PATCH 01/17] media: atomisp: pci: add missing media_device_cleanup() in atomisp_unregister_entities() Tsuchiya Yuto 2021-10-17 16:19 ` Tsuchiya Yuto 2021-10-17 16:19 ` [PATCH 02/17] media: atomisp: pci: fix punit_ddr_dvfs_enable() argument for mrfld_power up case Tsuchiya Yuto 2021-10-17 16:19 ` Tsuchiya Yuto 2021-10-18 11:07 ` Andy Shevchenko 2021-10-20 13:25 ` Tsuchiya Yuto 2021-12-01 12:07 ` Tsuchiya Yuto 2021-11-02 11:26 ` Dan Carpenter 2021-11-08 14:48 ` Tsuchiya Yuto 2021-11-08 15:10 ` Dan Carpenter 2021-10-17 16:19 ` [PATCH 03/17] media: atomisp: pci: fix inverted logic in buffers_needed() Tsuchiya Yuto 2021-10-17 16:19 ` Tsuchiya Yuto 2021-10-17 16:19 ` Tsuchiya Yuto [this message] 2021-10-17 16:19 ` [PATCH 04/17] media: atomisp: pci: do not use err var when checking port validity for ISP2400 Tsuchiya Yuto 2021-10-26 8:26 ` Mauro Carvalho Chehab 2021-10-28 4:12 ` Tsuchiya Yuto 2021-10-28 6:52 ` Mauro Carvalho Chehab 2021-10-28 11:39 ` Mauro Carvalho Chehab 2021-11-01 13:38 ` Tsuchiya Yuto 2021-11-01 14:10 ` Mauro Carvalho Chehab 2021-11-01 19:06 ` Hans de Goede 2021-11-01 19:27 ` Andy Shevchenko 2021-11-01 19:52 ` Hans de Goede 2021-11-01 20:03 ` Mauro Carvalho Chehab 2021-11-01 21:06 ` Hans de Goede 2021-11-01 21:33 ` Mauro Carvalho Chehab 2021-11-11 14:34 ` Tsuchiya Yuto 2021-11-11 16:09 ` Andy Shevchenko 2021-11-11 19:37 ` Mauro Carvalho Chehab 2021-11-11 20:39 ` Andy Shevchenko 2021-11-11 18:38 ` Mauro Carvalho Chehab 2021-11-17 22:24 ` Mauro Carvalho Chehab 2021-12-01 11:30 ` Tsuchiya Yuto 2021-12-01 11:35 ` Tsuchiya Yuto 2021-12-01 12:00 ` Tsuchiya Yuto 2021-10-17 16:19 ` [PATCH 05/17] media: atomisp: pci: fix inverted error check for ia_css_mipi_is_source_port_valid() Tsuchiya Yuto 2021-10-17 16:19 ` Tsuchiya Yuto 2021-11-02 11:33 ` Dan Carpenter 2021-11-08 15:00 ` Tsuchiya Yuto 2021-11-08 15:14 ` Dan Carpenter 2021-11-08 15:25 ` Tsuchiya Yuto 2021-11-08 15:33 ` Dan Carpenter 2021-11-08 16:35 ` Mauro Carvalho Chehab 2021-12-01 12:15 ` Tsuchiya Yuto 2021-10-17 16:19 ` [PATCH 06/17] media: atomisp: pci: use IA_CSS_ERROR() for error messages in sh_css_mipi.c Tsuchiya Yuto 2021-10-17 16:19 ` Tsuchiya Yuto 2021-11-02 11:35 ` Dan Carpenter 2021-11-08 15:39 ` Tsuchiya Yuto 2021-11-08 16:39 ` Mauro Carvalho Chehab 2021-10-17 16:19 ` [PATCH 07/17] media: atomisp: pci: fix ifdefs in sh_css.c Tsuchiya Yuto 2021-10-17 16:19 ` Tsuchiya Yuto 2021-10-17 16:19 ` [PATCH 08/17] media: atomisp: pci: make fw ver irci_stable_candrpv_0415_20150521_0458 work - 1/5 Tsuchiya Yuto 2021-10-17 16:19 ` Tsuchiya Yuto 2021-10-17 16:19 ` [PATCH 09/17] media: atomisp: pci: make fw ver irci_stable_candrpv_0415_20150521_0458 work - 2/5 Tsuchiya Yuto 2021-10-17 16:19 ` Tsuchiya Yuto 2021-10-17 16:19 ` [PATCH 10/17] media: atomisp: pci: make fw ver irci_stable_candrpv_0415_20150521_0458 work - 3/5 Tsuchiya Yuto 2021-10-17 16:19 ` Tsuchiya Yuto 2021-10-17 16:19 ` [PATCH 11/17] media: atomisp: pci: make fw ver irci_stable_candrpv_0415_20150521_0458 work - 4/5 Tsuchiya Yuto 2021-10-17 16:19 ` Tsuchiya Yuto 2021-10-17 16:19 ` [PATCH 12/17] media: atomisp: pci: make fw ver irci_stable_candrpv_0415_20150521_0458 work - 5/5 Tsuchiya Yuto 2021-10-17 16:19 ` Tsuchiya Yuto 2021-10-17 16:19 ` [PATCH 13/17] media: atomisp: pci: release_version is now irci_stable_candrpv_0415_20150521_0458 Tsuchiya Yuto 2021-10-17 16:19 ` Tsuchiya Yuto 2021-10-17 16:19 ` [PATCH 14/17] media: atomisp: pci: Remove remaining instance of call to trace_printk Tsuchiya Yuto 2021-10-17 16:19 ` Tsuchiya Yuto [not found] ` <20211026093224.6c7f7fbf@sal.lan> 2021-10-28 9:34 ` Tsuchiya Yuto 2021-10-28 11:42 ` Mauro Carvalho Chehab 2021-11-01 14:22 ` Tsuchiya Yuto 2021-10-17 16:19 ` [PATCH 15/17] media: atomsip: pci: add Microsoft Surface 3 ACPI vars Tsuchiya Yuto 2021-10-17 16:19 ` Tsuchiya Yuto 2021-10-17 16:19 ` [PATCH 16/17] [NOT-FOR-MERGE] media: atomsip: pci: add DMI match for Microsoft Surface 3 with broken DMI (OEMB) Tsuchiya Yuto 2021-10-17 16:19 ` Tsuchiya Yuto 2021-10-18 7:56 ` Hans de Goede 2021-10-21 9:46 ` Tsuchiya Yuto 2021-10-21 18:46 ` Hans de Goede 2021-10-27 14:47 ` Tsuchiya Yuto 2021-10-27 15:30 ` Hans de Goede 2021-10-18 7:56 ` Hans de Goede 2021-10-17 16:19 ` [PATCH 17/17] [NOT-FOR-MERGE] atomisp: Fix up the open v load race Tsuchiya Yuto 2021-10-17 16:19 ` Tsuchiya Yuto 2021-10-18 7:48 ` [PATCH 00/17] various fixes for atomisp to make it work Hans de Goede 2021-10-19 13:50 ` Tsuchiya Yuto 2021-10-19 16:36 ` Andy Shevchenko 2021-10-20 13:17 ` Tsuchiya Yuto 2021-10-18 7:56 ` Andy Shevchenko 2021-10-20 6:50 ` Mauro Carvalho Chehab 2021-10-20 12:44 ` Tsuchiya Yuto 2021-10-18 11:04 ` Andy Shevchenko 2021-10-20 12:48 ` Tsuchiya Yuto 2021-10-28 4:32 ` Tsuchiya Yuto 2021-10-28 10:58 ` Mauro Carvalho Chehab 2021-10-30 9:50 ` Tsuchiya Yuto 2021-10-30 10:49 ` Mauro Carvalho Chehab 2021-10-30 11:01 ` Andy Shevchenko 2021-10-30 18:30 ` Mauro Carvalho Chehab 2021-10-28 12:51 ` Mauro Carvalho Chehab
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=20211017161958.44351-5-kitakar@gmail.com \ --to=kitakar@gmail.com \ --cc=alan@linux.intel.com \ --cc=alex.dewar90@gmail.com \ --cc=alinesantanacordeiro@gmail.com \ --cc=dinghao.liu@zju.edu.cn \ --cc=drv@mailo.com \ --cc=gregkh@linuxfoundation.org \ --cc=hdegoede@redhat.com \ --cc=hverkuil-cisco@xs4all.nl \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-media@vger.kernel.org \ --cc=linux-staging@lists.linux.dev \ --cc=mchehab@kernel.org \ --cc=patrik.gfeller@gmail.com \ --cc=sakari.ailus@linux.intel.com \ --cc=yangyingliang@huawei.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.