Re: [PATCH v5 0/5] acpi: Store _PLD information and convert users

From: Rafael J. Wysocki
Date: Mon Dec 27 2021 - 11:18:39 EST


On Thu, Dec 23, 2021 at 9:16 AM Heikki Krogerus
<heikki.krogerus@xxxxxxxxxxxxxxx> wrote:
>
> Hi,
>
> The last version (v4) was not properly cleaned up. Should be now OK.

It looks good to me, so

Acked-by: Rafael J. Wysocki <rafael.j.wysocki@xxxxxxxxx>

for the ACPI-related changes in this series and please feel free to
route it through the USB tree if that's preferred.

Thanks!

> v4 cover letter:
>
> Now only storing the crc hash to a new member in struct acpi_device,
> just like proposed by Rafael. In port-mapper.c I'm then scanning the
> acpi bus separately with every port in order to find the matching
> devices.
>
>
> v3 cover letter:
>
> The _PLD buffer is no longer stored as requested by Rafael, so the
> drivers will need to continue to evaluate the _PLD if they need it.
>
> The stored locations will therefore only contain the list of other
> devices that share the location, but that is most important, and in
> practice the main goal of the series in any case.
>
>
> v2 cover letter:
>
> I'm now using the helpers device_match_acpi_dev() and
> device_match_fwnode() like Andy suggested. No other changes.
>
>
> The original cover letter:
>
> This removes the need for the drivers to always separately evaluate
> the _PLD. With the USB Type-C connector and USB port mapping this
> allows us to start using the component framework and remove the custom
> APIs.
>
> So far the only users of the _PLD information have been the USB
> drivers, but it seems it will be used also at least in some camera
> drivers later. These nevertheless touch mostly USB drivers.
>
> thanks,
>
> Heikki Krogerus (5):
> acpi: Export acpi_bus_type
> acpi: Store CRC-32 hash of the _PLD in struct acpi_device
> usb: Link the ports to the connectors they are attached to
> usb: typec: port-mapper: Convert to the component framework
> usb: Remove usb_for_each_port()
>
> Documentation/ABI/testing/sysfs-bus-usb | 9 +
> drivers/acpi/bus.c | 1 +
> drivers/acpi/scan.c | 16 ++
> drivers/usb/core/port.c | 32 +++
> drivers/usb/core/usb.c | 46 ----
> drivers/usb/typec/Makefile | 3 +-
> drivers/usb/typec/class.c | 2 -
> drivers/usb/typec/class.h | 10 +-
> drivers/usb/typec/port-mapper.c | 279 ++++--------------------
> include/acpi/acpi_bus.h | 1 +
> include/linux/usb.h | 9 -
> include/linux/usb/typec.h | 12 -
> 12 files changed, 105 insertions(+), 315 deletions(-)
>
> --
> 2.34.1
>