All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] Add Intel Poulsbo Stub Driver
@ 2010-09-14  2:39 Lee, Chun-Yi
  2010-09-14 17:10 ` Valdis.Kletnieks
  0 siblings, 1 reply; 22+ messages in thread
From: Lee, Chun-Yi @ 2010-09-14  2:39 UTC (permalink / raw)
  To: mjg59
  Cc: randy.dunlap, mjg, gregkh, trenn, linux-acpi, linux-kernel,
	Dennis.Jansen, Lee, Chun-Yi

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

Signed-off-by: Lee, Chun-Yi <jlee@novell.com>
---
 drivers/gpu/Makefile       |    2 +-
 drivers/gpu/stub/Kconfig   |   13 +++++++++
 drivers/gpu/stub/Makefile  |    1 +
 drivers/gpu/stub/poulsbo.c |   63 ++++++++++++++++++++++++++++++++++++++++++++
 drivers/video/Kconfig      |    2 +
 5 files changed, 80 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..9795890
--- /dev/null
+++ b/drivers/gpu/stub/Kconfig
@@ -0,0 +1,13 @@
+config STUB_POULSBO
+	tristate "Intel Poulsbo Stub Driver"
+	depends on PCI
+        # 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
+	  poulsbo.ko 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..d8aa636
--- /dev/null
+++ b/drivers/gpu/stub/poulsbo.c
@@ -0,0 +1,63 @@
+/*
+ * Intel Poulsbo Stub driver
+ *
+ * Copyright (C) 2010 Novell <jlee@novell.com>
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 as published by
+ * the Free Software Foundation.
+ *
+ */
+
+#include <linux/module.h>
+#include <linux/pci.h>
+#include <acpi/video.h>
+
+#define DRIVER_NAME "poulsbo"
+
+enum {
+	CHIP_PSB_8108 = 0,
+	CHIP_PSB_8109 = 1,
+};
+
+static struct pci_device_id pciidlist[] = {
+	{0x8086, 0x8108, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8108}, \
+	{0x8086, 0x8109, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8109}, \
+	{0, 0, 0}
+};
+
+static int poulsbo_probe(struct pci_dev *pdev, const struct pci_device_id *id)
+{
+	return acpi_video_register();
+}
+
+static void poulsbo_remove(struct pci_dev *pdev)
+{
+	acpi_video_unregister();
+}
+
+static struct pci_driver poulsbo_driver = {
+	.name = DRIVER_NAME,
+	.id_table = pciidlist,
+	.probe = poulsbo_probe,
+	.remove = poulsbo_remove,
+};
+
+static int __init poulsbo_init(void)
+{
+	return pci_register_driver(&poulsbo_driver);
+}
+
+static void __exit poulsbo_exit(void)
+{
+	pci_unregister_driver(&poulsbo_driver);
+}
+
+module_init(poulsbo_init);
+module_exit(poulsbo_exit);
+
+MODULE_AUTHOR("Lee, Chun-Yi <jlee@novell.com>");
+MODULE_DESCRIPTION("Poulsbo Stub Driver");
+MODULE_LICENSE("GPL");
+
+MODULE_DEVICE_TABLE(pci, pciidlist);
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


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* Re: [PATCH] Add Intel Poulsbo Stub Driver
  2010-09-14  2:39 [PATCH] Add Intel Poulsbo Stub Driver Lee, Chun-Yi
@ 2010-09-14 17:10 ` Valdis.Kletnieks
  0 siblings, 0 replies; 22+ messages in thread
From: Valdis.Kletnieks @ 2010-09-14 17:10 UTC (permalink / raw)
  To: Lee, Chun-Yi
  Cc: mjg59, randy.dunlap, mjg, gregkh, trenn, linux-acpi,
	linux-kernel, Dennis.Jansen, Lee, Chun-Yi

[-- Attachment #1: Type: text/plain, Size: 509 bytes --]

On Tue, 14 Sep 2010 10:39:42 +0800, "Lee, Chun-Yi" said:
> 
> +        select ACPI_VIDEO if ACPI
> +	help
> +	  Choose this option if you have a system that has Intel Poulsbo
> +	  integrated graphics.

Can we have a part number or something here?  When I buy a system from Dell or
someplace, the spec sheet doesn't say 'Poulsbo', it says 'i945' or 'i987' or
something like that.

(If this is a not-yet-escaped-from-engineering new part, maybe a follow-up patch
when the part is officially named/announced?)


[-- Attachment #2: Type: application/pgp-signature, Size: 227 bytes --]

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH] Add Intel Poulsbo Stub Driver
  2010-10-19  7:34 ` Joey Lee
  (?)
@ 2010-10-19 12:33 ` Matthew Garrett
  -1 siblings, 0 replies; 22+ messages in thread
From: Matthew Garrett @ 2010-10-19 12:33 UTC (permalink / raw)
  To: Joey Lee
  Cc: randy.dunlap, gregkh, trenn, linux-acpi, linux-kernel,
	Valdis.Kletnieks, Dennis.Jansen

I think this is fine, but it probably needs to go via the DRM tree...

-- 
Matthew Garrett | mjg59@srcf.ucam.org

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH] Add Intel Poulsbo Stub Driver
@ 2010-10-19  7:34 ` Joey Lee
  0 siblings, 0 replies; 22+ messages in thread
From: Joey Lee @ 2010-10-19  7:34 UTC (permalink / raw)
  To: mjg59
  Cc: randy.dunlap, mjg, gregkh, trenn, linux-acpi, linux-kernel,
	Valdis.Kletnieks, Dennis.Jansen

Hi Matthew, 

Does this stub driver good enough? Should I stop to work on this?
Currently, the issue still there in my MSI poulsbo netbook.


Thank's
Joey Lee

於 日,2010-09-19 於 10:35 -0600,Joey Lee 提到:
> Hi Matthew, 
> 
> I modified the help description to add GMA500.
> Could you please give my any suggestion for this stub driver? Does it
> good enough to put into kernel ?
> 
> 
> Thank's a lot!
> Joey Lee
> 
> 於 三,2010-09-15 於 22:24 +0800,Lee, Chun-Yi 提到:
> > Currently, there have no GMA500(Poulsbo) native video driver to support
> > intel opregion. So, use this stub driver to enable the acpi backlight
> > control sysfs entry files by requrest acpi_video_register.
> > 
> > Signed-off-by: Lee, Chun-Yi <jlee@novell.com>
> > ---
> >  drivers/gpu/Makefile       |    2 +-
> >  drivers/gpu/stub/Kconfig   |   13 +++++++++
> >  drivers/gpu/stub/Makefile  |    1 +
> >  drivers/gpu/stub/poulsbo.c |   63 ++++++++++++++++++++++++++++++++++++++++++++
> >  drivers/video/Kconfig      |    2 +
> >  5 files changed, 80 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..8f5a540
> > --- /dev/null
> > +++ b/drivers/gpu/stub/Kconfig
> > @@ -0,0 +1,13 @@
> > +config STUB_POULSBO
> > +	tristate "Intel GMA500 Stub Driver"
> > +	depends on PCI
> > +        # 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 GMA500
> > +	  (Poulsbo) integrated graphics. If M is selected, the module will
> > +	  be called Poulsbo. This driver is a stub driver for Poulsbo that
> > +	  will call poulsbo.ko 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..d8aa636
> > --- /dev/null
> > +++ b/drivers/gpu/stub/poulsbo.c
> > @@ -0,0 +1,63 @@
> > +/*
> > + * Intel Poulsbo Stub driver
> > + *
> > + * Copyright (C) 2010 Novell <jlee@novell.com>
> > + *
> > + * This program is free software; you can redistribute it and/or modify it
> > + * under the terms of the GNU General Public License version 2 as published by
> > + * the Free Software Foundation.
> > + *
> > + */
> > +
> > +#include <linux/module.h>
> > +#include <linux/pci.h>
> > +#include <acpi/video.h>
> > +
> > +#define DRIVER_NAME "poulsbo"
> > +
> > +enum {
> > +	CHIP_PSB_8108 = 0,
> > +	CHIP_PSB_8109 = 1,
> > +};
> > +
> > +static struct pci_device_id pciidlist[] = {
> > +	{0x8086, 0x8108, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8108}, \
> > +	{0x8086, 0x8109, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8109}, \
> > +	{0, 0, 0}
> > +};
> > +
> > +static int poulsbo_probe(struct pci_dev *pdev, const struct pci_device_id *id)
> > +{
> > +	return acpi_video_register();
> > +}
> > +
> > +static void poulsbo_remove(struct pci_dev *pdev)
> > +{
> > +	acpi_video_unregister();
> > +}
> > +
> > +static struct pci_driver poulsbo_driver = {
> > +	.name = DRIVER_NAME,
> > +	.id_table = pciidlist,
> > +	.probe = poulsbo_probe,
> > +	.remove = poulsbo_remove,
> > +};
> > +
> > +static int __init poulsbo_init(void)
> > +{
> > +	return pci_register_driver(&poulsbo_driver);
> > +}
> > +
> > +static void __exit poulsbo_exit(void)
> > +{
> > +	pci_unregister_driver(&poulsbo_driver);
> > +}
> > +
> > +module_init(poulsbo_init);
> > +module_exit(poulsbo_exit);
> > +
> > +MODULE_AUTHOR("Lee, Chun-Yi <jlee@novell.com>");
> > +MODULE_DESCRIPTION("Poulsbo Stub Driver");
> > +MODULE_LICENSE("GPL");
> > +
> > +MODULE_DEVICE_TABLE(pci, pciidlist);
> > 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
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH] Add Intel Poulsbo Stub Driver
@ 2010-10-19  7:34 ` Joey Lee
  0 siblings, 0 replies; 22+ messages in thread
