diff options
Diffstat (limited to 'target/linux/at91/patches-5.10/190-media-atmel-fix-build-when-ISC-m-and-XISC-y.patch')
-rw-r--r-- | target/linux/at91/patches-5.10/190-media-atmel-fix-build-when-ISC-m-and-XISC-y.patch | 135 |
1 files changed, 0 insertions, 135 deletions
diff --git a/target/linux/at91/patches-5.10/190-media-atmel-fix-build-when-ISC-m-and-XISC-y.patch b/target/linux/at91/patches-5.10/190-media-atmel-fix-build-when-ISC-m-and-XISC-y.patch deleted file mode 100644 index 60b4104442..0000000000 --- a/target/linux/at91/patches-5.10/190-media-atmel-fix-build-when-ISC-m-and-XISC-y.patch +++ /dev/null @@ -1,135 +0,0 @@ -From dfcc0395f5e838c0b5c3fb93c9335b6a8892178a Mon Sep 17 00:00:00 2001 -From: Eugen Hristev <eugen.hristev@microchip.com> -Date: Mon, 5 Jul 2021 14:57:08 +0200 -Subject: [PATCH 190/247] media: atmel: fix build when ISC=m and XISC=y - -Building VIDEO_ATMEL_ISC as module and VIDEO_ATMEL_XISC as built-in -(or viceversa) causes build errors: - - or1k-linux-ld: drivers/media/platform/atmel/atmel-isc-base.o: in function `isc_async_complete': - atmel-isc-base.c:(.text+0x40d0): undefined reference to `__this_module' - or1k-linux-ld: atmel-isc-base.c:(.text+0x40f0): undefined reference to `__this_module' - or1k-linux-ld: drivers/media/platform/atmel/atmel-isc-base.o:(.rodata+0x390): undefined reference to `__this_module' - or1k-linux-ld: drivers/media/platform/atmel/atmel-isc-base.o:(__param+0x4): undefined reference to `__this_module' - or1k-linux-ld: drivers/media/platform/atmel/atmel-isc-base.o:(__param+0x18): undefined reference to `__this_module' - -This is caused by the file atmel-isc-base.c which is common code between -the two drivers. - -The solution is to create another Kconfig symbol that is automatically -selected and generates the module atmel-isc-base.ko. This module can be -loaded when both drivers are modules, or built-in when at least one of them -is built-in. - -Reported-by: kernel test robot <lkp@intel.com> -Fixes: c9aa973884a1 ("media: atmel: atmel-isc: add microchip-xisc driver") -Signed-off-by: Eugen Hristev <eugen.hristev@microchip.com> -Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> -Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> ---- - drivers/media/platform/atmel/Kconfig | 8 ++++++++ - drivers/media/platform/atmel/Makefile | 5 +++-- - drivers/media/platform/atmel/atmel-isc-base.c | 11 +++++++++++ - 3 files changed, 22 insertions(+), 2 deletions(-) - ---- a/drivers/media/platform/atmel/Kconfig -+++ b/drivers/media/platform/atmel/Kconfig -@@ -8,6 +8,7 @@ config VIDEO_ATMEL_ISC - select VIDEOBUF2_DMA_CONTIG - select REGMAP_MMIO - select V4L2_FWNODE -+ select VIDEO_ATMEL_ISC_BASE - help - This module makes the ATMEL Image Sensor Controller available - as a v4l2 device. -@@ -19,10 +20,17 @@ config VIDEO_ATMEL_XISC - select VIDEOBUF2_DMA_CONTIG - select REGMAP_MMIO - select V4L2_FWNODE -+ select VIDEO_ATMEL_ISC_BASE - help - This module makes the ATMEL eXtended Image Sensor Controller - available as a v4l2 device. - -+config VIDEO_ATMEL_ISC_BASE -+ tristate -+ default n -+ help -+ ATMEL ISC and XISC common code base. -+ - config VIDEO_ATMEL_ISI - tristate "ATMEL Image Sensor Interface (ISI) support" - depends on VIDEO_V4L2 && OF ---- a/drivers/media/platform/atmel/Makefile -+++ b/drivers/media/platform/atmel/Makefile -@@ -1,7 +1,8 @@ - # SPDX-License-Identifier: GPL-2.0-only --atmel-isc-objs = atmel-sama5d2-isc.o atmel-isc-base.o --atmel-xisc-objs = atmel-sama7g5-isc.o atmel-isc-base.o -+atmel-isc-objs = atmel-sama5d2-isc.o -+atmel-xisc-objs = atmel-sama7g5-isc.o - - obj-$(CONFIG_VIDEO_ATMEL_ISI) += atmel-isi.o -+obj-$(CONFIG_VIDEO_ATMEL_ISC_BASE) += atmel-isc-base.o - obj-$(CONFIG_VIDEO_ATMEL_ISC) += atmel-isc.o - obj-$(CONFIG_VIDEO_ATMEL_XISC) += atmel-xisc.o ---- a/drivers/media/platform/atmel/atmel-isc-base.c -+++ b/drivers/media/platform/atmel/atmel-isc-base.c -@@ -378,6 +378,7 @@ int isc_clk_init(struct isc_device *isc) - - return 0; - } -+EXPORT_SYMBOL_GPL(isc_clk_init); - - void isc_clk_cleanup(struct isc_device *isc) - { -@@ -392,6 +393,7 @@ void isc_clk_cleanup(struct isc_device * - clk_unregister(isc_clk->clk); - } - } -+EXPORT_SYMBOL_GPL(isc_clk_cleanup); - - static int isc_queue_setup(struct vb2_queue *vq, - unsigned int *nbuffers, unsigned int *nplanes, -@@ -1575,6 +1577,7 @@ irqreturn_t isc_interrupt(int irq, void - - return ret; - } -+EXPORT_SYMBOL_GPL(isc_interrupt); - - static void isc_hist_count(struct isc_device *isc, u32 *min, u32 *max) - { -@@ -2209,6 +2212,7 @@ const struct v4l2_async_notifier_operati - .unbind = isc_async_unbind, - .complete = isc_async_complete, - }; -+EXPORT_SYMBOL_GPL(isc_async_ops); - - void isc_subdev_cleanup(struct isc_device *isc) - { -@@ -2221,6 +2225,7 @@ void isc_subdev_cleanup(struct isc_devic - - INIT_LIST_HEAD(&isc->subdev_entities); - } -+EXPORT_SYMBOL_GPL(isc_subdev_cleanup); - - int isc_pipeline_init(struct isc_device *isc) - { -@@ -2261,6 +2266,7 @@ int isc_pipeline_init(struct isc_device - - return 0; - } -+EXPORT_SYMBOL_GPL(isc_pipeline_init); - - /* regmap configuration */ - #define ATMEL_ISC_REG_MAX 0xd5c -@@ -2270,4 +2276,9 @@ const struct regmap_config isc_regmap_co - .val_bits = 32, - .max_register = ATMEL_ISC_REG_MAX, - }; -+EXPORT_SYMBOL_GPL(isc_regmap_config); - -+MODULE_AUTHOR("Songjun Wu"); -+MODULE_AUTHOR("Eugen Hristev"); -+MODULE_DESCRIPTION("Atmel ISC common code base"); -+MODULE_LICENSE("GPL v2"); |