Re: [PATCH v1 00/15] create power sequencing subsystem

From: Luca Weiss
Date: Fri Sep 23 2022 - 10:39:32 EST


Hi Dmitry,

On Wed Oct 6, 2021 at 5:53 AM CEST, Dmitry Baryshkov wrote:
> This is a proposed power sequencer subsystem. This is a
> generification of the MMC pwrseq code. The subsystem tries to abstract
> the idea of complex power-up/power-down/reset of the devices.
>
> The primary set of devices that promted me to create this patchset is
> the Qualcomm BT+WiFi family of chips. They reside on serial+platform
> or serial + SDIO interfaces (older generations) or on serial+PCIe (newer
> generations). They require a set of external voltage regulators to be
> powered on and (some of them) have separate WiFi and Bluetooth enable
> GPIOs.
>
> The major drawback for now is the lack of proper PCIe integration
> At this moment support for PCIe is hacked up to be able to test the
> PCIe part of qca6390. Proper PCIe support would require automatically
> powering up the devices before the scan basing on the proper device
> structure in the device tree. This two last patches are noted as WIP and
> are included into the patchset for the purpose of testing WiFi on newer
> chips (like qca6390/qca6391).

What's the status of this series? With this I have gotten Bluetooth to
somewhat work on sm7225-fairphone-fp4, which is using WCN3990/WCN3988.

Is there another solution with a different patch series that could make
it work also?

The latest I could find regarding some new Bluetooth thing is the
following email from June 2022, but nothing seems to have happened since
then.
https://lore.kernel.org/linux-arm-msm/SJ0PR02MB7135746D204F13550E9BAE77F8B29@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/

Regards
Luca

>
> Changes since RFC v2:
> - Add documentation for the pwrseq code. Document data structures,
> macros and exported functions.
> - Export of_pwrseq_xlate_onecell()
> - Add separate pwrseq_set_drvdata() function to follow the typical API
> design
> - Remove pwrseq_get_optional()/devm_pwrseq_get_optional()
> - Moved code to handle old mmc-pwrseq binding to the MMC patch
> - Split of_pwrseq_xlate_onecell() support to a separate patch
>
> Changes since RFC v1:
> - Provider pwrseq fallback support
> - Implement fallback support in pwrseq_qca.
> - Mmove susclk handling to pwrseq_qca.
> - Significantly simplify hci_qca.c changes, by dropping all legacy
> code. Now hci_qca uses only pwrseq calls to power up/down bluetooth
> parts of the chip.