From: <cri...@us...> - 2006-12-08 17:02:09
|
Revision: 696 http://svn.sourceforge.net/hackndev/?rev=696&view=rev Author: cristianop Date: 2006-12-08 09:01:58 -0800 (Fri, 08 Dec 2006) Log Message: ----------- l4p: fix gpe's no backlight problem (configuration of the backligth's driver data) Modified Paths: -------------- linux4palm/linux/trunk/drivers/video/backlight/pxapwm_bl.c linux4palm/linux/trunk/include/asm-arm/arch-pxa/pxapwm-bl.h Modified: linux4palm/linux/trunk/drivers/video/backlight/pxapwm_bl.c =================================================================== --- linux4palm/linux/trunk/drivers/video/backlight/pxapwm_bl.c 2006-12-07 15:49:20 UTC (rev 695) +++ linux4palm/linux/trunk/drivers/video/backlight/pxapwm_bl.c 2006-12-08 17:01:58 UTC (rev 696) @@ -31,9 +31,9 @@ intensity &= bl->limit_mask; // set intensity to 0 if in power saving or fb is blanked - if (bl->power != FB_BLANK_UNBLANK) + if (bl->dev->props->power != FB_BLANK_UNBLANK) intensity = 0; - if (bl->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? @@ -60,6 +60,7 @@ } } + //printk("pxapwmbl: setting intensity to %d [bl->intensity = %d]\n", intensity, bl->intensity); switch (bl->pwm) { case 0: PWM_CTRL0 = prescaler; @@ -88,6 +89,9 @@ pxapwmbl_mach_turn_bl_off(); } } + + bl->dev->props->brightness = intensity; + bl->intensity=intensity; spin_unlock_irqrestore(&bl->lock, flags); } @@ -125,8 +129,9 @@ if (intensity < 0) intensity = 0; + pxapwmbl_send_intensity(bl, intensity); - bl->intensity=intensity; + return 0; } @@ -165,11 +170,13 @@ pxapwmbl_mach_turn_bl_on = bl->turn_bl_on; pxapwmbl_mach_turn_bl_off = bl->turn_bl_off; - bl->intensity = 0; bl->limit = 0; bl->lock = SPIN_LOCK_UNLOCKED; - - bl->power = FB_BLANK_UNBLANK; + + pxapwmbl_data.brightness = bl->default_intensity; + pxapwmbl_data.power = FB_BLANK_UNBLANK; + pxapwmbl_data.fb_blank = FB_BLANK_UNBLANK; + bl->off_threshold = 5; bl->dev = backlight_device_register ("pxapwm-bl", bl, &pxapwmbl_data); @@ -189,7 +196,7 @@ { struct pxapwmbl_platform_data *bl = pdev->dev.platform_data; - pxapwmbl_send_intensity(bl, 0); + pxapwmbl_send_intensity(bl, bl->default_intensity); backlight_device_unregister(bl->dev); Modified: linux4palm/linux/trunk/include/asm-arm/arch-pxa/pxapwm-bl.h =================================================================== --- linux4palm/linux/trunk/include/asm-arm/arch-pxa/pxapwm-bl.h 2006-12-07 15:49:20 UTC (rev 695) +++ linux4palm/linux/trunk/include/asm-arm/arch-pxa/pxapwm-bl.h 2006-12-08 17:01:58 UTC (rev 696) @@ -29,8 +29,6 @@ int prescaler; int intensity; - int power; - int fb_blank; int limit; int off_threshold; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |