Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 74fe0305 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6:
  ACPI: Set flag DOCK_UNDOCKING when triggered via sysfs
  Revert "ACPI: video: Ignore devices that aren't present in hardware"
  asus_acpi: remove misleading mask
  Revert "ACPI: video: Ignore ACPI video devices that aren't present in hardware"
  thermal: delete "default y"
  thermal: re-document thermal units
  Revert "thermal: fix generic thermal I/F for hwmon"
  ACPI: fix ATA_ACPI build
  ACPI: battery: Don't return -EFAIL on broken packages.
  ACPI: lockdep warning on boot, 2.6.25-rc5
parents fb00f762 13d93924
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -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",
+5 −6
Original line number Diff line number Diff line
@@ -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;
+1 −0
Original line number Diff line number Diff line
@@ -710,6 +710,7 @@ static ssize_t write_undock(struct device *dev, struct device_attribute *attr,
	if (!count)
		return -EINVAL;

	begin_undock(dock_station);
	ret = handle_eject_request(dock_station, ACPI_NOTIFY_EJECT_REQUEST);
	return ret ? ret: count;
}
+9 −3
Original line number Diff line number Diff line
@@ -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;
}

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

		if (irqs_disabled())
			local_irq_enable();

		return;
	}

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

		break;

	case ACPI_STATE_C2:
+1 −59
Original line number Diff line number Diff line
@@ -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.
	 */
@@ -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);
Loading