Re: [PATCH v1 0/2] media: i2c: add Sony IMX111 CMOS camera sensor driver
From: Svyatoslav Ryhel
Date: Tue Oct 28 2025 - 12:34:28 EST
вт, 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.
> --
> Sakari Ailus