From: Joey Lee @ 2010-10-19  7:34 UTC (permalink / raw)
  To: mjg59
  Cc: randy.dunlap, mjg, gregkh, trenn, linux-acpi, linux-kernel,
	Valdis.Kletnieks, Dennis.Jansen

Hi Matthew, 

Does this stub driver good enough? Should I stop to work on this?
Currently, the issue still there in my MSI poulsbo netbook.


Thank's
Joey Lee

於 日,2010-09-19 於 10:35 -0600,Joey Lee 提到:
> Hi Matthew, 
> 
> I modified the help description to add GMA500.
> Could you please give my any suggestion for this stub driver? Does it
> good enough to put into kernel ?
> 
> 
> Thank's a lot!
> Joey Lee
> 
> 於 三,2010-09-15 於 22:24 +0800,Lee, Chun-Yi 提到:
> > Currently, there have no GMA500(Poulsbo) native video driver to support
> > intel opregion. So, use this stub driver to enable the acpi backlight
> > control sysfs entry files by requrest acpi_video_register.
> > 
> > Signed-off-by: Lee, Chun-Yi <jlee@novell.com>
> > ---
> >  drivers/gpu/Makefile       |    2 +-
> >  drivers/gpu/stub/Kconfig   |   13 +++++++++
> >  drivers/gpu/stub/Makefile  |    1 +
> >  drivers/gpu/stub/poulsbo.c |   63 ++++++++++++++++++++++++++++++++++++++++++++
> >  drivers/video/Kconfig      |    2 +
> >  5 files changed, 80 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..8f5a540
> > --- /dev/null
> > +++ b/drivers/gpu/stub/Kconfig
> > @@ -0,0 +1,13 @@
> > +config STUB_POULSBO
> > +	tristate "Intel GMA500 Stub Driver"
> > +	depends on PCI
> > +        # 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 GMA500
> > +	  (Poulsbo) integrated graphics. If M is selected, the module will
> > +	  be called Poulsbo. This driver is a stub driver for Poulsbo that
> > +	  will call poulsbo.ko 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..d8aa636
> > --- /dev/null
> > +++ b/drivers/gpu/stub/poulsbo.c
> > @@ -0,0 +1,63 @@
> > +/*
> > + * Intel Poulsbo Stub driver
> > + *
> > + * Copyright (C) 2010 Novell <jlee@novell.com>
> > + *
> > + * This program is free software; you can redistribute it and/or modify it
> > + * under the terms of the GNU General Public License version 2 as published by
> > + * the Free Software Foundation.
> > + *
> > + */
> > +
> > +#include <linux/module.h>
> > +#include <linux/pci.h>
> > +#include <acpi/video.h>
> > +
> > +#define DRIVER_NAME "poulsbo"
> > +
> > +enum {
> > +	CHIP_PSB_8108 = 0,
> > +	CHIP_PSB_8109 = 1,
> > +};
> > +
> > +static struct pci_device_id pciidlist[] = {
> > +	{0x8086, 0x8108, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8108}, \
> > +	{0x8086, 0x8109, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8109}, \
> > +	{0, 0, 0}
> > +};
> > +
> > +static int poulsbo_probe(struct pci_dev *pdev, const struct pci_device_id *id)
> > +{
> > +	return acpi_video_register();
> > +}
> > +
> > +static void poulsbo_remove(struct pci_dev *pdev)
> > +{
> > +	acpi_video_unregister();
> > +}
> > +
> > +static struct pci_driver poulsbo_driver = {
> > +	.name = DRIVER_NAME,
> > +	.id_table = pciidlist,
> > +	.probe = poulsbo_probe,
> > +	.remove = poulsbo_remove,
> > +};
> > +
> > +static int __init poulsbo_init(void)
> > +{
> > +	return pci_register_driver(&poulsbo_driver);
> > +}
> > +
> > +static void __exit poulsbo_exit(void)
> > +{
> > +	pci_unregister_driver(&poulsbo_driver);
> > +}
> > +
> > +module_init(poulsbo_init);
> > +module_exit(poulsbo_exit);
> > +
> > +MODULE_AUTHOR("Lee, Chun-Yi <jlee@novell.com>");
> > +MODULE_DESCRIPTION("Poulsbo Stub Driver");
> > +MODULE_LICENSE("GPL");
> > +
> > +MODULE_DEVICE_TABLE(pci, pciidlist);
> > 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
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH] Add Intel Poulsbo Stub Driver
@ 2010-09-19 16:35 ` Joey Lee
  0 siblings, 0 replies; 22+ messages in thread
From: Joey Lee @ 2010-09-19 16:35 UTC (permalink / raw)
  To: mjg59
  Cc: randy.dunlap, mjg, gregkh, trenn, linux-acpi, linux-kernel,
	Valdis.Kletnieks, Dennis.Jansen

Hi Matthew, 

I modified the help description to add GMA500.
Could you please give my any suggestion for this stub driver? Does it
good enough to put into kernel ?


Thank's a lot!
Joey Lee

於 三,2010-09-15 於 22:24 +0800,Lee, Chun-Yi 提到:
> Currently, there have no GMA500(Poulsbo) native video driver to support
> intel opregion. So, use this stub driver to enable the acpi backlight
> control sysfs entry files by requrest acpi_video_register.
> 
> Signed-off-by: Lee, Chun-Yi <jlee@novell.com>
> ---
>  drivers/gpu/Makefile       |    2 +-
>  drivers/gpu/stub/Kconfig   |   13 +++++++++
>  drivers/gpu/stub/Makefile  |    1 +
>  drivers/gpu/stub/poulsbo.c |   63 ++++++++++++++++++++++++++++++++++++++++++++
>  drivers/video/Kconfig      |    2 +
>  5 files changed, 80 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..8f5a540
> --- /dev/null
> +++ b/drivers/gpu/stub/Kconfig
> @@ -0,0 +1,13 @@
> +config STUB_POULSBO
> +	tristate "Intel GMA500 Stub Driver"
> +	depends on PCI
> +        # 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 GMA500
> +	  (Poulsbo) integrated graphics. If M is selected, the module will
> +	  be called Poulsbo. This driver is a stub driver for Poulsbo that
> +	  will call poulsbo.ko 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..d8aa636
> --- /dev/null
> +++ b/drivers/gpu/stub/poulsbo.c
> @@ -0,0 +1,63 @@
> +/*
> + * Intel Poulsbo Stub driver
> + *
> + * Copyright (C) 2010 Novell <jlee@novell.com>
> + *
> + * This program is free software; you can redistribute it and/or modify it
> + * under the terms of the GNU General Public License version 2 as published by
> + * the Free Software Foundation.
> + *
> + */
> +
> +#include <linux/module.h>
> +#include <linux/pci.h>
> +#include <acpi/video.h>
> +
> +#define DRIVER_NAME "poulsbo"
> +
> +enum {
> +	CHIP_PSB_8108 = 0,
> +	CHIP_PSB_8109 = 1,
> +};
> +
> +static struct pci_device_id pciidlist[] = {
> +	{0x8086, 0x8108, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8108}, \
> +	{0x8086, 0x8109, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8109}, \
> +	{0, 0, 0}
> +};
> +
> +static int poulsbo_probe(struct pci_dev *pdev, const struct pci_device_id *id)
> +{
> +	return acpi_video_register();
> +}
> +
> +static void poulsbo_remove(struct pci_dev *pdev)
> +{
> +	acpi_video_unregister();
> +}
> +
> +static struct pci_driver poulsbo_driver = {
> +	.name = DRIVER_NAME,
> +	.id_table = pciidlist,
> +	.probe = poulsbo_probe,
> +	.remove = poulsbo_remove,
> +};
> +
> +static int __init poulsbo_init(void)
> +{
> +	return pci_register_driver(&poulsbo_driver);
> +}
> +
> +static void __exit poulsbo_exit(void)
> +{
> +	pci_unregister_driver(&poulsbo_driver);
> +}
> +
> +module_init(poulsbo_init);
> +module_exit(poulsbo_exit);
> +
> +MODULE_AUTHOR("Lee, Chun-Yi <jlee@novell.com>");
> +MODULE_DESCRIPTION("Poulsbo Stub Driver");
> +MODULE_LICENSE("GPL");
> +
> +MODULE_DEVICE_TABLE(pci, pciidlist);
> 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

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

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH] Add Intel Poulsbo Stub Driver
@ 2010-09-19 16:35 ` Joey Lee
  0 siblings, 0 replies; 22+ messages in thread
