summaryrefslogtreecommitdiffstats
path: root/drivers/video/console
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@rpsys.net>2007-02-09 10:46:45 +0100
committerRichard Purdie <rpurdie@rpsys.net>2007-02-20 09:38:45 +0100
commit994efacdf9a087b52f71e620b58dfa526b0cf928 (patch)
tree2b2668df970fe350ce2ab4a7bb7ae91d6313ce0f /drivers/video/console
parentbacklight: Fix Kconfig entries (diff)
downloadlinux-994efacdf9a087b52f71e620b58dfa526b0cf928.tar.xz
linux-994efacdf9a087b52f71e620b58dfa526b0cf928.zip
backlight/fbcon: Add FB_EVENT_CONBLANK
The backlight class wants notification whenever the console is blanked but doesn't get this when hardware blanking fails and software blanking is used. Changing FB_EVENT_BLANK to report both would be a behaviour change which could confuse the console layer so add a new event for software blanking and have the backlight class listen for both. Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Diffstat (limited to 'drivers/video/console')
-rw-r--r--drivers/video/console/fbcon.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/video/console/fbcon.c b/drivers/video/console/fbcon.c
index be3f2c3f132c..0429fd2cece0 100644
--- a/drivers/video/console/fbcon.c
+++ b/drivers/video/console/fbcon.c
@@ -2233,6 +2233,8 @@ static int fbcon_switch(struct vc_data *vc)
static void fbcon_generic_blank(struct vc_data *vc, struct fb_info *info,
int blank)
{
+ struct fb_event event;
+
if (blank) {
unsigned short charmask = vc->vc_hi_font_mask ?
0x1ff : 0xff;
@@ -2243,6 +2245,11 @@ static void fbcon_generic_blank(struct vc_data *vc, struct fb_info *info,
fbcon_clear(vc, 0, 0, vc->vc_rows, vc->vc_cols);
vc->vc_video_erase_char = oldc;
}
+
+
+ event.info = info;
+ event.data = &blank;
+ fb_notifier_call_chain(FB_EVENT_CONBLANK, &event);
}
static int fbcon_blank(struct vc_data *vc, int blank, int mode_switch)