Bug 2440581 - ov02c10 IPU6 camera on Dell XPS 9340 shows image upside down
Summary: ov02c10 IPU6 camera on Dell XPS 9340 shows image upside down
Keywords:
Status: NEW
Alias: None
Product: Fedora
Classification: Fedora
Component: kernel
Version: 43
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Justin M. Forbes
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2026-02-18 12:30 UTC by Ingvar Hagelund
Modified: 2026-03-08 08:27 UTC (History)
15 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Type: ---
Embargoed:


Attachments (Terms of Use)
Kernel dmesg output (120.87 KB, text/plain)
2026-02-18 12:31 UTC, Ingvar Hagelund
no flags Details

Description Ingvar Hagelund 2026-02-18 12:30:39 UTC
When applications use the built-in ov02c10 based camera, the captured image is upside-down


Reproducible: Always

Steps to Reproduce:
1.Install Fedora 43 on a Dell XPS 13 9340 with kernel-6.18.10-200.fc43.x86_64
2.Run qcam

Actual Results:
Captured image is upside-down

Expected Results:
Captured image should be the normal way

Additional Information:
Same issue with latest rawhide kernel 6.20.0-0.rc0.260216g0f2acd3148e0e.8.fc45.x86_64, see attached dmesg.txt

Bug first appeared in kernel-6.18.9-200.fc43.x86_64. The image is the right way with kernel-6.18.8-200.fc43.x86_64.

libcamera version: libcamera-0.5.2-5.fc43.x86_64

Extra modules: akmod-v4l2loopback from rpmfusion

Related: #2368952, #2355032. Note that the flickering bug seems fixed now.

I recently updated the Dell firmware, running now on BIOS 1.23.0. Don't know if this may be related. 

Workaround: Turn the image in OBS and use the virtual camera, or boot with 6.18.8-200.fc43.x86_64.


qcam output:

$ qcam
[0:01:39.849626502] [7862]  INFO Camera camera_manager.cpp:330 libcamera v0.5.2
[0:01:39.860305739] [7874] ERROR V4L2 v4l2_subdevice.cpp:1198 'ov02c10 17-0036': Unable to get rectangle 2 on pad 0/0: Inappropriate ioctl for device
[0:01:39.860317192] [7874]  WARN CameraSensor camera_sensor_legacy.cpp:401 'ov02c10 17-0036': The PixelArraySize property has been defaulted to 1928x1092
[0:01:39.860320302] [7874] ERROR V4L2 v4l2_subdevice.cpp:1198 'ov02c10 17-0036': Unable to get rectangle 1 on pad 0/0: Inappropriate ioctl for device
[0:01:39.860322566] [7874]  WARN CameraSensor camera_sensor_legacy.cpp:412 'ov02c10 17-0036': The PixelArrayActiveAreas property has been defaulted to (0, 0)/1928x1092
[0:01:39.860325184] [7874] ERROR V4L2 v4l2_subdevice.cpp:1198 'ov02c10 17-0036': Unable to get rectangle 0 on pad 0/0: Inappropriate ioctl for device
[0:01:39.860327940] [7874]  WARN CameraSensor camera_sensor_legacy.cpp:420 'ov02c10 17-0036': Failed to retrieve the sensor crop rectangle
[0:01:39.860329744] [7874]  WARN CameraSensor camera_sensor_legacy.cpp:426 'ov02c10 17-0036': The sensor kernel driver needs to be fixed
[0:01:39.860331901] [7874]  WARN CameraSensor camera_sensor_legacy.cpp:428 'ov02c10 17-0036': See Documentation/sensor_driver_requirements.rst in the libcamera sources for more information
[0:01:39.860473101] [7874]  WARN CameraSensorProperties camera_sensor_properties.cpp:484 No static properties available for 'ov02c10'
[0:01:39.860476546] [7874]  WARN CameraSensorProperties camera_sensor_properties.cpp:486 Please consider updating the camera sensor properties database
[0:01:39.860480836] [7874]  WARN CameraSensor camera_sensor_legacy.cpp:501 'ov02c10 17-0036': No sensor delays found in static properties. Assuming unverified defaults.
[0:01:39.862705921] [7874]  WARN IPAProxy ipa_proxy.cpp:177 Configuration file 'ov02c10.yaml' not found for IPA module 'simple', falling back to 'uncalibrated.yaml'
[0:01:39.862727597] [7874] ERROR V4L2 v4l2_subdevice.cpp:1198 'ov02c10 17-0036': Unable to get rectangle 0 on pad 0/0: Inappropriate ioctl for device
[0:01:39.862733808] [7874]  WARN CameraSensor camera_sensor_legacy.cpp:880 'ov02c10 17-0036': The analogue crop rectangle has been defaulted to the active area size
[0:01:39.869460277] [7875]  INFO IPAProxySoftWorker soft_ipa_proxy_worker.cpp:448 Starting worker for IPA module /usr/lib64/libcamera/ipa/ipa_soft_simple.so with IPC fd = 36
[0:01:39.869891405] [7875]  WARN IPASoft soft_simple.cpp:103 IPASoft: Failed to create camera sensor helper for ov02c10
[0:01:39.870159763] [7874]  INFO Camera camera_manager.cpp:220 Adding camera '\_SB_.PC00.LNK1' for pipeline handler simple
[0:01:39.904931932] [7862]  INFO Camera camera.cpp:1215 configuring streams: (0) 1920x1092-ABGR8888/Unset
[0:01:39.905530446] [7875]  INFO IPASoft soft_simple.cpp:269 IPASoft: Exposure 4-2320, gain 16-248 (1)
Zero-copy enabled
[0:01:42.773536242] [7877]  INFO Debayer debayer_cpu.cpp:831 Processed 30 frames in 105805us, 3526 us/frame

