mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2025-01-24 23:04:17 +08:00
dt: document HiSilicon SPMI controller and mfd/regulator properties
Add documentation for the properties needed by the HiSilicon 6421v600 driver, and by the SPMI controller used to access the chipset. Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> Link: https://lore.kernel.org/r/56c40a260bf31edf7049f50586c63ee0d06e02cb.1597762400.git.mchehab+huawei@kernel.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
9f46c3433f
commit
9e59172885
159
drivers/staging/hikey9xx/hisilicon,hi6421-spmi-pmic.yaml
Normal file
159
drivers/staging/hikey9xx/hisilicon,hi6421-spmi-pmic.yaml
Normal file
@ -0,0 +1,159 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/mfd/hisilicon,hi6421-spmi-pmic.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: HiSilicon 6421v600 SPMI PMIC
|
||||
|
||||
maintainers:
|
||||
- Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
|
||||
|
||||
description: |
|
||||
HiSilicon 6421v600 should be connected inside a MIPI System Power Management
|
||||
(SPMI) bus. It provides interrupts and power supply.
|
||||
|
||||
The GPIO and interrupt settings are represented as part of the top-level PMIC
|
||||
node.
|
||||
|
||||
The SPMI controller part is provided by
|
||||
Documentation/devicetree/bindings/spmi/hisilicon,hisi-spmi-controller.yaml.
|
||||
|
||||
properties:
|
||||
$nodename:
|
||||
pattern: "pmic@[0-9a-f]"
|
||||
|
||||
compatible:
|
||||
const: hisilicon,hi6421v600-spmi
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
'#interrupt-cells':
|
||||
const: 2
|
||||
|
||||
interrupt-controller:
|
||||
description:
|
||||
Identify that the PMIC is capable of behaving as an interrupt controller.
|
||||
|
||||
gpios:
|
||||
maxItems: 1
|
||||
|
||||
regulators:
|
||||
type: object
|
||||
|
||||
properties:
|
||||
'#address-cells':
|
||||
const: 1
|
||||
|
||||
'#size-cells':
|
||||
const: 0
|
||||
|
||||
patternProperties:
|
||||
'^ldo[0-9]+@[0-9a-f]$':
|
||||
type: object
|
||||
|
||||
$ref: "/schemas/regulator/regulator.yaml#"
|
||||
|
||||
properties:
|
||||
reg:
|
||||
description: Enable register.
|
||||
|
||||
'#address-cells':
|
||||
const: 1
|
||||
|
||||
'#size-cells':
|
||||
const: 0
|
||||
|
||||
vsel-reg:
|
||||
description: Voltage selector register.
|
||||
|
||||
enable-mask:
|
||||
description: Bitmask used to enable the regulator.
|
||||
|
||||
voltage-table:
|
||||
description: Table with the selector items for the voltage regulator.
|
||||
minItems: 2
|
||||
maxItems: 16
|
||||
|
||||
off-on-delay-us:
|
||||
description: Time required for changing state to enabled in microseconds.
|
||||
|
||||
startup-delay-us:
|
||||
description: Startup time in microseconds.
|
||||
|
||||
idle-mode-mask:
|
||||
description: Bitmask used to put the regulator on idle mode.
|
||||
|
||||
eco-microamp:
|
||||
description: Maximum current while on idle mode.
|
||||
|
||||
required:
|
||||
- reg
|
||||
- vsel-reg
|
||||
- enable-mask
|
||||
- voltage-table
|
||||
- off-on-delay-us
|
||||
- startup-delay-us
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- regulators
|
||||
|
||||
examples:
|
||||
- |
|
||||
/* pmic properties */
|
||||
|
||||
pmic: pmic@0 {
|
||||
compatible = "hisilicon,hi6421-spmi";
|
||||
reg = <0 0>;
|
||||
|
||||
#interrupt-cells = <2>;
|
||||
interrupt-controller;
|
||||
gpios = <&gpio28 0 0>;
|
||||
|
||||
regulators {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ldo3: ldo3@16 {
|
||||
reg = <0x16>;
|
||||
vsel-reg = <0x51>;
|
||||
|
||||
regulator-name = "ldo3";
|
||||
regulator-min-microvolt = <1500000>;
|
||||
regulator-max-microvolt = <2000000>;
|
||||
regulator-boot-on;
|
||||
|
||||
enable-mask = <0x01>;
|
||||
|
||||
voltage-table = <1500000>, <1550000>, <1600000>, <1650000>,
|
||||
<1700000>, <1725000>, <1750000>, <1775000>,
|
||||
<1800000>, <1825000>, <1850000>, <1875000>,
|
||||
<1900000>, <1925000>, <1950000>, <2000000>;
|
||||
off-on-delay-us = <20000>;
|
||||
startup-delay-us = <120>;
|
||||
};
|
||||
|
||||
ldo4: ldo4@17 { /* 40 PIN */
|
||||
reg = <0x17>;
|
||||
vsel-reg = <0x52>;
|
||||
|
||||
regulator-name = "ldo4";
|
||||
regulator-min-microvolt = <1725000>;
|
||||
regulator-max-microvolt = <1900000>;
|
||||
regulator-boot-on;
|
||||
|
||||
enable-mask = <0x01>;
|
||||
idle-mode-mask = <0x10>;
|
||||
eco-microamp = <10000>;
|
||||
|
||||
hi6421-vsel = <0x52 0x07>;
|
||||
voltage-table = <1725000>, <1750000>, <1775000>, <1800000>,
|
||||
<1825000>, <1850000>, <1875000>, <1900000>;
|
||||
off-on-delay-us = <20000>;
|
||||
startup-delay-us = <120>;
|
||||
};
|
||||
};
|
||||
};
|
62
drivers/staging/hikey9xx/hisilicon,hisi-spmi-controller.yaml
Normal file
62
drivers/staging/hikey9xx/hisilicon,hisi-spmi-controller.yaml
Normal file
@ -0,0 +1,62 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/spmi/hisilicon,hisi-spmi-controller.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: HiSilicon SPMI controller
|
||||
|
||||
maintainers:
|
||||
- Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
|
||||
|
||||
description: |
|
||||
The HiSilicon SPMI BUS controller is found on some Kirin-based designs.
|
||||
It is a MIPI System Power Management (SPMI) controller.
|
||||
|
||||
The PMIC part is provided by
|
||||
Documentation/devicetree/bindings/mfd/hisilicon,hi6421-spmi-pmic.yaml.
|
||||
|
||||
properties:
|
||||
$nodename:
|
||||
pattern: "spmi@[0-9a-f]"
|
||||
|
||||
compatible:
|
||||
const: hisilicon,kirin970-spmi-controller
|
||||
|
||||
reg:
|
||||
maxItems: 1
|
||||
|
||||
spmi-channel:
|
||||
description: |
|
||||
number of the Kirin 970 SPMI channel where the SPMI devices are connected.
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- spmi-channel
|
||||
|
||||
patternProperties:
|
||||
"^pmic@[0-9a-f]$":
|
||||
description: |
|
||||
PMIC properties, which are specific to the used SPMI PMIC device(s).
|
||||
When used in combination with HiSilicon 6421v600, the properties
|
||||
are documented at
|
||||
Documentation/devicetree/bindings/mfd/hisilicon,hi6421-spmi-pmic.yaml.
|
||||
|
||||
examples:
|
||||
- |
|
||||
bus {
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
|
||||
spmi: spmi@fff24000 {
|
||||
compatible = "hisilicon,kirin970-spmi-controller";
|
||||
status = "ok";
|
||||
reg = <0x0 0xfff24000 0x0 0x1000>;
|
||||
spmi-channel = <2>;
|
||||
|
||||
pmic@0 {
|
||||
/* pmic properties */
|
||||
};
|
||||
};
|
||||
};
|
Loading…
Reference in New Issue
Block a user