Re: [PATCH v2 9/9] media: ipu-bridge: Add a rotation quirk for the Surface Book 2 and Pro 7+

From: Andy Shevchenko

Date: Thu Oct 29 2026 - 10:13:04 EST


On Wed, Oct 28, 2026 at 08:21:54PM +0900, Antoine Pichot wrote:
> The infrared camera of the Microsoft Surface Book 2, an OmniVision
> OV7251 with ACPI ID INT347E, is mounted rotated by 90 degrees. An
> upright scene appears rotated 90 degrees clockwise in its frames, with
> the top of the scene at the right edge of the image, while a frame
> taken at the same moment by the colour camera next to it shows the
> scene upright. The degree field of the sensor's SSDB buffer in the ACPI
> tables is 0, and so is the rotation field of its _PLD, so
> ipu_bridge_parse_rotation() sets the rotation property to 0 and
> userspace has no way to know that the image needs correcting.
>
> The firmware is wrong here, and ipu-bridge is where the firmware data
> is turned into the rotation property: it already carries DMI (Desktop
> Management Interface) quirks for sensors mounted upside down without
> the firmware saying so. Add a second table for sensors rotated by 90
> degrees, checked the same way, with entries for the Surface Book 2 and
> Surface Pro 7+ infrared sensors. Following
> V4L2_CID_CAMERA_SENSOR_ROTATION, 90 is the counter-clockwise rotation
> to apply to correct the image. The Book 2 entry matches on the SKU of
> the 13 inch model, the one checked; the 15 inch model has its own SKU
> and has not been checked. The colour sensors of this machine (INT33BE
> and INT347A) already report 180 degrees and are unchanged.
>
> D. Manresa measured the same rotation on a Surface Pro 7+ (IPU6), whose
> infrared sensor is also an INT347E: an upright scene comes out rotated
> 90 degrees clockwise, with both flip controls at 0 and the firmware
> reporting a rotation of 0, so the Pro 7+ gets an entry too.
>
> Tested on a 13 inch Surface Book 2 (SKU Surface_Book_1832) with a
> 7.2.12 kernel: V4L2_CID_CAMERA_SENSOR_ROTATION on the OV7251 reads 90
> instead of 0, the colour sensors still read 180 and the orientation
> controls are unchanged.
>
> Link: https://lore.kernel.org/linux-media/6ae0f151.0f9a9df6.1cace3.5239@xxxxxxxxxxxxx/

Add a reference here

Link: $URL [1]

and use [1] in the text above.

--
With Best Regards,
Andy Shevchenko