Re: [linux-sunxi] Re: [PATCH] arm64: allwinner: h6: Add OrangePi One Plus initial support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Monday 03 September 2018 11:05 AM, Chen-Yu Tsai wrote:
On Tue, Jul 31, 2018 at 9:42 PM Chen-Yu Tsai <wens@xxxxxxxx> wrote:

On Tue, Jul 31, 2018 at 9:41 PM, Jagan Teki <jagan@xxxxxxxxxxxxxxxxxxxx> wrote:
On Mon, Jul 30, 2018 at 2:47 PM, Chen-Yu Tsai <wens@xxxxxxxx> wrote:
On Mon, Jul 30, 2018 at 5:00 PM, Maxime Ripard
<maxime.ripard@xxxxxxxxxxx> wrote:
Hi,

On Sat, Jul 28, 2018 at 11:56:15PM +0530, Jagan Teki wrote:
OrangePi One Plus is Allwinner H6 based open-source SBC,
which support:
- Allwinner H6 Quad-core 64-bit ARM Cortex-A53
- GPU Mali-T720
- 1GB LPDDR3 RAM
- AXP805 PMIC
- 1Gbps GMAC via RTL8211
- USB 2.0 Host, OTG
- HDMI port
- 5V/2A DC power supply

Signed-off-by: Jagan Teki <jagan@xxxxxxxxxxxxxxxxxxxx>
---
  arch/arm64/boot/dts/allwinner/Makefile        |   1 +
  .../allwinner/sun50i-h6-orangepi-one-plus.dts | 150 ++++++++++++++++++
  2 files changed, 151 insertions(+)
  create mode 100644 arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi-one-plus.dts

diff --git a/arch/arm64/boot/dts/allwinner/Makefile b/arch/arm64/boot/dts/allwinner/Makefile
index 9ffa7a038791..c38f326e7fec 100644
--- a/arch/arm64/boot/dts/allwinner/Makefile
+++ b/arch/arm64/boot/dts/allwinner/Makefile
@@ -15,4 +15,5 @@ dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-orangepi-pc2.dtb
  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-orangepi-prime.dtb
  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-orangepi-zero-plus.dtb
  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h5-orangepi-zero-plus2.dtb
+dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-orangepi-one-plus.dtb
  dtb-$(CONFIG_ARCH_SUNXI) += sun50i-h6-pine-h64.dtb
diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi-one-plus.dts b/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi-one-plus.dts
new file mode 100644
index 000000000000..0612c19cd994
--- /dev/null
+++ b/arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi-one-plus.dts
@@ -0,0 +1,150 @@
+// SPDX-License-Identifier: (GPL-2.0+ or MIT)
+/*
+ * Copyright (C) 2018 Amarula Solutions
+ * Author: Jagan Teki <jagan@xxxxxxxxxxxxxxxxxxxx>
+ */
+
+/dts-v1/;
+
+#include "sun50i-h6.dtsi"
+
+#include <dt-bindings/gpio/gpio.h>
+
+/ {
+     model = "OrangePi One Plus";
+     compatible = "xunlong,orangepi-one-plus", "allwinner,sun50i-h6";
+
+     aliases {
+             serial0 = &uart0;
+     };
+
+     chosen {
+             stdout-path = "serial0:115200n8";
+     };
+};
+
+&mmc0 {
+     pinctrl-names = "default";
+     pinctrl-0 = <&mmc0_pins>;
+     vmmc-supply = <&reg_cldo1>;
+     cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>;
+     bus-width = <4>;
+     status = "okay";
+};
+
+&r_i2c {
+     status = "okay";
+
+     axp805: pmic@36 {
+             compatible = "x-powers,axp805", "x-powers,axp806";
+             reg = <0x36>;
+             interrupt-parent = <&r_intc>;
+             interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
+             interrupt-controller;
+             #interrupt-cells = <1>;
+             x-powers,self-working-mode;
+
+             regulators {
+                     reg_aldo1: aldo1 {
+                             regulator-always-on;
+                             regulator-min-microvolt = <3300000>;
+                             regulator-max-microvolt = <3300000>;
+                             regulator-name = "vcc-pl";
+                     };
+
+                     reg_aldo2: aldo2 {
+                             regulator-min-microvolt = <3300000>;
+                             regulator-max-microvolt = <3300000>;
+                             regulator-name = "vcc-ac200";
+                     };
+
+                     reg_aldo3: aldo3 {
+                             regulator-always-on;
+                             regulator-min-microvolt = <3300000>;
+                             regulator-max-microvolt = <3300000>;
+                             regulator-name = "vcc25-dram";
+                     };
+
+                     reg_bldo1: bldo1 {
+                             regulator-always-on;
+                             regulator-min-microvolt = <1800000>;
+                             regulator-max-microvolt = <1800000>;
+                             regulator-name = "vcc-bias-pll";
+                     };
+
+                     reg_bldo2: bldo2 {
+                             regulator-always-on;
+                             regulator-min-microvolt = <1800000>;
+                             regulator-max-microvolt = <1800000>;
+                             regulator-name = "vcc-efuse-pcie-hdmi-io";
+                     };
+
+                     reg_bldo3: bldo3 {
+                             regulator-always-on;
+                             regulator-min-microvolt = <1800000>;
+                             regulator-max-microvolt = <1800000>;
+                             regulator-name = "vcc-dcxoio";
+                     };
+
+                     bldo4 {
+                             /* unused */
+                     };
+
+                     reg_cldo1: cldo1 {
+                             regulator-always-on;
+                             regulator-min-microvolt = <3300000>;
+                             regulator-max-microvolt = <3300000>;
+                             regulator-name = "vcc-3v3";
+                     };
+
+                     reg_cldo2: cldo2 {
+                             regulator-min-microvolt = <3300000>;
+                             regulator-max-microvolt = <3300000>;
+                             regulator-name = "vcc-wifi-1";
+                     };
+
+                     reg_cldo3: cldo3 {
+                             regulator-min-microvolt = <3300000>;
+                             regulator-max-microvolt = <3300000>;
+                             regulator-name = "vcc-wifi-2";
+                     };
+
+                     reg_dcdca: dcdca {
+                             regulator-always-on;
+                             regulator-min-microvolt = <810000>;
+                             regulator-max-microvolt = <1080000>;
+                             regulator-name = "vdd-cpu";
+                     };
+
+                     reg_dcdcc: dcdcc {
+                             regulator-min-microvolt = <810000>;
+                             regulator-max-microvolt = <1080000>;
+                             regulator-name = "vdd-gpu";
+                     };
+
+                     reg_dcdcd: dcdcd {
+                             regulator-always-on;
+                             regulator-min-microvolt = <960000>;
+                             regulator-max-microvolt = <960000>;
+                             regulator-name = "vdd-sys";
+                     };
+
+                     reg_dcdce: dcdce {
+                             regulator-always-on;
+                             regulator-min-microvolt = <1200000>;
+                             regulator-max-microvolt = <1200000>;
+                             regulator-name = "vcc-dram";
+                     };
+
+                     sw {
+                             /* unused */
+                     };

Can't we have a DTSI for this PMIC too?

Back when we started adding the regulators, Mark wasn't too happy with
all the placeholders we put in the dtsi. I think we got away with it
because we had other things in there as well. That's not true for this
particular PMIC.

So we need separate dtsi for this PMIC as well?

I don't think we do. We don't gain much.

Merged with Maxime's ack, and the subject prefix fixed.
Also squashed in the Ethernet patch for this board.

H6 EMAC node changes still in ML.



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux