devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Andrey Konovalov <andrey.konovalov@linaro.org>
To: mchehab@kernel.org, robh+dt@kernel.org
Cc: linux-media@vger.kernel.org, devicetree@vger.kernel.org,
	peter.griffin@linaro.org, ezequiel@collabora.com,
	Andrey Konovalov <andrey.konovalov@linaro.org>
Subject: [PATCH v2 0/2] Add IMX219 CMOS image sensor support
Date: Fri, 27 Dec 2019 15:21:12 +0300	[thread overview]
Message-ID: <20191227122114.23075-1-andrey.konovalov@linaro.org> (raw)

This patchset adds support for IMX219 CMOS image sensor from Sony.
Sony IMX219 is an 8MPix, 1/4.0-inch CMOS active pixel digital image sensor
with an active array size of 3280H x 2464V. It is programmable through
I2C interface. Image data are sent through MIPI CSI-2, which can be configured
as either 2 or 4 data lanes, but this driver currently only supports 2 lanes.
The currently supported resolutions are 3280x2464 @ 15fps, 1920x1080 @ 30fps
(cropped FOV), and 1640x1232 (2x2 binned) @ 30fps.

The driver has been tested with Raspberry Pi Camera Module v2 connected to
Raspberry Pi Zero W.

Changes since v1 [1]:

dt-bindings:
  - license updated to (GPL-2.0-only OR BSD-2-Clause)
  - non-standard 'camera-clk' property has got type, description, properties,
    and required
  - 'clock-lanes', 'data-lanes', and 'clock-noncontinuous' moved to the correct
    node, the syntax has been fixed
  - 'port' added to required properties
  - minor corrections to some other property descriptions

imx219 sensor driver:
  - fixed width variables replaced with '[unsigned] int' where appropriate
  - excessive comments dropped
  - imx219_get_format_code() returns 'codes[...]', and doesn't use an extra
    internal variable any more
  - initializing 'ret' to 0 in the beginning of imx219_set_ctrl() dropped
  - uses IMX219_XCLK_FREQ macro instead of hardcoded number
  - IMX219_REG_ORIENTATION is dropped from the mode_*x*_regs[] tables as it is 
    written by the control handler
  - imx219_stop_streaming() return value changed to void 
  - calling imx219_power_on() moved from imx219_identify_module() to
    imx219_probe(), and calling imx219_power_off() in the probe() error path
    has been added. This simplifies imx219_identify_module(), and ensures
    that the sensor is powered off after probe() and until streaming is
    started
  - comment referring to "xclr" pin changed to call it "enable pin" vs "power
    down pin" to better match the "OUT_HIGH" pin configuration

Thanks,
Andrey

[1] https://patchwork.kernel.org/cover/11284783/


Andrey Konovalov (1):
  dt-bindings: media: i2c: Add IMX219 CMOS sensor binding

Dave Stevenson (1):
  media: i2c: Add driver for Sony IMX219 sensor

 .../devicetree/bindings/media/i2c/imx219.yaml |  134 ++
 MAINTAINERS                                   |    8 +
 drivers/media/i2c/Kconfig                     |   12 +
 drivers/media/i2c/Makefile                    |    1 +
 drivers/media/i2c/imx219.c                    | 1240 +++++++++++++++++
 5 files changed, 1395 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/media/i2c/imx219.yaml
 create mode 100644 drivers/media/i2c/imx219.c

-- 
2.17.1


             reply	other threads:[~2019-12-27 12:22 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-27 12:21 Andrey Konovalov [this message]
2019-12-27 12:21 ` [PATCH v2 1/2] dt-bindings: media: i2c: Add IMX219 CMOS sensor binding Andrey Konovalov
2019-12-27 14:17   ` Sakari Ailus
2019-12-27 18:26     ` Andrey Konovalov
2019-12-30  9:24       ` Sakari Ailus
2020-01-06 14:56     ` Dave Stevenson
2020-01-04 21:53   ` Rob Herring
2020-01-10 20:18     ` Andrey Konovalov
2019-12-27 12:21 ` [PATCH v2 2/2] media: i2c: Add driver for Sony IMX219 sensor Andrey Konovalov
2019-12-27 14:55   ` Sakari Ailus
2020-01-13 19:16     ` Andrey Konovalov
2020-01-14 11:34       ` Dave Stevenson
2020-01-17  8:49         ` Sakari Ailus
2020-01-17  8:39       ` Sakari Ailus
2019-12-30 16:33   ` Ezequiel Garcia

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=20191227122114.23075-1-andrey.konovalov@linaro.org \
    --to=andrey.konovalov@linaro.org \
    --cc=devicetree@vger.kernel.org \
    --cc=ezequiel@collabora.com \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab@kernel.org \
    --cc=peter.griffin@linaro.org \
    --cc=robh+dt@kernel.org \
    /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).