Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dt-bindings: power: document Broadcom's PMB binding

Broadcom's PMB is power controller used for disabling and enabling SoC
devices.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Reviewed-by: Rob Herring <robh@kernel.org>
Acked-by: Florian Fainelli <f.fainelli@gmail.com>
Acked-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>

authored by

Rafał Miłecki and committed by
Florian Fainelli
82853543 5c8fe583

+61
+50
Documentation/devicetree/bindings/power/brcm,bcm-pmb.yaml
··· 1 + # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/power/brcm,bcm-pmb.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: Broadcom PMB (Power Management Bus) controller 8 + 9 + description: This document describes Broadcom's PMB controller. It supports 10 + powering various types of connected devices (e.g. PCIe, USB, SATA). 11 + 12 + maintainers: 13 + - Rafał Miłecki <rafal@milecki.pl> 14 + 15 + properties: 16 + compatible: 17 + enum: 18 + - brcm,bcm4908-pmb 19 + 20 + reg: 21 + description: register space of one or more buses 22 + maxItems: 1 23 + 24 + big-endian: 25 + $ref: /schemas/types.yaml#/definitions/flag 26 + description: Flag to use for block working in big endian mode. 27 + 28 + "#power-domain-cells": 29 + description: cell specifies device ID (see bcm-pmb.h) 30 + const: 1 31 + 32 + required: 33 + - reg 34 + - "#power-domain-cells" 35 + 36 + additionalProperties: false 37 + 38 + examples: 39 + - | 40 + #include <dt-bindings/soc/bcm-pmb.h> 41 + 42 + pmb: power-controller@802800e0 { 43 + compatible = "brcm,bcm4908-pmb"; 44 + reg = <0x802800e0 0x40>; 45 + #power-domain-cells = <1>; 46 + }; 47 + 48 + foo { 49 + power-domains = <&pmb BCM_PMB_PCIE0>; 50 + };
+11
include/dt-bindings/soc/bcm-pmb.h
··· 1 + /* SPDX-License-Identifier: GPL-2.0-or-later OR MIT */ 2 + 3 + #ifndef __DT_BINDINGS_SOC_BCM_PMB_H 4 + #define __DT_BINDINGS_SOC_BCM_PMB_H 5 + 6 + #define BCM_PMB_PCIE0 0x01 7 + #define BCM_PMB_PCIE1 0x02 8 + #define BCM_PMB_PCIE2 0x03 9 + #define BCM_PMB_HOST_USB 0x04 10 + 11 + #endif