Re: [PATCH v8 16/17] PCI/pwrctl: add a PCI power control driver for power sequenced devices

Bjorn Helgaas
2024-06-04T23:23:49Z

On Tue, May 28, 2024 at 09:03:24PM +0200, Bartosz Golaszewski wrote:
> From: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
>
> Add a PCI power control driver that's capable of correctly powering up
> devices using the power sequencing subsystem. The first users of this
> driver are the ath11k module on QCA6390 and ath12k on WCN7850.

Can you add a little detail here about what benefit we will see from
this driver? E.g., something that doesn't work correctly now, but
will work with this driver?

> +static const struct of_device_id pci_pwrctl_pwrseq_of_match[] = {
> + {
> + /* ATH11K in QCA6390 package. */
> + .compatible = "pci17cb,1101",
> + .data = "wlan",
> + },
> + {
> + /* ATH12K in WCN7850 package. */
> + .compatible = "pci17cb,1107",
> + .data = "wlan",
> + },

IIUC, "pci17cb,1101" and "pci17cb,1107" exist partly so we can check
that a DTS conforms to the schema, e.g., a "pci17cb,1101" node
contains all the required regulators. For that use, we obviously need
a very specific "compatible" string.

Is there any opportunity to add a more generic "compatible" string in
addition to those so this list doesn't have to be updated for every
PMU? The .data here is "wlan" in both cases, and for this purpose, we
don't care whether it's "pci17cb,1101" or "pci17cb,1107".