From: Joey Lee @ 2010-09-19 16:35 UTC (permalink / raw)
  To: mjg59
  Cc: randy.dunlap, mjg, gregkh, trenn, linux-acpi, linux-kernel,
	Valdis.Kletnieks, Dennis.Jansen

Hi Matthew, 

I modified the help description to add GMA500.
Could you please give my any suggestion for this stub driver? Does it
good enough to put into kernel ?


Thank's a lot!
Joey Lee

於 三,2010-09-15 於 22:24 +0800,Lee, Chun-Yi 提到:
> Currently, there have no GMA500(Poulsbo) native video driver to support
> intel opregion. So, use this stub driver to enable the acpi backlight
> control sysfs entry files by requrest acpi_video_register.
> 
> Signed-off-by: Lee, Chun-Yi <jlee@novell.com>
> ---
>  drivers/gpu/Makefile       |    2 +-
>  drivers/gpu/stub/Kconfig   |   13 +++++++++
>  drivers/gpu/stub/Makefile  |    1 +
>  drivers/gpu/stub/poulsbo.c |   63 ++++++++++++++++++++++++++++++++++++++++++++
>  drivers/video/Kconfig      |    2 +
>  5 files changed, 80 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..8f5a540
> --- /dev/null
> +++ b/drivers/gpu/stub/Kconfig
> @@ -0,0 +1,13 @@
> +config STUB_POULSBO
> +	tristate "Intel GMA500 Stub Driver"
> +	depends on PCI
> +        # 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 GMA500
> +	  (Poulsbo) integrated graphics. If M is selected, the module will
> +	  be called Poulsbo. This driver is a stub driver for Poulsbo that
> +	  will call poulsbo.ko 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..d8aa636
> --- /dev/null
> +++ b/drivers/gpu/stub/poulsbo.c
> @@ -0,0 +1,63 @@
> +/*
> + * Intel Poulsbo Stub driver
> + *
> + * Copyright (C) 2010 Novell <jlee@novell.com>
> + *
> + * This program is free software; you can redistribute it and/or modify it
> + * under the terms of the GNU General Public License version 2 as published by
> + * the Free Software Foundation.
> + *
> + */
> +
> +#include <linux/module.h>
> +#include <linux/pci.h>
> +#include <acpi/video.h>
> +
> +#define DRIVER_NAME "poulsbo"
> +
> +enum {
> +	CHIP_PSB_8108 = 0,
> +	CHIP_PSB_8109 = 1,
> +};
> +
> +static struct pci_device_id pciidlist[] = {
> +	{0x8086, 0x8108, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8108}, \
> +	{0x8086, 0x8109, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8109}, \
> +	{0, 0, 0}
> +};
> +
> +static int poulsbo_probe(struct pci_dev *pdev, const struct pci_device_id *id)
> +{
> +	return acpi_video_register();
> +}
> +
> +static void poulsbo_remove(struct pci_dev *pdev)
> +{
> +	acpi_video_unregister();
> +}
> +
> +static struct pci_driver poulsbo_driver = {
> +	.name = DRIVER_NAME,
> +	.id_table = pciidlist,
> +	.probe = poulsbo_probe,
> +	.remove = poulsbo_remove,
> +};
> +
> +static int __init poulsbo_init(void)
> +{
> +	return pci_register_driver(&poulsbo_driver);
> +}
> +
> +static void __exit poulsbo_exit(void)
> +{
> +	pci_unregister_driver(&poulsbo_driver);
> +}
> +
> +module_init(poulsbo_init);
> +module_exit(poulsbo_exit);
> +
> +MODULE_AUTHOR("Lee, Chun-Yi <jlee@novell.com>");
> +MODULE_DESCRIPTION("Poulsbo Stub Driver");
> +MODULE_LICENSE("GPL");
> +
> +MODULE_DEVICE_TABLE(pci, pciidlist);
> 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


^ permalink raw reply	[flat|nested] 22+ messages in thread

* [PATCH] Add Intel Poulsbo Stub Driver
@ 2010-09-15 14:24 Lee, Chun-Yi
  0 siblings, 0 replies; 22+ messages in thread
From: Lee, Chun-Yi @ 2010-09-15 14:24 UTC (permalink / raw)
  To: mjg59
  Cc: linux-kernel, mjg, gregkh, Valdis.Kletnieks, Dennis.Jansen,
	randy.dunlap, linux-acpi, trenn, Lee, Chun-Yi

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

Signed-off-by: Lee, Chun-Yi <jlee@novell.com>
---
 drivers/gpu/Makefile       |    2 +-
 drivers/gpu/stub/Kconfig   |   13 +++++++++
 drivers/gpu/stub/Makefile  |    1 +
 drivers/gpu/stub/poulsbo.c |   63 ++++++++++++++++++++++++++++++++++++++++++++
 drivers/video/Kconfig      |    2 +
 5 files changed, 80 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..8f5a540
--- /dev/null
+++ b/drivers/gpu/stub/Kconfig
@@ -0,0 +1,13 @@
+config STUB_POULSBO
+	tristate "Intel GMA500 Stub Driver"
+	depends on PCI
+        # 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 GMA500
+	  (Poulsbo) integrated graphics. If M is selected, the module will
+	  be called Poulsbo. This driver is a stub driver for Poulsbo that
+	  will call poulsbo.ko 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..d8aa636
--- /dev/null
+++ b/drivers/gpu/stub/poulsbo.c
@@ -0,0 +1,63 @@
+/*
+ * Intel Poulsbo Stub driver
+ *
+ * Copyright (C) 2010 Novell <jlee@novell.com>
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 as published by
+ * the Free Software Foundation.
+ *
+ */
+
+#include <linux/module.h>
+#include <linux/pci.h>
+#include <acpi/video.h>
+
+#define DRIVER_NAME "poulsbo"
+
+enum {
+	CHIP_PSB_8108 = 0,
+	CHIP_PSB_8109 = 1,
+};
+
+static struct pci_device_id pciidlist[] = {
+	{0x8086, 0x8108, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8108}, \
+	{0x8086, 0x8109, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8109}, \
+	{0, 0, 0}
+};
+
+static int poulsbo_probe(struct pci_dev *pdev, const struct pci_device_id *id)
+{
+	return acpi_video_register();
+}
+
+static void poulsbo_remove(struct pci_dev *pdev)
+{
+	acpi_video_unregister();
+}
+
+static struct pci_driver poulsbo_driver = {
+	.name = DRIVER_NAME,
+	.id_table = pciidlist,
+	.probe = poulsbo_probe,
+	.remove = poulsbo_remove,
+};
+
+static int __init poulsbo_init(void)
+{
+	return pci_register_driver(&poulsbo_driver);
+}
+
+static void __exit poulsbo_exit(void)
+{
+	pci_unregister_driver(&poulsbo_driver);
+}
+
+module_init(poulsbo_init);
+module_exit(poulsbo_exit);
+
+MODULE_AUTHOR("Lee, Chun-Yi <jlee@novell.com>");
+MODULE_DESCRIPTION("Poulsbo Stub Driver");
+MODULE_LICENSE("GPL");
+
+MODULE_DEVICE_TABLE(pci, pciidlist);
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


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* Re: [PATCH] Add Intel Poulsbo Stub Driver
  2010-09-14 18:10 ` Matthew Garrett
@ 2010-09-14 18:30   ` Valdis.Kletnieks
  0 siblings, 0 replies; 22+ messages in thread
From: Valdis.Kletnieks @ 2010-09-14 18:30 UTC (permalink / raw)
  To: Matthew Garrett
  Cc: Joey Lee, randy.dunlap, gregkh, trenn, linux-acpi, linux-kernel,
	Dennis.Jansen

[-- Attachment #1: Type: text/plain, Size: 447 bytes --]

On Tue, 14 Sep 2010 19:10:47 BST, Matthew Garrett said:
> On Tue, Sep 14, 2010 at 12:07:48PM -0600, Joey Lee wrote:
> 
> > I just google the MSI U110/U115 poulsbo netbook on my hand, it's a Intel
> > Menlow netbook.
> > I am not sure _Menlow_ is a more popular name compare with _Poulsbo_,
> > how do you think about that?
> > Should I put the _Menlow_ in config help ?
> 
> GMA500 might help?

Yes, that's the sort of thing I was looking for. ;)

[-- Attachment #2: Type: application/pgp-signature, Size: 227 bytes --]

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH] Add Intel Poulsbo Stub Driver
  2010-09-14 18:07 ` Joey Lee
  (?)
@ 2010-09-14 18:10 ` Matthew Garrett
  2010-09-14 18:30   ` Valdis.Kletnieks
  -1 siblings, 1 reply; 22+ messages in thread
From: Matthew Garrett @ 2010-09-14 18:10 UTC (permalink / raw)
  To: Joey Lee
  Cc: Valdis.Kletnieks, randy.dunlap, gregkh, trenn, linux-acpi,
	linux-kernel, Dennis.Jansen

On Tue, Sep 14, 2010 at 12:07:48PM -0600, Joey Lee wrote:

> I just google the MSI U110/U115 poulsbo netbook on my hand, it's a Intel
> Menlow netbook.
> I am not sure _Menlow_ is a more popular name compare with _Poulsbo_,
> how do you think about that?
> Should I put the _Menlow_ in config help ?

GMA500 might help?

-- 
Matthew Garrett | mjg59@srcf.ucam.org

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH] Add Intel Poulsbo Stub Driver
@ 2010-09-14 18:07 ` Joey Lee
  0 siblings, 0 replies; 22+ messages in thread
From: Joey Lee @ 2010-09-14 18:07 UTC (permalink / raw)
  To: Valdis.Kletnieks
  Cc: randy.dunlap, mjg, mjg59, gregkh, trenn, linux-acpi,
	linux-kernel, Dennis.Jansen

Hi Valdis, 

Thank's for your kindly review.

於 二,2010-09-14 於 13:10 -0400,Valdis.Kletnieks@vt.edu 提到:
> On Tue, 14 Sep 2010 10:39:42 +0800, "Lee, Chun-Yi" said:
> > 
> > +        select ACPI_VIDEO if ACPI
> > +	help
> > +	  Choose this option if you have a system that has Intel Poulsbo
> > +	  integrated graphics.
> 
> Can we have a part number or something here?  When I buy a system from Dell or
> someplace, the spec sheet doesn't say 'Poulsbo', it says 'i945' or 'i987' or
> something like that.
> 
> (If this is a not-yet-escaped-from-engineering new part, maybe a follow-up patch
> when the part is officially named/announced?)
> 

I just google the MSI U110/U115 poulsbo netbook on my hand, it's a Intel
Menlow netbook.
I am not sure _Menlow_ is a more popular name compare with _Poulsbo_,
how do you think about that?
Should I put the _Menlow_ in config help ?


Thank's a lot!
Joey Lee

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

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH] Add Intel Poulsbo Stub Driver
@ 2010-09-14 18:07 ` Joey Lee
  0 siblings, 0 replies; 22+ messages in thread
From: Joey Lee @ 2010-09-14 18:07 UTC (permalink / raw)
  To: Valdis.Kletnieks
  Cc: randy.dunlap, mjg, mjg59, gregkh, trenn, linux-acpi,
	linux-kernel, Dennis.Jansen

Hi Valdis, 

Thank's for your kindly review.

於 二,2010-09-14 於 13:10 -0400,Valdis.Kletnieks@vt.edu 提到:
> On Tue, 14 Sep 2010 10:39:42 +0800, "Lee, Chun-Yi" said:
> > 
> > +        select ACPI_VIDEO if ACPI
> > +	help
> > +	  Choose this option if you have a system that has Intel Poulsbo
> > +	  integrated graphics.
> 
> Can we have a part number or something here?  When I buy a system from Dell or
> someplace, the spec sheet doesn't say 'Poulsbo', it says 'i945' or 'i987' or
> something like that.
> 
> (If this is a not-yet-escaped-from-engineering new part, maybe a follow-up patch
> when the part is officially named/announced?)
> 

I just google the MSI U110/U115 poulsbo netbook on my hand, it's a Intel
Menlow netbook.
I am not sure _Menlow_ is a more popular name compare with _Poulsbo_,
how do you think about that?
Should I put the _Menlow_ in config help ?


Thank's a lot!
Joey Lee


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH] Add Intel Poulsbo Stub Driver
  2010-09-10  4:36 ` Joey Lee
  (?)
