Re: [PATCH] Add intel drm blacklist to intel_opregion_present detect

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Matthew, Thomas, 

於 二,2010-08-24 於 01:03 -0600,Joey Lee 提到:
> Hi Matthew, 
> 
> 於 一,2010-08-23 於 18:51 +0100,Matthew Garrett 提到:
> > On Mon, Aug 23, 2010 at 07:53:21PM +0200, Thomas Renninger wrote:
> > 
> > > Hm, needing a module option to get a system running is not what the user expects.
> > > By default, the system should run fine and a module option should be added
> > > as a workaround or for debugging only.
> > 
> > How about we do this instead: add a psb stub driver that does nothing 
> > other than call acpi_backlight_register()?
> > 
> 
> The attached file is a draft stub driver for poulsbo. Like you said, it
> will only call acpi_video_register and acpi_video_unregister when
> initial and exit.
> And I added the Poulsbo pci id in the module alias.
> 
> It's works to me, where can we put the driver? in driver/staging ? or
> put in driver/gpu/stub ?
> 

The attached file is the patch to add a poulsbo stub module in
drivers/gpu/stub.

Please kindly review it and give me any suggestions.


Thank's a lot!
Joey Lee

>From 18d66ed453e4052874280ff0c17b68f5ce3cbc3a Mon Sep 17 00:00:00 2001
From: Lee, Chun-Yi <jlee@xxxxxxxxxx>
Date: Tue, 24 Aug 2010 17:55:23 +0800
Subject: [PATCH] Add Intel Poulsbo Stub Driver

Currently, there have no Poulsbo native video driver to support
intel opregion. So, use this stub driver to call acpi_video_register
to enable the acpi backlight control sysfs entry files.

Signed-off-by: Lee, Chun-Yi <jlee@xxxxxxxxxx>
---
 drivers/gpu/Makefile       |    2 +-
 drivers/gpu/stub/Kconfig   |   13 +++++++++++++
 drivers/gpu/stub/Makefile  |    1 +
 drivers/gpu/stub/poulsbo.c |   44 ++++++++++++++++++++++++++++++++++++++++++++
 drivers/video/Kconfig      |    2 ++
 5 files changed, 61 insertions(+), 1 deletions(-)
 create mode 100644 drivers/gpu/stub/Kconfig
 create mode 100644 drivers/gpu/stub/Makefile
 create mode 100644 drivers/gpu/stub/poulsbo.c

diff --git a/drivers/gpu/Makefile b/drivers/gpu/Makefile
index 30879df..cc92778 100644
--- a/drivers/gpu/Makefile
+++ b/drivers/gpu/Makefile
@@ -1 +1 @@
-obj-y			+= drm/ vga/
+obj-y			+= drm/ vga/ stub/
diff --git a/drivers/gpu/stub/Kconfig b/drivers/gpu/stub/Kconfig
new file mode 100644
index 0000000..88fd919
--- /dev/null
+++ b/drivers/gpu/stub/Kconfig
@@ -0,0 +1,13 @@
+config STUB_POULSBO
+	tristate "Intel Poulsbo Stub Driver"
+        default m
+        # Poulsbo stub depends on ACPI_VIDEO when ACPI is enabled
+        # but for select to work, need to select ACPI_VIDEO's dependencies, ick
+        select ACPI_VIDEO if ACPI
+	help
+	  Choose this option if you have a system that has Intel Poulsbo
+	  integrated graphics. If M is selected, the module will be called
+	  Poulsbo. This driver is a stub driver for Poulsbo that will call
+	  acpi_video_register to enable the acpi backlight control sysfs
+	  entry file because there have no poulsbo native driver can support
+	  intel opregion.
diff --git a/drivers/gpu/stub/Makefile b/drivers/gpu/stub/Makefile
new file mode 100644
index 0000000..cd940cc
--- /dev/null
+++ b/drivers/gpu/stub/Makefile
@@ -0,0 +1 @@
+obj-$(CONFIG_STUB_POULSBO) += poulsbo.o
diff --git a/drivers/gpu/stub/poulsbo.c b/drivers/gpu/stub/poulsbo.c
new file mode 100644
index 0000000..c93cd67
--- /dev/null
+++ b/drivers/gpu/stub/poulsbo.c
@@ -0,0 +1,44 @@
+/*
+ * Intel Poulsbo Stub
+ *
+ * Copyright (C) 2010 Novell <jlee@xxxxxxxxxx>
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 2 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ */
+
+#include <linux/module.h>
+#include <acpi/video.h>
+
+static int __init poulsbo_init(void)
+{
+	printk(KERN_INFO "poulsbo: stub driver load.\n");
+	return acpi_video_register();
+}
+
+static void __exit poulsbo_cleanup(void)
+{
+	acpi_video_unregister();
+	printk(KERN_INFO "poulsbo: stub driver unloaded.\n");
+}
+
+module_init(poulsbo_init);
+module_exit(poulsbo_cleanup);
+
+MODULE_AUTHOR("Lee, Chun-Yi <jlee@xxxxxxxxxx>");
+MODULE_DESCRIPTION("Poulsbo Stub Driver");
+MODULE_LICENSE("GPL");
+
+MODULE_ALIAS("pci:v00008086d00008108sv*sd*bc*sc*i*");
+MODULE_ALIAS("pci:v00008086d00008109sv*sd*bc*sc*i*");
diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig
index 8b31fdf..8807ae5 100644
--- a/drivers/video/Kconfig
+++ b/drivers/video/Kconfig
@@ -17,6 +17,8 @@ source "drivers/gpu/vga/Kconfig"
 
 source "drivers/gpu/drm/Kconfig"
 
+source "drivers/gpu/stub/Kconfig"
+
 config VGASTATE
        tristate
        default n
-- 
1.6.0.2


[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux