Re: [PATCH v3 18/25] dt-bindings: media: imx258: Add alternate compatible strings

Dave Stevenson
2024-04-05T10:26:07Z

Hi Conor

On Wed, 3 Apr 2024 at 17:14, Conor Dooley <conor@kernel.org> wrote:
>
> On Wed, Apr 03, 2024 at 09:03:47AM -0600, git@luigi311.com wrote:
> > From: Dave Stevenson <dave.stevenson@raspberrypi.com>
> >
> > There are a number of variants of the imx258 modules that can not
> > be differentiated at runtime, so add compatible strings for the
> > PDAF variant.
> >
> > Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
> > Signed-off-by: Luis Garcia <git@luigi311.com>
> > ---
> > .../devicetree/bindings/media/i2c/sony,imx258.yaml | 9 +++++++--
> > 1 file changed, 7 insertions(+), 2 deletions(-)
> >
> > diff --git a/Documentation/devicetree/bindings/media/i2c/sony,imx258.yaml b/Documentation/devicetree/bindings/media/i2c/sony,imx258.yaml
> > index bee61a443b23..c978abc0cdb3 100644
> > --- a/Documentation/devicetree/bindings/media/i2c/sony,imx258.yaml
> > +++ b/Documentation/devicetree/bindings/media/i2c/sony,imx258.yaml
> > @@ -13,11 +13,16 @@ description: |-
> > IMX258 is a diagonal 5.867mm (Type 1/3.06) 13 Mega-pixel CMOS active pixel
> > type stacked image sensor with a square pixel array of size 4208 x 3120. It
> > is programmable through I2C interface. Image data is sent through MIPI
> > - CSI-2.
> > + CSI-2. The sensor exists in two different models, a standard variant
> > + (IMX258) and a variant with phase detection autofocus (IMX258-PDAF).
> > + The camera module does not expose the model through registers, so the
> > + exact model needs to be specified.
> >
> > properties:
> > compatible:
> > - const: sony,imx258
> > + enum:
> > + - sony,imx258
> > + - sony,imx258-pdaf
>
> Does the pdaf variant support all of the features/is it register
> compatible with the regular variant? If it is, the regular variant
> should be a fallback compatible.

It has the same register set, but certain registers have to be
programmed differently so that the image is corrected for the
partially shielded pixels used for phase detect auto focus (PDAF).
Either compatible will "work" on either variant of the module, but
you'll get weird image artifacts when using the wrong one.

Dave

> Cheers,
> Conor.