@ 2010-09-10 15:02 ` Randy Dunlap
  -1 siblings, 0 replies; 22+ messages in thread
From: Randy Dunlap @ 2010-09-10 15:02 UTC (permalink / raw)
  To: Joey Lee
  Cc: mjg, mjg59, gregkh, trenn, linux-acpi, linux-kernel, Dennis.Jansen

On 09/09/10 21:36, Joey Lee wrote:
>>> +        # 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
>>
>> What does it do when ACPI is not enabled?  Does the driver even build
>> when APCI is not enabled?  (given the acpi_video* calls in it)
>>
> 
> This driver will not do anything if API is not enabled. It only call
> acpi_video_register/acpi_video_unregister, and acpi/video.h handle it
> like the following:
> 
> #if (defined CONFIG_ACPI_VIDEO || defined CONFIG_ACPI_VIDEO_MODULE)
> extern int acpi_video_register(void);
> extern void acpi_video_unregister(void);
> extern int acpi_video_get_edid(struct acpi_device *device, int type,
>                                int device_id, void **edid);
> #else
> static inline int acpi_video_register(void) { return 0; }
> static inline void acpi_video_unregister(void) { return; }
> static inline int acpi_video_get_edid(struct acpi_device *device, int
> type,
>                                       int device_id, void **edid)
> {
>         return -ENODEV;
> }
> #endif
> 
> So, I think don't need add "depends on ACPI_VIDEO". How do you think?

Yes, OK, I see.  Thanks.

-- 
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH] Add Intel Poulsbo Stub Driver
@ 2010-09-10 10:03 ` Joey Lee
  0 siblings, 0 replies; 22+ messages in thread
From: Joey Lee @ 2010-09-10 10:03 UTC (permalink / raw)
  To: mjg59
  Cc: randy.dunlap, mjg, gregkh, trenn, linux-acpi, linux-kernel,
	Dennis.Jansen

