[PATCH 0/2] Broadcom's PMB (Power Management Bus) support
From: Rafał Miłecki
Date: Fri Dec 11 2020 - 17:01:35 EST
From: Rafał Miłecki <rafal@xxxxxxxxxx>
PMB is a hardware block used for powering SoC devices like PCIe, USB,
SATA. Initially I planned to treat it as a reset controller and Philipp
pointed out in review that PMB driver should use a power subsystem.
This is my refactored support.
***
Please note one difference when compared to the initial reset attempt.
As I store info about SoC devices in the driver now, I had to put
support for multiple buses there. That's required to avoid things like:
compatible = "brcm,bcm4908-pmb-no-1";
compatible = "brcm,bcm4908-pmb-no-2";
So now a single "reg" covers bigger buses (e.g. 0x40) in size, see:
reg = <0x802800e0 0x40>;
Other SoCs my use something like:
reg = <0x802800e0 0x20>;
reg = <0x802800e0 0x60>;
***
AFAIU this should go through Florian's tree. I based in on top of the
soc-arm64/next.
Rafał Miłecki (2):
dt-bindings: power: document Broadcom's PMB binding
soc: bcm: add PM driver for Broadcom's PMB
.../bindings/power/brcm,bcm-pmb.yaml | 50 +++
drivers/soc/bcm/Kconfig | 8 +
drivers/soc/bcm/Makefile | 1 +
drivers/soc/bcm/bcm-pmb.c | 335 ++++++++++++++++++
include/dt-bindings/soc/bcm-pmb.h | 11 +
5 files changed, 405 insertions(+)
create mode 100644 Documentation/devicetree/bindings/power/brcm,bcm-pmb.yaml
create mode 100644 drivers/soc/bcm/bcm-pmb.c
create mode 100644 include/dt-bindings/soc/bcm-pmb.h
--
2.26.2