summaryrefslogtreecommitdiff
path: root/Documentation
diff options
context:
space:
mode:
authorZhang Nian <zhangnian@huawei.com>2014-11-29 14:52:56 +0800
committerXinwei Kong <kong.kongxinwei@hisilicon.com>2015-11-08 14:57:24 +0800
commite0f235c47943bcab7edd82ab05d3aef28f501c06 (patch)
treef4fbedf7394cb86fd8809700eef81c79f6ae9ae7 /Documentation
parenta0b19830b466314b1bde5bbd4286645bc5b3f642 (diff)
pmic/regulator: Add hisilicon hi655X pmic/regulator core driver for hi6220 SoC
Signed-off-by: Zhang Nian <zhangnian@huawei.com> Signed-off-by: Bintian Wang <bintian.wang@huawei.com> Signed-off-by: Dongbin Yu <yudongbin@huawei.com> Signed-off-by: Fei Wang <w.f@huawei.com> Signed-off-by: Xinwei Kong <kong.kongxinwei@hisilicon.com>
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/devicetree/bindings/mfd/hi6552.txt75
-rw-r--r--Documentation/devicetree/bindings/regulator/hi6220-mtcmos.txt29
2 files changed, 104 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/mfd/hi6552.txt b/Documentation/devicetree/bindings/mfd/hi6552.txt
new file mode 100644
index 000000000000..8cbd46fab79b
--- /dev/null
+++ b/Documentation/devicetree/bindings/mfd/hi6552.txt
@@ -0,0 +1,75 @@
+* Hisilicon hi6552 Power Management Integrated Circuit (PMIC)
+
+hi6552 consists of a large and varied group of sub-devices:
+
+Device Supply Names Description
+------ ------------ -----------
+hi6552-powerkey : : Powerkey
+hi6552-regulator-pmic : : Regulators
+hi6552-usbvbus : : USB plug detection
+hi6552-pmu-rtc : : RTC
+hi6552-coul : : Coulomb
+
+Required properties:
+- compatible : Should be "hisilicon,hi6552-pmic-driver"
+- reg: Base address of PMIC on hi6220 soc
+- #interrupt-cells: Should be 2, is the local IRQ number for hi6552.
+- interrupt-controller: hi6552 has internal IRQs (has own IRQ domain).
+- pmu_irq_gpio: should be &gpio_pmu_irq_n, is the IRQ gpio of hi6552.
+
+Example:
+ pmic: pmic@F8000000 {
+ compatible = "hisilicon,hi6552-pmic-driver";
+ reg = <0x0 0xF8000000 0x0 0x1000>;
+ #interrupt-cells = <2>;
+ interrupt-controller;
+ pmu_irq_gpio = <&gpio_pmu_irq_n>;
+ status = "ok";
+ ponkey:ponkey@b1{
+ compatible = "hisilicon,hi6552-powerkey";
+ interrupt-parent = <&pmic>;
+ interrupts = <6 0>, <5 0>, <4 0>;
+ interrupt-names = "down", "up", "hold 1s";
+ };
+ coul: coul@1 {
+ compatible = "hisilicon,hi6552-coul";
+ interrupt-parent = <&pmic>;
+ interrupts = <24 0>, <25 0>, <26 0>, <27 0>;
+ interrupt-names = "cl_int_i", "cl_out_i", "cl_in_i", "vbat_int_i";
+ battery_product_index = <0>;
+ status = "ok";
+ };
+ rtc: rtc@1 {
+ compatible = "hisilicon,hi6552-pmu-rtc";
+ interrupt-parent = <&pmic>;
+ interrupts = <20 0>;
+ interrupt-names = "hi6552_pmu_rtc";
+ board_id = <1>;
+ };
+ usbvbus:usbvbus@b2{
+ compatible = "hisilicon,hi6552-usbvbus";
+ interrupt-parent = <&pmic>;
+ interrupts = <9 0>, <8 0>;
+ interrupt-names = "connect", "disconnect";
+ };
+ ldo2: regulator@a21 {
+ compatible = "hisilicon,hi6552-regulator-pmic";
+ regulator-name = "ldo2";
+ regulator-min-microvolt = <2500000>;
+ regulator-max-microvolt = <3200000>;
+ hisilicon,valid-modes-mask = <0x02>;
+ hisilicon,valid-ops-mask = <0x01d>;
+ hisilicon,initial-mode = <0x02>;
+ hisilicon,regulator-type = <0x01>;
+
+ hisilicon,off-on-delay = <120>;
+ hisilicon,ctrl-regs = <0x029 0x02a 0x02b>;
+ hisilicon,ctrl-data = <0x1 0x1>;
+ hisilicon,vset-regs = <0x072>;
+ hisilicon,vset-data = <0 0x3>;
+ hisilicon,regulator-n-vol = <8>;
+ hisilicon,vset-table = <2500000>,<2600000>,<2700000>,<2800000>,<2900000>,<3000000>,<3100000>,<3200000>;
+ hisilicon,num_consumer_supplies = <1>;
+ hisilicon,consumer-supplies = "sensor_analog";
+ };
+ };
diff --git a/Documentation/devicetree/bindings/regulator/hi6220-mtcmos.txt b/Documentation/devicetree/bindings/regulator/hi6220-mtcmos.txt
new file mode 100644
index 000000000000..720bdfc02fd1
--- /dev/null
+++ b/Documentation/devicetree/bindings/regulator/hi6220-mtcmos.txt
@@ -0,0 +1,29 @@
+
+Required parent device properties:
+- compatible:
+ - "hisilicon,hi6xxx-mtcmos-driver"
+- hisilicon,mtcmos-steady-us: The time to wait for power steady
+- hisilicon,mtcmos-sc-on-base: address of hi6220 soc control register
+
+Required child device properties:
+- regulator-name: The name of mtcmos
+- hisilicon,ctrl-regs: offset of ctrl-regs
+- hisilicon,ctrl-data: the bit to ctrl the regulator
+
+Example:
+ mtcmos {
+ compatible = "hisilicon,hi6220-mtcmos-driver";
+ hisilicon,mtcmos-steady-us = <10>;
+ hisilicon,mtcmos-sc-on-base = <0xf7800000>;
+
+ mtcmos1: regulator@a1{
+ regulator-name = "G3D_PD_VDD";
+ hisilicon,ctrl-regs = <0x830 0x834 0x83c>;
+ hisilicon,ctrl-data = <1 0x1>;
+ };
+ mtcmos2: regulator@a2{
+ regulator-name = "SOC_MED";
+ hisilicon,ctrl-regs = <0x830 0x834 0x83c>;
+ hisilicon,ctrl-data = <2 0x1>;
+ };
+ };