From: Sahan Nissanka <adee.sahan@gmail.com>
To: Sakari Ailus <sakari.ailus@linux.intel.com>
Cc: Sahan Nissanka <adee.sahan@gmail.com>,
platform-driver-x86@vger.kernel.org, linux-media@vger.kernel.org,
dan.scally@ideasonboard.com, hansg@kernel.org,
ilpo.jarvinen@linux.intel.com, mchehab@kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH 2/3] media: i2c: ov5675: Add OVTI5678 ACPI id
Date: Mon, 10 Aug 2026 19:24:45 +1000 [thread overview]
Message-ID: <20260810092457.12357-1-adee.sahan@gmail.com> (raw)
In-Reply-To: <anmHRjxruBaYQRaC@kekkonen.localdomain>
Hi Sakari,
Thank you for the review.
> Most non-Bayer colour raw sensors can be programmed to produce Bayer
> output. It'd be interesting to know what are the differences in register
> writes compared to the Windows driver -- it might use that feature.
I have not captured the Windows driver's register writes, so I cannot answer
that directly. What I do have is Intel's shipped configuration for this exact
module, and all of it points the other way: their stack appears to take RGB-IR
from the sensor and convert it downstream rather than ask the sensor for
Bayer.
- iacamera64.sys documents an IPU6 hardware block named x2b_rgbir, 314
registers, i.e. RGB-IR to Bayer conversion in the IPU6 itself.
- graph_settings_OV5678_0BF501T3_TGL.xml, tied to this module by ACPI _DDN
rather than to a near relative, declares sensor_type="RGB_IR" and
bayer_order="GIGI_RGBG_GIGI_BGRG". The rear OV8856 on the same machine
declares plain GRBG, which makes a useful control.
- The module's tuning file carries a lens shading record whose 4x4 channel
index map has five channels, two greens tracked separately plus IR,
against four on the rear sensor.
- Intel lists exactly one mode for this part, 2592x1944, where the Bayer
OV8856 gets several.
If the part could be told to emit Bayer, that hardware block and that tuning
would not be needed for this module. But that is an argument about what Intel
chose to do, not proof about what the sensor can do. I have no register-level
documentation for this variant, and the OV5675 documentation I do have does
not describe an RGB-IR part at all.
Since posting, another person working on this hardware extracted and shared
Intel's Windows sensor driver for this part - ov5678.sys, an ACPI\OVTI5678
KMDF driver - so I went looking for the register writes directly. They are not
in it: the driver carries no sensor initialisation tables, and instead reads
external configuration through an ExtFilesPath value under its service key,
from a BSPDRIVERS store. So the Windows driver binary does not settle your
question either, and I would rather say so than imply I have checked something
I have not.
It does suggest a cleaner way to answer it than sniffing the bus. The driver
has a register-dump facility of its own, writing to C:\OV5678reg.txt, and a
matching NVM dump for the module EEPROM. If the replacement machine arrives
with the factory Windows image, letting Windows bring the camera up and then
dumping the sensor's register state gives a direct comparison against the
tables in ov5675.c, using Intel's own tooling rather than my inference. If
there is a mode bit that switches the output to Bayer, that is where it should
appear. I will report either way, including if it turns out I cannot get at
it.
> The metadata series I've been preparing adds common raw formats and moves
> the CFA pattern to a control. Then we can add the non-Bayer patters to the
> UAPI as well. This isn't in upstream yet though. See
> <URL:https://git.linuxtv.org/sailus/media_tree.git/log/?h=metadata>.
That is good to know, and it changes my plans usefully. I had started drafting
an RFC proposing RGB-IR media bus codes; I will drop that rather than propose
a competing mechanism, and follow your branch instead. The CFA pattern as a
control looks like the better model for this - a 4x4 pattern does not reduce
to a Bayer order, so new bus codes would have multiplied awkwardly.
Two questions, then, on how you would like to proceed.
Would you prefer this patch waits for the metadata series to land, and returns
as part of describing the sensor honestly? I am content to hold it. The
practical cost is that the front camera stays dead on this machine in the
meantime, which is what prompted the patch, but that is not an argument for
merging something inaccurate.
And how should I read the precedent in ox05b1s? It declares SGRBG10 for an
RGB-IR sensor of this same class and resolution, which is what I was following
here. If that is regarded as a mistake not to repeat, I would rather know now
and wait than argue from it.
> Most of the commit message would seem to be better located in the cover
> letter.
Agreed - I will move it in v2.
One other thing you should know, since it affects the series rather than this
patch. I have asked that 1/3 not be applied: an owner of the same machine has
shown the GPIO mapping in it is wrong, and that the sensor probes with no pin
assignment at all, so my "it works" was never evidence that the mapping was
right. I will verify the corrected mapping on the replacement machine before
sending v2. Patch 3/3 is unaffected, and was independently arrived at by the
same person.
--
Sahan Nissanka
next prev parent reply other threads:[~2026-08-10 9:26 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-09 4:25 [PATCH 0/3] Enable the front camera on the Dell Latitude 7320 Detachable Sahan Nissanka
2026-08-09 4:25 ` [PATCH 1/3] platform/x86: int3472: Add TPS68470 board data for Dell " Sahan Nissanka
2026-08-10 8:32 ` Sahan Nissanka
2026-08-09 4:25 ` [PATCH 2/3] media: i2c: ov5675: Add OVTI5678 ACPI id Sahan Nissanka
2026-08-10 8:09 ` Sakari Ailus
2026-08-10 9:24 ` Sahan Nissanka [this message]
2026-08-09 4:25 ` [PATCH 3/3] media: ipu-bridge: Add sensor configuration for OV5675 (OVTI5678) Sahan Nissanka
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=20260810092457.12357-1-adee.sahan@gmail.com \
--to=adee.sahan@gmail.com \
--cc=dan.scally@ideasonboard.com \
--cc=hansg@kernel.org \
--cc=ilpo.jarvinen@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=platform-driver-x86@vger.kernel.org \
--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