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.