[-- Attachment #1: Type: text/plain, Size: 3267 bytes --]

Hi Matthew, 

於 四,2010-09-09 於 22:36 -0600,Joey Lee 提到:
> Hi Randy, 
> 
> First, thank's for your review!
> And, sorry I am late to reply the mail.
> 
> 於 三,2010-09-01 於 10:11 -0700,Randy Dunlap 提到:
> > On Wed,  1 Sep 2010 17:08:39 +0800 Lee, Chun-Yi wrote:
> > 
> > > Currently, there have no Poulsbo native video driver to support
> > > intel opregion. So, use this stub driver to enable the acpi backlight
> > > control sysfs entry files by requrest acpi_video_register.
> > > 
> > > Signed-off-by: Lee, Chun-Yi <jlee@novell.com>
> > > ---
> > >  drivers/gpu/Makefile       |    2 +-
> > >  drivers/gpu/stub/Kconfig   |   13 +++++++++
> > >  drivers/gpu/stub/Makefile  |    1 +
> > >  drivers/gpu/stub/poulsbo.c |   64 ++++++++++++++++++++++++++++++++++++++++++++
> > >  drivers/video/Kconfig      |    2 +
> > >  5 files changed, 81 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..c564140
> > > --- /dev/null
> > > +++ b/drivers/gpu/stub/Kconfig
> > > @@ -0,0 +1,13 @@
> > > +config STUB_POULSBO
> > > +	tristate "Intel Poulsbo Stub Driver"
> > > +        default m
> > 
> > Drop the "default m".
> > 
> 
> Thank's! Will drop "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
> > 
> > What does it do when ACPI is not enabled?  Does the driver even build
> > when APCI is not enabled?  (given the acpi_video* calls in it)
> > 
> 
> This driver will not do anything if API is not enabled. It only call
> acpi_video_register/acpi_video_unregister, and acpi/video.h handle it
> like the following:
> 
> #if (defined CONFIG_ACPI_VIDEO || defined CONFIG_ACPI_VIDEO_MODULE)
> extern int acpi_video_register(void);
> extern void acpi_video_unregister(void);
> extern int acpi_video_get_edid(struct acpi_device *device, int type,
>                                int device_id, void **edid);
> #else
> static inline int acpi_video_register(void) { return 0; }
> static inline void acpi_video_unregister(void) { return; }
> static inline int acpi_video_get_edid(struct acpi_device *device, int
> type,
>                                       int device_id, void **edid)
> {
>         return -ENODEV;
> }
> #endif
> 
> So, I think don't need add "depends on ACPI_VIDEO". How do you think?
> 
> > It also has pci_* calls in it, so it looks like it needs to depend
> > on PCI && ACPI, or at least on PCI.
> > 
> > 
> Yes, thank's for your review, I will add:
> 	depends on PCI
> 

Thank's for Greg and Randy's review, and I follow their suggestions to
modified patch like the attacted file.

Please kindly help to review my attached patch.


Thank's a lot!
Joey Lee


[-- Attachment #2: 0001-Add-Intel-Poulsbo-Stub-Driver.patch --]
[-- Type: text/plain, Size: 4136 bytes --]

>From ec59c5ccb9216c688641d51dcfdccc8a129dded5 Mon Sep 17 00:00:00 2001
From: Lee, Chun-Yi <jlee@novell.com>
Date: Fri, 10 Sep 2010 17:42:01 +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 enable the acpi backlight
control sysfs entry files by requrest acpi_video_register.

Signed-off-by: Lee, Chun-Yi <jlee@novell.com>
---
 drivers/gpu/Makefile       |    2 +-
 drivers/gpu/stub/Kconfig   |   13 +++++++++
 drivers/gpu/stub/Makefile  |    1 +
 drivers/gpu/stub/poulsbo.c |   63 ++++++++++++++++++++++++++++++++++++++++++++
 drivers/video/Kconfig      |    2 +
 5 files changed, 80 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..9795890
--- /dev/null
+++ b/drivers/gpu/stub/Kconfig
@@ -0,0 +1,13 @@
+config STUB_POULSBO
+	tristate "Intel Poulsbo Stub Driver"
+	depends on PCI
+        # 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
+	  poulsbo.ko 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..d8aa636
--- /dev/null
+++ b/drivers/gpu/stub/poulsbo.c
@@ -0,0 +1,63 @@
+/*
+ * Intel Poulsbo Stub driver
+ *
+ * Copyright (C) 2010 Novell <jlee@novell.com>
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 as published by
+ * the Free Software Foundation.
+ *
+ */
+
+#include <linux/module.h>
+#include <linux/pci.h>
+#include <acpi/video.h>
+
+#define DRIVER_NAME "poulsbo"
+
+enum {
+	CHIP_PSB_8108 = 0,
+	CHIP_PSB_8109 = 1,
+};
+
+static struct pci_device_id pciidlist[] = {
+	{0x8086, 0x8108, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8108}, \
+	{0x8086, 0x8109, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8109}, \
+	{0, 0, 0}
+};
+
+static int poulsbo_probe(struct pci_dev *pdev, const struct pci_device_id *id)
+{
+	return acpi_video_register();
+}
+
+static void poulsbo_remove(struct pci_dev *pdev)
+{
+	acpi_video_unregister();
+}
+
+static struct pci_driver poulsbo_driver = {
+	.name = DRIVER_NAME,
+	.id_table = pciidlist,
+	.probe = poulsbo_probe,
+	.remove = poulsbo_remove,
+};
+
+static int __init poulsbo_init(void)
+{
+	return pci_register_driver(&poulsbo_driver);
+}
+
+static void __exit poulsbo_exit(void)
+{
+	pci_unregister_driver(&poulsbo_driver);
+}
+
+module_init(poulsbo_init);
+module_exit(poulsbo_exit);
+
+MODULE_AUTHOR("Lee, Chun-Yi <jlee@novell.com>");
+MODULE_DESCRIPTION("Poulsbo Stub Driver");
+MODULE_LICENSE("GPL");
+
+MODULE_DEVICE_TABLE(pci, pciidlist);
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


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* Re: [PATCH] Add Intel Poulsbo Stub Driver
@ 2010-09-10 10:03 ` Joey Lee
  0 siblings, 0 replies; 22+ messages in thread
From: Joey Lee @ 2010-09-10 10:03 UTC (permalink / raw)
  To: mjg59
  Cc: randy.dunlap, mjg, gregkh, trenn, linux-acpi, linux-kernel,
	Dennis.Jansen

[-- Attachment #1: Type: text/plain, Size: 3267 bytes --]

Hi Matthew, 

於 四,2010-09-09 於 22:36 -0600,Joey Lee 提到:
> Hi Randy, 
> 
> First, thank's for your review!
> And, sorry I am late to reply the mail.
> 
> 於 三,2010-09-01 於 10:11 -0700,Randy Dunlap 提到:
> > On Wed,  1 Sep 2010 17:08:39 +0800 Lee, Chun-Yi wrote:
> > 
> > > Currently, there have no Poulsbo native video driver to support
> > > intel opregion. So, use this stub driver to enable the acpi backlight
> > > control sysfs entry files by requrest acpi_video_register.
> > > 
> > > Signed-off-by: Lee, Chun-Yi <jlee@novell.com>
> > > ---
> > >  drivers/gpu/Makefile       |    2 +-
> > >  drivers/gpu/stub/Kconfig   |   13 +++++++++
> > >  drivers/gpu/stub/Makefile  |    1 +
> > >  drivers/gpu/stub/poulsbo.c |   64 ++++++++++++++++++++++++++++++++++++++++++++
> > >  drivers/video/Kconfig      |    2 +
> > >  5 files changed, 81 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..c564140
> > > --- /dev/null
> > > +++ b/drivers/gpu/stub/Kconfig
> > > @@ -0,0 +1,13 @@
> > > +config STUB_POULSBO
> > > +	tristate "Intel Poulsbo Stub Driver"
> > > +        default m
> > 
> > Drop the "default m".
> > 
> 
> Thank's! Will drop "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
> > 
> > What does it do when ACPI is not enabled?  Does the driver even build
> > when APCI is not enabled?  (given the acpi_video* calls in it)
> > 
> 
> This driver will not do anything if API is not enabled. It only call
> acpi_video_register/acpi_video_unregister, and acpi/video.h handle it
> like the following:
> 
> #if (defined CONFIG_ACPI_VIDEO || defined CONFIG_ACPI_VIDEO_MODULE)
> extern int acpi_video_register(void);
> extern void acpi_video_unregister(void);
> extern int acpi_video_get_edid(struct acpi_device *device, int type,
>                                int device_id, void **edid);
> #else
> static inline int acpi_video_register(void) { return 0; }
> static inline void acpi_video_unregister(void) { return; }
> static inline int acpi_video_get_edid(struct acpi_device *device, int
> type,
>                                       int device_id, void **edid)
> {
>         return -ENODEV;
> }
> #endif
> 
> So, I think don't need add "depends on ACPI_VIDEO". How do you think?
> 
> > It also has pci_* calls in it, so it looks like it needs to depend
> > on PCI && ACPI, or at least on PCI.
> > 
> > 
> Yes, thank's for your review, I will add:
> 	depends on PCI
> 

Thank's for Greg and Randy's review, and I follow their suggestions to
modified patch like the attacted file.

Please kindly help to review my attached patch.


Thank's a lot!
Joey Lee


[-- Attachment #2: 0001-Add-Intel-Poulsbo-Stub-Driver.patch --]
[-- Type: text/plain, Size: 4136 bytes --]

>From ec59c5ccb9216c688641d51dcfdccc8a129dded5 Mon Sep 17 00:00:00 2001
From: Lee, Chun-Yi <jlee@novell.com>
Date: Fri, 10 Sep 2010 17:42:01 +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 enable the acpi backlight
control sysfs entry files by requrest acpi_video_register.

Signed-off-by: Lee, Chun-Yi <jlee@novell.com>
---
 drivers/gpu/Makefile       |    2 +-
 drivers/gpu/stub/Kconfig   |   13 +++++++++
 drivers/gpu/stub/Makefile  |    1 +
 drivers/gpu/stub/poulsbo.c |   63 ++++++++++++++++++++++++++++++++++++++++++++
 drivers/video/Kconfig      |    2 +
 5 files changed, 80 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..9795890
--- /dev/null
+++ b/drivers/gpu/stub/Kconfig
@@ -0,0 +1,13 @@
+config STUB_POULSBO
+	tristate "Intel Poulsbo Stub Driver"
+	depends on PCI
+        # 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
+	  poulsbo.ko 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..d8aa636
--- /dev/null
+++ b/drivers/gpu/stub/poulsbo.c
@@ -0,0 +1,63 @@
+/*
+ * Intel Poulsbo Stub driver
+ *
+ * Copyright (C) 2010 Novell <jlee@novell.com>
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 as published by
+ * the Free Software Foundation.
+ *
+ */
+
+#include <linux/module.h>
+#include <linux/pci.h>
+#include <acpi/video.h>
+
+#define DRIVER_NAME "poulsbo"
+
+enum {
+	CHIP_PSB_8108 = 0,
+	CHIP_PSB_8109 = 1,
+};
+
+static struct pci_device_id pciidlist[] = {
+	{0x8086, 0x8108, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8108}, \
+	{0x8086, 0x8109, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8109}, \
+	{0, 0, 0}
+};
+
+static int poulsbo_probe(struct pci_dev *pdev, const struct pci_device_id *id)
+{
+	return acpi_video_register();
+}
+
+static void poulsbo_remove(struct pci_dev *pdev)
+{
+	acpi_video_unregister();
+}
+
+static struct pci_driver poulsbo_driver = {
+	.name = DRIVER_NAME,
+	.id_table = pciidlist,
+	.probe = poulsbo_probe,
+	.remove = poulsbo_remove,
+};
+
+static int __init poulsbo_init(void)
+{
+	return pci_register_driver(&poulsbo_driver);
+}
+
+static void __exit poulsbo_exit(void)
+{
+	pci_unregister_driver(&poulsbo_driver);
+}
+
+module_init(poulsbo_init);
+module_exit(poulsbo_exit);
+
+MODULE_AUTHOR("Lee, Chun-Yi <jlee@novell.com>");
+MODULE_DESCRIPTION("Poulsbo Stub Driver");
+MODULE_LICENSE("GPL");
+
+MODULE_DEVICE_TABLE(pci, pciidlist);
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


^ permalink raw reply related	[flat|nested] 22+ messages in thread

* Re: [PATCH] Add Intel Poulsbo Stub Driver
@ 2010-09-10  4:53 ` Joey Lee
  0 siblings, 0 replies; 22+ messages in thread
From: Joey Lee @ 2010-09-10  4:53 UTC (permalink / raw)
  To: gregkh; +Cc: mjg, mjg59, trenn, linux-acpi, linux-kernel, Dennis.Jansen

Hi Greg, 

於 三,2010-09-01 於 08:00 -0700,Greg KH 提到:
> On Wed, Sep 01, 2010 at 05:08:39PM +0800, Lee, Chun-Yi wrote:
> > +static struct pci_device_id pciidlist[] = {
> > +	{0x8086, 0x8108, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8108}, \
> > +	{0x8086, 0x8109, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8109}, \
> > +	{0, 0, 0}
> > +};
> 
> Now that you have this, just use:
> 	MODULE_DEVICE_TABLE(pci, pciidlist);
> instead of:
> 
> > +MODULE_ALIAS("pci:v00008086d00008108sv*sd*bc*sc*i*");
> > +MODULE_ALIAS("pci:v00008086d00008109sv*sd*bc*sc*i*");
> 
> As the proper alias will automatically get generated from the
> MODULE_DEVICE_TABLE() macro.
> 

Thank's for your review and kindly suggestion.
It's useful to me! :-)

And it works fine on my Poulsbo machine, I will use:
	MODULE_DEVICE_TABLE(pci, pciidlist);


Thank's a lot!
Joey Lee

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

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH] Add Intel Poulsbo Stub Driver
@ 2010-09-10  4:53 ` Joey Lee
  0 siblings, 0 replies; 22+ messages in thread
From: Joey Lee @ 2010-09-10  4:53 UTC (permalink / raw)
  To: gregkh; +Cc: mjg, mjg59, trenn, linux-acpi, linux-kernel, Dennis.Jansen

Hi Greg, 

於 三,2010-09-01 於 08:00 -0700,Greg KH 提到:
> On Wed, Sep 01, 2010 at 05:08:39PM +0800, Lee, Chun-Yi wrote:
> > +static struct pci_device_id pciidlist[] = {
> > +	{0x8086, 0x8108, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8108}, \
> > +	{0x8086, 0x8109, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8109}, \
> > +	{0, 0, 0}
> > +};
> 
> Now that you have this, just use:
> 	MODULE_DEVICE_TABLE(pci, pciidlist);
> instead of:
> 
> > +MODULE_ALIAS("pci:v00008086d00008108sv*sd*bc*sc*i*");
> > +MODULE_ALIAS("pci:v00008086d00008109sv*sd*bc*sc*i*");
> 
> As the proper alias will automatically get generated from the
> MODULE_DEVICE_TABLE() macro.
> 

Thank's for your review and kindly suggestion.
It's useful to me! :-)

And it works fine on my Poulsbo machine, I will use:
	MODULE_DEVICE_TABLE(pci, pciidlist);


Thank's a lot!
Joey Lee


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH] Add Intel Poulsbo Stub Driver
@ 2010-09-10  4:36 ` Joey Lee
  0 siblings, 0 replies; 22+ messages in thread
From: Joey Lee @ 2010-09-10  4:36 UTC (permalink / raw)
  To: randy.dunlap
  Cc: mjg, mjg59, gregkh, trenn, linux-acpi, linux-kernel, Dennis.Jansen

Hi Randy, 

First, thank's for your review!
And, sorry I am late to reply the mail.

於 三,2010-09-01 於 10:11 -0700,Randy Dunlap 提到:
> On Wed,  1 Sep 2010 17:08:39 +0800 Lee, Chun-Yi wrote:
> 
> > Currently, there have no Poulsbo native video driver to support
> > intel opregion. So, use this stub driver to enable the acpi backlight
> > control sysfs entry files by requrest acpi_video_register.
> > 
> > Signed-off-by: Lee, Chun-Yi <jlee@novell.com>
> > ---
> >  drivers/gpu/Makefile       |    2 +-
> >  drivers/gpu/stub/Kconfig   |   13 +++++++++
> >  drivers/gpu/stub/Makefile  |    1 +
> >  drivers/gpu/stub/poulsbo.c |   64 ++++++++++++++++++++++++++++++++++++++++++++
> >  drivers/video/Kconfig      |    2 +
> >  5 files changed, 81 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..c564140
> > --- /dev/null
> > +++ b/drivers/gpu/stub/Kconfig
> > @@ -0,0 +1,13 @@
> > +config STUB_POULSBO
> > +	tristate "Intel Poulsbo Stub Driver"
> > +        default m
> 
> Drop the "default m".
> 

Thank's! Will drop "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
> 
> What does it do when ACPI is not enabled?  Does the driver even build
> when APCI is not enabled?  (given the acpi_video* calls in it)
> 

This driver will not do anything if API is not enabled. It only call
acpi_video_register/acpi_video_unregister, and acpi/video.h handle it
like the following:

#if (defined CONFIG_ACPI_VIDEO || defined CONFIG_ACPI_VIDEO_MODULE)
extern int acpi_video_register(void);
extern void acpi_video_unregister(void);
extern int acpi_video_get_edid(struct acpi_device *device, int type,
                               int device_id, void **edid);
#else
static inline int acpi_video_register(void) { return 0; }
static inline void acpi_video_unregister(void) { return; }
static inline int acpi_video_get_edid(struct acpi_device *device, int
type,
                                      int device_id, void **edid)
{
        return -ENODEV;
}
#endif

So, I think don't need add "depends on ACPI_VIDEO". How do you think?

> It also has pci_* calls in it, so it looks like it needs to depend
> on PCI && ACPI, or at least on PCI.
> 
> 
Yes, thank's for your review, I will add:
	depends on PCI


Thank's a lot!
Joey Lee

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

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH] Add Intel Poulsbo Stub Driver
@ 2010-09-10  4:36 ` Joey Lee
  0 siblings, 0 replies; 22+ messages in thread
From: Joey Lee @ 2010-09-10  4:36 UTC (permalink / raw)
  To: randy.dunlap
  Cc: mjg, mjg59, gregkh, trenn, linux-acpi, linux-kernel, Dennis.Jansen

Hi Randy, 

First, thank's for your review!
And, sorry I am late to reply the mail.

於 三,2010-09-01 於 10:11 -0700,Randy Dunlap 提到:
> On Wed,  1 Sep 2010 17:08:39 +0800 Lee, Chun-Yi wrote:
> 
> > Currently, there have no Poulsbo native video driver to support
> > intel opregion. So, use this stub driver to enable the acpi backlight
> > control sysfs entry files by requrest acpi_video_register.
> > 
> > Signed-off-by: Lee, Chun-Yi <jlee@novell.com>
> > ---
> >  drivers/gpu/Makefile       |    2 +-
> >  drivers/gpu/stub/Kconfig   |   13 +++++++++
> >  drivers/gpu/stub/Makefile  |    1 +
> >  drivers/gpu/stub/poulsbo.c |   64 ++++++++++++++++++++++++++++++++++++++++++++
> >  drivers/video/Kconfig      |    2 +
> >  5 files changed, 81 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..c564140
> > --- /dev/null
> > +++ b/drivers/gpu/stub/Kconfig
> > @@ -0,0 +1,13 @@
> > +config STUB_POULSBO
> > +	tristate "Intel Poulsbo Stub Driver"
> > +        default m
> 
> Drop the "default m".
> 

Thank's! Will drop "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
> 
> What does it do when ACPI is not enabled?  Does the driver even build
> when APCI is not enabled?  (given the acpi_video* calls in it)
> 

This driver will not do anything if API is not enabled. It only call
acpi_video_register/acpi_video_unregister, and acpi/video.h handle it
like the following:

#if (defined CONFIG_ACPI_VIDEO || defined CONFIG_ACPI_VIDEO_MODULE)
extern int acpi_video_register(void);
extern void acpi_video_unregister(void);
extern int acpi_video_get_edid(struct acpi_device *device, int type,
                               int device_id, void **edid);
#else
static inline int acpi_video_register(void) { return 0; }
static inline void acpi_video_unregister(void) { return; }
static inline int acpi_video_get_edid(struct acpi_device *device, int
type,
                                      int device_id, void **edid)
{
        return -ENODEV;
}
#endif

So, I think don't need add "depends on ACPI_VIDEO". How do you think?

> It also has pci_* calls in it, so it looks like it needs to depend
> on PCI && ACPI, or at least on PCI.
> 
> 
Yes, thank's for your review, I will add:
	depends on PCI


Thank's a lot!
Joey Lee


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH] Add Intel Poulsbo Stub Driver
  2010-09-01  9:08 Lee, Chun-Yi
  2010-09-01 15:00 ` Greg KH
@ 2010-09-01 17:11 ` Randy Dunlap
  1 sibling, 0 replies; 22+ messages in thread
From: Randy Dunlap @ 2010-09-01 17:11 UTC (permalink / raw)
  To: Lee, Chun-Yi
  Cc: mjg59, linux-kernel, mjg, gregkh, jlee, Dennis.Jansen, linux-acpi, trenn

On Wed,  1 Sep 2010 17:08:39 +0800 Lee, Chun-Yi wrote:

> Currently, there have no Poulsbo native video driver to support
> intel opregion. So, use this stub driver to enable the acpi backlight
> control sysfs entry files by requrest acpi_video_register.
> 
> Signed-off-by: Lee, Chun-Yi <jlee@novell.com>
> ---
>  drivers/gpu/Makefile       |    2 +-
>  drivers/gpu/stub/Kconfig   |   13 +++++++++
>  drivers/gpu/stub/Makefile  |    1 +
>  drivers/gpu/stub/poulsbo.c |   64 ++++++++++++++++++++++++++++++++++++++++++++
>  drivers/video/Kconfig      |    2 +
>  5 files changed, 81 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..c564140
> --- /dev/null
> +++ b/drivers/gpu/stub/Kconfig
> @@ -0,0 +1,13 @@
> +config STUB_POULSBO
> +	tristate "Intel Poulsbo Stub Driver"
> +        default m

Drop the "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

What does it do when ACPI is not enabled?  Does the driver even build
when APCI is not enabled?  (given the acpi_video* calls in it)

It also has pci_* calls in it, so it looks like it needs to depend
on PCI && ACPI, or at least on PCI.



> +	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
> +	  poulsbo.ko to enable the acpi backlight control sysfs entry file
> +	  because there have no poulsbo native driver can support intel
> +	  opregion.


---
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH] Add Intel Poulsbo Stub Driver
  2010-09-01  9:08 Lee, Chun-Yi
@ 2010-09-01 15:00 ` Greg KH
  2010-09-01 17:11 ` Randy Dunlap
  1 sibling, 0 replies; 22+ messages in thread
From: Greg KH @ 2010-09-01 15:00 UTC (permalink / raw)
  To: Lee, Chun-Yi
  Cc: mjg59, linux-kernel, mjg, jlee, Dennis.Jansen, linux-acpi, trenn

On Wed, Sep 01, 2010 at 05:08:39PM +0800, Lee, Chun-Yi wrote:
> +static struct pci_device_id pciidlist[] = {
> +	{0x8086, 0x8108, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8108}, \
> +	{0x8086, 0x8109, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8109}, \
> +	{0, 0, 0}
> +};

Now that you have this, just use:
	MODULE_DEVICE_TABLE(pci, pciidlist);
instead of:

> +MODULE_ALIAS("pci:v00008086d00008108sv*sd*bc*sc*i*");
> +MODULE_ALIAS("pci:v00008086d00008109sv*sd*bc*sc*i*");

As the proper alias will automatically get generated from the
MODULE_DEVICE_TABLE() macro.

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [PATCH] Add Intel Poulsbo Stub Driver
@ 2010-09-01  9:08 Lee, Chun-Yi
  2010-09-01 15:00 ` Greg KH
  2010-09-01 17:11 ` Randy Dunlap
  0 siblings, 2 replies; 22+ messages in thread
From: Lee, Chun-Yi @ 2010-09-01  9:08 UTC (permalink / raw)
  To: mjg59; +Cc: linux-kernel, mjg, gregkh, jlee, Dennis.Jansen, linux-acpi, trenn

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

Signed-off-by: Lee, Chun-Yi <jlee@novell.com>
---
 drivers/gpu/Makefile       |    2 +-
 drivers/gpu/stub/Kconfig   |   13 +++++++++
 drivers/gpu/stub/Makefile  |    1 +
 drivers/gpu/stub/poulsbo.c |   64 ++++++++++++++++++++++++++++++++++++++++++++
 drivers/video/Kconfig      |    2 +
 5 files changed, 81 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..c564140
--- /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
+	  poulsbo.ko 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..e18dc24
--- /dev/null
+++ b/drivers/gpu/stub/poulsbo.c
@@ -0,0 +1,64 @@
+/*
+ * Intel Poulsbo Stub driver
+ *
+ * Copyright (C) 2010 Novell <jlee@novell.com>
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License version 2 as published by
+ * the Free Software Foundation.
+ *
+ */
+
+#include <linux/module.h>
+#include <linux/pci.h>
+#include <acpi/video.h>
+
+#define DRIVER_NAME "poulsbo"
+
+enum {
+	CHIP_PSB_8108 = 0,
+	CHIP_PSB_8109 = 1,
+};
+
+static struct pci_device_id pciidlist[] = {
+	{0x8086, 0x8108, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8108}, \
+	{0x8086, 0x8109, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_PSB_8109}, \
+	{0, 0, 0}
+};
+
+static int poulsbo_probe(struct pci_dev *pdev, const struct pci_device_id *id)
+{
+	return acpi_video_register();
+}
+
+static void poulsbo_remove(struct pci_dev *pdev)
+{
+	acpi_video_unregister();
+}
+
+static struct pci_driver poulsbo_driver = {
+	.name = DRIVER_NAME,
+	.id_table = pciidlist,
+	.probe = poulsbo_probe,
+	.remove = poulsbo_remove,
+};
+
+static int __init poulsbo_init(void)
+{
+	return pci_register_driver(&poulsbo_driver);
+}
+
+static void __exit poulsbo_exit(void)
+{
+	pci_unregister_driver(&poulsbo_driver);
+}
+
+module_init(poulsbo_init);
+module_exit(poulsbo_exit);
+
+MODULE_AUTHOR("Lee, Chun-Yi <jlee@novell.com>");
+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


^ permalink raw reply related	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2010-10-19 12:33 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-09-14  2:39 [PATCH] Add Intel Poulsbo Stub Driver Lee, Chun-Yi
2010-09-14 17:10 ` Valdis.Kletnieks
  -- strict thread matches above, loose matches on Subject: below --
2010-10-19  7:34 Joey Lee
2010-10-19  7:34 ` Joey Lee
2010-10-19 12:33 ` Matthew Garrett
2010-09-19 16:35 Joey Lee
2010-09-19 16:35 ` Joey Lee
2010-09-15 14:24 Lee, Chun-Yi
2010-09-14 18:07 Joey Lee
2010-09-14 18:07 ` Joey Lee
2010-09-14 18:10 ` Matthew Garrett
2010-09-14 18:30   ` Valdis.Kletnieks
2010-09-10 10:03 Joey Lee
2010-09-10 10:03 ` Joey Lee
2010-09-10  4:53 Joey Lee
2010-09-10  4:53 ` Joey Lee
2010-09-10  4:36 Joey Lee
2010-09-10  4:36 ` Joey Lee
2010-09-10 15:02 ` Randy Dunlap
2010-09-01  9:08 Lee, Chun-Yi
2010-09-01 15:00 ` Greg KH
2010-09-01 17:11 ` Randy Dunlap

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.