On 28/02/2025 17:45, Pratap Nirujogi wrote: > The camera sensor is connected via ISP I2C bus in AMD SOC > architectures. Add new I2C designware driver to support > new camera sensors on AMD HW. > > Signed-off-by: Pratap Nirujogi <pratap.nirujogi@xxxxxxx> > --- > drivers/i2c/busses/Kconfig | 10 + > drivers/i2c/busses/Makefile | 1 + > drivers/i2c/busses/i2c-designware-amdisp.c | 266 +++++++++++++++++++++ > drivers/i2c/busses/i2c-designware-amdisp.h | 24 ++ > 4 files changed, 301 insertions(+) > create mode 100644 drivers/i2c/busses/i2c-designware-amdisp.c > create mode 100644 drivers/i2c/busses/i2c-designware-amdisp.h > > diff --git a/drivers/i2c/busses/Kconfig b/drivers/i2c/busses/Kconfig > index fc438f445771..79448211baae 100644 > --- a/drivers/i2c/busses/Kconfig > +++ b/drivers/i2c/busses/Kconfig > @@ -592,6 +592,16 @@ config I2C_DESIGNWARE_PLATFORM > This driver can also be built as a module. If so, the module > will be called i2c-designware-platform. > > +config I2C_DESIGNWARE_AMDISP > + tristate "Synopsys DesignWare Platform for AMDISP" > + depends on I2C_DESIGNWARE_CORE > + help > + If you say yes to this option, support will be included for the > + AMDISP Synopsys DesignWare I2C adapter. > + > + This driver can also be built as a module. If so, the module > + will be called amd_isp_i2c_designware. > + > config I2C_DESIGNWARE_AMDPSP > bool "AMD PSP I2C semaphore support" > depends on ACPI > diff --git a/drivers/i2c/busses/Makefile b/drivers/i2c/busses/Makefile > index 1c2a4510abe4..cfe53038df69 100644 > --- a/drivers/i2c/busses/Makefile > +++ b/drivers/i2c/busses/Makefile > @@ -58,6 +58,7 @@ obj-$(CONFIG_I2C_DESIGNWARE_PLATFORM) += i2c-designware-platform.o > i2c-designware-platform-y := i2c-designware-platdrv.o > i2c-designware-platform-$(CONFIG_I2C_DESIGNWARE_AMDPSP) += i2c-designware-amdpsp.o > i2c-designware-platform-$(CONFIG_I2C_DESIGNWARE_BAYTRAIL) += i2c-designware-baytrail.o > +obj-$(CONFIG_I2C_DESIGNWARE_AMDISP) += i2c-designware-amdisp.o > obj-$(CONFIG_I2C_DESIGNWARE_PCI) += i2c-designware-pci.o > i2c-designware-pci-y := i2c-designware-pcidrv.o > obj-$(CONFIG_I2C_DIGICOLOR) += i2c-digicolor.o > diff --git a/drivers/i2c/busses/i2c-designware-amdisp.c b/drivers/i2c/busses/i2c-designware-amdisp.c > new file mode 100644 > index 000000000000..dc90510a440b > --- /dev/null > +++ b/drivers/i2c/busses/i2c-designware-amdisp.c > @@ -0,0 +1,266 @@ > +/* SPDX-License-Identifier: MIT */ > +/* > + * Copyright 2024-2025 Advanced Micro Devices, Inc. > + * > + * Permission is hereby granted, free of charge, to any person obtaining a > + * copy of this software and associated documentation files (the "Software"), > + * to deal in the Software without restriction, including without limitation > + * the rights to use, copy, modify, merge, publish, distribute, sublicense, > + * and/or sell copies of the Software, and to permit persons to whom the > + * Software is furnished to do so, subject to the following conditions: > + * > + * The above copyright notice and this permission notice shall be included in > + * all copies or substantial portions of the Software. > + * > + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR > + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, > + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL > + * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR > + * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, > + * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR > + * OTHER DEALINGS IN THE SOFTWARE. > + */ > + > +#include <linux/clk-provider.h> > +#include <linux/clk.h> > +#include <linux/delay.h> > +#include <linux/dmi.h> > +#include <linux/err.h> > +#include <linux/errno.h> Hm? > +#include <linux/i2c.h> > +#include <linux/interrupt.h> > +#include <linux/io.h> > +#include <linux/kernel.h> > +#include <linux/mfd/syscon.h> > +#include <linux/module.h> > +#include <linux/of.h> Drop... or you miss bindings. Many more headers look not used or even wrong. Best regards, Krzysztof