lkml.org 
[lkml]   [2010]   [Sep]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH] nouveau build regression, undefined reference to `acpi_video_get_edid'
Date
Phil Turmel <philip@turmel.org> writes:

> Hi all,
>
> I've got a build breakage on my laptop:
>
> drivers/built-in.o: In function `nouveau_acpi_edid':
> (.text+0x13404e): undefined reference to `acpi_video_get_edid'
> make: *** [.tmp_vmlinux1] Error 1
>
> Introduced by:
>
> a6ed76d7ffc62ffa474b41d31b011b6853c5de32 is the first bad commit
> commit a6ed76d7ffc62ffa474b41d31b011b6853c5de32
> Author: Ben Skeggs <bskeggs@redhat.com>
> Date: Mon Jul 12 15:33:07 2010 +1000
>
> drm/nouveau: support fetching LVDS EDID from ACPI
>
> Based on a patch from Matthew Garrett.
>
> Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
> Acked-by: Matthew Garrett <mjg@redhat.com>
>
> :040000 040000 2fbe9b4d9778329908107e72c11b100c2f5a460b 97dcf06923bb576298746584c45d17d3be9edcf8 M drivers
>
> It doesn't seem to revert cleanly, but I believe the problem lies in these
> two config entries:
>
> CONFIG_ACPI=y
> CONFIG_ACPI_VIDEO=m
>
> Having the nouveau ACPI features depend on CONFIG_ACPI_VIDEO instead of
> bare CONFIG_ACPI builds, boots, and works for me.
>
nouveau_acpi_edid() is the only function that depends on ACPI_VIDEO,
ifdef'ing out the rest of the ACPI stuff in that case doesn't make much
sense to me.

> Signed-off-by: Philip J. Turmel <philip@turmel.org>
> ---
>
> Presumably, this could also be solved by adding
> "select ACPI_VIDEO if ACPI" to the nouveau Kconfig.
> I'd be happy to try that, if this approach is flawed.
>
> diff --git a/drivers/gpu/drm/nouveau/Makefile b/drivers/gpu/drm/nouveau/Makefile
> index e9b06e4..4e295b5 100644
> --- a/drivers/gpu/drm/nouveau/Makefile
> +++ b/drivers/gpu/drm/nouveau/Makefile
> @@ -28,6 +28,6 @@ nouveau-y := nouveau_drv.o nouveau_state.o nouveau_channel.o nouveau_mem.o \
> nouveau-$(CONFIG_DRM_NOUVEAU_DEBUG) += nouveau_debugfs.o
> nouveau-$(CONFIG_COMPAT) += nouveau_ioc32.o
> nouveau-$(CONFIG_DRM_NOUVEAU_BACKLIGHT) += nouveau_backlight.o
> -nouveau-$(CONFIG_ACPI) += nouveau_acpi.o
> +nouveau-$(CONFIG_ACPI_VIDEO) += nouveau_acpi.o
>
> obj-$(CONFIG_DRM_NOUVEAU)+= nouveau.o
> diff --git a/drivers/gpu/drm/nouveau/nouveau_drv.h b/drivers/gpu/drm/nouveau/nouveau_drv.h
> index b1be617..bd995b4 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_drv.h
> +++ b/drivers/gpu/drm/nouveau/nouveau_drv.h
> @@ -842,7 +842,7 @@ extern int nouveau_dma_wait(struct nouveau_channel *, int slots, int size);
>
> /* nouveau_acpi.c */
> #define ROM_BIOS_PAGE 4096
> -#if defined(CONFIG_ACPI)
> +#if defined(CONFIG_ACPI_VIDEO)
> void nouveau_register_dsm_handler(void);
> void nouveau_unregister_dsm_handler(void);
> int nouveau_acpi_get_bios_chunk(uint8_t *bios, int offset, int len);
[unhandled content-type:application/pgp-signature]
\
 
 \ /
  Last update: 2010-09-14 15:25    [W:0.060 / U:0.928 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site