ACPI: LPSS: Add 80862289 ACPI _HID for second PWM controller on Cherry Trail
authorHans de Goede <hdegoede@redhat.com>
Tue, 18 Apr 2023 08:54:37 +0000 (10:54 +0200)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Tue, 18 Apr 2023 15:42:19 +0000 (17:42 +0200)
commit03c57b0160f621e1b2a05f9d4b7832ccfb10c391
tree24a80d6525d51ce778978750c0f11586407b82f0
parent6a8f57ae2eb07ab39a6f0ccad60c760743051026
ACPI: LPSS: Add 80862289 ACPI _HID for second PWM controller on Cherry Trail

On some Cherry Trail devices the second PWM controller uses
80862289 as ACPI _HID, rather then using 80862288 as is done
for both controllers on most models.

Add the missing 80862289 ACPI _HID, note this uses its own
lpss_device_desc, without ".setup = bsw_pwm_setup" so that
the pwm_lookup is not added for it.
On devices where both controllers use the 80862288 _HID bsw_pwm_setup()
does a UID check to avoid registering the lookup for the second
controller but that will not work here.

Adding the missing id fixes the second PWM controller no longer
working after the entire LPSS1 island has been in D3 at least
once, which causes the contents of the LPSS private registers
to get lost. Adding the _HID makes acpi_lpss restore these
when the controller moves from D3 to D0.

Reviewed-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/acpi/acpi_lpss.c