Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 87459
b: refs/heads/master
c: d9ea136
h: refs/heads/master
i:
  87457: ff13fed
  87455: 0c0fe8a
v: v3
  • Loading branch information
Len Brown committed Mar 18, 2008
1 parent f69255c commit d2020f2
Show file tree
Hide file tree
Showing 6 changed files with 18 additions and 70 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: ece54e2ff45062852e4647e85b2bb5f6aee8211c
refs/heads/master: d9ea1364d37b53710519909ab125a53b0a8ca64f
2 changes: 1 addition & 1 deletion trunk/drivers/acpi/asus_acpi.c
Original file line number Diff line number Diff line change
Expand Up @@ -610,7 +610,7 @@ write_led(const char __user * buffer, unsigned long count,
(led_out) ? (hotk->status | ledmask) : (hotk->status & ~ledmask);

if (invert) /* invert target value */
led_out = !led_out & 0x1;
led_out = !led_out;

if (!write_acpi_int(hotk->handle, ledname, led_out, NULL))
printk(KERN_WARNING "Asus ACPI: LED (%s) write failed\n",
Expand Down
11 changes: 5 additions & 6 deletions trunk/drivers/acpi/battery.c
Original file line number Diff line number Diff line change
Expand Up @@ -293,13 +293,12 @@ static int extract_package(struct acpi_battery *battery,
strncpy(ptr, (u8 *)&element->integer.value,
sizeof(acpi_integer));
ptr[sizeof(acpi_integer)] = 0;
} else return -EFAULT;
} else
*ptr = 0; /* don't have value */
} else {
if (element->type == ACPI_TYPE_INTEGER) {
int *x = (int *)((u8 *)battery +
offsets[i].offset);
*x = element->integer.value;
} else return -EFAULT;
int *x = (int *)((u8 *)battery + offsets[i].offset);
*x = (element->type == ACPI_TYPE_INTEGER) ?
element->integer.value : -1;
}
}
return 0;
Expand Down
12 changes: 9 additions & 3 deletions trunk/drivers/acpi/processor_idle.c
Original file line number Diff line number Diff line change
Expand Up @@ -216,8 +216,10 @@ static void acpi_safe_halt(void)
* test NEED_RESCHED:
*/
smp_mb();
if (!need_resched())
if (!need_resched()) {
safe_halt();
local_irq_disable();
}
current_thread_info()->status |= TS_POLLING;
}

Expand Down Expand Up @@ -421,7 +423,9 @@ static void acpi_processor_idle(void)
else
acpi_safe_halt();

local_irq_enable();
if (irqs_disabled())
local_irq_enable();

return;
}

Expand Down Expand Up @@ -530,7 +534,9 @@ static void acpi_processor_idle(void)
* skew otherwise.
*/
sleep_ticks = 0xFFFFFFFF;
local_irq_enable();
if (irqs_disabled())
local_irq_enable();

break;

case ACPI_STATE_C2:
Expand Down
60 changes: 1 addition & 59 deletions trunk/drivers/acpi/video.c
Original file line number Diff line number Diff line change
Expand Up @@ -807,40 +807,11 @@ static void acpi_video_bus_find_cap(struct acpi_video_bus *video)
static int acpi_video_bus_check(struct acpi_video_bus *video)
{
acpi_status status = -ENOENT;
long device_id;
struct device *dev;
struct acpi_device *device;


if (!video)
return -EINVAL;

device = video->device;

status =
acpi_evaluate_integer(device->handle, "_ADR", NULL, &device_id);

if (!ACPI_SUCCESS(status))
return -ENODEV;

/* We need to attempt to determine whether the _ADR refers to a
PCI device or not. There's no terribly good way to do this,
so the best we can hope for is to assume that there'll never
be a video device in the host bridge */
if (device_id >= 0x10000) {
/* It looks like a PCI device. Does it exist? */
dev = acpi_get_physical_device(device->handle);
} else {
/* It doesn't look like a PCI device. Does its parent
exist? */
acpi_handle phandle;
if (acpi_get_parent(device->handle, &phandle))
return -ENODEV;
dev = acpi_get_physical_device(phandle);
}
if (!dev)
return -ENODEV;
put_device(dev);

/* Since there is no HID, CID and so on for VGA driver, we have
* to check well known required nodes.
*/
Expand Down Expand Up @@ -1366,37 +1337,8 @@ acpi_video_bus_write_DOS(struct file *file,

static int acpi_video_bus_add_fs(struct acpi_device *device)
{
long device_id;
int status;
struct proc_dir_entry *entry = NULL;
struct acpi_video_bus *video;
struct device *dev;

status =
acpi_evaluate_integer(device->handle, "_ADR", NULL, &device_id);

if (!ACPI_SUCCESS(status))
return -ENODEV;

/* We need to attempt to determine whether the _ADR refers to a
PCI device or not. There's no terribly good way to do this,
so the best we can hope for is to assume that there'll never
be a video device in the host bridge */
if (device_id >= 0x10000) {
/* It looks like a PCI device. Does it exist? */
dev = acpi_get_physical_device(device->handle);
} else {
/* It doesn't look like a PCI device. Does its parent
exist? */
acpi_handle phandle;
if (acpi_get_parent(device->handle, &phandle))
return -ENODEV;
dev = acpi_get_physical_device(phandle);
}
if (!dev)
return -ENODEV;
put_device(dev);



video = acpi_driver_data(device);
Expand Down
1 change: 1 addition & 0 deletions trunk/drivers/ata/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ config ATA_NONSTANDARD
config ATA_ACPI
bool
depends on ACPI && PCI
select ACPI_DOCK
default y
help
This option adds support for ATA-related ACPI objects.
Expand Down

0 comments on commit d2020f2

Please sign in to comment.