Message ID | 20240212111933.963985-1-arnd@kernel.org |
---|---|
State | New |
Headers | show |
Series | i2c: pasemi: split driver into two separate modules | expand |
> > On 12. Feb 2024, at 12:19, Arnd Bergmann <arnd@kernel.org> wrote: > > From: Arnd Bergmann <arnd@arndb.de> > > On powerpc, it is possible to compile test both the new apple (arm) and > old pasemi (powerpc) drivers for the i2c hardware at the same time, > which leads to a warning about linking the same object file twice: > > scripts/Makefile.build:244: drivers/i2c/busses/Makefile: i2c-pasemi-core.o is added to multiple modules: i2c-apple i2c-pasemi > > Rework the driver to have an explicit helper module, letting Kbuild > take care of whether this should be built-in or a loadable driver. > > Fixes: 9bc5f4f660ff ("i2c: pasemi: Split pci driver to its own file") > Signed-off-by: Arnd Bergmann <arnd@arndb.de> > --- Reviewed-by: Sven Peter <sven@svenpeter.dev> thanks, totally forgot about this! Sven > drivers/i2c/busses/Makefile | 6 ++---- > drivers/i2c/busses/i2c-pasemi-core.c | 6 ++++++ > 2 files changed, 8 insertions(+), 4 deletions(-) > > diff --git a/drivers/i2c/busses/Makefile b/drivers/i2c/busses/Makefile > index 3757b9391e60..aa0ee8ecd6f2 100644 > --- a/drivers/i2c/busses/Makefile > +++ b/drivers/i2c/busses/Makefile > @@ -90,10 +90,8 @@ obj-$(CONFIG_I2C_NPCM) += i2c-npcm7xx.o > obj-$(CONFIG_I2C_OCORES) += i2c-ocores.o > obj-$(CONFIG_I2C_OMAP) += i2c-omap.o > obj-$(CONFIG_I2C_OWL) += i2c-owl.o > -i2c-pasemi-objs := i2c-pasemi-core.o i2c-pasemi-pci.o > -obj-$(CONFIG_I2C_PASEMI) += i2c-pasemi.o > -i2c-apple-objs := i2c-pasemi-core.o i2c-pasemi-platform.o > -obj-$(CONFIG_I2C_APPLE) += i2c-apple.o > +obj-$(CONFIG_I2C_PASEMI) += i2c-pasemi-core.o i2c-pasemi-pci.o > +obj-$(CONFIG_I2C_APPLE) += i2c-pasemi-core.o i2c-pasemi-platform.o > obj-$(CONFIG_I2C_PCA_PLATFORM) += i2c-pca-platform.o > obj-$(CONFIG_I2C_PNX) += i2c-pnx.o > obj-$(CONFIG_I2C_PXA) += i2c-pxa.o > diff --git a/drivers/i2c/busses/i2c-pasemi-core.c b/drivers/i2c/busses/i2c-pasemi-core.c > index 7d54a9f34c74..bd8becbdeeb2 100644 > --- a/drivers/i2c/busses/i2c-pasemi-core.c > +++ b/drivers/i2c/busses/i2c-pasemi-core.c > @@ -369,6 +369,7 @@ int pasemi_i2c_common_probe(struct pasemi_smbus *smbus) > > return 0; > } > +EXPORT_SYMBOL_GPL(pasemi_i2c_common_probe); > > irqreturn_t pasemi_irq_handler(int irq, void *dev_id) > { > @@ -378,3 +379,8 @@ irqreturn_t pasemi_irq_handler(int irq, void *dev_id) > complete(&smbus->irq_completion); > return IRQ_HANDLED; > } > +EXPORT_SYMBOL_GPL(pasemi_irq_handler); > + > +MODULE_LICENSE("GPL"); > +MODULE_AUTHOR("Olof Johansson <olof@lixom.net>"); > +MODULE_DESCRIPTION("PA Semi PWRficient SMBus driver"); > -- > 2.39.2
diff --git a/drivers/i2c/busses/Makefile b/drivers/i2c/busses/Makefile index 3757b9391e60..aa0ee8ecd6f2 100644 --- a/drivers/i2c/busses/Makefile +++ b/drivers/i2c/busses/Makefile @@ -90,10 +90,8 @@ obj-$(CONFIG_I2C_NPCM) += i2c-npcm7xx.o obj-$(CONFIG_I2C_OCORES) += i2c-ocores.o obj-$(CONFIG_I2C_OMAP) += i2c-omap.o obj-$(CONFIG_I2C_OWL) += i2c-owl.o -i2c-pasemi-objs := i2c-pasemi-core.o i2c-pasemi-pci.o -obj-$(CONFIG_I2C_PASEMI) += i2c-pasemi.o -i2c-apple-objs := i2c-pasemi-core.o i2c-pasemi-platform.o -obj-$(CONFIG_I2C_APPLE) += i2c-apple.o +obj-$(CONFIG_I2C_PASEMI) += i2c-pasemi-core.o i2c-pasemi-pci.o +obj-$(CONFIG_I2C_APPLE) += i2c-pasemi-core.o i2c-pasemi-platform.o obj-$(CONFIG_I2C_PCA_PLATFORM) += i2c-pca-platform.o obj-$(CONFIG_I2C_PNX) += i2c-pnx.o obj-$(CONFIG_I2C_PXA) += i2c-pxa.o diff --git a/drivers/i2c/busses/i2c-pasemi-core.c b/drivers/i2c/busses/i2c-pasemi-core.c index 7d54a9f34c74..bd8becbdeeb2 100644 --- a/drivers/i2c/busses/i2c-pasemi-core.c +++ b/drivers/i2c/busses/i2c-pasemi-core.c @@ -369,6 +369,7 @@ int pasemi_i2c_common_probe(struct pasemi_smbus *smbus) return 0; } +EXPORT_SYMBOL_GPL(pasemi_i2c_common_probe); irqreturn_t pasemi_irq_handler(int irq, void *dev_id) { @@ -378,3 +379,8 @@ irqreturn_t pasemi_irq_handler(int irq, void *dev_id) complete(&smbus->irq_completion); return IRQ_HANDLED; } +EXPORT_SYMBOL_GPL(pasemi_irq_handler); + +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("Olof Johansson <olof@lixom.net>"); +MODULE_DESCRIPTION("PA Semi PWRficient SMBus driver");