aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi/video.c
diff options
context:
space:
mode:
authorMatthew Wilcox <willy@linux.intel.com>2008-10-10 02:22:59 -0400
committerLen Brown <len.brown@intel.com>2008-10-11 02:47:33 -0400
commit27663c5855b10af9ec67bc7dfba001426ba21222 (patch)
tree2b8c520bb57a792045d7d072398a4d840fada6c0 /drivers/acpi/video.c
parent3fa8749e584b55f1180411ab1b51117190bac1e5 (diff)
ACPI: Change acpi_evaluate_integer to support 64-bit on 32-bit kernels
As of version 2.0, ACPI can return 64-bit integers. The current acpi_evaluate_integer only supports 64-bit integers on 64-bit platforms. Change the argument to take a pointer to an acpi_integer so we support 64-bit integers on all platforms. lenb: replaced use of "acpi_integer" with "unsigned long long" lenb: fixed bug in acpi_thermal_trips_update() Signed-off-by: Matthew Wilcox <willy@linux.intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi/video.c')
-rw-r--r--drivers/acpi/video.c42
1 files changed, 21 insertions, 21 deletions
diff --git a/drivers/acpi/video.c b/drivers/acpi/video.c
index e8a51a1700f7..79409c9d2ad6 100644
--- a/drivers/acpi/video.c
+++ b/drivers/acpi/video.c
@@ -291,20 +291,20 @@ static int acpi_video_device_lcd_set_level(struct acpi_video_device *device,
291 int level); 291 int level);
292static int acpi_video_device_lcd_get_level_current( 292static int acpi_video_device_lcd_get_level_current(
293 struct acpi_video_device *device, 293 struct acpi_video_device *device,
294 unsigned long *level); 294 unsigned long long *level);
295static int acpi_video_get_next_level(struct acpi_video_device *device, 295static int acpi_video_get_next_level(struct acpi_video_device *device,
296 u32 level_current, u32 event); 296 u32 level_current, u32 event);
297static void acpi_video_switch_brightness(struct acpi_video_device *device, 297static void acpi_video_switch_brightness(struct acpi_video_device *device,
298 int event); 298 int event);
299static int acpi_video_device_get_state(struct acpi_video_device *device, 299static int acpi_video_device_get_state(struct acpi_video_device *device,
300 unsigned long *state); 300 unsigned long long *state);
301static int acpi_video_output_get(struct output_device *od); 301static int acpi_video_output_get(struct output_device *od);
302static int acpi_video_device_set_state(struct acpi_video_device *device, int state); 302static int acpi_video_device_set_state(struct acpi_video_device *device, int state);
303 303
304/*backlight device sysfs support*/ 304/*backlight device sysfs support*/
305static int acpi_video_get_brightness(struct backlight_device *bd) 305static int acpi_video_get_brightness(struct backlight_device *bd)
306{ 306{
307 unsigned long cur_level; 307 unsigned long long cur_level;
308 int i; 308 int i;
309 struct acpi_video_device *vd = 309 struct acpi_video_device *vd =
310 (struct acpi_video_device *)bl_get_data(bd); 310 (struct acpi_video_device *)bl_get_data(bd);
@@ -336,7 +336,7 @@ static struct backlight_ops acpi_backlight_ops = {
336/*video output device sysfs support*/ 336/*video output device sysfs support*/
337static int acpi_video_output_get(struct output_device *od) 337static int acpi_video_output_get(struct output_device *od)
338{ 338{
339 unsigned long state; 339 unsigned long long state;
340 struct acpi_video_device *vd = 340 struct acpi_video_device *vd =
341 (struct acpi_video_device *)dev_get_drvdata(&od->dev); 341 (struct acpi_video_device *)dev_get_drvdata(&od->dev);
342 acpi_video_device_get_state(vd, &state); 342 acpi_video_device_get_state(vd, &state);
@@ -370,7 +370,7 @@ static int video_get_cur_state(struct thermal_cooling_device *cdev, char *buf)
370{ 370{
371 struct acpi_device *device = cdev->devdata; 371 struct acpi_device *device = cdev->devdata;
372 struct acpi_video_device *video = acpi_driver_data(device); 372 struct acpi_video_device *video = acpi_driver_data(device);
373 unsigned long level; 373 unsigned long long level;
374 int state; 374 int state;
375 375
376 acpi_video_device_lcd_get_level_current(video, &level); 376 acpi_video_device_lcd_get_level_current(video, &level);
@@ -410,7 +410,7 @@ static struct thermal_cooling_device_ops video_cooling_ops = {
410/* device */ 410/* device */
411 411
412static int 412static int
413acpi_video_device_query(struct acpi_video_device *device, unsigned long *state) 413acpi_video_device_query(struct acpi_video_device *device, unsigned long long *state)
414{ 414{
415 int status; 415 int status;
416 416
@@ -421,7 +421,7 @@ acpi_video_device_query(struct acpi_video_device *device, unsigned long *state)
421 421
422static int 422static int
423acpi_video_device_get_state(struct acpi_video_device *device, 423acpi_video_device_get_state(struct acpi_video_device *device,
424 unsigned long *state) 424 unsigned long long *state)
425{ 425{
426 int status; 426 int status;
427 427
@@ -436,7 +436,7 @@ acpi_video_device_set_state(struct acpi_video_device *device, int state)
436 int status; 436 int status;
437 union acpi_object arg0 = { ACPI_TYPE_INTEGER }; 437 union acpi_object arg0 = { ACPI_TYPE_INTEGER };
438 struct acpi_object_list args = { 1, &arg0 }; 438 struct acpi_object_list args = { 1, &arg0 };
439 unsigned long ret; 439 unsigned long long ret;
440 440
441 441
442 arg0.integer.value = state; 442 arg0.integer.value = state;
@@ -495,7 +495,7 @@ acpi_video_device_lcd_set_level(struct acpi_video_device *device, int level)
495 495
496static int 496static int
497acpi_video_device_lcd_get_level_current(struct acpi_video_device *device, 497acpi_video_device_lcd_get_level_current(struct acpi_video_device *device,
498 unsigned long *level) 498 unsigned long long *level)
499{ 499{
500 if (device->cap._BQC) 500 if (device->cap._BQC)
501 return acpi_evaluate_integer(device->dev->handle, "_BQC", NULL, 501 return acpi_evaluate_integer(device->dev->handle, "_BQC", NULL,
@@ -549,7 +549,7 @@ static int
549acpi_video_bus_set_POST(struct acpi_video_bus *video, unsigned long option) 549acpi_video_bus_set_POST(struct acpi_video_bus *video, unsigned long option)
550{ 550{
551 int status; 551 int status;
552 unsigned long tmp; 552 unsigned long long tmp;
553 union acpi_object arg0 = { ACPI_TYPE_INTEGER }; 553 union acpi_object arg0 = { ACPI_TYPE_INTEGER };
554 struct acpi_object_list args = { 1, &arg0 }; 554 struct acpi_object_list args = { 1, &arg0 };
555 555
@@ -564,7 +564,7 @@ acpi_video_bus_set_POST(struct acpi_video_bus *video, unsigned long option)
564} 564}
565 565
566static int 566static int
567acpi_video_bus_get_POST(struct acpi_video_bus *video, unsigned long *id) 567acpi_video_bus_get_POST(struct acpi_video_bus *video, unsigned long long *id)
568{ 568{
569 int status; 569 int status;
570 570
@@ -575,7 +575,7 @@ acpi_video_bus_get_POST(struct acpi_video_bus *video, unsigned long *id)
575 575
576static int 576static int
577acpi_video_bus_POST_options(struct acpi_video_bus *video, 577acpi_video_bus_POST_options(struct acpi_video_bus *video,
578 unsigned long *options) 578 unsigned long long *options)
579{ 579{
580 int status; 580 int status;
581 581
@@ -918,7 +918,7 @@ static int acpi_video_device_state_seq_show(struct seq_file *seq, void *offset)
918{ 918{
919 int status; 919 int status;
920 struct acpi_video_device *dev = seq->private; 920 struct acpi_video_device *dev = seq->private;
921 unsigned long state; 921 unsigned long long state;
922 922
923 923
924 if (!dev) 924 if (!dev)
@@ -927,14 +927,14 @@ static int acpi_video_device_state_seq_show(struct seq_file *seq, void *offset)
927 status = acpi_video_device_get_state(dev, &state); 927 status = acpi_video_device_get_state(dev, &state);
928 seq_printf(seq, "state: "); 928 seq_printf(seq, "state: ");
929 if (ACPI_SUCCESS(status)) 929 if (ACPI_SUCCESS(status))
930 seq_printf(seq, "0x%02lx\n", state); 930 seq_printf(seq, "0x%02llx\n", state);
931 else 931 else
932 seq_printf(seq, "<not supported>\n"); 932 seq_printf(seq, "<not supported>\n");
933 933
934 status = acpi_video_device_query(dev, &state); 934 status = acpi_video_device_query(dev, &state);
935 seq_printf(seq, "query: "); 935 seq_printf(seq, "query: ");
936 if (ACPI_SUCCESS(status)) 936 if (ACPI_SUCCESS(status))
937 seq_printf(seq, "0x%02lx\n", state); 937 seq_printf(seq, "0x%02llx\n", state);
938 else 938 else
939 seq_printf(seq, "<not supported>\n"); 939 seq_printf(seq, "<not supported>\n");
940 940
@@ -1217,7 +1217,7 @@ static int acpi_video_bus_ROM_open_fs(struct inode *inode, struct file *file)
1217static int acpi_video_bus_POST_info_seq_show(struct seq_file *seq, void *offset) 1217static int acpi_video_bus_POST_info_seq_show(struct seq_file *seq, void *offset)
1218{ 1218{
1219 struct acpi_video_bus *video = seq->private; 1219 struct acpi_video_bus *video = seq->private;
1220 unsigned long options; 1220 unsigned long long options;
1221 int status; 1221 int status;
1222 1222
1223 1223
@@ -1232,7 +1232,7 @@ static int acpi_video_bus_POST_info_seq_show(struct seq_file *seq, void *offset)
1232 printk(KERN_WARNING PREFIX 1232 printk(KERN_WARNING PREFIX
1233 "This indicates a BIOS bug. Please contact the manufacturer.\n"); 1233 "This indicates a BIOS bug. Please contact the manufacturer.\n");
1234 } 1234 }
1235 printk("%lx\n", options); 1235 printk("%llx\n", options);
1236 seq_printf(seq, "can POST: <integrated video>"); 1236 seq_printf(seq, "can POST: <integrated video>");
1237 if (options & 2) 1237 if (options & 2)
1238 seq_printf(seq, " <PCI video>"); 1238 seq_printf(seq, " <PCI video>");
@@ -1256,7 +1256,7 @@ static int acpi_video_bus_POST_seq_show(struct seq_file *seq, void *offset)
1256{ 1256{
1257 struct acpi_video_bus *video = seq->private; 1257 struct acpi_video_bus *video = seq->private;
1258 int status; 1258 int status;
1259 unsigned long id; 1259 unsigned long long id;
1260 1260
1261 1261
1262 if (!video) 1262 if (!video)
@@ -1303,7 +1303,7 @@ acpi_video_bus_write_POST(struct file *file,
1303 struct seq_file *m = file->private_data; 1303 struct seq_file *m = file->private_data;
1304 struct acpi_video_bus *video = m->private; 1304 struct acpi_video_bus *video = m->private;
1305 char str[12] = { 0 }; 1305 char str[12] = { 0 };
1306 unsigned long opt, options; 1306 unsigned long long opt, options;
1307 1307
1308 1308
1309 if (!video || count + 1 > sizeof str) 1309 if (!video || count + 1 > sizeof str)
@@ -1473,7 +1473,7 @@ static int
1473acpi_video_bus_get_one_device(struct acpi_device *device, 1473acpi_video_bus_get_one_device(struct acpi_device *device,
1474 struct acpi_video_bus *video) 1474 struct acpi_video_bus *video)
1475{ 1475{
1476 unsigned long device_id; 1476 unsigned long long device_id;
1477 int status; 1477 int status;
1478 struct acpi_video_device *data; 1478 struct acpi_video_device *data;
1479 struct acpi_video_device_attrib* attribute; 1479 struct acpi_video_device_attrib* attribute;
@@ -1724,7 +1724,7 @@ acpi_video_get_next_level(struct acpi_video_device *device,
1724static void 1724static void
1725acpi_video_switch_brightness(struct acpi_video_device *device, int event) 1725acpi_video_switch_brightness(struct acpi_video_device *device, int event)
1726{ 1726{
1727 unsigned long level_current, level_next; 1727 unsigned long long level_current, level_next;
1728 if (!device->brightness) 1728 if (!device->brightness)
1729 return; 1729 return;
1730 acpi_video_device_lcd_get_level_current(device, &level_current); 1730 acpi_video_device_lcd_get_level_current(device, &level_current);