Skip to contentSkip to conversation

staging/davinci_vfpe: allow modular build

PATCH In review Arnd Bergmann 3 participants 3 messages Dec 10, 2015

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 staging/davinci_vfpe: allow modular build

It has never been possible to actually build this driver as a loadable module, only built-in because the Makefile attempts to build each file into its own module and fails:

ERROR: "mbus_to_pix" [drivers/staging/media/davinci_vpfe/vpfe_video.ko] undefined!
ERROR: "vpfe_resizer_register_entities" [drivers/staging/media/davinci_vpfe/vpfe_mc_capture.ko] undefined!
ERROR: "rsz_enable" [drivers/staging/media/davinci_vpfe/dm365_resizer.ko] undefined!
ERROR: "config_ipipe_hw" [drivers/staging/media/davinci_vpfe/dm365_ipipe.ko] undefined!
ERROR: "ipipe_set_lutdpc_regs" [drivers/staging/media/davinci_vpfe/dm365_ipipe.ko] undefined!

It took a long time to catch this bug with randconfig builds because at least 14 other Kconfig symbols have to be enabled in order to configure this one.

The solution is really easy: this patch changes the Makefile to link all files into one module.

---

drivers/staging/media/davinci_vpfe/Makefile +3 -1
index c64515c644cd..3019c9ecd548 100644
@@ -1,3 +1,5 @@
-obj-$(CONFIG_VIDEO_DM365_VPFE) += \
+obj-$(CONFIG_VIDEO_DM365_VPFE) += davinci-vfpe.o
+
+davinci-vfpe-objs := \
 	dm365_isif.o dm365_ipipe_hw.o dm365_ipipe.o \
 	dm365_resizer.o dm365_ipipeif.o vpfe_mc_capture.o vpfe_video.o
#1 lore raw

Em Thu, 10 Dec 2015 15:29:38 +0100
Arnd Bergmann <[email protected]> escreveu:

Quoted 26 lines

It has never been possible to actually build this driver as a loadable module, only built-in because the Makefile attempts to build each file into its own module and fails:

ERROR: "mbus_to_pix" [drivers/staging/media/davinci_vpfe/vpfe_video.ko] undefined!
ERROR: "vpfe_resizer_register_entities" [drivers/staging/media/davinci_vpfe/vpfe_mc_capture.ko] undefined!
ERROR: "rsz_enable" [drivers/staging/media/davinci_vpfe/dm365_resizer.ko] undefined!
ERROR: "config_ipipe_hw" [drivers/staging/media/davinci_vpfe/dm365_ipipe.ko] undefined!
ERROR: "ipipe_set_lutdpc_regs" [drivers/staging/media/davinci_vpfe/dm365_ipipe.ko] undefined!

It took a long time to catch this bug with randconfig builds because at least 14 other Kconfig symbols have to be enabled in order to configure this one.

The solution is really easy: this patch changes the Makefile to link all files into one module.

---

drivers/staging/media/davinci_vpfe/Makefile +0 -0
index c64515c644cd..3019c9ecd548 100644

drivers/staging/media/davinci_vpfe/Makefile line 5

Quoted 6 lines
drivers/staging/media/davinci_vpfe/Makefile +3 -1
@@ -1,3 +1,5 @@
-obj-$(CONFIG_VIDEO_DM365_VPFE) += \
+obj-$(CONFIG_VIDEO_DM365_VPFE) += davinci-vfpe.o
+
+davinci-vfpe-objs := \
 	dm365_isif.o dm365_ipipe_hw.o dm365_ipipe.o \
 	dm365_resizer.o dm365_ipipeif.o vpfe_mc_capture.o vpfe_video.o

That seems a bad signal to me... I guess either this driver was never actually tested or it was tested only if compiled as built-in...

Regards,
Mauro

#2 lore raw
Quoted 23 lines · Mauro Carvalho Chehab

Em Thu, 10 Dec 2015 15:29:38 +0100
Arnd Bergmann <[email protected]> escreveu:

Quoted 20 lines

It has never been possible to actually build this driver as a loadable module, only built-in because the Makefile attempts to build each file into its own module and fails:

ERROR: "mbus_to_pix" [drivers/staging/media/davinci_vpfe/vpfe_video.ko] undefined!
ERROR: "vpfe_resizer_register_entities" [drivers/staging/media/davinci_vpfe/vpfe_mc_capture.ko] undefined!
ERROR: "rsz_enable" [drivers/staging/media/davinci_vpfe/dm365_resizer.ko] undefined!
ERROR: "config_ipipe_hw" [drivers/staging/media/davinci_vpfe/dm365_ipipe.ko] undefined!
ERROR: "ipipe_set_lutdpc_regs" [drivers/staging/media/davinci_vpfe/dm365_ipipe.ko] undefined!

It took a long time to catch this bug with randconfig builds because at least 14 other Kconfig symbols have to be enabled in order to configure this one.

The solution is really easy: this patch changes the Makefile to link all files into one module.

---

Quoted 15 lines

drivers/staging/media/davinci_vpfe/Makefile line 5

Quoted 12 lines
drivers/staging/media/davinci_vpfe/Makefile +3 -1
index c64515c644cd..3019c9ecd548 100644
@@ -1,3 +1,5 @@
-obj-$(CONFIG_VIDEO_DM365_VPFE) += \
+obj-$(CONFIG_VIDEO_DM365_VPFE) += davinci-vfpe.o
+
+davinci-vfpe-objs := \
 	dm365_isif.o dm365_ipipe_hw.o dm365_ipipe.o \
 	dm365_resizer.o dm365_ipipeif.o vpfe_mc_capture.o vpfe_video.o

That seems a bad signal to me... I guess either this driver was never actually tested or it was tested only if compiled as built-in...

Most likely the later is true.

+ Prabhakar to see if he remembers.

Thanks,
Sekhar