Skip to content

Commit

Permalink
backlight: mbp_nvidia_bl - Add a debug switch
Browse files Browse the repository at this point in the history
This patch adds a debug switch to enable (little) diagnostic
output, to help to trace down the remaining problems.

Signed-off-by: Mario Schwalbe <schwalbe@inf.tu-dresden.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
  • Loading branch information
Mario Schwalbe authored and Richard Purdie committed Apr 6, 2009
1 parent c78a628 commit 1a468ba
Showing 1 changed file with 31 additions and 2 deletions.
33 changes: 31 additions & 2 deletions drivers/video/backlight/mbp_nvidia_bl.c
Original file line number Diff line number Diff line change
Expand Up @@ -36,23 +36,40 @@ struct dmi_match_data {
struct backlight_ops backlight_ops;
};

/* Module parameters. */
static int debug;
module_param_named(debug, debug, int, 0644);
MODULE_PARM_DESC(debug, "Set to one to enable debugging messages.");

/*
* Implementation for MacBooks with Intel chipset.
*/
static int intel_chipset_send_intensity(struct backlight_device *bd)
{
int intensity = bd->props.brightness;

if (debug)
printk(KERN_DEBUG "mbp_nvidia_bl: setting brightness to %d\n",
intensity);

outb(0x04 | (intensity << 4), 0xb3);
outb(0xbf, 0xb2);
return 0;
}

static int intel_chipset_get_intensity(struct backlight_device *bd)
{
int intensity;

outb(0x03, 0xb3);
outb(0xbf, 0xb2);
return inb(0xb3) >> 4;
intensity = inb(0xb3) >> 4;

if (debug)
printk(KERN_DEBUG "mbp_nvidia_bl: read brightness of %d\n",
intensity);

return intensity;
}

static const struct dmi_match_data intel_chipset_data = {
Expand All @@ -72,16 +89,28 @@ static int nvidia_chipset_send_intensity(struct backlight_device *bd)
{
int intensity = bd->props.brightness;

if (debug)
printk(KERN_DEBUG "mbp_nvidia_bl: setting brightness to %d\n",
intensity);

outb(0x04 | (intensity << 4), 0x52f);
outb(0xbf, 0x52e);
return 0;
}

static int nvidia_chipset_get_intensity(struct backlight_device *bd)
{
int intensity;

outb(0x03, 0x52f);
outb(0xbf, 0x52e);
return inb(0x52f) >> 4;
intensity = inb(0x52f) >> 4;

if (debug)
printk(KERN_DEBUG "mbp_nvidia_bl: read brightness of %d\n",
intensity);

return intensity;
}

static const struct dmi_match_data nvidia_chipset_data = {
Expand Down

0 comments on commit 1a468ba

Please sign in to comment.