lkml.org 
[lkml]   [2017]   [Oct]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v2 5/8] ARM: dts: sun8i: a83t: allwinner-h8homlet-v2: Add AXP818 regulator nodes
    Date
    This patch adds device nodes for all the regulators of the AXP818 PMIC.
    Sunxi common regulators are removed, and USB VBUS regulators are added.

    Signed-off-by: Chen-Yu Tsai <wens@csie.org>
    ---
    .../boot/dts/sun8i-a83t-allwinner-h8homlet-v2.dts | 147 +++++++++++++++++++--
    1 file changed, 134 insertions(+), 13 deletions(-)

    diff --git a/arch/arm/boot/dts/sun8i-a83t-allwinner-h8homlet-v2.dts b/arch/arm/boot/dts/sun8i-a83t-allwinner-h8homlet-v2.dts
    index 1f0d60afb25b..5091cecbcd1e 100644
    --- a/arch/arm/boot/dts/sun8i-a83t-allwinner-h8homlet-v2.dts
    +++ b/arch/arm/boot/dts/sun8i-a83t-allwinner-h8homlet-v2.dts
    @@ -43,7 +43,8 @@

    /dts-v1/;
    #include "sun8i-a83t.dtsi"
    -#include "sunxi-common-regulators.dtsi"
    +
    +#include <dt-bindings/gpio/gpio.h>

    / {
    model = "Allwinner A83T H8Homlet Proto Dev Board v2.0";
    @@ -56,6 +57,26 @@
    chosen {
    stdout-path = "serial0:115200n8";
    };
    +
    + reg_usb0_vbus: reg-usb0-vbus {
    + compatible = "regulator-fixed";
    + regulator-name = "usb0-vbus";
    + regulator-min-microvolt = <5000000>;
    + regulator-max-microvolt = <5000000>;
    + regulator-boot-on;
    + enable-active-high;
    + gpio = <&r_pio 0 5 GPIO_ACTIVE_HIGH>; /* PL5 */
    + };
    +
    + reg_usb1_vbus: reg-usb1-vbus {
    + compatible = "regulator-fixed";
    + regulator-name = "usb1-vbus";
    + regulator-min-microvolt = <5000000>;
    + regulator-max-microvolt = <5000000>;
    + regulator-boot-on;
    + enable-active-high;
    + gpio = <&r_pio 0 6 GPIO_ACTIVE_HIGH>; /* PL6 */
    + };
    };

    &ehci0 {
    @@ -65,7 +86,7 @@
    &mmc0 {
    pinctrl-names = "default";
    pinctrl-0 = <&mmc0_pins>;
    - vmmc-supply = <&reg_vcc3v0>;
    + vmmc-supply = <&reg_dcdc1>;
    cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>; /* PF6 */
    bus-width = <4>;
    cd-inverted;
    @@ -75,7 +96,8 @@
    &mmc2 {
    pinctrl-names = "default";
    pinctrl-0 = <&mmc2_8bit_emmc_pins>;
    - vmmc-supply = <&reg_vcc3v0>;
    + vmmc-supply = <&reg_dcdc1>;
    + vqmmc-supply = <&reg_dcdc1>;
    bus-width = <8>;
    non-removable;
    cap-mmc-hw-reset;
    @@ -86,16 +108,6 @@
    status = "okay";
    };

    -&reg_usb0_vbus {
    - gpio = <&r_pio 0 5 GPIO_ACTIVE_HIGH>; /* PL5 */
    - status = "okay";
    -};
    -
    -&reg_usb1_vbus {
    - gpio = <&r_pio 0 6 GPIO_ACTIVE_HIGH>; /* PL6 */
    - status = "okay";
    -};
    -
    &r_rsb {
    status = "okay";

    @@ -104,6 +116,8 @@
    reg = <0x3a3>;
    interrupt-parent = <&r_intc>;
    interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
    + eldoin-supply = <&reg_dcdc1>;
    + swin-supply = <&reg_dcdc1>;
    };

    ac100: codec@e89 {
    @@ -131,6 +145,113 @@
    };
    };

    +#include "axp81x.dtsi"
    +
    +&reg_aldo1 {
    + regulator-always-on;
    + regulator-min-microvolt = <1800000>;
    + regulator-max-microvolt = <1800000>;
    + regulator-name = "vcc-1v8";
    +};
    +
    +&reg_aldo2 {
    + regulator-always-on;
    + regulator-min-microvolt = <1800000>;
    + regulator-max-microvolt = <1800000>;
    + regulator-name = "dram-pll";
    +};
    +
    +&reg_aldo3 {
    + regulator-always-on;
    + regulator-min-microvolt = <3000000>;
    + regulator-max-microvolt = <3000000>;
    + regulator-name = "avcc";
    +};
    +
    +&reg_dcdc1 {
    + regulator-always-on;
    + regulator-min-microvolt = <3300000>;
    + regulator-max-microvolt = <3300000>;
    + regulator-name = "vcc-3v3";
    +};
    +
    +&reg_dcdc2 {
    + regulator-always-on;
    + regulator-min-microvolt = <700000>;
    + regulator-max-microvolt = <1100000>;
    + regulator-name = "vdd-cpua";
    +};
    +
    +&reg_dcdc3 {
    + regulator-always-on;
    + regulator-min-microvolt = <700000>;
    + regulator-max-microvolt = <1100000>;
    + regulator-name = "vdd-cpub";
    +};
    +
    +&reg_dcdc4 {
    + regulator-min-microvolt = <700000>;
    + regulator-max-microvolt = <1100000>;
    + regulator-name = "vdd-gpu";
    +};
    +
    +&reg_dcdc5 {
    + regulator-always-on;
    + regulator-min-microvolt = <1500000>;
    + regulator-max-microvolt = <1500000>;
    + regulator-name = "vcc-dram";
    +};
    +
    +&reg_dcdc6 {
    + regulator-always-on;
    + regulator-min-microvolt = <900000>;
    + regulator-max-microvolt = <900000>;
    + regulator-name = "vdd-sys";
    +};
    +
    +&reg_dldo2 {
    + regulator-min-microvolt = <3300000>;
    + regulator-max-microvolt = <3300000>;
    + regulator-name = "vcc-mipi";
    +};
    +
    +&reg_dldo4 {
    + /*
    + * The PHY requires 20ms after all voltages are applied until core
    + * logic is ready and 30ms after the reset pin is de-asserted.
    + * Set a 100ms delay to account for PMIC ramp time and board traces.
    + */
    + regulator-enable-ramp-delay = <100000>;
    + regulator-min-microvolt = <3300000>;
    + regulator-max-microvolt = <3300000>;
    + regulator-name = "vcc-ephy";
    +};
    +
    +&reg_fldo1 {
    + regulator-min-microvolt = <1080000>;
    + regulator-max-microvolt = <1320000>;
    + regulator-name = "vdd12-hsic";
    +};
    +
    +&reg_fldo2 {
    + /*
    + * Despite the embedded CPUs core not being used in any way,
    + * this must remain on or the system will hang.
    + */
    + regulator-always-on;
    + regulator-min-microvolt = <700000>;
    + regulator-max-microvolt = <1100000>;
    + regulator-name = "vdd-cpus";
    +};
    +
    +&reg_rtc_ldo {
    + regulator-name = "vcc-rtc";
    +};
    +
    +&reg_sw {
    + regulator-name = "vcc-wifi";
    +};
    +
    &uart0 {
    pinctrl-names = "default";
    pinctrl-0 = <&uart0_pb_pins>;
    --
    2.14.2
    \
     
     \ /
      Last update: 2017-10-22 17:10    [W:4.208 / U:0.772 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site