mbox series

[0/4] media: i2c: Add driver for Sony IMX728

Message ID 20250212195656.69528-1-slavine@d3embedded.com (mailing list archive)
Headers show
Series media: i2c: Add driver for Sony IMX728 | expand

Message

Sebastian LaVine Feb. 12, 2025, 7:56 p.m. UTC
This series adds a V4L2 sensor driver for the Sony IMX728, and related
devicetree overlays.

v4l2-compliance 1.26.1-5142, 64 bits, 64-bit time_t
v4l2-compliance SHA: 4aee01a02792 2023-12-12 21:40:38

Compliance test for device /dev/v4l-subdev4:

Driver Info:
        Driver version   : 6.12.9
        Capabilities     : 0x00000000

Required ioctls:
        test VIDIOC_SUDBEV_QUERYCAP: OK
        test invalid ioctls: OK

Allow for multiple opens:
        test second /dev/v4l-subdev4 open: OK
        test VIDIOC_SUBDEV_QUERYCAP: OK
        test for unlimited opens: OK

Debug ioctls:
        test VIDIOC_LOG_STATUS: OK (Not Supported)

Input ioctls:
        test VIDIOC_G/S_TUNER/ENUM_FREQ_BANDS: OK (Not Supported)
        test VIDIOC_G/S_FREQUENCY: OK (Not Supported)
        test VIDIOC_S_HW_FREQ_SEEK: OK (Not Supported)
        test VIDIOC_ENUMAUDIO: OK (Not Supported)
        test VIDIOC_G/S/ENUMINPUT: OK (Not Supported)
        test VIDIOC_G/S_AUDIO: OK (Not Supported)
        Inputs: 0 Audio Inputs: 0 Tuners: 0

Output ioctls:
        test VIDIOC_G/S_MODULATOR: OK (Not Supported)
        test VIDIOC_G/S_FREQUENCY: OK (Not Supported)
        test VIDIOC_ENUMAUDOUT: OK (Not Supported)
        test VIDIOC_G/S/ENUMOUTPUT: OK (Not Supported)
        test VIDIOC_G/S_AUDOUT: OK (Not Supported)
        Outputs: 0 Audio Outputs: 0 Modulators: 0

Input/Output configuration ioctls:
        test VIDIOC_ENUM/G/S/QUERY_STD: OK (Not Supported)
        test VIDIOC_ENUM/G/S/QUERY_DV_TIMINGS: OK (Not Supported)
        test VIDIOC_DV_TIMINGS_CAP: OK (Not Supported)
        test VIDIOC_G/S_EDID: OK (Not Supported)

Control ioctls:
        test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK
        test VIDIOC_QUERYCTRL: OK
        test VIDIOC_G/S_CTRL: OK
        test VIDIOC_G/S/TRY_EXT_CTRLS: OK
        test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK
        test VIDIOC_G/S_JPEGCOMP: OK (Not Supported)
        Standard Controls: 9 Private Controls: 0

Format ioctls:
        test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK (Not Supported)
        test VIDIOC_G/S_PARM: OK (Not Supported)
        test VIDIOC_G_FBUF: OK (Not Supported)
        test VIDIOC_G_FMT: OK (Not Supported)
        test VIDIOC_TRY_FMT: OK (Not Supported)
        test VIDIOC_S_FMT: OK (Not Supported)
        test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported)
        test Cropping: OK (Not Supported)
        test Composing: OK (Not Supported)
        test Scaling: OK (Not Supported)

Codec ioctls:
        test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported)
        test VIDIOC_G_ENC_INDEX: OK (Not Supported)
        test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported)

Buffer ioctls:
        test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK (Not Supported)
        test CREATE_BUFS maximum buffers: OK
        test VIDIOC_EXPBUF: OK (Not Supported)
        test Requests: OK (Not Supported)

Total for device /dev/v4l-subdev4: 44, Succeeded: 44, Failed: 0, Warnings: 0


This is a v3 of a series that was originally sent last summer[0].

[0]: https://lore.kernel.org/r/linux-media/20240628-imx728-driver-v2-0-80efa6774286@d3engineering.com/

v2 -> v3:
- Update maintainer
- Update bindings example
- Add devicetree overlays
- The driver now supports SRGGB12_1X12, not SRGGB10_1X10
- The driver now outputs at 3856x2176, not 2840x2160
- Fixed exposure, again controls
- Removed duplicate register writes (removed repeat HDR writes, etc)
- Fixed imx728_wait_for_state use of the cci_* API
- Re-added _imx728_set_routing (necessary for imx728_init_state)

