[libcamera-devel] IMX258 and speckled images

Umang Jain umang.jain at ideasonboard.com
Fri Jun 24 08:49:03 CEST 2022


Hi Dave,

On 6/23/22 22:58, Dave Stevenson wrote:
> Hi Kieran
>
> Thanks for responding
>
> On Thu, 23 Jun 2022 at 17:40, Kieran Bingham
> <kieran.bingham at ideasonboard.com> wrote:
>> Hi Dave,
>>
>> Quoting Dave Stevenson via libcamera-devel (2022-06-22 11:34:16)
>>> Hi All.
>>>
>>> A quick query as I'm aware that others on here are using the Sony IMX258 sensor.
>>> Are you using the sensor driver as-is from mainline[1], or does it need changes?
>> I think the Nautilus uses the IMX258. But as a ChromeOS device, the
>> driver should be expected to be as-is from mainline.
>>
>>
>>> A third party manufacturer has made an IMX258 module for the Pi[2],
>>> but we're getting dark speckles in the raw image, which we're guessing
>>> is down to PDAF pixel correction. The module manufacturer also
>>> believes that there may be versions of the module with and without
>>> PDAF pixels, which may well explain the issue.
>> I guess this might look like noise on the resulting image? or is it
>> fixed spots that look like broken pixels? (An image might help if
>> feasible).
> Sorry, I should have thought to send images with my first email :-/
>
> https://drive.google.com/file/d/1i4T3CuB-zJU8MT0XX_XC-UsKRitTxdTF/view?usp=sharing
> JPGs and DNGs for two scenes in each mode.
> Register 0x4e21 as 0x14 is the current driver's behaviour. Setting it
> to 0x10 clears the odd pixels. What does bit 2 do?!


So here are few quick raw and .ppm images captured on the imx258 sensor 
on Nautilus.

https://drive.google.com/drive/folders/1nkY24qy4TgVcQuWfNUGyGJdJEOhKHS1Z?usp=sharing

The driver seems to diverge from mainline with 2 commits that I can see of:
https://chromium.googlesource.com/chromiumos/third_party/kernel/+log/refs/heads/chromeos-5.4/drivers/media/i2c/imx258.c

but it doesn't change the value set in the register-of-interest so I 
guess it should be fine?


>>> It seems that register 0x4e21 being set to 0x14 by the driver is the
>>> main cause, and the default of 0x10 gives good images. Of course
>>> register 0x4e21 isn't documented in any of the datasheets and appnotes
>>> I have from Sony. I have an enquiry in with them, but I wondered if
>>> others had seen similar issues, or might have documentation about that
>>> register.
>> Umang, can you confirm if this is the driver in use by the Nautilus?
> I have received some information back from Sony over different values
> in the OTP for different variants of the sensor. If someone does have
> a device which uses it, then I can give them some I2C commands to read
> the relevant bits and see what those platforms are using. It's the
> normal NDA faff with sensor manufacturers so I can't really send it to
> an open list.
>
> Part of the issue is knowing which variant the existing driver is
> meant to work with to ensure we don't break that.
>
>    Dave


More information about the libcamera-devel mailing list