devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Michael Tretter <m.tretter@pengutronix.de>
To: linux-media@vger.kernel.org, devicetree@vger.kernel.org,
	Marek Vasut <marex@denx.de>
Cc: Rob Herring <robh+dt@kernel.org>,
	Mauro Carvalho Chehab <mchehab@kernel.org>,
	Sakari Ailus <sakari.ailus@linux.intel.com>,
	p.zabel@pengutronix.de, Ian Arkver <ian.arkver.dev@gmail.com>,
	kernel@pengutronix.de, Michael Tretter <m.tretter@pengutronix.de>,
	Hans Verkuil <hverkuil@xs4all.nl>
Subject: [PATCH v7 0/3]  media: i2c: isl7998x: Add driver for Intersil ISL7998x
Date: Thu, 21 Oct 2021 18:03:05 +0200	[thread overview]
Message-ID: <20211021160308.1962585-1-m.tretter@pengutronix.de> (raw)

This is v7 of the series to for adding the isl7998x driver [0]

The isl7998x is an analog video to MIPI CSI-2 or BT.656 converter. The dt
binding describes only the isl79987 chip, which supports MIPI CSI-2. The
driver could be extended to handle isl79988 (for BT.656), too, but this isn't
implemented.

The driver now correctly reserves space for it's driver specific v4l2
controls. I already skipped the space of the v4l2 controls for the allegro
driver, but this will lead to an (easily fixable) merge conflict. I also added
some documentation to the custom controls.

The driver now implements the querystd, s_std, and g_std callbacks to move the
video standard handling to user space. The video standard defaults to NTSC,
user space can explicitly trigger the video standard detection, and is
responsible (and able to override) the video standard. The set video standard
is now also used to select the video standard of the test pattern generator.

Furthermore, I fixed two bugs. The condition for successful standard detection
was wrong and there was an off-by-one when the decoder is used with 4 inputs.

Michael

[0] https://lore.kernel.org/linux-media/20190520201812.7937-1-marex@denx.de/

Changelog:

v7:

- add reservation and documentation for custom V4L2 controls
- implement g_input_status, g_tvnorms, querystd, s_std, g_std
- use v4l2_norm_to_name instead of custom implementation
- fix off-by-one with 4 inputs
- fix polling condition for standard detection

v6:

- incorporate review feedback by Philipp Zabel into isl7998x.c

v5:

- ignore -ENOIOCTLCMD of pre_streamon for backwards compatibility

v4:

- add patch for imx6-mipi-csi2 to request LP-11 mode
- update isl7998x driver with review feedback on v3

v3:

- rename pd-gpios property to powerdown-gpios
- reference graph.yaml for port/ports property
- remove reference to video-interfaces.txt

v2:

- convert dt binding to yaml
- change binding to ISL79987 only
- general driver cleanup
- convert driver to pm_runtime
- use ports in device tree for specifying inputs
- add reset gpio

Marek Vasut (2):
  media: dt-bindings: Add Intersil ISL79987 DT bindings
  media: i2c: isl7998x: Add driver for Intersil ISL7998x

Michael Tretter (1):
  media: imx6-mipi-csi2: use pre_streamon callback to set sensor into
    LP11

 .../bindings/media/i2c/isil,isl79987.yaml     |  100 ++
 MAINTAINERS                                   |    8 +
 drivers/media/i2c/Kconfig                     |   10 +
 drivers/media/i2c/Makefile                    |    1 +
 drivers/media/i2c/isl7998x.c                  | 1543 +++++++++++++++++
 drivers/staging/media/imx/imx6-mipi-csi2.c    |    9 +-
 include/uapi/linux/v4l2-controls.h            |    6 +
 7 files changed, 1676 insertions(+), 1 deletion(-)
 create mode 100644 Documentation/devicetree/bindings/media/i2c/isil,isl79987.yaml
 create mode 100644 drivers/media/i2c/isl7998x.c

-- 
2.30.2


             reply	other threads:[~2021-10-21 16:03 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-21 16:03 Michael Tretter [this message]
2021-10-21 16:03 ` [PATCH v7 1/3] media: imx6-mipi-csi2: use pre_streamon callback to set sensor into LP11 Michael Tretter
2021-10-21 16:03 ` [PATCH v7 2/3] media: dt-bindings: Add Intersil ISL79987 DT bindings Michael Tretter
2021-10-21 16:03 ` [PATCH v7 3/3] media: i2c: isl7998x: Add driver for Intersil ISL7998x Michael Tretter
2021-10-25 16:12   ` kernel test robot
2021-10-26  2:41   ` kernel test robot

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=20211021160308.1962585-1-m.tretter@pengutronix.de \
    --to=m.tretter@pengutronix.de \
    --cc=devicetree@vger.kernel.org \
    --cc=hverkuil@xs4all.nl \
    --cc=ian.arkver.dev@gmail.com \
    --cc=kernel@pengutronix.de \
    --cc=linux-media@vger.kernel.org \
    --cc=marex@denx.de \
    --cc=mchehab@kernel.org \
    --cc=p.zabel@pengutronix.de \
    --cc=robh+dt@kernel.org \
    --cc=sakari.ailus@linux.intel.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: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).