From: Mirela Rabulea <mirela.rabulea@nxp.com>
To: mchehab@kernel.org, sakari.ailus@linux.intel.com,
hverkuil-cisco@xs4all.nl,
laurent.pinchart+renesas@ideasonboard.com,
laurentiu.palcu@nxp.com, robert.chiras@nxp.com
Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org,
LnxRevLi@nxp.com, kieran.bingham@ideasonboard.com,
hdegoede@redhat.com, dave.stevenson@raspberrypi.com,
mike.rudenko@gmail.com, alain.volmat@foss.st.com,
julien.vuillaumier@nxp.com, alice.yuan@nxp.com
Subject: [PATCH 0/5] media: i2c: Add OX05B1S camera sensor driver
Date: Mon, 28 Oct 2024 21:06:23 +0200 [thread overview]
Message-ID: <20241028190628.257249-1-mirela.rabulea@nxp.com> (raw)
Add a v4l2 subdevice driver for the Omnivision OX05B1S RGB-IR sensor
The Omnivision OX05B1S is a 1/2.5-Inch CMOS image sensor with an active array size
of 2592 x 1944.
The following features are supported for OX05B1S:
- Manual exposure an gain control support
- vblank/hblank control support
- Supported resolution:
- 2592 x 1944 @ 30fps (SGRBG10)
Support for another sensor, OS08A20, is added as a separate patch, using another compatible.
For OS08a20, HDR mode control is supported, with one HDR mode: staggered HDR with 2 exposures on separate virtual channels.
Supported resolutions:
- 1920 x 1080 @ 60fps (SBGGR10, no HDR)
- 1920 x 1080 @ 30fps (SBGGR10, HDR)
- 3840 x 2160 @ 30fps (SBGGR12, no HDR)
- 3840 x 2160 @ 15fps (SBGGR10, HDR)
- 3840 x 2160 @ 15fps (SBGGR12, HDR)
- 3840 x 2160 @ 30fps (SBGGR12, no HDR)
- 3840 x 2160 @ 30fps (SBGGR10, no HDR)
The driver was tested on upstream 6.12-rc1 on imx8mp-evk, but also on nxp tree based on 6.11-rc7 on imx95-19x19-evk.
The results of v4l2-compliance test:
root@imx8mpevk:/unit_tests# ./v4l2-compliance -d /dev/video0
v4l2-compliance 1.29.0-5251, 64 bits, 64-bit time_t
v4l2-compliance SHA: 2e7492386e6e 2024-10-03 13:49:10
Compliance test for mxc-isi device /dev/video0:
Driver Info:
Driver name : mxc-isi
Card type : mxc-isi-cap
Bus info : platform:32e00000.isi
Driver version : 6.12.0
Capabilities : 0xa4201000
Video Capture Multiplanar
I/O MC
Streaming
Extended Pix Format
Device Capabilities
Device Caps : 0x24201000
Video Capture Multiplanar
I/O MC
Streaming
Extended Pix Format
Media Driver Info:
Driver name : mxc-isi
Model : FSL Capture Media Device
Serial :
Bus info : platform:32e00000.isi
Media version : 6.12.0
Hardware revision: 0x00000000 (0)
Driver version : 6.12.0
Interface Info:
ID : 0x0300000c
Type : V4L Video
Entity Info:
ID : 0x0000000a (10)
Name : mxc_isi.0.capture
Function : V4L2 I/O
Pad 0x0100000b : 0: Sink
Link 0x0200000e: from remote pad 0x1000009 of entity 'mxc_isi.0' (Video Pixel Formatter): Data, Enabled, Immutable
Required ioctls:
test MC information (see 'Media Driver Info' above): OK
test VIDIOC_QUERYCAP: OK
test invalid ioctls: OK
Allow for multiple opens:
test second /dev/video0 open: OK
test VIDIOC_QUERYCAP: OK
test VIDIOC_G/S_PRIORITY: OK
test for unlimited opens: OK
Debug ioctls:
test VIDIOC_DBG_G/S_REGISTER: OK (Not Supported)
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
test VIDIOC_G/S_AUDIO: OK (Not Supported)
Inputs: 1 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 (Input 0):
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: 4 Private Controls: 0
Format ioctls (Input 0):
test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK
test VIDIOC_G/S_PARM: OK (Not Supported)
test VIDIOC_G_FBUF: OK (Not Supported)
test VIDIOC_G_FMT: OK
test VIDIOC_TRY_FMT: OK
test VIDIOC_S_FMT: OK
test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported)
test Cropping: OK (Not Supported)
test Composing: OK (Not Supported)
test Scaling: OK
Codec ioctls (Input 0):
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 (Input 0):
test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK
test CREATE_BUFS maximum buffers: OK
test VIDIOC_REMOVE_BUFS: OK
test VIDIOC_EXPBUF: OK
test Requests: OK (Not Supported)
test blocking wait: OK
Total for mxc-isi device /dev/video0: 49, Succeeded: 49, Failed: 0, Warnings: 0
Mirela Rabulea (5):
dt-bindings: media: i2c: Add bindings for OX05B1S sensor driver
media: ox05b1s: Add omnivision OX05B1S raw sensor driver
MAINTAINERS: Add entry for OX05B1S sensor driver
dt-bindings: media: i2c: Update bindings for OX05B1S with OS08A20
media: ox05b1s: Add support for Omnivision OS08A20 raw sensor
.../bindings/media/i2c/ovti,ox05b1s.yaml | 110 ++
MAINTAINERS | 10 +
drivers/media/i2c/Kconfig | 1 +
drivers/media/i2c/Makefile | 1 +
drivers/media/i2c/ox05b1s/Kconfig | 10 +
drivers/media/i2c/ox05b1s/Makefile | 2 +
.../media/i2c/ox05b1s/os08a20_regs_1080p.h | 201 +++
drivers/media/i2c/ox05b1s/os08a20_regs_4k.h | 209 +++
.../media/i2c/ox05b1s/os08a20_regs_4k_hdr.h | 199 +++
drivers/media/i2c/ox05b1s/ox05b1s_mipi.c | 1145 ++++++++++++++++
drivers/media/i2c/ox05b1s/ox05b1s_regs_5mp.h | 1160 +++++++++++++++++
11 files changed, 3048 insertions(+)
create mode 100644 Documentation/devicetree/bindings/media/i2c/ovti,ox05b1s.yaml
create mode 100644 drivers/media/i2c/ox05b1s/Kconfig
create mode 100644 drivers/media/i2c/ox05b1s/Makefile
create mode 100644 drivers/media/i2c/ox05b1s/os08a20_regs_1080p.h
create mode 100644 drivers/media/i2c/ox05b1s/os08a20_regs_4k.h
create mode 100644 drivers/media/i2c/ox05b1s/os08a20_regs_4k_hdr.h
create mode 100644 drivers/media/i2c/ox05b1s/ox05b1s_mipi.c
create mode 100644 drivers/media/i2c/ox05b1s/ox05b1s_regs_5mp.h
--
2.25.1
next reply other threads:[~2024-10-28 19:06 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-28 19:06 Mirela Rabulea [this message]
2024-10-28 19:06 ` [PATCH 1/5] dt-bindings: media: i2c: Add bindings for OX05B1S " Mirela Rabulea
2024-10-29 6:14 ` Krzysztof Kozlowski
2024-10-29 12:10 ` Laurent Pinchart
2024-10-29 12:15 ` Krzysztof Kozlowski
2024-10-29 12:21 ` Laurent Pinchart
2024-10-29 12:28 ` Krzysztof Kozlowski
2024-10-29 12:46 ` Laurent Pinchart
2024-10-29 12:47 ` Krzysztof Kozlowski
2024-10-29 13:36 ` [EXT] " Mirela Rabulea
2024-10-29 13:49 ` Krzysztof Kozlowski
2024-10-29 11:44 ` Bryan O'Donoghue
2024-10-29 11:57 ` Laurent Pinchart
2024-10-29 12:00 ` Bryan O'Donoghue
2024-10-30 6:08 ` [EXT] " Mirela Rabulea
2024-10-30 6:02 ` Mirela Rabulea
2024-11-04 14:25 ` Laurent Pinchart
2024-11-26 16:10 ` Mirela Rabulea
2024-10-28 19:06 ` [PATCH 2/5] media: ox05b1s: Add omnivision OX05B1S raw " Mirela Rabulea
2024-10-29 6:17 ` Krzysztof Kozlowski
2024-10-28 19:06 ` [PATCH 3/5] MAINTAINERS: Add entry for OX05B1S " Mirela Rabulea
2024-10-28 19:06 ` [PATCH 4/5] dt-bindings: media: i2c: Update bindings for OX05B1S with OS08A20 Mirela Rabulea
2024-10-29 6:17 ` Krzysztof Kozlowski
2024-10-29 14:02 ` [EXT] " Mirela Rabulea
2024-10-29 16:46 ` Krzysztof Kozlowski
2024-10-28 19:06 ` [PATCH 5/5] media: ox05b1s: Add support for Omnivision OS08A20 raw sensor Mirela Rabulea
2024-11-01 12:08 ` Sakari Ailus
2024-11-04 13:21 ` [EXT] " Mirela Rabulea
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=20241028190628.257249-1-mirela.rabulea@nxp.com \
--to=mirela.rabulea@nxp.com \
--cc=LnxRevLi@nxp.com \
--cc=alain.volmat@foss.st.com \
--cc=alice.yuan@nxp.com \
--cc=dave.stevenson@raspberrypi.com \
--cc=hdegoede@redhat.com \
--cc=hverkuil-cisco@xs4all.nl \
--cc=julien.vuillaumier@nxp.com \
--cc=kieran.bingham@ideasonboard.com \
--cc=laurent.pinchart+renesas@ideasonboard.com \
--cc=laurentiu.palcu@nxp.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=mike.rudenko@gmail.com \
--cc=robert.chiras@nxp.com \
--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
all inboxes | Powered by JetHome®