-
Notifications
You must be signed in to change notification settings - Fork 5.3k
OV9281 driver and overlay #3709
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Change-Id: I7b77250bbc56d2f861450cf77271ad15f9b88ab1 Signed-off-by: Zefa Chen <[email protected]>
Takes the ov9281 part only from the Rockchip's patch. Change-Id: I30e833baf2c1bb07d6d87ddb3b00759ab45a90e4 Signed-off-by: Zefa Chen <[email protected]>
…and hal3 Adds the ov9281 parts of the Rockchip patch adding enum_frame_interval to a large number of drivers. Change-Id: I03344cd6cf278dd7c18fce8e97479089ef185a5c Signed-off-by: Zefa Chen <[email protected]>
|
@naushir @davidplowman Just FYI. |
|
defconfigs and reading the chip ID fixed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Given this driver is imported from another tree, you may not want to address these minor things.
I have fixups for general API usage, so fixups on style can go in there too. |
|
More fixups required - I ran v4l2-compliance against it and got 8 failures. Colorspace mainly, and some streaming ioctl ones. |
…om code The Rockchip driver was based on a 4.4 kernel, and had several custom Rockchip parts. Update to 5.4 kernel APIs, with the relevant controls required by libcamera, and remove custom Rockchip parts. Signed-off-by: Dave Stevenson <[email protected]>
Vision Components have made an OV9281 module which blocks reading back the majority of registers to comply with NDAs, and in doing so doesn't allow auto-increment register reading as used when reading the chip ID. Use two reads and manually combine the results. Signed-off-by: Dave Stevenson <[email protected]>
Adds an overlay for the OV9281 mono imaging sensor using 2 CSI-2 data lanes. Signed-off-by: Dave Stevenson <[email protected]>
Adds the driver for use by the dtoverlay. Signed-off-by: Dave Stevenson <[email protected]>
|
Updated. Hopefully thaat is all the changes required for libcamera to be happy too. |
|
LGTM |
|
I've not seen anything wrong with it. |
kernel: vc4_hdmi: Support HBR audio See: raspberrypi/linux#3717 kernel: OV7251 overlay and defconfig See: raspberrypi/linux#3714 kernel: Imx290 & unicam v4l2-compliance fixes See: raspberrypi/linux#3712 kernel: Enhances the DAC+ driver to control the optional headphone amplifier See: raspberrypi/linux#3711 kernel: OV9281 driver and overlay See: raspberrypi/linux#3709 kernel: dtoverlays: Fixup imx219 and imx477 overlays due to parsing failures See: raspberrypi/linux#3706 kernel: FKMS: max refresh rate and blocking 1366x768 See: raspberrypi/linux#3704 kernel: Fix lockups and IRQ jitter on multicore RasPis See: raspberrypi/linux#3703 kernel: dts: Further simplify firmware clocks See: raspberrypi/linux#3609 kernel: configs: Add CAN_EMS_USB=m See: raspberrypi/linux#3716 kernel: configs: Enable CONFIG_BLK_DEV_NVME=m kernel: ARM: dts: Make bcm2711 dts more like 5.7 firmware: arm_loader: Don't enable the ARM USB IRQ See: raspberrypi/linux#3703 firmware: hdmi: Remove M2MC/BVB min turbo clock request
kernel: vc4_hdmi: Support HBR audio See: raspberrypi/linux#3717 kernel: OV7251 overlay and defconfig See: raspberrypi/linux#3714 kernel: Imx290 & unicam v4l2-compliance fixes See: raspberrypi/linux#3712 kernel: Enhances the DAC+ driver to control the optional headphone amplifier See: raspberrypi/linux#3711 kernel: OV9281 driver and overlay See: raspberrypi/linux#3709 kernel: dtoverlays: Fixup imx219 and imx477 overlays due to parsing failures See: raspberrypi/linux#3706 kernel: FKMS: max refresh rate and blocking 1366x768 See: raspberrypi/linux#3704 kernel: Fix lockups and IRQ jitter on multicore RasPis See: raspberrypi/linux#3703 kernel: dts: Further simplify firmware clocks See: raspberrypi/linux#3609 kernel: configs: Add CAN_EMS_USB=m See: raspberrypi/linux#3716 kernel: configs: Enable CONFIG_BLK_DEV_NVME=m kernel: ARM: dts: Make bcm2711 dts more like 5.7 firmware: arm_loader: Don't enable the ARM USB IRQ See: raspberrypi/linux#3703 firmware: hdmi: Remove M2MC/BVB min turbo clock request
Pulls in a driver for OV9281 from Rockchip's kernel tree, and then fixes it up to match mainline.
As it stands the first 3 commits won't build, but also the module isn't in the defconfig. Patch 4 fixes up the driver. The patches could be squashed but I really wanted to leave the history of where it came from.
Just noted that I've missed adding it to the defconfig, but also the patch for the Vision Components board doesn't work as the ID comes back as 0x72FF, so I'm reworking that.