Comment 1 Ingvar Hagelund 2026-02-18 12:31:24 UTC
Created attachment 2129830 [details]
Kernel dmesg output

Comment 2 Hans de Goede 2026-02-25 20:33:24 UTC
This should be fixed by this patch which I just submitted upstream:

https://lore.kernel.org/linux-media/20260225203058.40545-1-johannes.goede@oss.qualcomm.com/

Kate, maybe you can submit a kernel-ark fedora-6.19 branch PR to backport this quickly ?

Comment 3 Kate Hsuan 2026-02-26 12:14:08 UTC
Hi Hans,

Thank you for your solutions.

I'll prepare the MR.

Comment 4 Andrey Motoshkov 2026-03-04 11:24:45 UTC
Have the same (image upside down) on Dell DA14250.
Kernel: 6.18.13-200.fc43.x86_64
libcamera: libcamera-0.5.2-5.fc43.x86_64

dmesg:
[    5.400150] intel-ipu6 0000:00:05.0: enabling device (0000 -> 0002)
[    5.446282] intel-ipu6 0000:00:05.0: Found supported sensor OVTI02C1:00
[    5.446344] intel-ipu6 0000:00:05.0: Connected 1 cameras
[    5.448079] intel-ipu6 0000:00:05.0: Sending BOOT_LOAD to CSE
[    5.494215] intel-ipu6 0000:00:05.0: Sending AUTHENTICATE_RUN to CSE
[    5.546769] intel-ipu6 0000:00:05.0: CSE authenticate_run done
[    5.546777] intel-ipu6 0000:00:05.0: IPU6-v4[7d19] hardware version 6

