Hi Brian On Thu, 22 Sept 2022 at 11:43, Bryan O'Donoghue <bryan.odonoghue@xxxxxxxxxx> wrote: > > The Sony imx477 and imx577 use the same silicon enabling reference code > from Sony in the available examples provided as the imx412. > > Add in compatible strings to differentiate the parts. > > Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@xxxxxxxxxx> > --- > drivers/media/i2c/imx412.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/media/i2c/imx412.c b/drivers/media/i2c/imx412.c > index 9f854a1a4c2f..93f362e3b132 100644 > --- a/drivers/media/i2c/imx412.c > +++ b/drivers/media/i2c/imx412.c > @@ -1288,6 +1288,8 @@ static const struct dev_pm_ops imx412_pm_ops = { > > static const struct of_device_id imx412_of_match[] = { > { .compatible = "sony,imx412", .data = "imx412" }, > + { .compatible = "sony,imx477", .data = "imx477" }, IMX477 isn't compatible with this driver at present - it has 0x0477 in REG_ID (0x0016) instead of the 0x0577 that this driver looks for. The driver therefore won't probe. (I don't think I've missed a patch removing the ID check). I know you state in your cover letter: I think we have established that imx477 and imx577 do have additional settings and modes over the imx412 which, we can and hopefully will add in as time goes by. What we have upstream will work for all three parts. It may *eventually* work for all three parts, but isn't the time to add the compatible string at the point where it is actually compatible with the driver? If you're adding in broken compatible strings then, as previously mentioned, imx378 is also in the same family IIRC it streams with the base imx477 registers but with some IQ issues. It reports 0x0378 in REG_ID. Dave > + { .compatible = "sony,imx577", .data = "imx577" }, > { } > }; > > -- > 2.34.1 >