mirror of https://gitee.com/openkylin/linux.git
Allwinner DT changes for 5.1, take 2
Our usual bunch of DT changes for the Allwinner arm SoCs: - LCD support for the Q8 A13 tablets - GMAC support for the A80 - PMIC power supplies for the A83t -----BEGIN PGP SIGNATURE----- iHUEABYIAB0WIQRcEzekXsqa64kGDp7j7w1vZxhRxQUCXF1aSwAKCRDj7w1vZxhR xbvdAPsHdtIdikKqoGWDG7aUyT8keXxjhEkGdqeDIWidDd1KpAD+LRrBYvwRG2kw 6woaH9MegfyRCYEef+1t3l3tSu1z4wk= =zO0b -----END PGP SIGNATURE----- Merge tag 'sunxi-dt-for-5.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into arm/dt Allwinner DT changes for 5.1, take 2 Our usual bunch of DT changes for the Allwinner arm SoCs: - LCD support for the Q8 A13 tablets - GMAC support for the A80 - PMIC power supplies for the A83t * tag 'sunxi-dt-for-5.1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux: ARM: dts: sun8i: a83t: Enable PMIC power supplies on various boards ARM: dts: sun9i: cubieboard4: Enable GMAC ARM: dts: sun9i: a80-optimus: Enable GMAC ARM: dts: sun9i: Add A80 GMAC RGMII pinmux setting ARM: dts: sun9i: Add A80 GMAC gigabit ethernet controller node ARM: dts: sun9i: Add GMAC clock node ARM: dts: sun9i: cubieboard4: Add GPIO pin-bank regulator supplies ARM: dts: sun9i: a80-optimus: Add GPIO pin-bank regulator supplies ARM: dts: sun9i: a80-optimus: Add node for AXP809's unused dc1sw regulator ARM: dts: sun5i: q8-tablet: Use bananapi,s070wv20-ct16 panel compatible ARM: dts: sun5i: q8-tablet: Add LCD Panel power supply ARM: dts: sun5i: q8-tablet: Add LCD Panel enable GPIO ARM: dts: sun5i: q8-tablet: Move panel properties to correct node level ARM: dts: sun5i: Add backlight GPIO for reference design tablet Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
commit
d0bc18830d
|
@ -49,14 +49,15 @@ / {
|
|||
compatible = "allwinner,q8-a13", "allwinner,sun5i-a13";
|
||||
|
||||
panel: panel {
|
||||
compatible = "urt,umsh-8596md-t", "simple-panel";
|
||||
compatible = "bananapi,s070wv20-ct16", "simple-panel";
|
||||
power-supply = <®_vcc3v3>;
|
||||
enable-gpios = <&axp_gpio 0 GPIO_ACTIVE_HIGH>; /* AXP GPIO0 */
|
||||
backlight = <&backlight>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
/* TODO: lcd panel uses axp gpio0 as enable pin */
|
||||
backlight = <&backlight>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
|
|
|
@ -54,7 +54,7 @@ backlight: backlight {
|
|||
pwms = <&pwm 0 50000 PWM_POLARITY_INVERTED>;
|
||||
brightness-levels = <0 10 20 30 40 50 60 70 80 90 100>;
|
||||
default-brightness-level = <8>;
|
||||
/* TODO: backlight uses axp gpio1 as enable pin */
|
||||
enable-gpios = <&axp_gpio 1 GPIO_ACTIVE_HIGH>; /* AXP GPIO1 */
|
||||
};
|
||||
|
||||
chosen {
|
||||
|
|
|
@ -154,6 +154,10 @@ ac100_rtc: rtc {
|
|||
|
||||
#include "axp81x.dtsi"
|
||||
|
||||
&ac_power_supply {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
®_aldo1 {
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
|
|
|
@ -237,6 +237,14 @@ ac100_rtc: rtc {
|
|||
|
||||
#include "axp81x.dtsi"
|
||||
|
||||
&ac_power_supply {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&battery_power_supply {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
®_aldo1 {
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
|
|
|
@ -247,6 +247,14 @@ ac100_rtc: rtc {
|
|||
|
||||
#include "axp81x.dtsi"
|
||||
|
||||
&ac_power_supply {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&battery_power_supply {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
®_aldo1 {
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
|
|
|
@ -133,6 +133,19 @@ &de {
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
&gmac {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&gmac_rgmii_pins>;
|
||||
phy = <&phy1>;
|
||||
phy-mode = "rgmii";
|
||||
phy-supply = <®_cldo1>;
|
||||
status = "okay";
|
||||
|
||||
phy1: ethernet-phy@1 {
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
&i2c3 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&i2c3_pins>;
|
||||
|
@ -183,10 +196,26 @@ &osc32k {
|
|||
clocks = <&ac100_rtc 0>;
|
||||
};
|
||||
|
||||
&pio {
|
||||
vcc-pa-supply = <®_ldo_io1>;
|
||||
vcc-pb-supply = <®_aldo2>;
|
||||
vcc-pc-supply = <®_dcdc1>;
|
||||
vcc-pd-supply = <®_dc1sw>;
|
||||
vcc-pe-supply = <®_eldo2>;
|
||||
vcc-pf-supply = <®_dcdc1>;
|
||||
vcc-pg-supply = <®_ldo_io0>;
|
||||
vcc-ph-supply = <®_dcdc1>;
|
||||
};
|
||||
|
||||
&r_ir {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&r_pio {
|
||||
vcc-pl-supply = <®_dldo2>;
|
||||
vcc-pm-supply = <®_eldo3>;
|
||||
};
|
||||
|
||||
&r_rsb {
|
||||
status = "okay";
|
||||
|
||||
|
@ -217,6 +246,10 @@ aldo3 {
|
|||
/* unused */
|
||||
};
|
||||
|
||||
reg_dc1sw: dc1sw {
|
||||
regulator-name = "vcc-pd";
|
||||
};
|
||||
|
||||
reg_dc5ldo: dc5ldo {
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <800000>;
|
||||
|
@ -271,7 +304,6 @@ reg_dldo1: dldo1 {
|
|||
};
|
||||
|
||||
reg_dldo2: dldo2 {
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <3000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-name = "vcc-pl";
|
||||
|
@ -290,14 +322,12 @@ reg_eldo2: eldo2 {
|
|||
};
|
||||
|
||||
reg_eldo3: eldo3 {
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <3000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-name = "vcc-pm-codec-io1";
|
||||
};
|
||||
|
||||
reg_ldo_io0: ldo_io0 {
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <3000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-name = "vcc-pg";
|
||||
|
@ -385,6 +415,14 @@ reg_cldo1: cldo1 {
|
|||
*/
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
/*
|
||||
* 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-name = "vcc-gmac-phy";
|
||||
};
|
||||
|
||||
|
|
|
@ -120,6 +120,19 @@ &ehci2 {
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
&gmac {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&gmac_rgmii_pins>;
|
||||
phy = <&phy1>;
|
||||
phy-mode = "rgmii";
|
||||
phy-supply = <®_cldo1>;
|
||||
status = "okay";
|
||||
|
||||
phy1: ethernet-phy@1 {
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
&mmc0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&mmc0_pins>;
|
||||
|
@ -172,10 +185,26 @@ &osc32k {
|
|||
clocks = <&ac100_rtc 0>;
|
||||
};
|
||||
|
||||
&pio {
|
||||
vcc-pa-supply = <®_ldo_io1>;
|
||||
vcc-pb-supply = <®_aldo2>;
|
||||
vcc-pc-supply = <®_dcdc1>;
|
||||
vcc-pd-supply = <®_dcdc1>;
|
||||
vcc-pe-supply = <®_eldo2>;
|
||||
vcc-pf-supply = <®_dcdc1>;
|
||||
vcc-pg-supply = <®_ldo_io0>;
|
||||
vcc-ph-supply = <®_dcdc1>;
|
||||
};
|
||||
|
||||
&r_ir {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&r_pio {
|
||||
vcc-pl-supply = <®_dldo2>;
|
||||
vcc-pm-supply = <®_eldo3>;
|
||||
};
|
||||
|
||||
&r_rsb {
|
||||
status = "okay";
|
||||
|
||||
|
@ -213,6 +242,10 @@ reg_dc5ldo: dc5ldo {
|
|||
regulator-name = "vdd-cpus-09-usbh";
|
||||
};
|
||||
|
||||
dc1sw {
|
||||
/* unused */
|
||||
};
|
||||
|
||||
reg_dcdc1: dcdc1 {
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <3000000>;
|
||||
|
@ -260,7 +293,6 @@ reg_dldo1: dldo1 {
|
|||
};
|
||||
|
||||
reg_dldo2: dldo2 {
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <3000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-name = "vcc-pl";
|
||||
|
@ -279,14 +311,12 @@ reg_eldo2: eldo2 {
|
|||
};
|
||||
|
||||
reg_eldo3: eldo3 {
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <3000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-name = "vcc-pm-codec-io1";
|
||||
};
|
||||
|
||||
reg_ldo_io0: ldo_io0 {
|
||||
regulator-always-on;
|
||||
regulator-min-microvolt = <3000000>;
|
||||
regulator-max-microvolt = <3000000>;
|
||||
regulator-name = "vcc-pg";
|
||||
|
@ -374,6 +404,14 @@ reg_cldo1: cldo1 {
|
|||
*/
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
/*
|
||||
* 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-name = "vcc-gmac-phy";
|
||||
};
|
||||
|
||||
|
|
|
@ -56,6 +56,10 @@ / {
|
|||
#size-cells = <2>;
|
||||
interrupt-parent = <&gic>;
|
||||
|
||||
aliases {
|
||||
ethernet0 = &gmac;
|
||||
};
|
||||
|
||||
cpus {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
@ -183,6 +187,37 @@ osc32k: clk-32k {
|
|||
clock-output-names = "osc32k";
|
||||
};
|
||||
|
||||
/*
|
||||
* The following two are dummy clocks, placeholders
|
||||
* used in the gmac_tx clock. The gmac driver will
|
||||
* choose one parent depending on the PHY interface
|
||||
* mode, using clk_set_rate auto-reparenting.
|
||||
*
|
||||
* The actual TX clock rate is not controlled by the
|
||||
* gmac_tx clock.
|
||||
*/
|
||||
mii_phy_tx_clk: mii_phy_tx_clk {
|
||||
#clock-cells = <0>;
|
||||
compatible = "fixed-clock";
|
||||
clock-frequency = <25000000>;
|
||||
clock-output-names = "mii_phy_tx";
|
||||
};
|
||||
|
||||
gmac_int_tx_clk: gmac_int_tx_clk {
|
||||
#clock-cells = <0>;
|
||||
compatible = "fixed-clock";
|
||||
clock-frequency = <125000000>;
|
||||
clock-output-names = "gmac_int_tx";
|
||||
};
|
||||
|
||||
gmac_tx_clk: clk@800030 {
|
||||
#clock-cells = <0>;
|
||||
compatible = "allwinner,sun7i-a20-gmac-clk";
|
||||
reg = <0x00800030 0x4>;
|
||||
clocks = <&mii_phy_tx_clk>, <&gmac_int_tx_clk>;
|
||||
clock-output-names = "gmac_tx";
|
||||
};
|
||||
|
||||
cpus_clk: clk@8001410 {
|
||||
compatible = "allwinner,sun9i-a80-cpus-clk";
|
||||
reg = <0x08001410 0x4>;
|
||||
|
@ -283,6 +318,23 @@ smp-sram@1000 {
|
|||
};
|
||||
};
|
||||
|
||||
gmac: ethernet@830000 {
|
||||
compatible = "allwinner,sun7i-a20-gmac";
|
||||
reg = <0x00830000 0x1054>;
|
||||
interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupt-names = "macirq";
|
||||
clocks = <&ccu CLK_BUS_GMAC>, <&gmac_tx_clk>;
|
||||
clock-names = "stmmaceth", "allwinner_gmac_tx";
|
||||
resets = <&ccu RST_BUS_GMAC>;
|
||||
reset-names = "stmmaceth";
|
||||
snps,pbl = <2>;
|
||||
snps,fixed-burst;
|
||||
snps,force_sf_dma_mode;
|
||||
status = "disabled";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
};
|
||||
|
||||
ehci0: usb@a00000 {
|
||||
compatible = "allwinner,sun9i-a80-ehci", "generic-ehci";
|
||||
reg = <0x00a00000 0x100>;
|
||||
|
@ -948,6 +1000,19 @@ pio: pinctrl@6000800 {
|
|||
#size-cells = <0>;
|
||||
#gpio-cells = <3>;
|
||||
|
||||
gmac_rgmii_pins: gmac-rgmii-pins {
|
||||
allwinner,pins = "PA0", "PA1", "PA2", "PA3",
|
||||
"PA4", "PA5", "PA7", "PA8",
|
||||
"PA9", "PA10", "PA12", "PA13",
|
||||
"PA15", "PA16", "PA17";
|
||||
allwinner,function = "gmac";
|
||||
/*
|
||||
* data lines in RGMII mode use DDR mode
|
||||
* and need a higher signal drive strength
|
||||
*/
|
||||
drive-strength = <40>;
|
||||
};
|
||||
|
||||
i2c3_pins: i2c3-pins {
|
||||
pins = "PG10", "PG11";
|
||||
function = "i2c3";
|
||||
|
|
Loading…
Reference in New Issue