[PATCH v1 2/2] sonypi: Check ACPI_COMPANION() against NULL at probe time

From: Rafael J. Wysocki

Date: Tue May 12 2026 - 12:21:33 EST


From: "Rafael J. Wysocki" <rafael.j.wysocki@xxxxxxxxx>

Every platform driver can be forced to match a device that doesn't match
its list of device IDs because of device_match_driver_override(), so
platform drivers that rely on the existence of a device's ACPI companion
object need to verify its presence.

Accordingly, add a requisite ACPI_COMPANION() check against NULL to the
sonypi driver.

Fixes: 7e488b0af021 ("sonypi: Convert ACPI driver to a platform one")
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>
---
drivers/char/sonypi.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)

--- a/drivers/char/sonypi.c
+++ b/drivers/char/sonypi.c
@@ -1117,7 +1117,11 @@ static int sonypi_disable(void)
#ifdef CONFIG_ACPI
static int sonypi_acpi_probe(struct platform_device *pdev)
{
- struct acpi_device *device = ACPI_COMPANION(&pdev->dev);
+ struct acpi_device *device;
+
+ device = ACPI_COMPANION(&pdev->dev);
+ if (!device)
+ return -ENODEV;

sonypi_acpi_device = device;
strcpy(acpi_device_name(device), "Sony laptop hotkeys");