Skip to contentSkip to conversation

2.6.30-rc3 video/i915 build error

DISCUSSION Len Brown 3 participants 11 messages Apr 23, 2009 – Apr 30, 2009

Subsystems (3)
lore
Share & tools
lore

Len Brown

author reviewer
#0 lore raw

I thought we had addressed this, no?
(not that this is a reasonable/realistic config, but it is possible)

For
CONFIG_DRM_I915=y
CONFIG_ACPI_VIDEO=m

drivers/built-in.o: In function `intel_opregion_init':
(.text+0x9d540): undefined reference to `acpi_video_register'

Len Brown, Intel Open Source Technology Center

#1 lore raw
Quoted 1 line · Len Brown

I thought we had addressed this, no?

The last I have seen are the two patches by Zhao Yakui in the emails subject:
ACPI: Weaken the dependency between ACPI video driver and I915
and
ACPI: Check whether the acpi video is deferrable only when KMS is enabled

Quoted 5 lines

CONFIG_DRM_I915=y
CONFIG_ACPI_VIDEO=m

drivers/built-in.o: In function `intel_opregion_init':
(.text+0x9d540): undefined reference to `acpi_video_register'

For me these two patches fix the problem.

Best wishes

Norbert

-------------------------------------------------------------------------------
Dr. Norbert Preining <[email protected]> Vienna University of Technology
Debian Developer <[email protected]> Debian TeX Group
gpg DSA: 0x09C5B094 fp: 14DF 2E6C 0307 BE6D AD76 A9C0 D2BF 4AA3 09C5 B094
-------------------------------------------------------------------------------
FRATING GREEN (adj.)
The shade of green which is supposed to make you feel comfortable in hospitals, industrious in schools and uneasy in police stations.
--- Douglas Adams, The Meaning of Liff

author reviewer
#2 lore raw
Quoted 9 lines · Norbert Preining
Quoted 1 line · Len Brown

I thought we had addressed this, no?

The last I have seen are the two patches by Zhao Yakui in the emails subject:
ACPI: Weaken the dependency between ACPI video driver and I915
and
ACPI: Check whether the acpi video is deferrable only when KMS is enabled

Quoted 7 lines
Quoted 5 lines

CONFIG_DRM_I915=y
CONFIG_ACPI_VIDEO=m

drivers/built-in.o: In function `intel_opregion_init':
(.text+0x9d540): undefined reference to `acpi_video_register'

For me these two patches fix the problem.

Matthew's response to those patches seems to be sufficient:

http://patchwork.kernel.org/patch/18420/

thanks,
Len Brown, Intel Open Source Technology Center

#3 lore raw

On Fri, 2009-04-24 at 03:50 +0800, Len Brown wrote:

Hi, Len
The issue can be fixed by the patch from Matthew.
In Matthew's patch the acpi video is also selected when the i915 is
compiled as builtin-kernel module.
But IMO this is not very good. From the Kconfig file we know that
acpi video driver depends on the following configuration:
BACKLIGHT_CLASS_DEVICE && VIDEO_OUTPUT_CONTROL

If the VIDEO_OUTPUT_CONTROL/BACKLIGHT_CLASS_DEVICE is not selected,
then it will still fail in kernel compilation.

Thanks.

Quoted 10 lines

http://patchwork.kernel.org/patch/18420/

thanks,
Len Brown, Intel Open Source Technology Center

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html

author reviewer
#4 lore raw
Quoted 10 lines · yakui_zhao

On Fri, 2009-04-24 at 03:50 +0800, Len Brown wrote:

Hi, Len
The issue can be fixed by the patch from Matthew.
In Matthew's patch the acpi video is also selected when the i915 is
compiled as builtin-kernel module.
But IMO this is not very good. From the Kconfig file we know that
acpi video driver depends on the following configuration:
BACKLIGHT_CLASS_DEVICE && VIDEO_OUTPUT_CONTROL

Quoted 2 lines

If the VIDEO_OUTPUT_CONTROL/BACKLIGHT_CLASS_DEVICE is not selected,
then it will still fail in kernel compilation.

Matthew's patch is in.
Please send me an additional patch for the additionanl failure case.

