* [PATCH] [media] s5p-fimc: Make FIMC-Lite dependent on S5P-FIMC
@ 2012-08-14 4:52 Sachin Kamat
2012-08-14 10:53 ` Sylwester Nawrocki
0 siblings, 1 reply; 3+ messages in thread
From: Sachin Kamat @ 2012-08-14 4:52 UTC (permalink / raw)
To: linux-media; +Cc: s.nawrocki, mchehab, sachin.kamat, patches
FIMC-Lite driver accesses functions which are defined in files
attached to S5P_FIMC. Without this patch, if only FIMC-Lite is
selected, following errors are observed for missing symbols:
drivers/built-in.o: In function `fimc_md_create_links':
fimc-mdevice.c:641: undefined reference to `fimc_sensor_notify'
drivers/built-in.o: In function `fimc_md_link_notify':
fimc-mdevice.c:838: undefined reference to `fimc_ctrls_delete'
fimc-mdevice.c:854: undefined reference to `fimc_capture_ctrls_create'
drivers/built-in.o: In function `fimc_md_init':
fimc-mdevice.c:1018: undefined reference to `fimc_register_driver'
drivers/built-in.o: In function `fimc_md_exit':
fimc-mdevice.c:1028: undefined reference to `fimc_unregister_driver'
make: *** [vmlinux] Error 1
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
---
drivers/media/video/s5p-fimc/Kconfig | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/media/video/s5p-fimc/Kconfig b/drivers/media/video/s5p-fimc/Kconfig
index a564f7e..17a1f8d 100644
--- a/drivers/media/video/s5p-fimc/Kconfig
+++ b/drivers/media/video/s5p-fimc/Kconfig
@@ -35,7 +35,7 @@ if ARCH_EXYNOS
config VIDEO_EXYNOS_FIMC_LITE
tristate "EXYNOS FIMC-LITE camera interface driver"
- depends on I2C
+ depends on I2C && VIDEO_S5P_FIMC
select VIDEOBUF2_DMA_CONTIG
help
This is a V4L2 driver for Samsung EXYNOS4/5 SoC FIMC-LITE camera
--
1.7.4.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] [media] s5p-fimc: Make FIMC-Lite dependent on S5P-FIMC
2012-08-14 4:52 [PATCH] [media] s5p-fimc: Make FIMC-Lite dependent on S5P-FIMC Sachin Kamat
@ 2012-08-14 10:53 ` Sylwester Nawrocki
2012-08-14 11:33 ` Sachin Kamat
0 siblings, 1 reply; 3+ messages in thread
From: Sylwester Nawrocki @ 2012-08-14 10:53 UTC (permalink / raw)
To: Sachin Kamat; +Cc: linux-media, mchehab, patches
Hi Sachin,
On 08/14/2012 06:52 AM, Sachin Kamat wrote:
> FIMC-Lite driver accesses functions which are defined in files
> attached to S5P_FIMC. Without this patch, if only FIMC-Lite is
> selected, following errors are observed for missing symbols:
>
> drivers/built-in.o: In function `fimc_md_create_links':
> fimc-mdevice.c:641: undefined reference to `fimc_sensor_notify'
> drivers/built-in.o: In function `fimc_md_link_notify':
> fimc-mdevice.c:838: undefined reference to `fimc_ctrls_delete'
> fimc-mdevice.c:854: undefined reference to `fimc_capture_ctrls_create'
> drivers/built-in.o: In function `fimc_md_init':
> fimc-mdevice.c:1018: undefined reference to `fimc_register_driver'
> drivers/built-in.o: In function `fimc_md_exit':
> fimc-mdevice.c:1028: undefined reference to `fimc_unregister_driver'
> make: *** [vmlinux] Error 1
Hmm, when you select CONFIG_VIDEO_EXYNOS_FIMC_LITE only fimc-mdevice.c
shouldn't be build. That what's in the Makefile [1]:
1 s5p-fimc-objs := fimc-core.o fimc-reg.o fimc-m2m.o fimc-capture.o fimc-mdevice.o
2 exynos-fimc-lite-objs += fimc-lite-reg.o fimc-lite.o
3 s5p-csis-objs := mipi-csis.o
4
5 obj-$(CONFIG_VIDEO_S5P_MIPI_CSIS) += s5p-csis.o
6 obj-$(CONFIG_VIDEO_EXYNOS_FIMC_LITE) += exynos-fimc-lite.o
7 obj-$(CONFIG_VIDEO_S5P_FIMC) += s5p-fimc.o
Only following 3 symbols should be missing:
- fimc_pipeline_initialize
- fimc_pipeline_s_stream
- fimc_pipeline_shutdown
I'm getting following errors instead:
drivers/built-in.o: In function `buffer_queue':
/home/snawrocki/dev/linux-opensource-release/kernel/drivers/media/video/s5p-fimc/fimc-lite.c:414: undefined reference to `fimc_pipeline_s_stream'
drivers/built-in.o: In function `fimc_lite_resume':
/home/snawrocki/dev/linux-opensource-release/kernel/drivers/media/video/s5p-fimc/fimc-lite.c:1518: undefined reference to `fimc_pipeline_initialize'
drivers/built-in.o: In function `fimc_lite_reinit':
/home/snawrocki/dev/linux-opensource-release/kernel/drivers/media/video/s5p-fimc/fimc-lite.c:196: undefined reference to `fimc_pipeline_s_stream'
drivers/built-in.o: In function `fimc_lite_suspend':
/home/snawrocki/dev/linux-opensource-release/kernel/drivers/media/video/s5p-fimc/fimc-lite.c:1544: undefined reference to `fimc_pipeline_shutdown'
drivers/built-in.o: In function `start_streaming':
/home/snawrocki/dev/linux-opensource-release/kernel/drivers/media/video/s5p-fimc/fimc-lite.c:310: undefined reference to `fimc_pipeline_s_stream'
drivers/built-in.o: In function `fimc_lite_close':
/home/snawrocki/dev/linux-opensource-release/kernel/drivers/media/video/s5p-fimc/fimc-lite.c:496: undefined reference to `fimc_pipeline_shutdown'
drivers/built-in.o: In function `fimc_lite_open':
/home/snawrocki/dev/linux-opensource-release/kernel/drivers/media/video/s5p-fimc/fimc-lite.c:469: undefined reference to `fimc_pipeline_initialize'
Anyway, the current approach of exporting the pipeline control
functions seems wrong, since we wouldn't be able to build s5p-fimc
and exynos-gsc drivers and link them into common kernel image.
It must be possible to build FIMC-LITE with s5p-fimc or exynos-gsc
driver, or best as a standalone module. I think I will try to add
some pipeline ops for the FIMC-LITE module, that would be initialized
when it gets registered to selected media device (s5p-fimc or
exynos-gsc in future).
So this patch doesn't seem a right solution to me. I'll try to address
this issue. And I'm wonderin why you're getting those different errors.
Regards,
Sylwester
> Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
> ---
> drivers/media/video/s5p-fimc/Kconfig | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/drivers/media/video/s5p-fimc/Kconfig b/drivers/media/video/s5p-fimc/Kconfig
> index a564f7e..17a1f8d 100644
> --- a/drivers/media/video/s5p-fimc/Kconfig
> +++ b/drivers/media/video/s5p-fimc/Kconfig
> @@ -35,7 +35,7 @@ if ARCH_EXYNOS
>
> config VIDEO_EXYNOS_FIMC_LITE
> tristate "EXYNOS FIMC-LITE camera interface driver"
> - depends on I2C
> + depends on I2C && VIDEO_S5P_FIMC
> select VIDEOBUF2_DMA_CONTIG
> help
> This is a V4L2 driver for Samsung EXYNOS4/5 SoC FIMC-LITE camera
[1] http://git.linuxtv.org/media_tree.git/blob/31ce54f6aeb70ecf1b8e758236955dfad1b1e398:/drivers/media/video/s5p-fimc/Makefile
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] [media] s5p-fimc: Make FIMC-Lite dependent on S5P-FIMC
2012-08-14 10:53 ` Sylwester Nawrocki
@ 2012-08-14 11:33 ` Sachin Kamat
0 siblings, 0 replies; 3+ messages in thread
From: Sachin Kamat @ 2012-08-14 11:33 UTC (permalink / raw)
To: Sylwester Nawrocki; +Cc: linux-media, mchehab, patches
Hi Sylwester,
On 14 August 2012 16:23, Sylwester Nawrocki <s.nawrocki@samsung.com> wrote:
> Hi Sachin,
>
> On 08/14/2012 06:52 AM, Sachin Kamat wrote:
>> FIMC-Lite driver accesses functions which are defined in files
>> attached to S5P_FIMC. Without this patch, if only FIMC-Lite is
>> selected, following errors are observed for missing symbols:
>>
>> drivers/built-in.o: In function `fimc_md_create_links':
>> fimc-mdevice.c:641: undefined reference to `fimc_sensor_notify'
>> drivers/built-in.o: In function `fimc_md_link_notify':
>> fimc-mdevice.c:838: undefined reference to `fimc_ctrls_delete'
>> fimc-mdevice.c:854: undefined reference to `fimc_capture_ctrls_create'
>> drivers/built-in.o: In function `fimc_md_init':
>> fimc-mdevice.c:1018: undefined reference to `fimc_register_driver'
>> drivers/built-in.o: In function `fimc_md_exit':
>> fimc-mdevice.c:1028: undefined reference to `fimc_unregister_driver'
>> make: *** [vmlinux] Error 1
>
> Hmm, when you select CONFIG_VIDEO_EXYNOS_FIMC_LITE only fimc-mdevice.c
> shouldn't be build. That what's in the Makefile [1]:
>
> 1 s5p-fimc-objs := fimc-core.o fimc-reg.o fimc-m2m.o fimc-capture.o fimc-mdevice.o
> 2 exynos-fimc-lite-objs += fimc-lite-reg.o fimc-lite.o
> 3 s5p-csis-objs := mipi-csis.o
> 4
> 5 obj-$(CONFIG_VIDEO_S5P_MIPI_CSIS) += s5p-csis.o
> 6 obj-$(CONFIG_VIDEO_EXYNOS_FIMC_LITE) += exynos-fimc-lite.o
> 7 obj-$(CONFIG_VIDEO_S5P_FIMC) += s5p-fimc.o
>
>
> Only following 3 symbols should be missing:
>
> - fimc_pipeline_initialize
> - fimc_pipeline_s_stream
> - fimc_pipeline_shutdown
>
> I'm getting following errors instead:
>
> drivers/built-in.o: In function `buffer_queue':
> /home/snawrocki/dev/linux-opensource-release/kernel/drivers/media/video/s5p-fimc/fimc-lite.c:414: undefined reference to `fimc_pipeline_s_stream'
> drivers/built-in.o: In function `fimc_lite_resume':
> /home/snawrocki/dev/linux-opensource-release/kernel/drivers/media/video/s5p-fimc/fimc-lite.c:1518: undefined reference to `fimc_pipeline_initialize'
> drivers/built-in.o: In function `fimc_lite_reinit':
> /home/snawrocki/dev/linux-opensource-release/kernel/drivers/media/video/s5p-fimc/fimc-lite.c:196: undefined reference to `fimc_pipeline_s_stream'
> drivers/built-in.o: In function `fimc_lite_suspend':
> /home/snawrocki/dev/linux-opensource-release/kernel/drivers/media/video/s5p-fimc/fimc-lite.c:1544: undefined reference to `fimc_pipeline_shutdown'
> drivers/built-in.o: In function `start_streaming':
> /home/snawrocki/dev/linux-opensource-release/kernel/drivers/media/video/s5p-fimc/fimc-lite.c:310: undefined reference to `fimc_pipeline_s_stream'
> drivers/built-in.o: In function `fimc_lite_close':
> /home/snawrocki/dev/linux-opensource-release/kernel/drivers/media/video/s5p-fimc/fimc-lite.c:496: undefined reference to `fimc_pipeline_shutdown'
> drivers/built-in.o: In function `fimc_lite_open':
> /home/snawrocki/dev/linux-opensource-release/kernel/drivers/media/video/s5p-fimc/fimc-lite.c:469: undefined reference to `fimc_pipeline_initialize'
Sorry for the confusion created due to the wrong copy of error
messages. In fact I too get the same errors as mentioned by you. I was
just playing around with the Makefile to see if including
fimc-mdevice.o solved the problem (commit messsage errors were due to
this).
>
>
> Anyway, the current approach of exporting the pipeline control
> functions seems wrong, since we wouldn't be able to build s5p-fimc
> and exynos-gsc drivers and link them into common kernel image.
>
> It must be possible to build FIMC-LITE with s5p-fimc or exynos-gsc
> driver, or best as a standalone module. I think I will try to add
> some pipeline ops for the FIMC-LITE module, that would be initialized
> when it gets registered to selected media device (s5p-fimc or
> exynos-gsc in future).
Sounds good.
>
> So this patch doesn't seem a right solution to me.
Right. This patch was more from the point of view of bringing this
issue to notice and possibly providing a quick fix (workaround).
I'll try to address
> this issue. And I'm wonderin why you're getting those different errors.
My mistake :)
>
> Regards,
> Sylwester
>
>> Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
>> ---
>> drivers/media/video/s5p-fimc/Kconfig | 2 +-
>> 1 files changed, 1 insertions(+), 1 deletions(-)
>>
>> diff --git a/drivers/media/video/s5p-fimc/Kconfig b/drivers/media/video/s5p-fimc/Kconfig
>> index a564f7e..17a1f8d 100644
>> --- a/drivers/media/video/s5p-fimc/Kconfig
>> +++ b/drivers/media/video/s5p-fimc/Kconfig
>> @@ -35,7 +35,7 @@ if ARCH_EXYNOS
>>
>> config VIDEO_EXYNOS_FIMC_LITE
>> tristate "EXYNOS FIMC-LITE camera interface driver"
>> - depends on I2C
>> + depends on I2C && VIDEO_S5P_FIMC
>> select VIDEOBUF2_DMA_CONTIG
>> help
>> This is a V4L2 driver for Samsung EXYNOS4/5 SoC FIMC-LITE camera
>
> [1] http://git.linuxtv.org/media_tree.git/blob/31ce54f6aeb70ecf1b8e758236955dfad1b1e398:/drivers/media/video/s5p-fimc/Makefile
--
With warm regards,
Sachin
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2012-08-14 11:33 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-08-14 4:52 [PATCH] [media] s5p-fimc: Make FIMC-Lite dependent on S5P-FIMC Sachin Kamat
2012-08-14 10:53 ` Sylwester Nawrocki
2012-08-14 11:33 ` Sachin Kamat
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).