Camera Module V1 (OV5647) 640×480 @ 90 FPS mode not available

Open
#5,309 0 comments 5 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
42/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Stale
Tech stack
c, linux

Research direction

Start in drivers/media/i2c/ov5647.c, especially the 10bpp mode definitions around lines 507-592, and compare the existing 640x480 entry with the sensor's advertised modes. Use libcamera-vid --list-cameras to verify the current capabilities; done means the OV5647 advertises and supports 640x480 at 90 FPS through the libcamera stack.

Written by the indexing model from the issue text.

Description

Describe the bug

The Camera Module V1 (OV5647) is advertised with video modes "1080p30, 720p60 and 640 × 480p60/90" but the video mode with 640 × 480 @ 90 FPS is not available when using the libcamera stack.

This was originally reported to libcamera-apps as https://github.com/raspberrypi/libcamera-apps/issues/427 but it turns out that this is an issue with the ov5647 kernel module, which only defines 4 10bpp-modes https://github.com/raspberrypi/linux/blob/3af3e39f2ab8755d4be0cb40078b7ca2abbea4ee/drivers/media/i2c/ov5647.c#L507-L592 and is missing the 90 FPS mode.

Hence the new libcamera stack cannot be used with all advertised modes. Since the old "mmal" stack is deprecated, I expect that all features will be available on the new libcamera stack

Steps to reproduce the behaviour

libcamera-vid --list-cameras will list modes between 15 and 60 FPS:

0 : ov5647 [2592x1944] (/base/soc/i2c0mux/i2c@1/ov5647@36)
    Modes: 'SGBRG10_CSI2P' : 640x480 [58.92 fps - (16, 0)/2560x1920 crop]
                             1296x972 [43.25 fps - (0, 0)/2592x1944 crop]
                             1920x1080 [30.62 fps - (348, 434)/1928x1080 crop]
                             2592x1944 [15.63 fps - (0, 0)/2592x1944 crop]

The 90 FPS mode is missing.

Device (s)

Raspberry Pi Zero 2 W, Raspberry Pi 2 Mod. B

System
  • Raspberry Pi OS 11 (bullseye)
  • kernel 5.15
Logs

No response

Additional context

No response

Dominant language
C
Stars
13.2k
Forks
5.5k
Avg merge
2d 21h
Merged PRs (30d)
21

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from raspberrypi/linux

All issues in raspberrypi/linux

Similar issues

More C issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.