Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1306141 > unrolled thread
| Started by | Chen Feng <puck.chen@hisilicon.com> |
|---|---|
| First post | 2016-01-11 13:30 +0100 |
| Last post | 2016-01-11 13:30 +0100 |
| Articles | 2 — 1 participant |
Back to article view | Back to linux.kernel
[PATCH v5 0/5] Add Support for Hi6220 PMIC Hi6553 MFD Core Chen Feng <puck.chen@hisilicon.com> - 2016-01-11 13:30 +0100
[PATCH v5 5/5] hisilicon/dts: Add hi655x pmic dts node Chen Feng <puck.chen@hisilicon.com> - 2016-01-11 13:30 +0100
| From | Chen Feng <puck.chen@hisilicon.com> |
|---|---|
| Date | 2016-01-11 13:30 +0100 |
| Subject | [PATCH v5 0/5] Add Support for Hi6220 PMIC Hi6553 MFD Core |
| Message-ID | <qPJLI-2jg-13@gated-at.bofh.it> |
The patch sets add support for Hi6220 PMIC Hi655x MFD core and its regulator driver. Current testing and support board is Hikey which is one of 96boards. It is an arm64 open source board. For more information about this board, please access https://www.96boards.org. This is hardware layout for access PMIC Hi655x from AP SoC Hi6220. Between PMIC Hi655x and Hi6220, the physical signal channel is SSI. We can use memory-mapped I/O to communicate. +----------------+ +-------------+ | | | | | Hi6220 | SSI bus | Hi655x | | |-------------| | | |(REGMAP_MMIO)| | +----------------+ +-------------+ V2: Code refactoring of regulator. V3: Drop mtcmos from this patch and use regmap-irq. V4: Move the vset-table to driver code and donot open code for it. V5: Use of_match to get dt-data Chen Feng (5): doc: bindings: Add document for mfd hi665x PMIC doc: bindings: Document for hi655x regulator driver mfd: hi655x: Add hi665x pmic driver regulator: add regulator driver of hi655x pmic hisilicon/dts: Add hi655x pmic dts node .../devicetree/bindings/mfd/hisilicon,hi655x.txt | 28 +++ .../regulator/hisilicon,hi655x-regulator.txt | 30 +++ arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts | 5 + arch/arm64/boot/dts/hisilicon/hi6220.dtsi | 102 ++++++++ drivers/mfd/Kconfig | 10 + drivers/mfd/Makefile | 1 + drivers/mfd/hi655x-pmic.c | 169 ++++++++++++++ drivers/regulator/Kconfig | 8 + drivers/regulator/Makefile | 1 + drivers/regulator/hi655x-regulator.c | 256 +++++++++++++++++++++ include/linux/mfd/hi655x-pmic.h | 56 +++++ 11 files changed, 666 insertions(+) create mode 100644 Documentation/devicetree/bindings/mfd/hisilicon,hi655x.txt create mode 100644 Documentation/devicetree/bindings/regulator/hisilicon,hi655x-regulator.txt create mode 100644 drivers/mfd/hi655x-pmic.c create mode 100644 drivers/regulator/hi655x-regulator.c create mode 100644 include/linux/mfd/hi655x-pmic.h -- 1.9.1
[toc] | [next] | [standalone]
| From | Chen Feng <puck.chen@hisilicon.com> |
|---|---|
| Date | 2016-01-11 13:30 +0100 |
| Subject | [PATCH v5 5/5] hisilicon/dts: Add hi655x pmic dts node |
| Message-ID | <qPJLJ-2jg-49@gated-at.bofh.it> |
| In reply to | #1306141 |
Add the mfd hi655x dts node and regulator support
Signed-off-by: Chen Feng <puck.chen@hisilicon.com>
Signed-off-by: Fei Wang <w.f@huawei.com>
Signed-off-by: Xinwei Kong <kong.kongxinwei@hisilicon.com>
---
arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts | 5 ++
arch/arm64/boot/dts/hisilicon/hi6220.dtsi | 102 +++++++++++++++++++++++++
2 files changed, 107 insertions(+)
diff --git a/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts b/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
index 8d43a0f..f714ac7 100644
--- a/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
+++ b/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
@@ -31,4 +31,9 @@
device_type = "memory";
reg = <0x0 0x0 0x0 0x40000000>;
};
+
+};
+
+&pmic {
+ status = "okay";
};
diff --git a/arch/arm64/boot/dts/hisilicon/hi6220.dtsi b/arch/arm64/boot/dts/hisilicon/hi6220.dtsi
index 82d2488..4614304 100644
--- a/arch/arm64/boot/dts/hisilicon/hi6220.dtsi
+++ b/arch/arm64/boot/dts/hisilicon/hi6220.dtsi
@@ -208,5 +208,107 @@
clock-names = "uartclk", "apb_pclk";
status = "disabled";
};
+
+ };
+
+ pmic: pmic@f8000000 {
+ compatible = "hisilicon,hi655x-pmic";
+ reg = <0x0 0xf8000000 0x0 0x1000>;
+ #interrupt-cells = <2>;
+ interrupt-controller;
+ pmic-gpios = <&gpio1 2 0>;
+ status = "disabled";
+
+ regulators {
+ ldo2: ldo2@a21 {
+ compatible = "hisilicon,hi655x-regulator";
+ regulator-name = "ldo2";
+ regulator-min-microvolt = <2500000>;
+ regulator-max-microvolt = <3200000>;
+ regulator-valid-modes-mask = <0x02>;
+ regulator-enable-ramp-delay = <120>;
+ };
+
+ ldo7: ldo7@a26 {
+ compatible = "hisilicon,hi655x-regulator";
+ regulator-name = "ldo7";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <3300000>;
+ regulator-valid-modes-mask = <0x0a>;
+ regulator-enable-ramp-delay = <120>;
+ };
+
+ ldo10: ldo10@a29 {
+ compatible = "hisilicon,hi655x-regulator";
+ regulator-name = "ldo10";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <3000000>;
+ regulator-valid-modes-mask = <0x0a>;
+ regulator-enable-ramp-delay = <360>;
+ };
+
+ ldo13: ldo13@a32 {
+ compatible = "hisilicon,hi655x-regulator";
+ regulator-name = "ldo13";
+ regulator-min-microvolt = <1600000>;
+ regulator-max-microvolt = <1950000>;
+ regulator-enable-ramp-delay = <120>;
+ };
+
+ ldo14: ldo14@a33 {
+ compatible = "hisilicon,hi655x-regulator";
+ regulator-name = "ldo14";
+ regulator-min-microvolt = <2500000>;
+ regulator-max-microvolt = <3200000>;
+ regulator-enable-ramp-delay = <120>;
+ };
+
+ ldo15: ldo15@a34 {
+ compatible = "hisilicon,hi655x-regulator";
+ regulator-name = "ldo15";
+ regulator-min-microvolt = <1600000>;
+ regulator-max-microvolt = <1950000>;
+ regulator-boot-on;
+ regulator-always-on;
+ regulator-enable-ramp-delay = <120>;
+ };
+
+ ldo17: ldo17@a36 {
+ compatible = "hisilicon,hi655x-regulator";
+ regulator-name = "ldo17";
+ regulator-min-microvolt = <2500000>;
+ regulator-max-microvolt = <3200000>;
+ regulator-enable-ramp-delay = <120>;
+ };
+
+ ldo19: ldo19@a38 {
+ compatible = "hisilicon,hi655x-regulator";
+ regulator-name = "ldo19";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <3000000>;
+ regulator-enable-ramp-delay = <360>;
+ };
+
+ ldo21: ldo21@a40 {
+ compatible = "hisilicon,hi655x-regulator";
+ regulator-name = "ldo21";
+ regulator-min-microvolt = <1650000>;
+ regulator-max-microvolt = <2000000>;
+ regulator-always-on;
+ regulator-valid-modes-mask = <0x02>;
+ regulator-enable-ramp-delay = <120>;
+ };
+
+ ldo22: ldo22@a41 {
+ compatible = "hisilicon,hi655x-regulator";
+ regulator-name = "ldo22";
+ regulator-min-microvolt = <900000>;
+ regulator-max-microvolt = <1200000>;
+ regulator-boot-on;
+ regulator-always-on;
+ regulator-valid-modes-mask = <0x02>;
+ regulator-enable-ramp-delay = <120>;
+ };
+ };
};
};
--
1.9.1
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web