[PATCH v2] drm/nouveau: always select ACPI_VIDEO if ACPI is enabled.

Maarten Lankhorst maarten.lankhorst at canonical.com
Tue Feb 5 07:38:35 PST 2013


Op 05-02-13 15:52, Borislav Petkov schreef:
> On Mon, Feb 04, 2013 at 04:41:22PM +0100, Maarten Lankhorst wrote:
>> Hey,
>>
>> Op 04-02-13 16:23, Borislav Petkov schreef:
>>> Hi,
>>>
>>> I'm guessing someone has already triggered this on latest Linus' tree
>>> and has a fix?
>>>
>>> drivers/built-in.o: In function `nouveau_acpi_edid':
>>> /w/kernel/linux/drivers/gpu/drm/nouveau/nouveau_acpi.c:420: undefined reference to `acpi_video_get_edid'
>>> make: *** [vmlinux] Error 1
>>>
>>> Btw, I got CONFIG_ACPI_VIDEO=m while CONFIG_DRM_NOUVEAU=y and this is
>>> probably the reason for the vmlinux link error.
>>>
>>> Thanks.
>>>
>> Does this fix things?
>>
>> -->8
>> Having nouveau builtin would still allow ACPI_VIDEO to be used as external module if some of the deps for acpi_video
>> have not been met, which would result in a linking failure. Solve this by only requiring ACPI && X86 to select ACPI_VIDEO.
>>
>> Signed-off-by: Maarten Lankhorst <maarten.lankhorst at canonical.com>
>>
>> ---
>> diff --git a/drivers/gpu/drm/nouveau/Kconfig b/drivers/gpu/drm/nouveau/Kconfig
>> index 8a55bee..f08b9b6 100644
>> --- a/drivers/gpu/drm/nouveau/Kconfig
>> +++ b/drivers/gpu/drm/nouveau/Kconfig
>> @@ -10,7 +10,7 @@ config DRM_NOUVEAU
>>  	select FB
>>  	select FRAMEBUFFER_CONSOLE if !EXPERT
>>  	select FB_BACKLIGHT if DRM_NOUVEAU_BACKLIGHT
>> -	select ACPI_VIDEO if ACPI && X86 && BACKLIGHT_CLASS_DEVICE && VIDEO_OUTPUT_CONTROL && INPUT
>> +	select ACPI_VIDEO if ACPI && X86
>>  	select ACPI_WMI if ACPI
>>  	select MXM_WMI if ACPI
>>  	select POWER_SUPPLY
> Not really.
>
> drivers/built-in.o: In function `acpi_video_bus_put_one_device':
> /root/kernel/linux/drivers/acpi/video.c:1407: undefined reference to `thermal_cooling_device_unregister'
> drivers/built-in.o: In function `acpi_video_device_find_cap':
> /root/kernel/linux/drivers/acpi/video.c:842: undefined reference to `thermal_cooling_device_register'
> make: *** [vmlinux] Error 1
>
> It is CONFIG_THERMAL=m this time.
>
> Thanks.
>
Argh, next attempt, based on i915's Kconfig.

It seems that not only I have to select ACPI_VIDEO, I also have to select all the dependencies.
Is this a Kconfig bug or working as intended? i915 seems to have a workaround, so I copied it from
there. Except it's currently missing select THERMAL, so I guess it didn't get updated when that got
added.

---->8
Having nouveau builtin would still allow ACPI_VIDEO to be used as external module
if some of the deps for acpi_video have not been met, which would result in a linking
failure. Solve this by selecting all dependencies as well.

Signed-off-by: Maarten Lankhorst <maarten.lankhorst at canonical.com>

---
diff --git a/drivers/gpu/drm/nouveau/Kconfig b/drivers/gpu/drm/nouveau/Kconfig
index 8a55bee..e84763a 100644
--- a/drivers/gpu/drm/nouveau/Kconfig
+++ b/drivers/gpu/drm/nouveau/Kconfig
@@ -10,10 +10,16 @@ config DRM_NOUVEAU
 	select FB
 	select FRAMEBUFFER_CONSOLE if !EXPERT
 	select FB_BACKLIGHT if DRM_NOUVEAU_BACKLIGHT
-	select ACPI_VIDEO if ACPI && X86 && BACKLIGHT_CLASS_DEVICE && VIDEO_OUTPUT_CONTROL && INPUT
 	select ACPI_WMI if ACPI
 	select MXM_WMI if ACPI
 	select POWER_SUPPLY
+	# Similar to i915, we need to select ACPI_VIDEO and it's dependencies
+	select BACKLIGHT_LCD_SUPPORT if ACPI && X86
+	select BACKLIGHT_CLASS_DEVICE if ACPI && X86
+	select VIDEO_OUTPUT_CONTROL if ACPI && X86
+	select INPUT if ACPI && X86
+	select THERMAL if ACPI && X86
+	select ACPI_VIDEO if ACPI && X86
 	help
 	  Choose this option for open-source nVidia support.
 



More information about the dri-devel mailing list