Revision: 1000
http://svn.sourceforge.net/hackndev/?rev=1000&view=rev
Author: marex_z71
Date: 2007-05-27 10:44:20 -0700 (Sun, 27 May 2007)
Log Message:
-----------
l4p: Revised backlight driver now works with 2.6.21 . Notice the revision, it's 1000 :-)
Modified Paths:
--------------
linux4palm/linux/trunk/drivers/video/backlight/pxapwm_bl.c
Modified: linux4palm/linux/trunk/drivers/video/backlight/pxapwm_bl.c
===================================================================
--- linux4palm/linux/trunk/drivers/video/backlight/pxapwm_bl.c 2007-05-27 17:42:41 UTC (rev 999)
+++ linux4palm/linux/trunk/drivers/video/backlight/pxapwm_bl.c 2007-05-27 17:44:20 UTC (rev 1000)
@@ -18,7 +18,7 @@
#include <asm/arch/pxa-regs.h>
#include <asm/arch/pxapwm-bl.h>
-static struct backlight_properties pxapwmbl_data;
+static struct backlight_ops pxapwmbl_ops;
static void (*pxapwmbl_mach_turn_bl_on)(void);
static void (*pxapwmbl_mach_turn_bl_off)(void);
@@ -31,9 +31,9 @@
intensity &= bl->limit_mask;
// set intensity to 0 if in power saving or fb is blanked
- if (bl->dev->props->power != FB_BLANK_UNBLANK)
+ if (bl->dev->props.power != FB_BLANK_UNBLANK)
intensity = 0;
- if (bl->dev->props->fb_blank != FB_BLANK_UNBLANK)
+ if (bl->dev->props.fb_blank != FB_BLANK_UNBLANK)
intensity = 0;
/* Does the backlight frequency need to be configured on a per device basis?
@@ -90,7 +90,7 @@
}
}
- bl->dev->props->brightness = intensity;
+ bl->dev->props.brightness = intensity;
bl->intensity=intensity;
spin_unlock_irqrestore(&bl->lock, flags);
@@ -122,10 +122,10 @@
int intensity;
struct pxapwmbl_platform_data *bl = class_get_devdata(&bd->class_dev);
- intensity = bd->props->brightness;
+ intensity = bd->props.brightness;
- if (intensity > pxapwmbl_data.max_brightness)
- intensity = pxapwmbl_data.max_brightness;
+ if (intensity > bd->props.max_brightness)
+ intensity = bd->props.max_brightness;
if (intensity < 0)
intensity = 0;
@@ -154,9 +154,7 @@
}
EXPORT_SYMBOL(pxapwmbl_limit_intensity);
-
-static struct backlight_properties pxapwmbl_data = {
- .owner = THIS_MODULE,
+static struct backlight_ops pxapwmbl_ops = {
.get_brightness = pxapwmbl_get_intensity,
.update_status = pxapwmbl_update_status,
};
@@ -165,22 +163,23 @@
{
struct pxapwmbl_platform_data *bl = pdev->dev.platform_data;
- pxapwmbl_data.max_brightness = bl->max_intensity;
+ bl->dev = backlight_device_register ("pxapwm-bl", &pdev->dev,
+ bl, &pxapwmbl_ops);
+ bl->dev->props.max_brightness = bl->max_intensity;
+
pxapwmbl_mach_turn_bl_on = bl->turn_bl_on;
pxapwmbl_mach_turn_bl_off = bl->turn_bl_off;
bl->limit = 0;
bl->lock = SPIN_LOCK_UNLOCKED;
- pxapwmbl_data.brightness = bl->default_intensity;
- pxapwmbl_data.power = FB_BLANK_UNBLANK;
- pxapwmbl_data.fb_blank = FB_BLANK_UNBLANK;
+ bl->dev->props.brightness = bl->default_intensity;
+ bl->dev->props.power = FB_BLANK_UNBLANK;
+ bl->dev->props.fb_blank = FB_BLANK_UNBLANK;
bl->off_threshold = 5;
- bl->dev = backlight_device_register ("pxapwm-bl", &pdev->dev,
- bl, &pxapwmbl_data);
if (IS_ERR (bl->dev))
return PTR_ERR (bl->dev);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|