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

Commit 7ab66185 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull ACPI fix from Rafael Wysocki:
 "This fixes a core device enumeration code change made in 4.10, in
  order to address a reported issue, that went too far.

  Specifics:

   - Refine the check for the existence of _HID in find_child_checks()
     so that it doesn't trigger for device objects with device IDs made
     up by the kernel (Rafael Wysocki)"

* tag 'acpi-4.11-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
  ACPI / scan: Prefer devices without _HID for _ADR matching
parents 50bdd7a0 dc752d54
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -99,13 +99,13 @@ static int find_child_checks(struct acpi_device *adev, bool check_children)
		return -ENODEV;

	/*
	 * If the device has a _HID (or _CID) returning a valid ACPI/PNP
	 * device ID, it is better to make it look less attractive here, so that
	 * the other device with the same _ADR value (that may not have a valid
	 * device ID) can be matched going forward.  [This means a second spec
	 * violation in a row, so whatever we do here is best effort anyway.]
	 * If the device has a _HID returning a valid ACPI/PNP device ID, it is
	 * better to make it look less attractive here, so that the other device
	 * with the same _ADR value (that may not have a valid device ID) can be
	 * matched going forward.  [This means a second spec violation in a row,
	 * so whatever we do here is best effort anyway.]
	 */
	return sta_present && list_empty(&adev->pnp.ids) ?
	return sta_present && !adev->pnp.type.platform_id ?
			FIND_CHILD_MAX_SCORE : FIND_CHILD_MIN_SCORE;
}