Sebastian LaVine (4):
  media: dt-bindings: Add Sony IMX728
  media: i2c: Add driver for Sony IMX728
  arm64: dts: ti: k3-am62a7-sk: Add overlay for fusion 2 board
  arm64: dts: ti: Add overlays for IMX728 RCM

 .../bindings/media/i2c/sony,imx728.yaml       |   96 +
 MAINTAINERS                                   |    9 +
 arch/arm64/boot/dts/ti/Makefile               |    4 +
 .../boot/dts/ti/k3-am62a7-sk-fusion-2.dtso    |  115 +
 .../dts/ti/k3-fpdlink-imx728-rcm-0-0.dtso     |  108 +
 arch/arm64/configs/defconfig                  |    1 +
 drivers/media/i2c/Kconfig                     |   12 +
 drivers/media/i2c/Makefile                    |    1 +
 drivers/media/i2c/imx728.c                    | 9655 +++++++++++++++++
 9 files changed, 10001 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/media/i2c/sony,imx728.yaml
 create mode 100644 arch/arm64/boot/dts/ti/k3-am62a7-sk-fusion-2.dtso
 create mode 100644 arch/arm64/boot/dts/ti/k3-fpdlink-imx728-rcm-0-0.dtso
 create mode 100644 drivers/media/i2c/imx728.c

--
2.34.1
Please be aware that this email includes email addresses outside of the organization.

Comments

Krzysztof Kozlowski Feb. 12, 2025, 8:04 p.m. UTC | #1
On 12/02/2025 20:56, Sebastian LaVine wrote:
> This series adds a V4L2 sensor driver for the Sony IMX728, and related
> devicetree overlays.
> 
> v4l2-compliance 1.26.1-5142, 64 bits, 64-bit time_t
> v4l2-compliance SHA: 4aee01a02792 2023-12-12 21:40:38

Your Cc list is neither correct (incorrect my email) nor reasonable
size. You cc-ed several maintainers which are not responsible for these
files.

For next version or any resend:

Please use scripts/get_maintainers.pl to get a list of necessary people
and lists to CC (and consider --no-git-fallback argument, so you will
not CC people just because they made one commit years ago). It might
happen, that command when run on an older kernel, gives you outdated
entries. Therefore please be sure you base your patches on recent Linux
kernel.

Tools like b4 or scripts/get_maintainer.pl provide you proper list of
people, so fix your workflow. Tools might also fail if you work on some
ancient tree (don't, instead use mainline) or work on fork of kernel
(don't, instead use mainline). Just use b4 and everything should be
fine, although remember about `b4 prep --auto-to-cc` if you added new
patches to the patchset.

Best regards,
Krzysztof
Kieran Bingham Feb. 13, 2025, 10:40 a.m. UTC | #2
Hi Sebastian,

Quoting Sebastian LaVine (2025-02-12 19:56:52)
<snip>
> 
> Total for device /dev/v4l-subdev4: 44, Succeeded: 44, Failed: 0, Warnings: 0
> 
> 
> This is a v3 of a series that was originally sent last summer[0].
> 
> [0]: https://lore.kernel.org/r/linux-media/20240628-imx728-driver-v2-0-80efa6774286@d3engineering.com/

This version of the driver was authored by "Spencer Hill
<shill@d3engineering.com>" who seems to no longer be credited. Is this
intentional?

Does his original Signed-off-by: tag need to be kept at least ? Or
perhaps Co-Authored-by: ?

--
Kieran


> 
> v2 -> v3:
> - Update maintainer
> - Update bindings example
> - Add devicetree overlays
> - The driver now supports SRGGB12_1X12, not SRGGB10_1X10
> - The driver now outputs at 3856x2176, not 2840x2160
> - Fixed exposure, again controls
> - Removed duplicate register writes (removed repeat HDR writes, etc)
> - Fixed imx728_wait_for_state use of the cci_* API
> - Re-added _imx728_set_routing (necessary for imx728_init_state)
> 
> Sebastian LaVine (4):
>   media: dt-bindings: Add Sony IMX728
>   media: i2c: Add driver for Sony IMX728
>   arm64: dts: ti: k3-am62a7-sk: Add overlay for fusion 2 board
>   arm64: dts: ti: Add overlays for IMX728 RCM