qcam:
[1:10:36.340650416] [29596]  INFO Camera camera_manager.cpp:330 libcamera v0.5.2
[1:10:36.370162109] [29609] ERROR V4L2 v4l2_subdevice.cpp:1198 'ov02c10 18-0036': Unable to get rectangle 2 on pad 0/0: Inappropriate ioctl for device
[1:10:36.370205868] [29609]  WARN CameraSensor camera_sensor_legacy.cpp:401 'ov02c10 18-0036': The PixelArraySize property has been defaulted to 1928x1092
[1:10:36.370210349] [29609] ERROR V4L2 v4l2_subdevice.cpp:1198 'ov02c10 18-0036': Unable to get rectangle 1 on pad 0/0: Inappropriate ioctl for device
[1:10:36.370213756] [29609]  WARN CameraSensor camera_sensor_legacy.cpp:412 'ov02c10 18-0036': The PixelArrayActiveAreas property has been defaulted to (0, 0)/1928x1092
[1:10:36.370220679] [29609] ERROR V4L2 v4l2_subdevice.cpp:1198 'ov02c10 18-0036': Unable to get rectangle 0 on pad 0/0: Inappropriate ioctl for device
[1:10:36.370226572] [29609]  WARN CameraSensor camera_sensor_legacy.cpp:420 'ov02c10 18-0036': Failed to retrieve the sensor crop rectangle
[1:10:36.370228865] [29609]  WARN CameraSensor camera_sensor_legacy.cpp:426 'ov02c10 18-0036': The sensor kernel driver needs to be fixed
[1:10:36.370232501] [29609]  WARN CameraSensor camera_sensor_legacy.cpp:428 'ov02c10 18-0036': See Documentation/sensor_driver_requirements.rst in the libcamera sources for more information
[1:10:36.370421629] [29609]  WARN CameraSensorProperties camera_sensor_properties.cpp:484 No static properties available for 'ov02c10'
[1:10:36.370426579] [29609]  WARN CameraSensorProperties camera_sensor_properties.cpp:486 Please consider updating the camera sensor properties database
[1:10:36.370434386] [29609]  WARN CameraSensor camera_sensor_legacy.cpp:501 'ov02c10 18-0036': No sensor delays found in static properties. Assuming unverified defaults.
[1:10:36.373254398] [29609] ERROR V4L2 v4l2_subdevice.cpp:1198 'ov02c10 18-0036': Unable to get rectangle 0 on pad 0/0: Inappropriate ioctl for device
[1:10:36.373285717] [29609]  WARN CameraSensor camera_sensor_legacy.cpp:880 'ov02c10 18-0036': The analogue crop rectangle has been defaulted to the active area size
[1:10:36.389086250] [29610]  INFO IPAProxySoftWorker soft_ipa_proxy_worker.cpp:448 Starting worker for IPA module /usr/lib64/libcamera/ipa/ipa_soft_simple.so with IPC fd = 35
[1:10:36.390139576] [29610]  WARN IPASoft soft_simple.cpp:103 IPASoft: Failed to create camera sensor helper for ov02c10
[1:10:36.390566786] [29609]  INFO Camera camera_manager.cpp:220 Adding camera '\_SB_.PC00.LNK1' for pipeline handler simple
[1:10:36.425798888] [29596]  INFO Camera camera.cpp:1215 configuring streams: (0) 1920x1092-ABGR8888/Unset
[1:10:36.426244061] [29610]  INFO IPASoft soft_simple.cpp:269 IPASoft: Exposure 4-2320, gain 16-248 (1)
Zero-copy enabled
[1:10:38.682583904] [29613]  INFO Debayer debayer_cpu.cpp:831 Processed 30 frames in 215420us, 7180 us/frame

Comment 5 Hans de Goede 2026-03-04 12:21:44 UTC
> Have the same (image upside down) on Dell DA14250.

What is the output of (run as regular user):

grep . /sys/class/dmi/id/* 2> /dev/null

?

Comment 6 Ingvar Hagelund 2026-03-04 15:38:40 UTC
I can confirm that the fix works fine om my Dell XPS 13 9340. Thanks for the quick response.

Comment 7 Andrey Motoshkov 2026-03-08 08:27:21 UTC
(In reply to Hans de Goede from comment #5)
> > Have the same (image upside down) on Dell DA14250.
> 
> What is the output of (run as regular user):
> 
> grep . /sys/class/dmi/id/* 2> /dev/null
> 
> ?

Please see below:
$ grep . /sys/class/dmi/id/* 2> /dev/null
/sys/class/dmi/id/bios_date:12/24/2025
/sys/class/dmi/id/bios_release:1.7
/sys/class/dmi/id/bios_vendor:Dell Inc.
/sys/class/dmi/id/bios_version:1.7.0
/sys/class/dmi/id/board_name:025J9Y
/sys/class/dmi/id/board_vendor:Dell Inc.
/sys/class/dmi/id/board_version:A00
/sys/class/dmi/id/chassis_type:10
/sys/class/dmi/id/chassis_vendor:Dell Inc.
/sys/class/dmi/id/ec_firmware_release:1.6
/sys/class/dmi/id/modalias:dmi:bvnDellInc.:bvr1.7.0:bd12/24/2025:br1.7:efr1.6:svnDellInc.:pnDell14PremiumDA14250:pvr:rvnDellInc.:rn025J9Y:rvrA00:cvnDellInc.:ct10:cvr:sku0CE5:
/sys/class/dmi/id/product_family:Dell Laptops
/sys/class/dmi/id/product_name:Dell 14 Premium DA14250
/sys/class/dmi/id/product_sku:0CE5
/sys/class/dmi/id/sys_vendor:Dell Inc.
/sys/class/dmi/id/uevent:MODALIAS=dmi:bvnDellInc.:bvr1.7.0:bd12/24/2025:br1.7:efr1.6:svnDellInc.:pnDell14PremiumDA14250:pvr:rvnDellInc.:rn025J9Y:rvrA00:cvnDellInc.:ct10:cvr:sku0CE5:


Note You need to log in before you can comment on or make changes to this bug.