thanks,
Len Brown, Intel Open Source Technology Center

#5 lore raw

On Fri, 2009-04-24 at 09:57 +0800, Len Brown wrote:

Hi, Len
In my test if VIDEO_OUTPUT_CONTROL is not selected, there exists the
following failure:

Quoted 2 lines

drivers/built-in.o: In function `acpi_video_bus_put_devices':
video.c:(.text+0x41307): undefined reference to

`video_output_unregister'

Quoted 1 line

drivers/built-in.o: In function `acpi_video_bus_add':

video.c:(.text+0x43024): undefined reference to `video_output_register'

Quoted 1 line

make: *** [.tmp_vmlinux1] Error 1

In order to fix this issue we must select the VIDEO_OUTPUT_CONTROL
when ACPI_VIDEO is selected.
I add the following content in drivers/gpu/drm/Kconfig >select ACPI_VIDEO if ACPI
>select VIDEO_OUTPUT_CONTROL if ACPI_VIDEO

And then it will report that there exits recursive dependency:
ACPI_VIDEO -> VIDEO_OUTPUT_CONTROL -> ACPI_VIDEO

In fact in current kernel there exists the following dependency:
ACPI_VIDEO depends on VIDEO_OUTPUT_CONTROL.

If we delete the ACPI_VIDEO configuration in drivers/acpi/Kconfig,
we can't select the acpi_video configuration when i915 is not used.

So IMO it is not very good to change the dependency. After changing
the dependency between ACPI_VIDEO and I915, the new issue about dependency is triggered.

Thanks.

Quoted 11 lines

thanks,
Len Brown, Intel Open Source Technology Center

--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html

author reviewer
#6 lore raw

From: Len Brown <[email protected]>
Subject: [PATCH] ACPI, i915: build fix

drivers/built-in.o: In function `intel_opregion_init':
(.text+0x9d540): undefined reference to `acpi_video_register'

---
 drivers/gpu/drm/Kconfig |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)
drivers/gpu/drm/Kconfig +6 -0
index 3a22eb9..f33d252 100644
@@ -83,6 +83,12 @@ config DRM_I915
 config DRM_I915_KMS
 	bool "Enable modesetting on intel by default"
 	depends on DRM_I915
+	# i915 KMS depends on ACPI_VIDEO when ACPI is enabled
+	# but for select to work, need to select ACPI_VIDEO's dependencies, ick
+	select VIDEO_OUTPUT_CONTROL if ACPI
+	select BACKLIGHT_CLASS_DEVICE if ACPI
+	select INPUT if ACPI
+	select ACPI_VIDEO if ACPI
 	help
 	  Choose this option if you want kernel modesetting enabled by default,
 	  and you have a new enough userspace to support this. Running old
Signature · 1 line
1.6.3.rc1.51.gea0b7
#7 lore raw
Quoted 2 lines · Len Brown

From: Len Brown <[email protected]>
Subject: [PATCH] ACPI, i915: build fix

Hi, Len
It seems that the issue still exists if KMS is not set in kernel
configuration.

Maybe this should depend on whether the I915 is selected.

thanks.

Quoted 26 lines

drivers/built-in.o: In function `intel_opregion_init':
(.text+0x9d540): undefined reference to `acpi_video_register'

---
 drivers/gpu/drm/Kconfig |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)
drivers/gpu/drm/Kconfig +6 -0
index 3a22eb9..f33d252 100644
@@ -83,6 +83,12 @@ config DRM_I915
 config DRM_I915_KMS
 	bool "Enable modesetting on intel by default"
 	depends on DRM_I915
+	# i915 KMS depends on ACPI_VIDEO when ACPI is enabled
+	# but for select to work, need to select ACPI_VIDEO's dependencies, ick
+	select VIDEO_OUTPUT_CONTROL if ACPI
+	select BACKLIGHT_CLASS_DEVICE if ACPI
+	select INPUT if ACPI
+	select ACPI_VIDEO if ACPI
 	help
 	  Choose this option if you want kernel modesetting enabled by default,
 	  and you have a new enough userspace to support this. Running old
