On 01/04/17 11:29, Jani Nikula wrote: > On Wed, 04 Jan 2017, Daniel Vetter <daniel@xxxxxxxx> wrote: >> On Sun, Jan 01, 2017 at 04:20:53PM -0800, Randy Dunlap wrote: >>> From: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> >>> >>> Fix build errors in nouveau driver when CONFIG_LEDS_CLASS=m and >>> CONFIG_DRM_NOUVEAU=y. >>> If LEDS_CLASS is enabled, DRM_NOUVEAU is restricted to the same >>> kconfig value as LEDS_CLASS. >>> >>> drivers/built-in.o: In function `nouveau_do_suspend': >>> nouveau_drm.c:(.text+0x2030b1): undefined reference to `nouveau_led_suspend' >>> drivers/built-in.o: In function `nouveau_do_resume': >>> nouveau_drm.c:(.text+0x2034ca): undefined reference to `nouveau_led_resume' >>> drivers/built-in.o: In function `nouveau_drm_unload': >>> nouveau_drm.c:(.text+0x203a15): undefined reference to `nouveau_led_fini' >>> drivers/built-in.o: In function `nouveau_drm_load': >>> nouveau_drm.c:(.text+0x204423): undefined reference to `nouveau_led_init' >>> >>> BTW, this line in Kbuild: >>> nouveau-$(CONFIG_LEDS_CLASS) += nouveau_led.o >>> does nothing when CONFIG_LEDS_CLASS=m and CONFIG_DRM_NOUVEAU=y. >>> >>> Signed-off-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> >>> Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx> >>> Cc: Martin Peres <martin.peres@xxxxxxx> >>> Cc: Ben Skeggs <bskeggs@xxxxxxxxxx> >> >> Thrown into drm-misc, thanks. > > Randy, this results in the following recursive dependency using the > attached config. > Hi, Please drop the patch for now. If there is an alternative patch, that's good. Otherwise I'll look for a solution. Thanks. > BR, > Jani. > > > drivers/usb/Kconfig:39:error: recursive dependency detected! > For a resolution refer to Documentation/kbuild/kconfig-language.txt > subsection "Kconfig recursive dependency limitations" > drivers/usb/Kconfig:39: symbol USB is selected by MOUSE_APPLETOUCH > For a resolution refer to Documentation/kbuild/kconfig-language.txt > subsection "Kconfig recursive dependency limitations" > drivers/input/mouse/Kconfig:187: symbol MOUSE_APPLETOUCH depends on INPUT > For a resolution refer to Documentation/kbuild/kconfig-language.txt > subsection "Kconfig recursive dependency limitations" > drivers/input/Kconfig:8: symbol INPUT is selected by VT > For a resolution refer to Documentation/kbuild/kconfig-language.txt > subsection "Kconfig recursive dependency limitations" > drivers/tty/Kconfig:12: symbol VT is selected by FB_STI > For a resolution refer to Documentation/kbuild/kconfig-language.txt > subsection "Kconfig recursive dependency limitations" > drivers/video/fbdev/Kconfig:678: symbol FB_STI depends on FB > For a resolution refer to Documentation/kbuild/kconfig-language.txt > subsection "Kconfig recursive dependency limitations" > drivers/video/fbdev/Kconfig:5: symbol FB is selected by DRM_KMS_FB_HELPER > For a resolution refer to Documentation/kbuild/kconfig-language.txt > subsection "Kconfig recursive dependency limitations" > drivers/gpu/drm/Kconfig:72: symbol DRM_KMS_FB_HELPER is selected by DRM_KMS_CMA_HELPER > For a resolution refer to Documentation/kbuild/kconfig-language.txt > subsection "Kconfig recursive dependency limitations" > drivers/gpu/drm/Kconfig:128: symbol DRM_KMS_CMA_HELPER is selected by DRM_HDLCD > For a resolution refer to Documentation/kbuild/kconfig-language.txt > subsection "Kconfig recursive dependency limitations" > drivers/gpu/drm/arm/Kconfig:6: symbol DRM_HDLCD depends on COMMON_CLK > For a resolution refer to Documentation/kbuild/kconfig-language.txt > subsection "Kconfig recursive dependency limitations" > drivers/clk/Kconfig:9: symbol COMMON_CLK is selected by X86_INTEL_QUARK > For a resolution refer to Documentation/kbuild/kconfig-language.txt > subsection "Kconfig recursive dependency limitations" > arch/x86/Kconfig:554: symbol X86_INTEL_QUARK depends on X86_PLATFORM_DEVICES > For a resolution refer to Documentation/kbuild/kconfig-language.txt > subsection "Kconfig recursive dependency limitations" > drivers/platform/x86/Kconfig:5: symbol X86_PLATFORM_DEVICES is selected by DRM_NOUVEAU > For a resolution refer to Documentation/kbuild/kconfig-language.txt > subsection "Kconfig recursive dependency limitations" > drivers/gpu/drm/nouveau/Kconfig:1: symbol DRM_NOUVEAU depends on LEDS_CLASS > For a resolution refer to Documentation/kbuild/kconfig-language.txt > subsection "Kconfig recursive dependency limitations" > drivers/leds/Kconfig:16: symbol LEDS_CLASS is selected by ATH9K_HTC > For a resolution refer to Documentation/kbuild/kconfig-language.txt > subsection "Kconfig recursive dependency limitations" > drivers/net/wireless/ath/ath9k/Kconfig:158: symbol ATH9K_HTC depends on USB > warning: (DRM_NOUVEAU && DRM_I915 && DRM_GMA500) selects ACPI_VIDEO which has unmet direct dependencies (ACPI && X86 && BACKLIGHT_CLASS_DEVICE && INPUT) -- ~Randy _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel