2021-10-10 17:52:57

by Rafael J. Wysocki

[permalink] [raw]
Subject: [PATCH v2] ACPI: LPSS: Use ACPI_COMPANION() directly

From: Rafael J. Wysocki <[email protected]>

The ACPI_HANDLE() macro returns the ACPI handle of the ACPI device
object returned by the ACPI_COMPANION() macro, so it is more
straightforward to call the latter directly instead of passing
the handle produced by the former to acpi_bus_get_device().

Modify the code accordingly (no intentional functional impact).

Signed-off-by: Rafael J. Wysocki <[email protected]>
---

-> v2:
* Set ret = 0 on successful return from lpss_reg_read().

---
drivers/acpi/acpi_lpss.c | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)

Index: linux-pm/drivers/acpi/acpi_lpss.c
===================================================================
--- linux-pm.orig/drivers/acpi/acpi_lpss.c
+++ linux-pm/drivers/acpi/acpi_lpss.c
@@ -712,14 +712,13 @@ static void __lpss_reg_write(u32 val, st

static int lpss_reg_read(struct device *dev, unsigned int reg, u32 *val)
{
- struct acpi_device *adev;
+ struct acpi_device *adev = ACPI_COMPANION(dev);
struct lpss_private_data *pdata;
unsigned long flags;
int ret;

- ret = acpi_bus_get_device(ACPI_HANDLE(dev), &adev);
- if (WARN_ON(ret))
- return ret;
+ if (WARN_ON(!adev))
+ return -ENODEV;

spin_lock_irqsave(&dev->power.lock, flags);
if (pm_runtime_suspended(dev)) {
@@ -732,6 +731,7 @@ static int lpss_reg_read(struct device *
goto out;
}
*val = __lpss_reg_read(pdata, reg);
+ ret = 0;

out:
spin_unlock_irqrestore(&dev->power.lock, flags);
@@ -1266,7 +1266,8 @@ static int acpi_lpss_platform_notify(str
if (!id || !id->driver_data)
return 0;

- if (acpi_bus_get_device(ACPI_HANDLE(&pdev->dev), &adev))
+ adev = ACPI_COMPANION(&pdev->dev);
+ if (!adev)
return 0;

pdata = acpi_driver_data(adev);




2021-10-11 07:04:12

by Mika Westerberg

[permalink] [raw]
Subject: Re: [PATCH v2] ACPI: LPSS: Use ACPI_COMPANION() directly

On Sun, Oct 10, 2021 at 07:23:01PM +0200, Rafael J. Wysocki wrote:
> From: Rafael J. Wysocki <[email protected]>
>
> The ACPI_HANDLE() macro returns the ACPI handle of the ACPI device
> object returned by the ACPI_COMPANION() macro, so it is more
> straightforward to call the latter directly instead of passing
> the handle produced by the former to acpi_bus_get_device().
>
> Modify the code accordingly (no intentional functional impact).
>
> Signed-off-by: Rafael J. Wysocki <[email protected]>

Reviewed-by: Mika Westerberg <[email protected]>