author reviewer
#8 lore raw
In reply to Len Brown
Quoted 12 lines · Len Brown
Quoted 10 lines · yakui_zhao

On Fri, 2009-04-24 at 03:50 +0800, Len Brown wrote:

Hi, Len
The issue can be fixed by the patch from Matthew.
In Matthew's patch the acpi video is also selected when the i915 is
compiled as builtin-kernel module.
But IMO this is not very good. From the Kconfig file we know that
acpi video driver depends on the following configuration:

    BACKLIGHT_CLASS_DEVICE && VIDEO_OUTPUT_CONTROL
Quoted 5 lines
Quoted 2 lines

If the VIDEO_OUTPUT_CONTROL/BACKLIGHT_CLASS_DEVICE is not selected,
then it will still fail in kernel compilation.

Matthew's patch is in.
Please send me an additional patch for the additionanl failure case.

Yakui speaks the truth, all hail Yakui:-)

"ACPI/i915: build fix" is dropped, because it fixes

drivers/built-in.o: In function `intel_opregion_init':
(.text+0x9d540): undefined reference to `acpi_video_register'

but in defconfig, it causes:

drivers/built-in.o: In function `acpi_video_bus_put_devices':
video.c:(.text+0x411d2): undefined reference to video_output_unregister' drivers/built-in.o: In function acpi_video_bus_add':
video.c:(.text+0x42c4e): undefined reference to `video_output_register'

#9 lore raw
In reply to Len Brown
Quoted 11 lines · Len Brown
Quoted 7 lines
Quoted 5 lines

CONFIG_DRM_I915=y
CONFIG_ACPI_VIDEO=m

drivers/built-in.o: In function `intel_opregion_init':
(.text+0x9d540): undefined reference to `acpi_video_register'

For me these two patches fix the problem.

Matthew's response to those patches seems to be sufficient:

http://patchwork.kernel.org/patch/18420/

I have to disagree. 2.6.30-rc4, with that patch I get that in my config:

	CONFIG_DRM_I915=y
	# CONFIG_DRM_I915_KMS is not set
	CONFIG_ACPI_VIDEO=y

and it finishes with
MODPOST vmlinux.o
drivers/built-in.o: In function acpi_video_bus_put_devices': video.c:(.text+0x383a1): undefined reference to backlight_device_unregister' drivers/built-in.o: In function acpi_video_bus_add': video.c:(.text+0x39c6a): undefined reference to backlight_device_register'

So I tried to activate the backlight device to =y but calling make config always ended with
CONFIG_BACKLIGHT_CLASS_DEVICE=m

So still not working, which is bad. And the patches I mentioned before do not apply anymore, so rc4 is out for testing for me.

Full .config on request.

Best wishes

Norbert

-------------------------------------------------------------------------------
Dr. Norbert Preining <[email protected]> Vienna University of Technology
Debian Developer <[email protected]> Debian TeX Group
gpg DSA: 0x09C5B094 fp: 14DF 2E6C 0307 BE6D AD76 A9C0 D2BF 4AA3 09C5 B094
-------------------------------------------------------------------------------
HULL (adj.)
Descriptive of the smell of a weekend cottage.
--- Douglas Adams, The Meaning of Liff

#10 lore raw
Quoted 3 lines · Norbert Preining

So I tried to activate the backlight device to =y but calling make config always ended with
CONFIG_BACKLIGHT_CLASS_DEVICE=m

Ok, I guess it needs a
select CONFIG_BACKLIGHT_LCD_SUPPORT
select CONFIG_LCD_CLASS_DEVICE
select CONFIG_BACKLIGHT_CLASS_DEVICE
or something similar.

Then it compiles.

Best wishes

Norbert

-------------------------------------------------------------------------------
Dr. Norbert Preining <[email protected]> Vienna University of Technology
Debian Developer <[email protected]> Debian TeX Group
gpg DSA: 0x09C5B094 fp: 14DF 2E6C 0307 BE6D AD76 A9C0 D2BF 4AA3 09C5 B094
-------------------------------------------------------------------------------
SAFFRON WALDEN (n.)
To spray the person you are talking to with half-chewed breadcrumbs or small pieces of whitebait.
--- Douglas Adams, The Meaning of Liff