From: Hans Verkuil <hverkuil@xs4all.nl> To: Stu Hsieh <stu.hsieh@mediatek.com>, Mauro Carvalho Chehab <mchehab@kernel.org>, Rob Herring <robh+dt@kernel.org>, CK Hu <ck.hu@mediatek.com> Cc: Mark Rutland <mark.rutland@arm.com>, Matthias Brugger <matthias.bgg@gmail.com>, linux-media@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org, srv_heupstream@mediatek.com, Sakari Ailus <sakari.ailus@linux.intel.com> Subject: Re: [PATCH v2 13/15] [media] mtk-mipicsi: add the function for Get/Set PARM for application Date: Mon, 13 May 2019 11:24:44 +0200 [thread overview] Message-ID: <8dcbaa14-29bb-8469-fc36-82e34df81737@xs4all.nl> (raw) In-Reply-To: <1555407015-18130-14-git-send-email-stu.hsieh@mediatek.com> On 4/16/19 11:30 AM, Stu Hsieh wrote: > This patch add the function for Get/Set PARM for application. > > Application can get the information about number of link. > > Signed-off-by: Stu Hsieh <stu.hsieh@mediatek.com> > --- > .../media/platform/mtk-mipicsi/mtk_mipicsi.c | 34 +++++++++++++++++++ > 1 file changed, 34 insertions(+) > > diff --git a/drivers/media/platform/mtk-mipicsi/mtk_mipicsi.c b/drivers/media/platform/mtk-mipicsi/mtk_mipicsi.c > index 5e4028d0d5e1..5db9c68b0da9 100644 > --- a/drivers/media/platform/mtk-mipicsi/mtk_mipicsi.c > +++ b/drivers/media/platform/mtk-mipicsi/mtk_mipicsi.c > @@ -346,6 +346,38 @@ static int get_subdev_link(const struct soc_camera_device *icd, > return 0; > } > > +static int mtk_mipicsi_get_parm(struct soc_camera_device *icd, > + struct v4l2_streamparm *a) > +{ > + unsigned int link = 0U; > + u8 link_reg_val = 0x0U; > + int ret = 0; > + > + /*get camera link number*/ > + ret = get_subdev_link(icd, &link, &link_reg_val); > + if (ret < 0) > + return ret; > + > + a->parm.capture.timeperframe.numerator = 1; > + a->parm.capture.timeperframe.denominator = 30; > + a->parm.capture.reserved[0] = link_reg_val; > + a->parm.capture.reserved[1] = (u32)(icd->use_count); No, no, don't use G/S_PARM for that. It's an awful API and other than getting/setting the frame period it shouldn't be used for anything else. I've CC-ed Sakari, he is the CSI specialist. I think some work was done (or is in progress) regarding providing more CSI lane information. > + dev_info(icd->parent, "use count %d\n", icd->use_count); > + > + return 0; > +} > + > +static int mtk_mipicsi_set_param(struct soc_camera_device *icd, > + struct v4l2_streamparm *a) > +{ > + struct soc_camera_host *ici = to_soc_camera_host(icd->parent); > + > + if (ici->ops->get_parm == NULL) > + return ici->ops->get_parm(icd, a); This clearly was never tested since ici->ops->get_parm is NULL when you call it. I'd drop this function altogether since there is no point if you can make changes. Regards, Hans > + > + return 0; > +} > + > static u32 get_bytesperline(const u32 fmt, const u32 width) > { > u32 bytesperline = 0; > @@ -884,6 +916,8 @@ static struct soc_camera_host_ops mtk_soc_camera_host_ops = { > .poll = vb2_fop_poll, > .querycap = mtk_mipicsi_querycap, > .set_bus_param = mtk_mipicsi_set_bus_param, > + .get_parm = mtk_mipicsi_get_parm, > + .set_parm = mtk_mipicsi_set_param, > }; > > static void mtk_mipicsi_ana_init(void __iomem *base) >
WARNING: multiple messages have this Message-ID (diff)
From: Hans Verkuil <hverkuil@xs4all.nl> To: Stu Hsieh <stu.hsieh@mediatek.com>, Mauro Carvalho Chehab <mchehab@kernel.org>, Rob Herring <robh+dt@kernel.org>, CK Hu <ck.hu@mediatek.com> Cc: Mark Rutland <mark.rutland@arm.com>, devicetree@vger.kernel.org, srv_heupstream@mediatek.com, linux-kernel@vger.kernel.org, linux-mediatek@lists.infradead.org, Sakari Ailus <sakari.ailus@linux.intel.com>, Matthias Brugger <matthias.bgg@gmail.com>, linux-arm-kernel@lists.infradead.org, linux-media@vger.kernel.org Subject: Re: [PATCH v2 13/15] [media] mtk-mipicsi: add the function for Get/Set PARM for application Date: Mon, 13 May 2019 11:24:44 +0200 [thread overview] Message-ID: <8dcbaa14-29bb-8469-fc36-82e34df81737@xs4all.nl> (raw) In-Reply-To: <1555407015-18130-14-git-send-email-stu.hsieh@mediatek.com> On 4/16/19 11:30 AM, Stu Hsieh wrote: > This patch add the function for Get/Set PARM for application. > > Application can get the information about number of link. > > Signed-off-by: Stu Hsieh <stu.hsieh@mediatek.com> > --- > .../media/platform/mtk-mipicsi/mtk_mipicsi.c | 34 +++++++++++++++++++ > 1 file changed, 34 insertions(+) > > diff --git a/drivers/media/platform/mtk-mipicsi/mtk_mipicsi.c b/drivers/media/platform/mtk-mipicsi/mtk_mipicsi.c > index 5e4028d0d5e1..5db9c68b0da9 100644 > --- a/drivers/media/platform/mtk-mipicsi/mtk_mipicsi.c > +++ b/drivers/media/platform/mtk-mipicsi/mtk_mipicsi.c > @@ -346,6 +346,38 @@ static int get_subdev_link(const struct soc_camera_device *icd, > return 0; > } > > +static int mtk_mipicsi_get_parm(struct soc_camera_device *icd, > + struct v4l2_streamparm *a) > +{ > + unsigned int link = 0U; > + u8 link_reg_val = 0x0U; > + int ret = 0; > + > + /*get camera link number*/ > + ret = get_subdev_link(icd, &link, &link_reg_val); > + if (ret < 0) > + return ret; > + > + a->parm.capture.timeperframe.numerator = 1; > + a->parm.capture.timeperframe.denominator = 30; > + a->parm.capture.reserved[0] = link_reg_val; > + a->parm.capture.reserved[1] = (u32)(icd->use_count); No, no, don't use G/S_PARM for that. It's an awful API and other than getting/setting the frame period it shouldn't be used for anything else. I've CC-ed Sakari, he is the CSI specialist. I think some work was done (or is in progress) regarding providing more CSI lane information. > + dev_info(icd->parent, "use count %d\n", icd->use_count); > + > + return 0; > +} > + > +static int mtk_mipicsi_set_param(struct soc_camera_device *icd, > + struct v4l2_streamparm *a) > +{ > + struct soc_camera_host *ici = to_soc_camera_host(icd->parent); > + > + if (ici->ops->get_parm == NULL) > + return ici->ops->get_parm(icd, a); This clearly was never tested since ici->ops->get_parm is NULL when you call it. I'd drop this function altogether since there is no point if you can make changes. Regards, Hans > + > + return 0; > +} > + > static u32 get_bytesperline(const u32 fmt, const u32 width) > { > u32 bytesperline = 0; > @@ -884,6 +916,8 @@ static struct soc_camera_host_ops mtk_soc_camera_host_ops = { > .poll = vb2_fop_poll, > .querycap = mtk_mipicsi_querycap, > .set_bus_param = mtk_mipicsi_set_bus_param, > + .get_parm = mtk_mipicsi_get_parm, > + .set_parm = mtk_mipicsi_set_param, > }; > > static void mtk_mipicsi_ana_init(void __iomem *base) > _______________________________________________ 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:[~2019-05-13 9:24 UTC|newest] Thread overview: 67+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-04-16 9:30 [PATCH v2 00/15] Add mediatek mipicsi driver for Mediatek SOC MT2712 Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` [PATCH v2 01/15] dt-bindings: media: Add binding for MT2712 MIPI-CSI2 Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-29 22:53 ` Rob Herring 2019-04-29 22:53 ` Rob Herring 2019-04-29 22:53 ` Rob Herring 2019-04-16 9:30 ` [PATCH v2 02/15] [media] mtk-mipicsi: add mediatek mipicsi driver for mt2712 Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-18 1:34 ` CK Hu 2019-04-18 1:34 ` CK Hu 2019-04-18 1:34 ` CK Hu 2019-04-19 5:28 ` Stu Hsieh 2019-04-19 5:28 ` Stu Hsieh 2019-04-16 9:30 ` [PATCH v2 03/15] [media] mtk-mipicsi: add pm function Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` [PATCH v2 04/15] [media] mtk-mipicsi: add color format support for mt2712 Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-18 1:39 ` CK Hu 2019-04-18 1:39 ` CK Hu 2019-04-18 1:39 ` CK Hu 2019-04-16 9:30 ` [PATCH v2 05/15] [media] mtk-mipicsi: get the w/h/bytepwerline for mtk_mipicsi Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-19 3:52 ` CK Hu 2019-04-19 3:52 ` CK Hu 2019-04-19 3:52 ` CK Hu 2019-04-16 9:30 ` [PATCH v2 06/15] [media] mtk-mipicsi: add function to support SerDes for link number Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` [PATCH v2 07/15] [media] mtk-mipicsi: add mipicsi reg setting for mt2712 Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` [PATCH v2 08/15] [media] mtk-mipicsi: enable/disable ana clk Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` [PATCH v2 09/15] [media] mtk-mipicsi: enable/disable cmos for mt2712 Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` [PATCH v2 10/15] [media] mtk-mipicsi: add ISR for writing the data to buffer Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` [PATCH v2 11/15] [media] mtk-mipicsi: set the output address in HW reg Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` [PATCH v2 12/15] [media] mtk-mipicsi: add function to get the format Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` [PATCH v2 13/15] [media] mtk-mipicsi: add the function for Get/Set PARM for application Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-05-13 9:24 ` Hans Verkuil [this message] 2019-05-13 9:24 ` Hans Verkuil 2019-04-16 9:30 ` [PATCH v2 14/15] [media] mtk-mipicsi: add debug message for mipicsi driver Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` [PATCH v2 15/15] [media] mtk-mipicsi: add debugfs " Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh 2019-04-16 9:30 ` Stu Hsieh -- strict thread matches above, loose matches on Subject: below -- 2019-04-16 9:27 [PATCH v2 00/15] Add mediatek mipicsi driver for Mediatek SOC MT2712 Stu Hsieh 2019-04-16 9:27 ` [PATCH v2 13/15] [media] mtk-mipicsi: add the function for Get/Set PARM for application Stu Hsieh 2019-04-16 9:27 ` Stu Hsieh 2019-04-16 9:27 ` Stu Hsieh
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=8dcbaa14-29bb-8469-fc36-82e34df81737@xs4all.nl \ --to=hverkuil@xs4all.nl \ --cc=ck.hu@mediatek.com \ --cc=devicetree@vger.kernel.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-media@vger.kernel.org \ --cc=linux-mediatek@lists.infradead.org \ --cc=mark.rutland@arm.com \ --cc=matthias.bgg@gmail.com \ --cc=mchehab@kernel.org \ --cc=robh+dt@kernel.org \ --cc=sakari.ailus@linux.intel.com \ --cc=srv_heupstream@mediatek.com \ --cc=stu.hsieh@mediatek.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.