aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video/nvidia
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@rpsys.net>2007-03-03 12:43:52 -0500
committerRichard Purdie <rpurdie@rpsys.net>2007-03-05 03:49:38 -0500
commit202d4e602555e68c2bc71775228876b0356785c8 (patch)
treee47c4013016e21a231b9d2873a2d75aa2750c5fe /drivers/video/nvidia
parent238576e12fef1d52751c6e08db2d0bdb0e248caf (diff)
backlight: Allow enable/disable of fb backlights, fixing regressions
Enabling the backlight by default appears to cause problems for many users. This patch disables backlight controls unless explicitly enabled by users via a module parameter. Since PMAC users are known to work, default to enabled in that case. Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Diffstat (limited to 'drivers/video/nvidia')
-rw-r--r--drivers/video/nvidia/nvidia.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/drivers/video/nvidia/nvidia.c b/drivers/video/nvidia/nvidia.c
index c18e9557ca30..b97ec6901263 100644
--- a/drivers/video/nvidia/nvidia.c
+++ b/drivers/video/nvidia/nvidia.c
@@ -83,6 +83,11 @@ static int bpp __devinitdata = 8;
83#ifdef CONFIG_MTRR 83#ifdef CONFIG_MTRR
84static int nomtrr __devinitdata = 0; 84static int nomtrr __devinitdata = 0;
85#endif 85#endif
86#ifdef CONFIG_PMAC_BACKLIGHT
87static int backlight __devinitdata = 1;
88#else
89static int backlight __devinitdata = 0;
90#endif
86 91
87static char *mode_option __devinitdata = NULL; 92static char *mode_option __devinitdata = NULL;
88 93
@@ -1311,7 +1316,10 @@ static int __devinit nvidiafb_probe(struct pci_dev *pd,
1311 nvidia_save_vga(par, &par->SavedReg); 1316 nvidia_save_vga(par, &par->SavedReg);
1312 1317
1313 pci_set_drvdata(pd, info); 1318 pci_set_drvdata(pd, info);
1314 nvidia_bl_init(par); 1319
1320 if (backlight)
1321 nvidia_bl_init(par);
1322
1315 if (register_framebuffer(info) < 0) { 1323 if (register_framebuffer(info) < 0) {
1316 printk(KERN_ERR PFX "error registering nVidia framebuffer\n"); 1324 printk(KERN_ERR PFX "error registering nVidia framebuffer\n");
1317 goto err_out_iounmap_fb; 1325 goto err_out_iounmap_fb;
@@ -1408,6 +1416,8 @@ static int __devinit nvidiafb_setup(char *options)
1408 paneltweak = simple_strtoul(this_opt+11, NULL, 0); 1416 paneltweak = simple_strtoul(this_opt+11, NULL, 0);
1409 } else if (!strncmp(this_opt, "vram:", 5)) { 1417 } else if (!strncmp(this_opt, "vram:", 5)) {
1410 vram = simple_strtoul(this_opt+5, NULL, 0); 1418 vram = simple_strtoul(this_opt+5, NULL, 0);
1419 } else if (!strncmp(this_opt, "backlight:", 10)) {
1420 backlight = simple_strtoul(this_opt+10, NULL, 0);
1411#ifdef CONFIG_MTRR 1421#ifdef CONFIG_MTRR
1412 } else if (!strncmp(this_opt, "nomtrr", 6)) { 1422 } else if (!strncmp(this_opt, "nomtrr", 6)) {
1413 nomtrr = 1; 1423 nomtrr = 1;