public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Yu Luming <luming.yu@gmail.com>
To: Andrew Morton <akpm@osdl.org>
Cc: Pavel Machek <pavel@ucw.cz>,
	len.brown@intel.com, Matt Domsch <Matt_Domsch@dell.com>,
	Alessandro Guido <alessandro.guido@gmail.com>,
	linux-kernel@vger.kernel.org, linux-acpi@vger.kernel.org,
	jengelh@linux01.gwdg.de, gelma@gelma.net, ismail@pardus.org.tr,
	Richard Hughes <hughsient@gmail.com>
Subject: [patch 1/5] video sysfs support - take 2: Add dev argument for backlight_device_register.
Date: Wed, 8 Nov 2006 00:33:55 +0800	[thread overview]
Message-ID: <200611080033.56035.luming.yu@gmail.com> (raw)


This patch set adds generic abstract layer support for acpi video driver to have
generic user interface to control backlight and output switch control by leveraging
the existing backlight sysfs class driver, and by adding a new video output sysfs 
class driver.

Patch 1/5:  adds dev argument for backlight_device_register to link the class device
to real device object. The platform specific driver should find a way to get the real
device object for their video device.

signed-off-by: Luming Yu <Luming.yu@intel.com>
---
 drivers/acpi/asus_acpi.c            |    2 +-
 drivers/acpi/ibm_acpi.c             |    2 +-
 drivers/acpi/toshiba_acpi.c         |    3 ++-
 drivers/video/backlight/backlight.c |    7 +++++--
 include/linux/backlight.h           |    2 +-
 5 files changed, 10 insertions(+), 6 deletions(-)

diff --git a/drivers/acpi/asus_acpi.c b/drivers/acpi/asus_acpi.c
index a36436f..4d24efc 100644
--- a/drivers/acpi/asus_acpi.c
+++ b/drivers/acpi/asus_acpi.c
@@ -1401,7 +1401,7 @@ static int __init asus_acpi_init(void)
 		return -ENODEV;
 	}
 
-	asus_backlight_device = backlight_device_register("asus", NULL,
+	asus_backlight_device = backlight_device_register("asus",NULL,NULL,
 							  &asus_backlight_data);
         if (IS_ERR(asus_backlight_device)) {
 		printk(KERN_ERR "Could not register asus backlight device\n");
diff --git a/drivers/acpi/ibm_acpi.c b/drivers/acpi/ibm_acpi.c
index 9658253..ba52b78 100644
--- a/drivers/acpi/ibm_acpi.c
+++ b/drivers/acpi/ibm_acpi.c
@@ -2072,7 +2072,7 @@ #endif
 		}
 	}
 
-	ibm_backlight_device = backlight_device_register("ibm", NULL,
+	ibm_backlight_device = backlight_device_register("ibm",NULL,NULL,
 							 &ibm_backlight_data);
         if (IS_ERR(ibm_backlight_device)) {
 		printk(IBM_ERR "Could not register ibm backlight device\n");
diff --git a/drivers/acpi/toshiba_acpi.c b/drivers/acpi/toshiba_acpi.c
index 2f35f89..88aeccb 100644
--- a/drivers/acpi/toshiba_acpi.c
+++ b/drivers/acpi/toshiba_acpi.c
@@ -590,7 +590,8 @@ static int __init toshiba_acpi_init(void
 			remove_proc_entry(PROC_TOSHIBA, acpi_root_dir);
 	}
 
-	toshiba_backlight_device = backlight_device_register("toshiba", NULL,
+	toshiba_backlight_device = backlight_device_register("toshiba",NULL,
+						NULL,
 						&toshiba_backlight_data);
         if (IS_ERR(toshiba_backlight_device)) {
 		printk(KERN_ERR "Could not register toshiba backlight device\n");
diff --git a/drivers/video/backlight/backlight.c b/drivers/video/backlight/backlight.c
index 27597c5..1d97cdf 100644
--- a/drivers/video/backlight/backlight.c
+++ b/drivers/video/backlight/backlight.c
@@ -190,8 +190,10 @@ static int fb_notifier_callback(struct n
  * Creates and registers new backlight class_device. Returns either an
  * ERR_PTR() or a pointer to the newly allocated device.
  */
-struct backlight_device *backlight_device_register(const char *name, void *devdata,
-						   struct backlight_properties *bp)
+struct backlight_device *backlight_device_register(const char *name,
+	struct device *dev,
+	void *devdata,
+	struct backlight_properties *bp)
 {
 	int i, rc;
 	struct backlight_device *new_bd;
@@ -206,6 +208,7 @@ struct backlight_device *backlight_devic
 	new_bd->props = bp;
 	memset(&new_bd->class_dev, 0, sizeof(new_bd->class_dev));
 	new_bd->class_dev.class = &backlight_class;
+	new_bd->class_dev.dev = dev;
 	strlcpy(new_bd->class_dev.class_id, name, KOBJ_NAME_LEN);
 	class_set_devdata(&new_bd->class_dev, devdata);
 
diff --git a/include/linux/backlight.h b/include/linux/backlight.h
index 75e91f5..a5cf1be 100644
--- a/include/linux/backlight.h
+++ b/include/linux/backlight.h
@@ -54,7 +54,7 @@ struct backlight_device {
 };
 
 extern struct backlight_device *backlight_device_register(const char *name,
-	void *devdata, struct backlight_properties *bp);
+	struct device *dev,void *devdata,struct backlight_properties *bp);
 extern void backlight_device_unregister(struct backlight_device *bd);
 
 #define to_backlight_device(obj) container_of(obj, struct backlight_device, class_dev)

             reply	other threads:[~2006-11-07 16:38 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-11-07 16:33 Yu Luming [this message]
2006-12-30 15:35 ` [patch 1/5] video sysfs support - take 2: Add dev argument for backlight_device_register Richard Purdie
2007-01-09 15:09   ` Luming Yu
2007-01-09 17:05     ` James Simmons

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200611080033.56035.luming.yu@gmail.com \
    --to=luming.yu@gmail.com \
    --cc=Matt_Domsch@dell.com \
    --cc=akpm@osdl.org \
    --cc=alessandro.guido@gmail.com \
    --cc=gelma@gelma.net \
    --cc=hughsient@gmail.com \
    --cc=ismail@pardus.org.tr \
    --cc=jengelh@linux01.gwdg.de \
    --cc=len.brown@intel.com \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pavel@ucw.cz \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox