Blob Blame History Raw
From: Jeff Mahoney <jeffm@suse.com>
Subject: nouveau: Make vga_switcheroo code depend on VGA_SWITCHEROO
Patch-mainline: Submitted to nouveau@lists.freedesktop.org, 13 June 2011

 Commit 8116188 (nouveau/acpi: hook up to the MXM method for mux
 switching.) broke the build on non-x86 architectures due to the new
 dependency on MXM and MXM being an x86 platform driver.

 It built previously since the vga switcheroo registration routines
 were zereod out on !X86. The code was built in but unused.

 This patch makes all of the DSM code depend on CONFIG_VGA_SWITCHEROO,
 allowing it to build on non-x86 and shrinking the module size as well.

Signed-off-by: Jeff Mahoney <jeffm@suse.com>
---

 drivers/gpu/drm/nouveau/nouveau_acpi.c |    5 +++++
 1 file changed, 5 insertions(+)

--- a/drivers/gpu/drm/nouveau/nouveau_acpi.c
+++ b/drivers/gpu/drm/nouveau/nouveau_acpi.c
@@ -45,6 +45,7 @@ static struct nouveau_dsm_priv {
 #define NOUVEAU_DSM_HAS_MUX 0x1
 #define NOUVEAU_DSM_HAS_OPT 0x2
 
+#ifdef CONFIG_VGA_SWITCHEROO
 static const char nouveau_dsm_muid[] = {
 	0xA0, 0xA0, 0x95, 0x9D, 0x60, 0x00, 0x48, 0x4D,
 	0xB3, 0x4D, 0x7E, 0x5F, 0xEA, 0x12, 0x9F, 0xD4,
@@ -298,6 +299,10 @@ void nouveau_unregister_dsm_handler(void
 {
 	vga_switcheroo_unregister_handler();
 }
+#else
+void nouveau_register_dsm_handler(void) {}
+void nouveau_unregister_dsm_handler(void) {}
+#endif
 
 /* retrieve the ROM in 4k blocks */
 static int nouveau_rom_call(acpi_handle rom_handle, uint8_t *bios,