On Mon, Nov 11, 2013 at 11:22 AM, Josh Boyer <jwboyer@xxxxxxxxxxxxxxxxx> wrote: > Hi All, > > With v3.12-2839-gedae583 (Linus' tree as of this morning), the > ipuv3-crtc.ko module fails to link with the following messages: > > ERROR: "ipu_plane_disable" [drivers/staging/imx-drm/ipuv3-crtc.ko] undefined! > ERROR: "ipu_plane_enable" [drivers/staging/imx-drm/ipuv3-crtc.ko] undefined! > ERROR: "ipu_plane_irq" [drivers/staging/imx-drm/ipuv3-crtc.ko] undefined! > ERROR: "ipu_plane_get_resources" > [drivers/staging/imx-drm/ipuv3-crtc.ko] undefined! > ERROR: "ipu_plane_init" [drivers/staging/imx-drm/ipuv3-crtc.ko] undefined! > ERROR: "imx_drm_crtc_id" [drivers/staging/imx-drm/ipuv3-crtc.ko] undefined! > ERROR: "ipu_plane_mode_set" [drivers/staging/imx-drm/ipuv3-crtc.ko] undefined! > ERROR: "ipu_plane_set_base" [drivers/staging/imx-drm/ipuv3-crtc.ko] undefined! > ERROR: "ipu_plane_put_resources" > [drivers/staging/imx-drm/ipuv3-crtc.ko] undefined! > make[1]: *** [__modpost] Error 1 > make: *** [modules] Error 2 Actually, I think this is because ipuv3-plane.c was added to the Makefile as a requisite file for ipuv3-crtc.ko with commit b8d181e408af6a017d, but Kbuild isn't interpreting it that way because it's a tristate option, not a bool. Making it work would require something like: imx-ipuv3-crct-objs := ipuv3-crtc.o ipuv3-plane.o obj-$(CONFIG_DRM_IMX_IPUV3) += imx-ipuv3-crct.o But that would rename the module from ipuv3-crtc.ko to imx-ipuv3-crct.ko. Even with that, it still fails to link with: ERROR: "imx_drm_crtc_id" [drivers/staging/imx-drm/imx-ipuv3-crtc.ko] undefined! So two questions really. 1) Are the tristate options for DRM_IMX_IPUV3, DRM_IMX_IPUV3_CORE, DRM_IMX_LDB, DRM_IMX_TVE, DRM_IMX_PARALLEL_DISPLAY, and DRM_IMX_FB_HELPER really all supposed to be separate modules, or should they be boolean options to the main DRM_IMX tristate? 2) If the answer to question 1 is "all separate modules", then either ipuv3-crtc.c needs to be renamed or the final module name will be different. And did anyone actually try building all of these as modules? This used to work in 3.12, but I'm not sure that was actually tested there either. josh _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel