ACPI: video: Don't call absent methods

Signed-off-by: Ryan May <rmay@ou.edu>
Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de>
Signed-off-by: Len Brown <len.brown@intel.com>
This commit is contained in:
Alexey Starikovskiy 2007-09-03 16:29:58 +04:00 committed by Len Brown
parent 40ffbfad6b
commit 4500ca8e22
1 changed files with 10 additions and 8 deletions

View File

@ -409,14 +409,16 @@ acpi_video_device_lcd_query_levels(struct acpi_video_device *device,
static int static int
acpi_video_device_lcd_set_level(struct acpi_video_device *device, int level) acpi_video_device_lcd_set_level(struct acpi_video_device *device, int level)
{ {
int status; int status = AE_OK;
union acpi_object arg0 = { ACPI_TYPE_INTEGER }; union acpi_object arg0 = { ACPI_TYPE_INTEGER };
struct acpi_object_list args = { 1, &arg0 }; struct acpi_object_list args = { 1, &arg0 };
arg0.integer.value = level; arg0.integer.value = level;
status = acpi_evaluate_object(device->dev->handle, "_BCM", &args, NULL); if (device->cap._BCM)
status = acpi_evaluate_object(device->dev->handle, "_BCM",
&args, NULL);
device->brightness->curr = level;
printk(KERN_DEBUG "set_level status: %x\n", status); printk(KERN_DEBUG "set_level status: %x\n", status);
return status; return status;
} }
@ -425,11 +427,11 @@ static int
acpi_video_device_lcd_get_level_current(struct acpi_video_device *device, acpi_video_device_lcd_get_level_current(struct acpi_video_device *device,
unsigned long *level) unsigned long *level)
{ {
int status; if (device->cap._BQC)
return acpi_evaluate_integer(device->dev->handle, "_BQC", NULL,
status = acpi_evaluate_integer(device->dev->handle, "_BQC", NULL, level); level);
*level = device->brightness->curr;
return status; return AE_OK;
} }
static int static int