Re: [PATCH v1 0/2] media: i2c: add Sony IMX111 CMOS camera sensor driver
From: Svyatoslav Ryhel
Date: Tue Oct 28 2025 - 12:55:24 EST
вт, 28 жовт. 2025 р. о 18:38 Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx> пише:
>
> On Tue, Oct 28, 2025 at 06:34:15PM +0200, Svyatoslav Ryhel wrote:
> > вт, 28 жовт. 2025 р. о 18:31 Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx> пише:
> > >
> > > On Tue, Oct 28, 2025 at 06:24:25PM +0200, Sakari Ailus wrote:
> > > > Hi Svyatoslav,
> > > >
> > > > On Fri, Aug 29, 2025 at 09:20:10PM +0300, Svyatoslav Ryhel wrote:
> > > > > чт, 28 серп. 2025 р. о 19:12 Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx> пише:
> > > > > >
> > > > > > Hi Svyatoslaw,
> > > > > >
> > > > > > On Tue, Aug 19, 2025 at 03:04:25PM +0300, Svyatoslav Ryhel wrote:
> > > > > > > Add driver for Sony IMX111 CMOS sensor found in LG Optimus 4X and Vu
> > > > > > > smartphones.
> > > > > >
> > > > > > Thanks for the set.
> > > > > >
> > > > > > I wonder how would the sensor work with the CCS driver. The register layout
> > > > > > appears to be very much aligned with that (I haven't checked whether there
> > > > > > are MSRs that depend on the mode).
> > > > > >
> > > > >
> > > > > After deeper testing I have found that imx111 may be nokia,smia
> > > > > compatible, at least most of general registers and CCS logic is
> > > > > applicable. Some of registers may cause issues, for example,
> > > > > "phy_ctrl_capability" = 0, 0x0 and some insane pll ranges. Maybe that
> > > > > can be addressed with a firmware patch idk. The trickiest part is that
> > > > > each mode requires non-standard and non-common manufacturer code
> > > > > (0x3xxx ranges). If you can explain how to address these issues, I
> > > > > would love to add imx111 and a few other modules into list of CCS
> > > > > supported devices.
> > > >
> > > > On a closer look, only the image size related configuration and a little
> > > > more appears to be CCS-like. That's not enough to configure the sensor;
> > > > this is conveyed in the MSR space which indeed makes the sensor difficult
> > > > to control using the CCS driver, unfortunately.
> > >
> > > Ok, the driver appears to be doing quite a bit of register writes outside
> > > the register lists, which is good, and what's there appears indeed largely
> > > CCS compliant. The MSRs remain an issue; it'd take quite a bit of reverse
> > > engineering to figure out what the registers are and how to configure them
> > > in a generic way. I think that's doable but I'm not sure it is justifiable
> > > considering the expected effort.
> > >
> >
> > I have deciphered a lot already since downstream provides only
> > register writing sequences. Everything that left is 0x3xxx which seems
> > to refer a vendor region and it is not documented anywhere.
>
> That's what I'd expect, too, with the possible exception of the datasheet,
> but even sensor datasheets often omit a lot of information.
>
There is no commonly available datasheet for this model. From what I
have seen from similar models, 0x3xxx is vendor region and as you said
"datasheets often omit a lot of information" which is the case.
> I believe you're already aware of
> <URL:https://www.mipi.org/specifications/camera-command-set>?
>
Yes, but since this module is from pre-CCS era or was created right
before this standard was introduced, the module lacks a quite a bit of
registers and configurations required by CCS. Keep in mind that sensor
is used in the phone from 2012.
> --
> Sakari Ailus