Commit c0dec1ec authored by Arnd Bergmann's avatar Arnd Bergmann

Merge tag 'sunxi-dt-for-4.15' of...

Merge tag 'sunxi-dt-for-4.15' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux into next/dt

Pull "Allwinner DT changes for 4.15" from Maxime Ripard:

The most notable changes are:
  - Conversion to the last SoC (A10, A20) to the new clock framework
  - HDMI and dual pipeline support for the A10, A20 and A31 DRM driver
  - Support for the various power supplies on a number of boards
  - Fix of DTC warnings on a number of SoCs, but most of them still need
    some work
  - New boards: A20-OLinuXino-MICRO-eMMC, TBS A711, Banana Pi M2 Berry,
    Banana Pi M2 Ultra
  - New R40 SoC support

* tag 'sunxi-dt-for-4.15' of https://git.kernel.org/pub/scm/linux/kernel/git/sunxi/linux: (63 commits)
  ARM: sun8i: r40: enable USB host for Banana Pi M2 Ultra
  ARM: sun8i: v40: add 5V regulator for Banana Pi M2 Berry
  ARM: sun8i: r40: add 5V regulator for Banana Pi M2 Ultra
  ARM: sun8i: r40: add USB host port nodes for R40
  ARM: dts: sun4i: Enable HDMI support on some A10 devices
  ARM: dts: sun7i: Enable HDMI support on some A20 devices
  ARM: dts: sun7i: Add device nodes for display pipelines
  ARM: dts: sun4i: Add device nodes for display pipelines
  ARM: dts: sun8i: r40: add watchdog device node
  ARM: dts: sun5i: reference-design-tablet: Enable AXP209 AC and battery
  ARM: dts: sun9i: Change node names to remove underscores
  ARM: dts: sun9i: Change node names to remove underscores
  ARM: dts: sun4i: Remove underscores from nodes names
  ARM: dts: sun4i: Provide default muxing for relevant controllers
  ARM: dts: sun4i: Change pinctrl nodes to avoid warning
  ARM: dts: sun6i: Enable HDMI support on some A31/A31s devices
  ARM: dts: sun6i: Add device node for HDMI controller
  ARM: dts: sun4i: Change LRADC node names to avoid warnings
  ARM: dts: sun4i: Remove skeleton and memory to avoid warnings
  ARM: dts: sun4i: Remove gpio-keys warnings
  ...
parents 09228319 1357bdb2
...@@ -331,6 +331,7 @@ swir Sierra Wireless ...@@ -331,6 +331,7 @@ swir Sierra Wireless
syna Synaptics Inc. syna Synaptics Inc.
synology Synology, Inc. synology Synology, Inc.
tbs TBS Technologies tbs TBS Technologies
tbs-biometrics Touchless Biometric Systems AG
tcg Trusted Computing Group tcg Trusted Computing Group
tcl Toby Churchill Ltd. tcl Toby Churchill Ltd.
technexion TechNexion technexion TechNexion
......
...@@ -895,6 +895,7 @@ dtb-$(CONFIG_MACH_SUN7I) += \ ...@@ -895,6 +895,7 @@ dtb-$(CONFIG_MACH_SUN7I) += \
sun7i-a20-olinuxino-lime2.dtb \ sun7i-a20-olinuxino-lime2.dtb \
sun7i-a20-olinuxino-lime2-emmc.dtb \ sun7i-a20-olinuxino-lime2-emmc.dtb \
sun7i-a20-olinuxino-micro.dtb \ sun7i-a20-olinuxino-micro.dtb \
sun7i-a20-olinuxino-micro-emmc.dtb \
sun7i-a20-orangepi.dtb \ sun7i-a20-orangepi.dtb \
sun7i-a20-orangepi-mini.dtb \ sun7i-a20-orangepi-mini.dtb \
sun7i-a20-pcduino3.dtb \ sun7i-a20-pcduino3.dtb \
...@@ -920,6 +921,7 @@ dtb-$(CONFIG_MACH_SUN8I) += \ ...@@ -920,6 +921,7 @@ dtb-$(CONFIG_MACH_SUN8I) += \
sun8i-a83t-allwinner-h8homlet-v2.dtb \ sun8i-a83t-allwinner-h8homlet-v2.dtb \
sun8i-a83t-bananapi-m3.dtb \ sun8i-a83t-bananapi-m3.dtb \
sun8i-a83t-cubietruck-plus.dtb \ sun8i-a83t-cubietruck-plus.dtb \
sun8i-a83t-tbs-a711.dtb \
sun8i-h2-plus-orangepi-zero.dtb \ sun8i-h2-plus-orangepi-zero.dtb \
sun8i-h3-bananapi-m2-plus.dtb \ sun8i-h3-bananapi-m2-plus.dtb \
sun8i-h3-beelink-x2.dtb \ sun8i-h3-beelink-x2.dtb \
...@@ -936,8 +938,10 @@ dtb-$(CONFIG_MACH_SUN8I) += \ ...@@ -936,8 +938,10 @@ dtb-$(CONFIG_MACH_SUN8I) += \
sun8i-h3-orangepi-plus2e.dtb \ sun8i-h3-orangepi-plus2e.dtb \
sun8i-r16-bananapi-m2m.dtb \ sun8i-r16-bananapi-m2m.dtb \
sun8i-r16-parrot.dtb \ sun8i-r16-parrot.dtb \
sun8i-r40-bananapi-m2-ultra.dtb \
sun8i-v3s-licheepi-zero.dtb \ sun8i-v3s-licheepi-zero.dtb \
sun8i-v3s-licheepi-zero-dock.dtb sun8i-v3s-licheepi-zero-dock.dtb \
sun8i-v40-bananapi-m2-berry.dtb
dtb-$(CONFIG_MACH_SUN9I) += \ dtb-$(CONFIG_MACH_SUN9I) += \
sun9i-a80-optimus.dtb \ sun9i-a80-optimus.dtb \
sun9i-a80-cubieboard4.dtb sun9i-a80-cubieboard4.dtb
......
...@@ -107,7 +107,7 @@ reg_ldo5: ldo5 { ...@@ -107,7 +107,7 @@ reg_ldo5: ldo5 {
}; };
}; };
usb_power_supply: usb_power_supply { usb_power_supply: usb-power-supply {
compatible = "x-powers,axp202-usb-power-supply"; compatible = "x-powers,axp202-usb-power-supply";
status = "disabled"; status = "disabled";
}; };
......
...@@ -62,8 +62,6 @@ chosen { ...@@ -62,8 +62,6 @@ chosen {
leds { leds {
compatible = "gpio-leds"; compatible = "gpio-leds";
pinctrl-names = "default";
pinctrl-0 = <&led_pins_a1000>;
red { red {
label = "a1000:red:usr"; label = "a1000:red:usr";
...@@ -79,8 +77,6 @@ blue { ...@@ -79,8 +77,6 @@ blue {
reg_emac_3v3: emac-3v3 { reg_emac_3v3: emac-3v3 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
pinctrl-names = "default";
pinctrl-0 = <&emac_power_pin_a1000>;
regulator-name = "emac-3v3"; regulator-name = "emac-3v3";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
...@@ -129,8 +125,6 @@ &ehci1 { ...@@ -129,8 +125,6 @@ &ehci1 {
}; };
&emac { &emac {
pinctrl-names = "default";
pinctrl-0 = <&emac_pins_a>;
phy = <&phy1>; phy = <&phy1>;
status = "okay"; status = "okay";
}; };
...@@ -140,8 +134,6 @@ &emac_sram { ...@@ -140,8 +134,6 @@ &emac_sram {
}; };
&i2c0 { &i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>;
status = "okay"; status = "okay";
axp209: pmic@34 { axp209: pmic@34 {
...@@ -156,7 +148,7 @@ axp209: pmic@34 { ...@@ -156,7 +148,7 @@ axp209: pmic@34 {
&ir0 { &ir0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&ir0_rx_pins_a>; pinctrl-0 = <&ir0_rx_pins>;
status = "okay"; status = "okay";
}; };
...@@ -170,8 +162,6 @@ phy1: ethernet-phy@1 { ...@@ -170,8 +162,6 @@ phy1: ethernet-phy@1 {
}; };
&mmc0 { &mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins_a>;
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */ cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
...@@ -187,18 +177,6 @@ &ohci1 { ...@@ -187,18 +177,6 @@ &ohci1 {
status = "okay"; status = "okay";
}; };
&pio {
emac_power_pin_a1000: emac_power_pin@0 {
pins = "PH15";
function = "gpio_out";
};
led_pins_a1000: led_pins@0 {
pins = "PH10", "PH20";
function = "gpio_out";
};
};
#include "axp209.dtsi" #include "axp209.dtsi"
&reg_dcdc2 { &reg_dcdc2 {
...@@ -236,13 +214,13 @@ &reg_usb2_vbus { ...@@ -236,13 +214,13 @@ &reg_usb2_vbus {
&spdif { &spdif {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&spdif_tx_pins_a>; pinctrl-0 = <&spdif_tx_pin>;
status = "okay"; status = "okay";
}; };
&uart0 { &uart0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>; pinctrl-0 = <&uart0_pb_pins>;
status = "okay"; status = "okay";
}; };
......
...@@ -68,8 +68,6 @@ &ehci1 { ...@@ -68,8 +68,6 @@ &ehci1 {
}; };
&emac { &emac {
pinctrl-names = "default";
pinctrl-0 = <&emac_pins_a>;
phy = <&phy1>; phy = <&phy1>;
status = "okay"; status = "okay";
}; };
...@@ -79,8 +77,6 @@ &emac_sram { ...@@ -79,8 +77,6 @@ &emac_sram {
}; };
&i2c0 { &i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>;
status = "okay"; status = "okay";
axp209: pmic@34 { axp209: pmic@34 {
...@@ -95,7 +91,7 @@ axp209: pmic@34 { ...@@ -95,7 +91,7 @@ axp209: pmic@34 {
&ir0 { &ir0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&ir0_rx_pins_a>; pinctrl-0 = <&ir0_rx_pins>;
status = "okay"; status = "okay";
}; };
...@@ -108,8 +104,6 @@ phy1: ethernet-phy@1 { ...@@ -108,8 +104,6 @@ phy1: ethernet-phy@1 {
}; };
&mmc0 { &mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins_a>;
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */ cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
...@@ -125,12 +119,6 @@ &otg_sram { ...@@ -125,12 +119,6 @@ &otg_sram {
status = "okay"; status = "okay";
}; };
&pio {
usb2_vbus_pin_a: usb2_vbus_pin@0 {
pins = "PH12";
};
};
&reg_usb0_vbus { &reg_usb0_vbus {
regulator-boot-on; regulator-boot-on;
status = "okay"; status = "okay";
...@@ -147,7 +135,7 @@ &reg_usb2_vbus { ...@@ -147,7 +135,7 @@ &reg_usb2_vbus {
&uart0 { &uart0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>; pinctrl-0 = <&uart0_pb_pins>;
status = "okay"; status = "okay";
}; };
......
...@@ -65,8 +65,6 @@ &ehci1 { ...@@ -65,8 +65,6 @@ &ehci1 {
}; };
&i2c0 { &i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>;
status = "okay"; status = "okay";
axp209: pmic@34 { axp209: pmic@34 {
...@@ -80,14 +78,10 @@ axp209: pmic@34 { ...@@ -80,14 +78,10 @@ axp209: pmic@34 {
}; };
&i2c1 { &i2c1 {
pinctrl-names = "default";
pinctrl-0 = <&i2c1_pins_a>;
status = "okay"; status = "okay";
}; };
&i2c2 { &i2c2 {
pinctrl-names = "default";
pinctrl-0 = <&i2c2_pins_a>;
status = "okay"; status = "okay";
ft5306de4: touchscreen@38 { ft5306de4: touchscreen@38 {
...@@ -104,21 +98,21 @@ &lradc { ...@@ -104,21 +98,21 @@ &lradc {
vref-supply = <&reg_vcc3v0>; vref-supply = <&reg_vcc3v0>;
status = "okay"; status = "okay";
button@800 { button-800 {
label = "Volume Up"; label = "Volume Up";
linux,code = <KEY_VOLUMEUP>; linux,code = <KEY_VOLUMEUP>;
channel = <0>; channel = <0>;
voltage = <800000>; voltage = <800000>;
}; };
button@1000 { button-1000 {
label = "Volume Down"; label = "Volume Down";
linux,code = <KEY_VOLUMEDOWN>; linux,code = <KEY_VOLUMEDOWN>;
channel = <0>; channel = <0>;
voltage = <1000000>; voltage = <1000000>;
}; };
button@1200 { button-1200 {
label = "Back"; label = "Back";
linux,code = <KEY_BACK>; linux,code = <KEY_BACK>;
channel = <0>; channel = <0>;
...@@ -127,8 +121,6 @@ button@1200 { ...@@ -127,8 +121,6 @@ button@1200 {
}; };
&mmc0 { &mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins_a>;
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */ cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
...@@ -141,13 +133,13 @@ &otg_sram { ...@@ -141,13 +133,13 @@ &otg_sram {
}; };
&pio { &pio {
usb0_id_detect_pin: usb0_id_detect_pin@0 { usb0_id_detect_pin: usb0-id-detect-pin {
pins = "PH4"; pins = "PH4";
function = "gpio_in"; function = "gpio_in";
bias-pull-up; bias-pull-up;
}; };
usb0_vbus_detect_pin: usb0_vbus_detect_pin@0 { usb0_vbus_detect_pin: usb0-vbus-detect-pin {
pins = "PH5"; pins = "PH5";
function = "gpio_in"; function = "gpio_in";
bias-pull-down; bias-pull-down;
...@@ -164,7 +156,7 @@ &reg_usb2_vbus { ...@@ -164,7 +156,7 @@ &reg_usb2_vbus {
&uart0 { &uart0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>; pinctrl-0 = <&uart0_pb_pins>;
status = "okay"; status = "okay";
}; };
......
...@@ -59,6 +59,17 @@ chosen { ...@@ -59,6 +59,17 @@ chosen {
stdout-path = "serial0:115200n8"; stdout-path = "serial0:115200n8";
}; };
hdmi-connector {
compatible = "hdmi-connector";
type = "a";
port {
hdmi_con_in: endpoint {
remote-endpoint = <&hdmi_out_con>;
};
};
};
leds { leds {
compatible = "gpio-leds"; compatible = "gpio-leds";
pinctrl-names = "default"; pinctrl-names = "default";
...@@ -90,6 +101,10 @@ &cpu0 { ...@@ -90,6 +101,10 @@ &cpu0 {
cpu-supply = <&reg_dcdc2>; cpu-supply = <&reg_dcdc2>;
}; };
&de {
status = "okay";
};
&ehci0 { &ehci0 {
status = "okay"; status = "okay";
}; };
...@@ -99,8 +114,6 @@ &ehci1 { ...@@ -99,8 +114,6 @@ &ehci1 {
}; };
&emac { &emac {
pinctrl-names = "default";
pinctrl-0 = <&emac_pins_a>;
phy = <&phy1>; phy = <&phy1>;
status = "okay"; status = "okay";
}; };
...@@ -109,9 +122,17 @@ &emac_sram { ...@@ -109,9 +122,17 @@ &emac_sram {
status = "okay"; status = "okay";
}; };
&hdmi {
status = "okay";
};
&hdmi_out {
hdmi_out_con: endpoint {
remote-endpoint = <&hdmi_con_in>;
};
};
&i2c0 { &i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>;
status = "okay"; status = "okay";
axp209: pmic@34 { axp209: pmic@34 {
...@@ -121,14 +142,12 @@ axp209: pmic@34 { ...@@ -121,14 +142,12 @@ axp209: pmic@34 {
}; };
&i2c1 { &i2c1 {
pinctrl-names = "default";
pinctrl-0 = <&i2c1_pins_a>;
status = "okay"; status = "okay";
}; };
&ir0 { &ir0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&ir0_rx_pins_a>; pinctrl-0 = <&ir0_rx_pins>;
status = "okay"; status = "okay";
}; };
...@@ -141,8 +160,6 @@ phy1: ethernet-phy@1 { ...@@ -141,8 +160,6 @@ phy1: ethernet-phy@1 {
}; };
&mmc0 { &mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins_a>;
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */ cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
...@@ -163,13 +180,13 @@ &otg_sram { ...@@ -163,13 +180,13 @@ &otg_sram {
}; };
&pio { &pio {
led_pins_cubieboard: led_pins@0 { led_pins_cubieboard: led-pins {
pins = "PH20", "PH21"; pins = "PH20", "PH21";
function = "gpio_out"; function = "gpio_out";
drive-strength = <20>; drive-strength = <20>;
}; };
usb0_id_detect_pin: usb0_id_detect_pin@0 { usb0_id_detect_pin: usb0-id-detect-pin {
pins = "PH4"; pins = "PH4";
function = "gpio_in"; function = "gpio_in";
bias-pull-up; bias-pull-up;
...@@ -221,14 +238,14 @@ &reg_usb2_vbus { ...@@ -221,14 +238,14 @@ &reg_usb2_vbus {
&spi0 { &spi0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&spi0_pins_a>, pinctrl-0 = <&spi0_pi_pins>,
<&spi0_cs0_pins_a>; <&spi0_cs0_pi_pin>;
status = "okay"; status = "okay";
}; };
&uart0 { &uart0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>; pinctrl-0 = <&uart0_pb_pins>;
status = "okay"; status = "okay";
}; };
......
...@@ -58,8 +58,6 @@ aliases { ...@@ -58,8 +58,6 @@ aliases {
backlight: backlight { backlight: backlight {
compatible = "pwm-backlight"; compatible = "pwm-backlight";
pinctrl-names = "default";
pinctrl-0 = <&bl_en_pin_dsrv9703c>;
pwms = <&pwm 0 50000 PWM_POLARITY_INVERTED>; pwms = <&pwm 0 50000 PWM_POLARITY_INVERTED>;
brightness-levels = <0 10 20 30 40 50 60 70 80 90 100>; brightness-levels = <0 10 20 30 40 50 60 70 80 90 100>;
default-brightness-level = <8>; default-brightness-level = <8>;
...@@ -77,10 +75,8 @@ haptics { ...@@ -77,10 +75,8 @@ haptics {
max-microvolt = <3000000>; max-microvolt = <3000000>;
}; };
reg_motor: reg_motor { reg_motor: reg-motor {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
pinctrl-names = "default";
pinctrl-0 = <&motor_pins>;
regulator-name = "vcc-motor"; regulator-name = "vcc-motor";
regulator-min-microvolt = <3000000>; regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>; regulator-max-microvolt = <3000000>;
...@@ -90,8 +86,6 @@ reg_motor: reg_motor { ...@@ -90,8 +86,6 @@ reg_motor: reg_motor {
}; };
&codec { &codec {
pinctrl-names = "default";
pinctrl-0 = <&codec_pa_pin>;
allwinner,pa-gpios = <&pio 7 15 GPIO_ACTIVE_HIGH>; /* PH15 */ allwinner,pa-gpios = <&pio 7 15 GPIO_ACTIVE_HIGH>; /* PH15 */
status = "okay"; status = "okay";
}; };
...@@ -105,8 +99,6 @@ &ehci1 { ...@@ -105,8 +99,6 @@ &ehci1 {
}; };
&i2c0 { &i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>;
status = "okay"; status = "okay";
axp209: pmic@34 { axp209: pmic@34 {
...@@ -118,15 +110,11 @@ axp209: pmic@34 { ...@@ -118,15 +110,11 @@ axp209: pmic@34 {
#include "axp209.dtsi" #include "axp209.dtsi"
&i2c1 { &i2c1 {
pinctrl-names = "default";
pinctrl-0 = <&i2c1_pins_a>;
/* pull-ups and devices require AXP209 LDO3 */ /* pull-ups and devices require AXP209 LDO3 */
status = "failed"; status = "failed";
}; };
&i2c2 { &i2c2 {
pinctrl-names = "default";
pinctrl-0 = <&i2c2_pins_a>;
status = "okay"; status = "okay";
ft5406ee8: touchscreen@38 { ft5406ee8: touchscreen@38 {
...@@ -134,8 +122,6 @@ ft5406ee8: touchscreen@38 { ...@@ -134,8 +122,6 @@ ft5406ee8: touchscreen@38 {
reg = <0x38>; reg = <0x38>;
interrupt-parent = <&pio>; interrupt-parent = <&pio>;
interrupts = <7 21 IRQ_TYPE_EDGE_FALLING>; interrupts = <7 21 IRQ_TYPE_EDGE_FALLING>;
pinctrl-names = "default";
pinctrl-0 = <&touchscreen_pins>;
reset-gpios = <&pio 1 13 GPIO_ACTIVE_LOW>; reset-gpios = <&pio 1 13 GPIO_ACTIVE_LOW>;
touchscreen-size-x = <1024>; touchscreen-size-x = <1024>;
touchscreen-size-y = <768>; touchscreen-size-y = <768>;
...@@ -146,14 +132,14 @@ &lradc { ...@@ -146,14 +132,14 @@ &lradc {
vref-supply = <&reg_ldo2>; vref-supply = <&reg_ldo2>;
status = "okay"; status = "okay";
button@400 { button-400 {
label = "Volume Down"; label = "Volume Down";
linux,code = <KEY_VOLUMEDOWN>; linux,code = <KEY_VOLUMEDOWN>;
channel = <0>; channel = <0>;
voltage = <400000>; voltage = <400000>;
}; };
button@800 { button-800 {
label = "Volume Up"; label = "Volume Up";
linux,code = <KEY_VOLUMEUP>; linux,code = <KEY_VOLUMEUP>;
channel = <0>; channel = <0>;
...@@ -162,8 +148,6 @@ button@800 { ...@@ -162,8 +148,6 @@ button@800 {
}; };
&mmc0 { &mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins_a>;
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */ cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
...@@ -176,33 +160,13 @@ &otg_sram { ...@@ -176,33 +160,13 @@ &otg_sram {
}; };
&pio { &pio {
bl_en_pin_dsrv9703c: bl_en_pin@0 { usb0_id_detect_pin: usb0-id-detect-pin {
pins = "PH7";
function = "gpio_out";
};
codec_pa_pin: codec_pa_pin@0 {
pins = "PH15";
function = "gpio_out";
};
motor_pins: motor_pins@0 {
pins = "PB3";
function = "gpio_out";
};
touchscreen_pins: touchscreen_pins@0 {
pins = "PB13";
function = "gpio_out";
};
usb0_id_detect_pin: usb0_id_detect_pin@0 {
pins = "PH4"; pins = "PH4";
function = "gpio_in"; function = "gpio_in";
bias-pull-up; bias-pull-up;
}; };
usb0_vbus_detect_pin: usb0_vbus_detect_pin@0 { usb0_vbus_detect_pin: usb0-vbus-detect-pin {
pins = "PH5"; pins = "PH5";
function = "gpio_in"; function = "gpio_in";
bias-pull-down; bias-pull-down;
...@@ -211,7 +175,7 @@ usb0_vbus_detect_pin: usb0_vbus_detect_pin@0 { ...@@ -211,7 +175,7 @@ usb0_vbus_detect_pin: usb0_vbus_detect_pin@0 {
&pwm { &pwm {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pwm0_pins_a>; pinctrl-0 = <&pwm0_pin>;
status = "okay"; status = "okay";
}; };
...@@ -250,7 +214,7 @@ &reg_usb2_vbus { ...@@ -250,7 +214,7 @@ &reg_usb2_vbus {
&uart0 { &uart0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>; pinctrl-0 = <&uart0_pb_pins>;
status = "okay"; status = "okay";
}; };
......
...@@ -72,8 +72,6 @@ chosen { ...@@ -72,8 +72,6 @@ chosen {
*/ */
&codec { &codec {
/* PH15 controls power to external amplifier (ft2012q) */ /* PH15 controls power to external amplifier (ft2012q) */
pinctrl-names = "default";
pinctrl-0 = <&codec_pa_pin>;
allwinner,pa-gpios = <&pio 7 15 GPIO_ACTIVE_HIGH>; allwinner,pa-gpios = <&pio 7 15 GPIO_ACTIVE_HIGH>;
status = "okay"; status = "okay";
}; };
...@@ -91,8 +89,6 @@ &ehci1 { ...@@ -91,8 +89,6 @@ &ehci1 {
}; };
&i2c0 { &i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>;
status = "okay"; status = "okay";
axp209: pmic@34 { axp209: pmic@34 {
...@@ -104,8 +100,6 @@ axp209: pmic@34 { ...@@ -104,8 +100,6 @@ axp209: pmic@34 {
#include "axp209.dtsi" #include "axp209.dtsi"
&i2c1 { &i2c1 {
pinctrl-names = "default";
pinctrl-0 = <&i2c1_pins_a>;
status = "okay"; status = "okay";
/* Accelerometer */ /* Accelerometer */
...@@ -122,21 +116,21 @@ &lradc { ...@@ -122,21 +116,21 @@ &lradc {
status = "okay"; status = "okay";
button@158 { button-158 {
label = "Volume Down"; label = "Volume Down";
linux,code = <KEY_VOLUMEDOWN>; linux,code = <KEY_VOLUMEDOWN>;
channel = <0>; channel = <0>;
voltage = <158730>; voltage = <158730>;
}; };
button@349 { button-349 {
label = "Volume Up"; label = "Volume Up";
linux,code = <KEY_VOLUMEUP>; linux,code = <KEY_VOLUMEUP>;
channel = <0>; channel = <0>;
voltage = <349206>; voltage = <349206>;
}; };
button@1142 { button-1142 {
label = "Esc"; label = "Esc";
linux,code = <KEY_ESC>; linux,code = <KEY_ESC>;
channel = <0>; channel = <0>;
...@@ -145,8 +139,6 @@ button@1142 { ...@@ -145,8 +139,6 @@ button@1142 {
}; };
&mmc0 { &mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins_a>;
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH01 */ cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH01 */
...@@ -154,13 +146,6 @@ &mmc0 { ...@@ -154,13 +146,6 @@ &mmc0 {
status = "okay"; status = "okay";
}; };
&pio {
codec_pa_pin: codec_pa_pin@0 {
pins = "PH15";
function = "gpio_out";
};
};
&reg_dcdc2 { &reg_dcdc2 {
regulator-always-on; regulator-always-on;
regulator-min-microvolt = <1000000>; regulator-min-microvolt = <1000000>;
...@@ -197,7 +182,7 @@ &reg_usb2_vbus { ...@@ -197,7 +182,7 @@ &reg_usb2_vbus {
&uart0 { &uart0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>; pinctrl-0 = <&uart0_pb_pins>;
status = "okay"; status = "okay";
}; };
......
...@@ -80,8 +80,6 @@ &ehci1 { ...@@ -80,8 +80,6 @@ &ehci1 {
}; };
&emac { &emac {
pinctrl-names = "default";
pinctrl-0 = <&emac_pins_a>;
phy = <&phy0>; phy = <&phy0>;
status = "okay"; status = "okay";
}; };
...@@ -92,7 +90,7 @@ &emac_sram { ...@@ -92,7 +90,7 @@ &emac_sram {
&ir0 { &ir0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&ir0_rx_pins_a>; pinctrl-0 = <&ir0_rx_pins>;
status = "okay"; status = "okay";
}; };
...@@ -106,8 +104,6 @@ phy0: ethernet-phy@0 { ...@@ -106,8 +104,6 @@ phy0: ethernet-phy@0 {
}; };
&mmc0 { &mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins_a>;
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */ cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
...@@ -123,27 +119,11 @@ &ohci1 { ...@@ -123,27 +119,11 @@ &ohci1 {
status = "okay"; status = "okay";
}; };
&pio {
pinctrl-names = "default";
pinctrl-0 = <&hackberry_hogs>;
hackberry_hogs: hogs@0 {
pins = "PH19";
function = "gpio_out";
};
usb2_vbus_pin_hackberry: usb2_vbus_pin@0 {
pins = "PH12";
function = "gpio_out";
};
};
&reg_usb1_vbus { &reg_usb1_vbus {
status = "okay"; status = "okay";
}; };
&reg_usb2_vbus { &reg_usb2_vbus {
pinctrl-0 = <&usb2_vbus_pin_hackberry>;
gpio = <&pio 7 12 GPIO_ACTIVE_HIGH>; gpio = <&pio 7 12 GPIO_ACTIVE_HIGH>;
status = "okay"; status = "okay";
}; };
...@@ -156,6 +136,6 @@ &usbphy { ...@@ -156,6 +136,6 @@ &usbphy {
&uart0 { &uart0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>; pinctrl-0 = <&uart0_pb_pins>;
status = "okay"; status = "okay";
}; };
...@@ -63,8 +63,6 @@ &ehci1 { ...@@ -63,8 +63,6 @@ &ehci1 {
}; };
&i2c0 { &i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>;
status = "okay"; status = "okay";
axp209: pmic@34 { axp209: pmic@34 {
...@@ -78,8 +76,6 @@ axp209: pmic@34 { ...@@ -78,8 +76,6 @@ axp209: pmic@34 {
}; };
&mmc0 { &mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins_a>;
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */ cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
...@@ -92,13 +88,13 @@ &otg_sram { ...@@ -92,13 +88,13 @@ &otg_sram {
}; };
&pio { &pio {
usb0_id_detect_pin: usb0_id_detect_pin@0 { usb0_id_detect_pin: usb0-id-detect-pin {
pins = "PH4"; pins = "PH4";
function = "gpio_in"; function = "gpio_in";
bias-pull-up; bias-pull-up;
}; };
usb0_vbus_detect_pin: usb0_vbus_detect_pin@0 { usb0_vbus_detect_pin: usb0-vbus-detect-pin {
pins = "PH5"; pins = "PH5";
function = "gpio_in"; function = "gpio_in";
bias-pull-down; bias-pull-down;
...@@ -116,7 +112,7 @@ &reg_usb2_vbus { ...@@ -116,7 +112,7 @@ &reg_usb2_vbus {
&uart0 { &uart0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>; pinctrl-0 = <&uart0_pb_pins>;
status = "okay"; status = "okay";
}; };
......
...@@ -58,8 +58,6 @@ aliases { ...@@ -58,8 +58,6 @@ aliases {
backlight: backlight { backlight: backlight {
compatible = "pwm-backlight"; compatible = "pwm-backlight";
pinctrl-names = "default";
pinctrl-0 = <&bl_en_pin_inet>;
pwms = <&pwm 0 50000 PWM_POLARITY_INVERTED>; pwms = <&pwm 0 50000 PWM_POLARITY_INVERTED>;
brightness-levels = <0 10 20 30 40 50 60 70 80 90 100>; brightness-levels = <0 10 20 30 40 50 60 70 80 90 100>;
default-brightness-level = <8>; default-brightness-level = <8>;
...@@ -88,8 +86,6 @@ &ehci1 { ...@@ -88,8 +86,6 @@ &ehci1 {
}; };
&i2c0 { &i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>;
status = "okay"; status = "okay";
axp209: pmic@34 { axp209: pmic@34 {
...@@ -101,8 +97,6 @@ axp209: pmic@34 { ...@@ -101,8 +97,6 @@ axp209: pmic@34 {
#include "axp209.dtsi" #include "axp209.dtsi"
&i2c1 { &i2c1 {
pinctrl-names = "default";
pinctrl-0 = <&i2c1_pins_a>;
status = "okay"; status = "okay";
/* Accelerometer */ /* Accelerometer */
...@@ -115,8 +109,6 @@ bma250@18 { ...@@ -115,8 +109,6 @@ bma250@18 {
}; };
&i2c2 { &i2c2 {
pinctrl-names = "default";
pinctrl-0 = <&i2c2_pins_a>;
status = "okay"; status = "okay";
ft5x: touchscreen@38 { ft5x: touchscreen@38 {
...@@ -124,8 +116,6 @@ ft5x: touchscreen@38 { ...@@ -124,8 +116,6 @@ ft5x: touchscreen@38 {
reg = <0x38>; reg = <0x38>;
interrupt-parent = <&pio>; interrupt-parent = <&pio>;
interrupts = <7 21 IRQ_TYPE_EDGE_FALLING>; interrupts = <7 21 IRQ_TYPE_EDGE_FALLING>;
pinctrl-names = "default";
pinctrl-0 = <&touchscreen_wake_pin>;
wake-gpios = <&pio 1 13 GPIO_ACTIVE_HIGH>; /* PB13 */ wake-gpios = <&pio 1 13 GPIO_ACTIVE_HIGH>; /* PB13 */
touchscreen-size-x = <600>; touchscreen-size-x = <600>;
touchscreen-size-y = <1024>; touchscreen-size-y = <1024>;
...@@ -137,21 +127,21 @@ &lradc { ...@@ -137,21 +127,21 @@ &lradc {
vref-supply = <&reg_ldo2>; vref-supply = <&reg_ldo2>;
status = "okay"; status = "okay";
button@200 { button-200 {
label = "Volume Up"; label = "Volume Up";
linux,code = <KEY_VOLUMEUP>; linux,code = <KEY_VOLUMEUP>;
channel = <0>; channel = <0>;
voltage = <200000>; voltage = <200000>;
}; };
button@1000 { button-1000 {
label = "Volume Down"; label = "Volume Down";
linux,code = <KEY_VOLUMEDOWN>; linux,code = <KEY_VOLUMEDOWN>;
channel = <0>; channel = <0>;
voltage = <1000000>; voltage = <1000000>;
}; };
button@1200 { button-1200 {
label = "Home"; label = "Home";
linux,code = <KEY_HOMEPAGE>; linux,code = <KEY_HOMEPAGE>;
channel = <0>; channel = <0>;
...@@ -160,8 +150,6 @@ button@1200 { ...@@ -160,8 +150,6 @@ button@1200 {
}; };
&mmc0 { &mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins_a>;
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */ cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
...@@ -178,23 +166,13 @@ &otg_sram { ...@@ -178,23 +166,13 @@ &otg_sram {
}; };
&pio { &pio {
bl_en_pin_inet: bl_en_pin@0 { usb0_id_detect_pin: usb0-id-detect-pin {
pins = "PH7";
function = "gpio_out";
};
touchscreen_wake_pin: touchscreen_wake_pin@0 {
pins = "PB13";
function = "gpio_out";
};
usb0_id_detect_pin: usb0_id_detect_pin@0 {
pins = "PH4"; pins = "PH4";
function = "gpio_in"; function = "gpio_in";
bias-pull-up; bias-pull-up;
}; };
usb0_vbus_detect_pin: usb0_vbus_detect_pin@0 { usb0_vbus_detect_pin: usb0-vbus-detect-pin {
pins = "PH5"; pins = "PH5";
function = "gpio_in"; function = "gpio_in";
bias-pull-down; bias-pull-down;
...@@ -203,7 +181,7 @@ usb0_vbus_detect_pin: usb0_vbus_detect_pin@0 { ...@@ -203,7 +181,7 @@ usb0_vbus_detect_pin: usb0_vbus_detect_pin@0 {
&pwm { &pwm {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pwm0_pins_a>; pinctrl-0 = <&pwm0_pin>;
status = "okay"; status = "okay";
}; };
...@@ -246,7 +224,7 @@ &reg_usb2_vbus { ...@@ -246,7 +224,7 @@ &reg_usb2_vbus {
&uart0 { &uart0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>; pinctrl-0 = <&uart0_pb_pins>;
status = "okay"; status = "okay";
}; };
......
...@@ -72,8 +72,6 @@ &ehci1 { ...@@ -72,8 +72,6 @@ &ehci1 {
}; };
&i2c0 { &i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>;
status = "okay"; status = "okay";
axp209: pmic@34 { axp209: pmic@34 {
...@@ -85,14 +83,10 @@ axp209: pmic@34 { ...@@ -85,14 +83,10 @@ axp209: pmic@34 {
#include "axp209.dtsi" #include "axp209.dtsi"
&i2c1 { &i2c1 {
pinctrl-names = "default";
pinctrl-0 = <&i2c1_pins_a>;
status = "okay"; status = "okay";
}; };
&i2c2 { &i2c2 {
pinctrl-names = "default";
pinctrl-0 = <&i2c2_pins_a>;
status = "okay"; status = "okay";
ft5406ee8: touchscreen@38 { ft5406ee8: touchscreen@38 {
...@@ -109,35 +103,35 @@ &lradc { ...@@ -109,35 +103,35 @@ &lradc {
vref-supply = <&reg_ldo2>; vref-supply = <&reg_ldo2>;
status = "okay"; status = "okay";
button@200 { button-200 {
label = "Menu"; label = "Menu";
linux,code = <KEY_MENU>; linux,code = <KEY_MENU>;
channel = <0>; channel = <0>;
voltage = <200000>; voltage = <200000>;
}; };
button@600 { button-600 {
label = "Volume Up"; label = "Volume Up";
linux,code = <KEY_VOLUMEUP>; linux,code = <KEY_VOLUMEUP>;
channel = <0>; channel = <0>;
voltage = <600000>; voltage = <600000>;
}; };
button@800 { button-800 {
label = "Volume Down"; label = "Volume Down";
linux,code = <KEY_VOLUMEDOWN>; linux,code = <KEY_VOLUMEDOWN>;
channel = <0>; channel = <0>;
voltage = <800000>; voltage = <800000>;
}; };
button@1000 { button-1000 {
label = "Home"; label = "Home";
linux,code = <KEY_HOMEPAGE>; linux,code = <KEY_HOMEPAGE>;
channel = <0>; channel = <0>;
voltage = <1000000>; voltage = <1000000>;
}; };
button@1200 { button-1200 {
label = "Esc"; label = "Esc";
linux,code = <KEY_ESC>; linux,code = <KEY_ESC>;
channel = <0>; channel = <0>;
...@@ -146,8 +140,6 @@ button@1200 { ...@@ -146,8 +140,6 @@ button@1200 {
}; };
&mmc0 { &mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins_a>;
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */ cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
...@@ -160,13 +152,13 @@ &otg_sram { ...@@ -160,13 +152,13 @@ &otg_sram {
}; };
&pio { &pio {
usb0_id_detect_pin: usb0_id_detect_pin@0 { usb0_id_detect_pin: usb0-id-detect-pin {
pins = "PH4"; pins = "PH4";
function = "gpio_in"; function = "gpio_in";
bias-pull-up; bias-pull-up;
}; };
usb0_vbus_detect_pin: usb0_vbus_detect_pin@0 { usb0_vbus_detect_pin: usb0-vbus-detect-pin {
pins = "PH5"; pins = "PH5";
function = "gpio_in"; function = "gpio_in";
bias-pull-down; bias-pull-down;
...@@ -208,7 +200,7 @@ &reg_usb2_vbus { ...@@ -208,7 +200,7 @@ &reg_usb2_vbus {
&uart0 { &uart0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>; pinctrl-0 = <&uart0_pb_pins>;
status = "okay"; status = "okay";
}; };
......
...@@ -59,7 +59,7 @@ chosen { ...@@ -59,7 +59,7 @@ chosen {
stdout-path = "serial0:115200n8"; stdout-path = "serial0:115200n8";
}; };
gpio_keys { gpio-keys {
compatible = "gpio-keys-polled"; compatible = "gpio-keys-polled";
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&key_pins_inet9f>; pinctrl-0 = <&key_pins_inet9f>;
...@@ -67,7 +67,7 @@ gpio_keys { ...@@ -67,7 +67,7 @@ gpio_keys {
#size-cells = <0>; #size-cells = <0>;
poll-interval = <20>; poll-interval = <20>;
button@0 { left-joystick-left {
label = "Left Joystick Left"; label = "Left Joystick Left";
linux,code = <ABS_X>; linux,code = <ABS_X>;
linux,input-type = <EV_ABS>; linux,input-type = <EV_ABS>;
...@@ -75,7 +75,7 @@ button@0 { ...@@ -75,7 +75,7 @@ button@0 {
gpios = <&pio 0 6 GPIO_ACTIVE_LOW>; /* PA6 */ gpios = <&pio 0 6 GPIO_ACTIVE_LOW>; /* PA6 */
}; };
button@1 { left-joystick-right {
label = "Left Joystick Right"; label = "Left Joystick Right";
linux,code = <ABS_X>; linux,code = <ABS_X>;
linux,input-type = <EV_ABS>; linux,input-type = <EV_ABS>;
...@@ -83,7 +83,7 @@ button@1 { ...@@ -83,7 +83,7 @@ button@1 {
gpios = <&pio 0 5 GPIO_ACTIVE_LOW>; /* PA5 */ gpios = <&pio 0 5 GPIO_ACTIVE_LOW>; /* PA5 */
}; };
button@2 { left-joystick-up {
label = "Left Joystick Up"; label = "Left Joystick Up";
linux,code = <ABS_Y>; linux,code = <ABS_Y>;
linux,input-type = <EV_ABS>; linux,input-type = <EV_ABS>;
...@@ -91,7 +91,7 @@ button@2 { ...@@ -91,7 +91,7 @@ button@2 {
gpios = <&pio 0 8 GPIO_ACTIVE_LOW>; /* PA8 */ gpios = <&pio 0 8 GPIO_ACTIVE_LOW>; /* PA8 */
}; };
button@3 { left-joystick-down {
label = "Left Joystick Down"; label = "Left Joystick Down";
linux,code = <ABS_Y>; linux,code = <ABS_Y>;
linux,input-type = <EV_ABS>; linux,input-type = <EV_ABS>;
...@@ -99,7 +99,7 @@ button@3 { ...@@ -99,7 +99,7 @@ button@3 {
gpios = <&pio 0 9 GPIO_ACTIVE_LOW>; /* PA9 */ gpios = <&pio 0 9 GPIO_ACTIVE_LOW>; /* PA9 */
}; };
button@4 { right-joystick-left {
label = "Right Joystick Left"; label = "Right Joystick Left";
linux,code = <ABS_Z>; linux,code = <ABS_Z>;
linux,input-type = <EV_ABS>; linux,input-type = <EV_ABS>;
...@@ -107,7 +107,7 @@ button@4 { ...@@ -107,7 +107,7 @@ button@4 {
gpios = <&pio 0 1 GPIO_ACTIVE_LOW>; /* PA1 */ gpios = <&pio 0 1 GPIO_ACTIVE_LOW>; /* PA1 */
}; };
button@5 { right-joystick-right {
label = "Right Joystick Right"; label = "Right Joystick Right";
linux,code = <ABS_Z>; linux,code = <ABS_Z>;
linux,input-type = <EV_ABS>; linux,input-type = <EV_ABS>;
...@@ -115,7 +115,7 @@ button@5 { ...@@ -115,7 +115,7 @@ button@5 {
gpios = <&pio 0 0 GPIO_ACTIVE_LOW>; /* PA0 */ gpios = <&pio 0 0 GPIO_ACTIVE_LOW>; /* PA0 */
}; };
button@6 { right-joystick-up {
label = "Right Joystick Up"; label = "Right Joystick Up";
linux,code = <ABS_RZ>; linux,code = <ABS_RZ>;
linux,input-type = <EV_ABS>; linux,input-type = <EV_ABS>;
...@@ -123,7 +123,7 @@ button@6 { ...@@ -123,7 +123,7 @@ button@6 {
gpios = <&pio 0 3 GPIO_ACTIVE_LOW>; /* PA3 */ gpios = <&pio 0 3 GPIO_ACTIVE_LOW>; /* PA3 */
}; };
button@7 { right-joystick-down {
label = "Right Joystick Down"; label = "Right Joystick Down";
linux,code = <ABS_RZ>; linux,code = <ABS_RZ>;
linux,input-type = <EV_ABS>; linux,input-type = <EV_ABS>;
...@@ -131,7 +131,7 @@ button@7 { ...@@ -131,7 +131,7 @@ button@7 {
gpios = <&pio 0 4 GPIO_ACTIVE_LOW>; /* PA4 */ gpios = <&pio 0 4 GPIO_ACTIVE_LOW>; /* PA4 */
}; };
button@8 { dpad-left {
label = "DPad Left"; label = "DPad Left";
linux,code = <ABS_HAT0X>; linux,code = <ABS_HAT0X>;
linux,input-type = <EV_ABS>; linux,input-type = <EV_ABS>;
...@@ -139,7 +139,7 @@ button@8 { ...@@ -139,7 +139,7 @@ button@8 {
gpios = <&pio 7 23 GPIO_ACTIVE_LOW>; /* PH23 */ gpios = <&pio 7 23 GPIO_ACTIVE_LOW>; /* PH23 */
}; };
button@9 { dpad-right {
label = "DPad Right"; label = "DPad Right";
linux,code = <ABS_HAT0X>; linux,code = <ABS_HAT0X>;
linux,input-type = <EV_ABS>; linux,input-type = <EV_ABS>;
...@@ -147,7 +147,7 @@ button@9 { ...@@ -147,7 +147,7 @@ button@9 {
gpios = <&pio 7 24 GPIO_ACTIVE_LOW>; /* PH24 */ gpios = <&pio 7 24 GPIO_ACTIVE_LOW>; /* PH24 */
}; };
button@10 { dpad-up {
label = "DPad Up"; label = "DPad Up";
linux,code = <ABS_HAT0Y>; linux,code = <ABS_HAT0Y>;
linux,input-type = <EV_ABS>; linux,input-type = <EV_ABS>;
...@@ -155,7 +155,7 @@ button@10 { ...@@ -155,7 +155,7 @@ button@10 {
gpios = <&pio 7 25 GPIO_ACTIVE_LOW>; /* PH25 */ gpios = <&pio 7 25 GPIO_ACTIVE_LOW>; /* PH25 */
}; };
button@11 { dpad-down {
label = "DPad Down"; label = "DPad Down";
linux,code = <ABS_HAT0Y>; linux,code = <ABS_HAT0Y>;
linux,input-type = <EV_ABS>; linux,input-type = <EV_ABS>;
...@@ -163,49 +163,49 @@ button@11 { ...@@ -163,49 +163,49 @@ button@11 {
gpios = <&pio 7 26 GPIO_ACTIVE_LOW>; /* PH26 */ gpios = <&pio 7 26 GPIO_ACTIVE_LOW>; /* PH26 */
}; };
button@12 { x {
label = "Button X"; label = "Button X";
linux,code = <BTN_X>; linux,code = <BTN_X>;
gpios = <&pio 0 16 GPIO_ACTIVE_LOW>; /* PA16 */ gpios = <&pio 0 16 GPIO_ACTIVE_LOW>; /* PA16 */
}; };
button@13 { y {
label = "Button Y"; label = "Button Y";
linux,code = <BTN_Y>; linux,code = <BTN_Y>;
gpios = <&pio 0 14 GPIO_ACTIVE_LOW>; /* PA14 */ gpios = <&pio 0 14 GPIO_ACTIVE_LOW>; /* PA14 */
}; };
button@14 { a {
label = "Button A"; label = "Button A";
linux,code = <BTN_A>; linux,code = <BTN_A>;
gpios = <&pio 0 17 GPIO_ACTIVE_LOW>; /* PA17 */ gpios = <&pio 0 17 GPIO_ACTIVE_LOW>; /* PA17 */
}; };
button@15 { b {
label = "Button B"; label = "Button B";
linux,code = <BTN_B>; linux,code = <BTN_B>;
gpios = <&pio 0 15 GPIO_ACTIVE_LOW>; /* PA15 */ gpios = <&pio 0 15 GPIO_ACTIVE_LOW>; /* PA15 */
}; };
button@16 { select {
label = "Select Button"; label = "Select Button";
linux,code = <BTN_SELECT>; linux,code = <BTN_SELECT>;
gpios = <&pio 0 11 GPIO_ACTIVE_LOW>; /* PA11 */ gpios = <&pio 0 11 GPIO_ACTIVE_LOW>; /* PA11 */
}; };
button@17 { start {
label = "Start Button"; label = "Start Button";
linux,code = <BTN_START>; linux,code = <BTN_START>;
gpios = <&pio 0 12 GPIO_ACTIVE_LOW>; /* PA12 */ gpios = <&pio 0 12 GPIO_ACTIVE_LOW>; /* PA12 */
}; };
button@18 { top-left {
label = "Top Left Button"; label = "Top Left Button";
linux,code = <BTN_TL>; linux,code = <BTN_TL>;
gpios = <&pio 7 22 GPIO_ACTIVE_LOW>; /* PH22 */ gpios = <&pio 7 22 GPIO_ACTIVE_LOW>; /* PH22 */
}; };
button@19 { top-right {
label = "Top Right Button"; label = "Top Right Button";
linux,code = <BTN_TR>; linux,code = <BTN_TR>;
gpios = <&pio 0 13 GPIO_ACTIVE_LOW>; /* PA13 */ gpios = <&pio 0 13 GPIO_ACTIVE_LOW>; /* PA13 */
...@@ -222,8 +222,6 @@ &ehci1 { ...@@ -222,8 +222,6 @@ &ehci1 {
}; };
&i2c0 { &i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>;
status = "okay"; status = "okay";
axp209: pmic@34 { axp209: pmic@34 {
...@@ -235,8 +233,6 @@ axp209: pmic@34 { ...@@ -235,8 +233,6 @@ axp209: pmic@34 {
#include "axp209.dtsi" #include "axp209.dtsi"
&i2c1 { &i2c1 {
pinctrl-names = "default";
pinctrl-0 = <&i2c1_pins_a>;
status = "okay"; status = "okay";
/* Accelerometer */ /* Accelerometer */
...@@ -249,8 +245,6 @@ bma250@18 { ...@@ -249,8 +245,6 @@ bma250@18 {
}; };
&i2c2 { &i2c2 {
pinctrl-names = "default";
pinctrl-0 = <&i2c2_pins_a>;
status = "okay"; status = "okay";
ft5406ee8: touchscreen@38 { ft5406ee8: touchscreen@38 {
...@@ -267,35 +261,35 @@ &lradc { ...@@ -267,35 +261,35 @@ &lradc {
vref-supply = <&reg_ldo2>; vref-supply = <&reg_ldo2>;
status = "okay"; status = "okay";
button@200 { button-200 {
label = "Menu"; label = "Menu";
linux,code = <KEY_MENU>; linux,code = <KEY_MENU>;
channel = <0>; channel = <0>;
voltage = <200000>; voltage = <200000>;
}; };
button@600 { button-600 {
label = "Volume Up"; label = "Volume Up";
linux,code = <KEY_VOLUMEUP>; linux,code = <KEY_VOLUMEUP>;
channel = <0>; channel = <0>;
voltage = <600000>; voltage = <600000>;
}; };
button@800 { button-800 {
label = "Volume Down"; label = "Volume Down";
linux,code = <KEY_VOLUMEDOWN>; linux,code = <KEY_VOLUMEDOWN>;
channel = <0>; channel = <0>;
voltage = <800000>; voltage = <800000>;
}; };
button@1000 { button-1000 {
label = "Home"; label = "Home";
linux,code = <KEY_HOMEPAGE>; linux,code = <KEY_HOMEPAGE>;
channel = <0>; channel = <0>;
voltage = <1000000>; voltage = <1000000>;
}; };
button@1200 { button-1200 {
label = "Esc"; label = "Esc";
linux,code = <KEY_ESC>; linux,code = <KEY_ESC>;
channel = <0>; channel = <0>;
...@@ -304,8 +298,6 @@ button@1200 { ...@@ -304,8 +298,6 @@ button@1200 {
}; };
&mmc0 { &mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins_a>;
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */ cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
...@@ -318,7 +310,7 @@ &otg_sram { ...@@ -318,7 +310,7 @@ &otg_sram {
}; };
&pio { &pio {
key_pins_inet9f: key_pins@0 { key_pins_inet9f: key-pins {
pins = "PA0", "PA1", "PA3", "PA4", pins = "PA0", "PA1", "PA3", "PA4",
"PA5", "PA6", "PA8", "PA9", "PA5", "PA6", "PA8", "PA9",
"PA11", "PA12", "PA13", "PA11", "PA12", "PA13",
...@@ -328,13 +320,13 @@ key_pins_inet9f: key_pins@0 { ...@@ -328,13 +320,13 @@ key_pins_inet9f: key_pins@0 {
bias-pull-up; bias-pull-up;
}; };
usb0_id_detect_pin: usb0_id_detect_pin@0 { usb0_id_detect_pin: usb0-id-detect-pin {
pins = "PH4"; pins = "PH4";
function = "gpio_in"; function = "gpio_in";
bias-pull-up; bias-pull-up;
}; };
usb0_vbus_detect_pin: usb0_vbus_detect_pin@0 { usb0_vbus_detect_pin: usb0-vbus-detect-pin {
pins = "PH5"; pins = "PH5";
function = "gpio_in"; function = "gpio_in";
bias-pull-down; bias-pull-down;
...@@ -376,7 +368,7 @@ &reg_usb2_vbus { ...@@ -376,7 +368,7 @@ &reg_usb2_vbus {
&uart0 { &uart0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>; pinctrl-0 = <&uart0_pb_pins>;
status = "okay"; status = "okay";
}; };
......
...@@ -57,7 +57,7 @@ &ahci { ...@@ -57,7 +57,7 @@ &ahci {
&emac { &emac {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&emac_pins_a>; pinctrl-0 = <&emac_pins>;
phy = <&phy1>; phy = <&phy1>;
status = "okay"; status = "okay";
}; };
...@@ -67,6 +67,9 @@ &emac_sram { ...@@ -67,6 +67,9 @@ &emac_sram {
}; };
&i2c0 { &i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins>;
axp209: pmic@34 { axp209: pmic@34 {
interrupts = <0>; interrupts = <0>;
}; };
...@@ -74,19 +77,19 @@ axp209: pmic@34 { ...@@ -74,19 +77,19 @@ axp209: pmic@34 {
&i2c1 { &i2c1 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&i2c1_pins_a>; pinctrl-0 = <&i2c1_pins>;
status = "okay"; status = "okay";
}; };
&i2c2 { &i2c2 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&i2c2_pins_a>; pinctrl-0 = <&i2c2_pins>;
status = "okay"; status = "okay";
}; };
&ir0 { &ir0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&ir0_rx_pins_a>; pinctrl-0 = <&ir0_rx_pins>;
status = "okay"; status = "okay";
}; };
...@@ -100,7 +103,7 @@ phy1: ethernet-phy@1 { ...@@ -100,7 +103,7 @@ phy1: ethernet-phy@1 {
&mmc0 { &mmc0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins_a>; pinctrl-0 = <&mmc0_pins>;
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */ cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
...@@ -114,7 +117,11 @@ &reg_ahci_5v { ...@@ -114,7 +117,11 @@ &reg_ahci_5v {
&spi0 { &spi0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&spi0_pins_a>, pinctrl-0 = <&spi0_pi_pins>,
<&spi0_cs0_pins_a>; <&spi0_cs0_pi_pin>;
status = "okay"; status = "okay";
}; };
&uart0 {
pinctrl-0 = <&uart0_pb_pins>;
};
...@@ -62,8 +62,6 @@ chosen { ...@@ -62,8 +62,6 @@ chosen {
leds { leds {
compatible = "gpio-leds"; compatible = "gpio-leds";
pinctrl-names = "default";
pinctrl-0 = <&led_pins_q5>;
green { green {
label = "q5:green:usr"; label = "q5:green:usr";
...@@ -74,8 +72,6 @@ green { ...@@ -74,8 +72,6 @@ green {
reg_emac_3v3: emac-3v3 { reg_emac_3v3: emac-3v3 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
pinctrl-names = "default";
pinctrl-0 = <&emac_power_pin_q5>;
regulator-name = "emac-3v3"; regulator-name = "emac-3v3";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
...@@ -98,8 +94,6 @@ &ehci1 { ...@@ -98,8 +94,6 @@ &ehci1 {
}; };
&emac { &emac {
pinctrl-names = "default";
pinctrl-0 = <&emac_pins_a>;
phy = <&phy1>; phy = <&phy1>;
status = "okay"; status = "okay";
}; };
...@@ -109,8 +103,6 @@ &emac_sram { ...@@ -109,8 +103,6 @@ &emac_sram {
}; };
&i2c0 { &i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>;
status = "okay"; status = "okay";
axp209: pmic@34 { axp209: pmic@34 {
...@@ -125,7 +117,7 @@ axp209: pmic@34 { ...@@ -125,7 +117,7 @@ axp209: pmic@34 {
&ir0 { &ir0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&ir0_rx_pins_a>; pinctrl-0 = <&ir0_rx_pins>;
status = "okay"; status = "okay";
}; };
...@@ -139,8 +131,6 @@ phy1: ethernet-phy@1 { ...@@ -139,8 +131,6 @@ phy1: ethernet-phy@1 {
}; };
&mmc0 { &mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins_a>;
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */ cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
...@@ -160,18 +150,6 @@ &otg_sram { ...@@ -160,18 +150,6 @@ &otg_sram {
status = "okay"; status = "okay";
}; };
&pio {
emac_power_pin_q5: emac_power_pin@0 {
pins = "PH19";
function = "gpio_out";
};
led_pins_q5: led_pins@0 {
pins = "PH20";
function = "gpio_out";
};
};
&reg_usb0_vbus { &reg_usb0_vbus {
regulator-boot-on; regulator-boot-on;
status = "okay"; status = "okay";
...@@ -187,7 +165,7 @@ &reg_usb2_vbus { ...@@ -187,7 +165,7 @@ &reg_usb2_vbus {
&uart0 { &uart0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>; pinctrl-0 = <&uart0_pb_pins>;
status = "okay"; status = "okay";
}; };
......
...@@ -61,8 +61,6 @@ chosen { ...@@ -61,8 +61,6 @@ chosen {
leds { leds {
compatible = "gpio-leds"; compatible = "gpio-leds";
pinctrl-names = "default";
pinctrl-0 = <&led_pins_marsboard>;
red1 { red1 {
label = "marsboard:red1:usr"; label = "marsboard:red1:usr";
...@@ -107,27 +105,19 @@ &emac_sram { ...@@ -107,27 +105,19 @@ &emac_sram {
}; };
&emac { &emac {
pinctrl-names = "default";
pinctrl-0 = <&emac_pins_a>;
phy = <&phy1>; phy = <&phy1>;
status = "okay"; status = "okay";
}; };
&i2c0 { &i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>;
status = "okay"; status = "okay";
}; };
&i2c1 { &i2c1 {
pinctrl-names = "default";
pinctrl-0 = <&i2c1_pins_a>;
status = "okay"; status = "okay";
}; };
&i2c2 { &i2c2 {
pinctrl-names = "default";
pinctrl-0 = <&i2c2_pins_a>;
status = "okay"; status = "okay";
}; };
...@@ -140,8 +130,6 @@ phy1: ethernet-phy@1 { ...@@ -140,8 +130,6 @@ phy1: ethernet-phy@1 {
}; };
&mmc0 { &mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins_a>;
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */ cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
...@@ -162,12 +150,7 @@ &otg_sram { ...@@ -162,12 +150,7 @@ &otg_sram {
}; };
&pio { &pio {
led_pins_marsboard: led_pins@0 { usb0_id_detect_pin: usb0-id-detect-pin {
pins = "PB5", "PB6", "PB7", "PB8";
function = "gpio_out";
};
usb0_id_detect_pin: usb0_id_detect_pin@0 {
pins = "PH4"; pins = "PH4";
function = "gpio_in"; function = "gpio_in";
bias-pull-up; bias-pull-up;
...@@ -184,14 +167,14 @@ &reg_usb2_vbus { ...@@ -184,14 +167,14 @@ &reg_usb2_vbus {
&spi0 { &spi0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&spi0_pins_a>, pinctrl-0 = <&spi0_pi_pins>,
<&spi0_cs0_pins_a>; <&spi0_cs0_pi_pin>;
status = "okay"; status = "okay";
}; };
&uart0 { &uart0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>; pinctrl-0 = <&uart0_pb_pins>;
status = "okay"; status = "okay";
}; };
......
...@@ -70,8 +70,6 @@ &ehci1 { ...@@ -70,8 +70,6 @@ &ehci1 {
}; };
&i2c0 { &i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>;
status = "okay"; status = "okay";
axp209: pmic@34 { axp209: pmic@34 {
...@@ -86,18 +84,16 @@ axp209: pmic@34 { ...@@ -86,18 +84,16 @@ axp209: pmic@34 {
&ir0 { &ir0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&ir0_rx_pins_a>; pinctrl-0 = <&ir0_rx_pins>;
status = "okay"; status = "okay";
}; };
&ir0_rx_pins_a { &ir0_rx_pins {
/* The ir receiver is not always populated */ /* The ir receiver is not always populated */
bias-pull-up; bias-pull-up;
}; };
&mmc0 { &mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins_a>;
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */ cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
...@@ -132,7 +128,7 @@ &reg_usb2_vbus { ...@@ -132,7 +128,7 @@ &reg_usb2_vbus {
&uart0 { &uart0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>; pinctrl-0 = <&uart0_pb_pins>;
status = "okay"; status = "okay";
}; };
......
...@@ -71,8 +71,6 @@ &ehci1 { ...@@ -71,8 +71,6 @@ &ehci1 {
}; };
&mmc0 { &mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins_a>;
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */ cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
...@@ -88,23 +86,6 @@ &otg_sram { ...@@ -88,23 +86,6 @@ &otg_sram {
status = "okay"; status = "okay";
}; };
&pio {
usb0_id_detect_pin: usb0_id_detect_pin@0 {
pins = "PH4";
function = "gpio_in";
};
usb0_vbus_detect_pin: usb0_vbus_detect_pin@0 {
pins = "PH5";
function = "gpio_in";
};
usb2_vbus_pin_mk802: usb2_vbus_pin@0 {
pins = "PH12";
function = "gpio_out";
};
};
&reg_usb0_vbus { &reg_usb0_vbus {
status = "okay"; status = "okay";
}; };
...@@ -114,14 +95,13 @@ &reg_usb1_vbus { ...@@ -114,14 +95,13 @@ &reg_usb1_vbus {
}; };
&reg_usb2_vbus { &reg_usb2_vbus {
pinctrl-0 = <&usb2_vbus_pin_mk802>;
gpio = <&pio 7 12 GPIO_ACTIVE_HIGH>; /* PH12 */ gpio = <&pio 7 12 GPIO_ACTIVE_HIGH>; /* PH12 */
status = "okay"; status = "okay";
}; };
&uart0 { &uart0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>; pinctrl-0 = <&uart0_pb_pins>;
status = "okay"; status = "okay";
}; };
...@@ -131,8 +111,6 @@ &usb_otg { ...@@ -131,8 +111,6 @@ &usb_otg {
}; };
&usbphy { &usbphy {
pinctrl-names = "default";
pinctrl-0 = <&usb0_id_detect_pin>, <&usb0_vbus_detect_pin>;
usb0_id_det-gpios = <&pio 7 4 GPIO_ACTIVE_HIGH>; /* PH4 */ usb0_id_det-gpios = <&pio 7 4 GPIO_ACTIVE_HIGH>; /* PH4 */
usb0_vbus_det-gpios = <&pio 7 5 GPIO_ACTIVE_HIGH>; /* PH5 */ usb0_vbus_det-gpios = <&pio 7 5 GPIO_ACTIVE_HIGH>; /* PH5 */
usb0_vbus-supply = <&reg_usb0_vbus>; usb0_vbus-supply = <&reg_usb0_vbus>;
......
...@@ -67,8 +67,6 @@ &ehci1 { ...@@ -67,8 +67,6 @@ &ehci1 {
}; };
&i2c0 { &i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>;
status = "okay"; status = "okay";
axp209: pmic@34 { axp209: pmic@34 {
...@@ -82,8 +80,6 @@ axp209: pmic@34 { ...@@ -82,8 +80,6 @@ axp209: pmic@34 {
}; };
&mmc0 { &mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins_a>;
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */ cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
...@@ -105,7 +101,7 @@ &reg_usb2_vbus { ...@@ -105,7 +101,7 @@ &reg_usb2_vbus {
&uart0 { &uart0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>; pinctrl-0 = <&uart0_pb_pins>;
status = "okay"; status = "okay";
}; };
......
...@@ -58,6 +58,17 @@ chosen { ...@@ -58,6 +58,17 @@ chosen {
stdout-path = "serial0:115200n8"; stdout-path = "serial0:115200n8";
}; };
hdmi-connector {
compatible = "hdmi-connector";
type = "a";
port {
hdmi_con_in: endpoint {
remote-endpoint = <&hdmi_out_con>;
};
};
};
leds { leds {
compatible = "gpio-leds"; compatible = "gpio-leds";
pinctrl-names = "default"; pinctrl-names = "default";
...@@ -89,6 +100,10 @@ &cpu0 { ...@@ -89,6 +100,10 @@ &cpu0 {
cooling-max-level = <2>; cooling-max-level = <2>;
}; };
&de {
status = "okay";
};
&ehci0 { &ehci0 {
status = "okay"; status = "okay";
}; };
...@@ -98,8 +113,6 @@ &ehci1 { ...@@ -98,8 +113,6 @@ &ehci1 {
}; };
&emac { &emac {
pinctrl-names = "default";
pinctrl-0 = <&emac_pins_a>;
phy = <&phy1>; phy = <&phy1>;
status = "okay"; status = "okay";
}; };
...@@ -108,9 +121,17 @@ &emac_sram { ...@@ -108,9 +121,17 @@ &emac_sram {
status = "okay"; status = "okay";
}; };
&hdmi {
status = "okay";
};
&hdmi_out {
hdmi_out_con: endpoint {
remote-endpoint = <&hdmi_con_in>;
};
};
&i2c0 { &i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>;
status = "okay"; status = "okay";
axp209: pmic@34 { axp209: pmic@34 {
...@@ -124,8 +145,6 @@ axp209: pmic@34 { ...@@ -124,8 +145,6 @@ axp209: pmic@34 {
}; };
&i2c1 { &i2c1 {
pinctrl-names = "default";
pinctrl-0 = <&i2c1_pins_a>;
status = "okay"; status = "okay";
eeprom: eeprom@50 { eeprom: eeprom@50 {
...@@ -144,8 +163,6 @@ phy1: ethernet-phy@1 { ...@@ -144,8 +163,6 @@ phy1: ethernet-phy@1 {
}; };
&mmc0 { &mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins_a>;
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */ cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
...@@ -166,24 +183,19 @@ &otg_sram { ...@@ -166,24 +183,19 @@ &otg_sram {
}; };
&pio { &pio {
ahci_pwr_pin_olinuxinolime: ahci_pwr_pin@1 { led_pins_olinuxinolime: led-pin {
pins = "PC3";
function = "gpio_out";
};
led_pins_olinuxinolime: led_pins@0 {
pins = "PH2"; pins = "PH2";
function = "gpio_out"; function = "gpio_out";
drive-strength = <20>; drive-strength = <20>;
}; };
usb0_id_detect_pin: usb0_id_detect_pin@0 { usb0_id_detect_pin: usb0-id-detect-pin {
pins = "PH4"; pins = "PH4";
function = "gpio_in"; function = "gpio_in";
bias-pull-up; bias-pull-up;
}; };
usb0_vbus_detect_pin: usb0_vbus_detect_pin@0 { usb0_vbus_detect_pin: usb0-vbus-detect-pin {
pins = "PH5"; pins = "PH5";
function = "gpio_in"; function = "gpio_in";
bias-pull-down; bias-pull-down;
...@@ -191,7 +203,6 @@ usb0_vbus_detect_pin: usb0_vbus_detect_pin@0 { ...@@ -191,7 +203,6 @@ usb0_vbus_detect_pin: usb0_vbus_detect_pin@0 {
}; };
&reg_ahci_5v { &reg_ahci_5v {
pinctrl-0 = <&ahci_pwr_pin_olinuxinolime>;
gpio = <&pio 2 3 GPIO_ACTIVE_HIGH>; gpio = <&pio 2 3 GPIO_ACTIVE_HIGH>;
status = "okay"; status = "okay";
}; };
...@@ -210,7 +221,7 @@ &reg_usb2_vbus { ...@@ -210,7 +221,7 @@ &reg_usb2_vbus {
&uart0 { &uart0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>; pinctrl-0 = <&uart0_pb_pins>;
status = "okay"; status = "okay";
}; };
......
...@@ -62,8 +62,6 @@ chosen { ...@@ -62,8 +62,6 @@ chosen {
leds { leds {
compatible = "gpio-leds"; compatible = "gpio-leds";
pinctrl-names = "default";
pinctrl-0 = <&led_pins_pcduino>;
tx { tx {
label = "pcduino:green:tx"; label = "pcduino:green:tx";
...@@ -76,26 +74,24 @@ rx { ...@@ -76,26 +74,24 @@ rx {
}; };
}; };
gpio_keys { gpio-keys {
compatible = "gpio-keys"; compatible = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <&key_pins_pcduino>;
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
button@0 { back {
label = "Key Back"; label = "Key Back";
linux,code = <KEY_BACK>; linux,code = <KEY_BACK>;
gpios = <&pio 7 17 GPIO_ACTIVE_LOW>; gpios = <&pio 7 17 GPIO_ACTIVE_LOW>;
}; };
button@1 { home {
label = "Key Home"; label = "Key Home";
linux,code = <KEY_HOME>; linux,code = <KEY_HOME>;
gpios = <&pio 7 18 GPIO_ACTIVE_LOW>; gpios = <&pio 7 18 GPIO_ACTIVE_LOW>;
}; };
button@2 { menu {
label = "Key Menu"; label = "Key Menu";
linux,code = <KEY_MENU>; linux,code = <KEY_MENU>;
gpios = <&pio 7 19 GPIO_ACTIVE_LOW>; gpios = <&pio 7 19 GPIO_ACTIVE_LOW>;
...@@ -116,8 +112,6 @@ &ehci1 { ...@@ -116,8 +112,6 @@ &ehci1 {
}; };
&emac { &emac {
pinctrl-names = "default";
pinctrl-0 = <&emac_pins_a>;
phy = <&phy1>; phy = <&phy1>;
status = "okay"; status = "okay";
}; };
...@@ -127,8 +121,6 @@ &emac_sram { ...@@ -127,8 +121,6 @@ &emac_sram {
}; };
&i2c0 { &i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>;
status = "okay"; status = "okay";
axp209: pmic@34 { axp209: pmic@34 {
...@@ -146,8 +138,6 @@ phy1: ethernet-phy@1 { ...@@ -146,8 +138,6 @@ phy1: ethernet-phy@1 {
}; };
&mmc0 { &mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins_a>;
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */ cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
...@@ -168,17 +158,7 @@ &otg_sram { ...@@ -168,17 +158,7 @@ &otg_sram {
}; };
&pio { &pio {
led_pins_pcduino: led_pins@0 { usb0_id_detect_pin: usb0-id-detect-pin {
pins = "PH15", "PH16";
function = "gpio_out";
};
key_pins_pcduino: key_pins@0 {
pins = "PH17", "PH18", "PH19";
function = "gpio_in";
};
usb0_id_detect_pin: usb0_id_detect_pin@0 {
pins = "PH4"; pins = "PH4";
function = "gpio_in"; function = "gpio_in";
bias-pull-up; bias-pull-up;
...@@ -214,7 +194,7 @@ &reg_ldo2 { ...@@ -214,7 +194,7 @@ &reg_ldo2 {
&uart0 { &uart0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>; pinctrl-0 = <&uart0_pb_pins>;
status = "okay"; status = "okay";
}; };
......
...@@ -55,16 +55,7 @@ / { ...@@ -55,16 +55,7 @@ / {
compatible = "linksprite,a10-pcduino2", "allwinner,sun4i-a10"; compatible = "linksprite,a10-pcduino2", "allwinner,sun4i-a10";
}; };
&pio {
usb2_vbus_pin_pcduino2: usb2_vbus_pin@0 {
pins = "PD2";
function = "gpio_out";
};
};
&reg_usb2_vbus { &reg_usb2_vbus {
pinctrl-names = "default";
pinctrl-0 = <&usb2_vbus_pin_pcduino2>;
gpio = <&pio 3 2 GPIO_ACTIVE_HIGH>; gpio = <&pio 3 2 GPIO_ACTIVE_HIGH>;
status = "okay"; status = "okay";
}; };
......
...@@ -58,8 +58,6 @@ aliases { ...@@ -58,8 +58,6 @@ aliases {
backlight: backlight { backlight: backlight {
compatible = "pwm-backlight"; compatible = "pwm-backlight";
pinctrl-names = "default";
pinctrl-0 = <&bl_en_pin_protab>;
pwms = <&pwm 0 50000 PWM_POLARITY_INVERTED>; pwms = <&pwm 0 50000 PWM_POLARITY_INVERTED>;
brightness-levels = <0 10 20 30 40 50 60 70 80 90 100>; brightness-levels = <0 10 20 30 40 50 60 70 80 90 100>;
default-brightness-level = <8>; default-brightness-level = <8>;
...@@ -72,8 +70,6 @@ chosen { ...@@ -72,8 +70,6 @@ chosen {
}; };
&codec { &codec {
pinctrl-names = "default";
pinctrl-0 = <&codec_pa_pin>;
allwinner,pa-gpios = <&pio 7 15 GPIO_ACTIVE_HIGH>; /* PH15 */ allwinner,pa-gpios = <&pio 7 15 GPIO_ACTIVE_HIGH>; /* PH15 */
status = "okay"; status = "okay";
}; };
...@@ -87,8 +83,6 @@ &ehci0 { ...@@ -87,8 +83,6 @@ &ehci0 {
}; };
&i2c0 { &i2c0 {
pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>;
status = "okay"; status = "okay";
axp209: pmic@34 { axp209: pmic@34 {
...@@ -100,20 +94,14 @@ axp209: pmic@34 { ...@@ -100,20 +94,14 @@ axp209: pmic@34 {
#include "axp209.dtsi" #include "axp209.dtsi"
&i2c1 { &i2c1 {
pinctrl-names = "default";
pinctrl-0 = <&i2c1_pins_a>;
/* pull-ups and devices require AXP209 LDO3 */ /* pull-ups and devices require AXP209 LDO3 */
status = "failed"; status = "failed";
}; };
&i2c2 { &i2c2 {
pinctrl-names = "default";
pinctrl-0 = <&i2c2_pins_a>;
status = "okay"; status = "okay";
pixcir_ts@5c { touchscreen@5c {
pinctrl-names = "default";
pinctrl-0 = <&touchscreen_pins>;
compatible = "pixcir,pixcir_tangoc"; compatible = "pixcir,pixcir_tangoc";
reg = <0x5c>; reg = <0x5c>;
interrupt-parent = <&pio>; interrupt-parent = <&pio>;
...@@ -132,14 +120,14 @@ &lradc { ...@@ -132,14 +120,14 @@ &lradc {
vref-supply = <&reg_ldo2>; vref-supply = <&reg_ldo2>;
status = "okay"; status = "okay";
button@400 { button-400 {
label = "Volume Up"; label = "Volume Up";
linux,code = <KEY_VOLUMEUP>; linux,code = <KEY_VOLUMEUP>;
channel = <0>; channel = <0>;
voltage = <400000>; voltage = <400000>;
}; };
button@800 { button-800 {
label = "Volume Down"; label = "Volume Down";
linux,code = <KEY_VOLUMEDOWN>; linux,code = <KEY_VOLUMEDOWN>;
channel = <0>; channel = <0>;
...@@ -148,8 +136,6 @@ button@800 { ...@@ -148,8 +136,6 @@ button@800 {
}; };
&mmc0 { &mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins_a>;
vmmc-supply = <&reg_vcc3v3>; vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */ cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
...@@ -162,28 +148,13 @@ &otg_sram { ...@@ -162,28 +148,13 @@ &otg_sram {
}; };
&pio { &pio {
bl_en_pin_protab: bl_en_pin@0 { usb0_id_detect_pin: usb0-id-detect-pin {
pins = "PH7";
function = "gpio_out";
};
codec_pa_pin: codec_pa_pin@0 {
pins = "PH15";
function = "gpio_out";
};
touchscreen_pins: touchscreen_pins@0 {
pins = "PA5", "PB13";
function = "gpio_out";
};
usb0_id_detect_pin: usb0_id_detect_pin@0 {
pins = "PH4"; pins = "PH4";
function = "gpio_in"; function = "gpio_in";
bias-pull-up; bias-pull-up;
}; };
usb0_vbus_detect_pin: usb0_vbus_detect_pin@0 { usb0_vbus_detect_pin: usb0-vbus-detect-pin {
pins = "PH5"; pins = "PH5";
function = "gpio_in"; function = "gpio_in";
bias-pull-down; bias-pull-down;
...@@ -192,7 +163,7 @@ usb0_vbus_detect_pin: usb0_vbus_detect_pin@0 { ...@@ -192,7 +163,7 @@ usb0_vbus_detect_pin: usb0_vbus_detect_pin@0 {
&pwm { &pwm {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pwm0_pins_a>; pinctrl-0 = <&pwm0_pin>;
status = "okay"; status = "okay";
}; };
...@@ -231,7 +202,7 @@ &reg_usb1_vbus { ...@@ -231,7 +202,7 @@ &reg_usb1_vbus {
&uart0 { &uart0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>; pinctrl-0 = <&uart0_pb_pins>;
status = "okay"; status = "okay";
}; };
......
This diff is collapsed.
...@@ -110,6 +110,14 @@ pcf8563: rtc@51 { ...@@ -110,6 +110,14 @@ pcf8563: rtc@51 {
#include "axp209.dtsi" #include "axp209.dtsi"
&ac_power_supply {
status = "okay";
};
&battery_power_supply {
status = "okay";
};
&lradc { &lradc {
vref-supply = <&reg_ldo2>; vref-supply = <&reg_ldo2>;
}; };
......
...@@ -62,6 +62,17 @@ chosen { ...@@ -62,6 +62,17 @@ chosen {
stdout-path = "serial0:115200n8"; stdout-path = "serial0:115200n8";
}; };
hdmi-connector {
compatible = "hdmi-connector";
type = "a";
port {
hdmi_con_in: endpoint {
remote-endpoint = <&hdmi_out_con>;
};
};
};
vga-connector { vga-connector {
compatible = "vga-connector"; compatible = "vga-connector";
...@@ -162,6 +173,16 @@ phy1: ethernet-phy@1 { ...@@ -162,6 +173,16 @@ phy1: ethernet-phy@1 {
}; };
}; };
&hdmi {
status = "okay";
};
&hdmi_out {
hdmi_out_con: endpoint {
remote-endpoint = <&hdmi_con_in>;
};
};
&i2c0 { &i2c0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>; pinctrl-0 = <&i2c0_pins_a>;
......
...@@ -278,12 +278,23 @@ tcon0_in_drc0: endpoint@0 { ...@@ -278,12 +278,23 @@ tcon0_in_drc0: endpoint@0 {
reg = <0>; reg = <0>;
remote-endpoint = <&drc0_out_tcon0>; remote-endpoint = <&drc0_out_tcon0>;
}; };
tcon0_in_drc1: endpoint@1 {
reg = <1>;
remote-endpoint = <&drc1_out_tcon0>;
};
}; };
tcon0_out: port@1 { tcon0_out: port@1 {
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
reg = <1>; reg = <1>;
tcon0_out_hdmi: endpoint@1 {
reg = <1>;
remote-endpoint = <&hdmi_in_tcon0>;
allwinner,tcon-channel = <1>;
};
}; };
}; };
}; };
...@@ -311,8 +322,13 @@ tcon1_in: port@0 { ...@@ -311,8 +322,13 @@ tcon1_in: port@0 {
#size-cells = <0>; #size-cells = <0>;
reg = <0>; reg = <0>;
tcon1_in_drc1: endpoint@0 { tcon1_in_drc0: endpoint@0 {
reg = <0>; reg = <0>;
remote-endpoint = <&drc0_out_tcon1>;
};
tcon1_in_drc1: endpoint@1 {
reg = <1>;
remote-endpoint = <&drc1_out_tcon1>; remote-endpoint = <&drc1_out_tcon1>;
}; };
}; };
...@@ -321,6 +337,12 @@ tcon1_out: port@1 { ...@@ -321,6 +337,12 @@ tcon1_out: port@1 {
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
reg = <1>; reg = <1>;
tcon1_out_hdmi: endpoint@1 {
reg = <1>;
remote-endpoint = <&hdmi_in_tcon1>;
allwinner,tcon-channel = <1>;
};
}; };
}; };
}; };
...@@ -401,6 +423,49 @@ mmc3: mmc@1c12000 { ...@@ -401,6 +423,49 @@ mmc3: mmc@1c12000 {
#size-cells = <0>; #size-cells = <0>;
}; };
hdmi: hdmi@1c16000 {
compatible = "allwinner,sun6i-a31-hdmi";
reg = <0x01c16000 0x1000>;
interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&ccu CLK_AHB1_HDMI>, <&ccu CLK_HDMI>,
<&ccu CLK_HDMI_DDC>,
<&ccu 7>,
<&ccu 13>;
clock-names = "ahb", "mod", "ddc", "pll-0", "pll-1";
resets = <&ccu RST_AHB1_HDMI>;
reset-names = "ahb";
dma-names = "ddc-tx", "ddc-rx", "audio-tx";
dmas = <&dma 13>, <&dma 13>, <&dma 14>;
status = "disabled";
ports {
#address-cells = <1>;
#size-cells = <0>;
hdmi_in: port@0 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0>;
hdmi_in_tcon0: endpoint@0 {
reg = <0>;
remote-endpoint = <&tcon0_out_hdmi>;
};
hdmi_in_tcon1: endpoint@1 {
reg = <1>;
remote-endpoint = <&tcon1_out_hdmi>;
};
};
hdmi_out: port@1 {
#address-cells = <1>;
#size-cells = <0>;
reg = <1>;
};
};
};
usb_otg: usb@1c19000 { usb_otg: usb@1c19000 {
compatible = "allwinner,sun6i-a31-musb"; compatible = "allwinner,sun6i-a31-musb";
reg = <0x01c19000 0x0400>; reg = <0x01c19000 0x0400>;
...@@ -662,6 +727,32 @@ spdif: spdif@1c21000 { ...@@ -662,6 +727,32 @@ spdif: spdif@1c21000 {
status = "disabled"; status = "disabled";
}; };
i2s0: i2s@1c22000 {
#sound-dai-cells = <0>;
compatible = "allwinner,sun6i-a31-i2s";
reg = <0x01c22000 0x400>;
interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&ccu CLK_APB1_DAUDIO0>, <&ccu CLK_DAUDIO0>;
resets = <&ccu RST_APB1_DAUDIO0>;
clock-names = "apb", "mod";
dmas = <&dma 3>, <&dma 3>;
dma-names = "rx", "tx";
status = "disabled";
};
i2s1: i2s@1c22400 {
#sound-dai-cells = <0>;
compatible = "allwinner,sun6i-a31-i2s";
reg = <0x01c22400 0x400>;
interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&ccu CLK_APB1_DAUDIO1>, <&ccu CLK_DAUDIO1>;
resets = <&ccu RST_APB1_DAUDIO1>;
clock-names = "apb", "mod";
dmas = <&dma 4>, <&dma 4>;
dma-names = "rx", "tx";
status = "disabled";
};
lradc: lradc@1c22800 { lradc: lradc@1c22800 {
compatible = "allwinner,sun4i-a10-lradc-keys"; compatible = "allwinner,sun4i-a10-lradc-keys";
reg = <0x01c22800 0x100>; reg = <0x01c22800 0x100>;
...@@ -1012,8 +1103,8 @@ be1_out: port@1 { ...@@ -1012,8 +1103,8 @@ be1_out: port@1 {
#size-cells = <0>; #size-cells = <0>;
reg = <1>; reg = <1>;
be1_out_drc1: endpoint@0 { be1_out_drc1: endpoint@1 {
reg = <0>; reg = <1>;
remote-endpoint = <&drc1_in_be1>; remote-endpoint = <&drc1_in_be1>;
}; };
}; };
...@@ -1042,8 +1133,8 @@ drc1_in: port@0 { ...@@ -1042,8 +1133,8 @@ drc1_in: port@0 {
#size-cells = <0>; #size-cells = <0>;
reg = <0>; reg = <0>;
drc1_in_be1: endpoint@0 { drc1_in_be1: endpoint@1 {
reg = <0>; reg = <1>;
remote-endpoint = <&be1_out_drc1>; remote-endpoint = <&be1_out_drc1>;
}; };
}; };
...@@ -1053,8 +1144,13 @@ drc1_out: port@1 { ...@@ -1053,8 +1144,13 @@ drc1_out: port@1 {
#size-cells = <0>; #size-cells = <0>;
reg = <1>; reg = <1>;
drc1_out_tcon1: endpoint@0 { drc1_out_tcon0: endpoint@0 {
reg = <0>; reg = <0>;
remote-endpoint = <&tcon0_in_drc1>;
};
drc1_out_tcon1: endpoint@1 {
reg = <1>;
remote-endpoint = <&tcon1_in_drc1>; remote-endpoint = <&tcon1_in_drc1>;
}; };
}; };
...@@ -1144,6 +1240,11 @@ drc0_out_tcon0: endpoint@0 { ...@@ -1144,6 +1240,11 @@ drc0_out_tcon0: endpoint@0 {
reg = <0>; reg = <0>;
remote-endpoint = <&tcon0_in_drc0>; remote-endpoint = <&tcon0_in_drc0>;
}; };
drc0_out_tcon1: endpoint@1 {
reg = <1>;
remote-endpoint = <&tcon1_in_drc0>;
};
}; };
}; };
}; };
......
...@@ -52,17 +52,42 @@ ...@@ -52,17 +52,42 @@
/ { / {
model = "MSI Primo81 tablet"; model = "MSI Primo81 tablet";
compatible = "msi,primo81", "allwinner,sun6i-a31s"; compatible = "msi,primo81", "allwinner,sun6i-a31s";
hdmi-connector {
compatible = "hdmi-connector";
type = "c";
port {
hdmi_con_in: endpoint {
remote-endpoint = <&hdmi_out_con>;
};
};
};
}; };
&cpu0 { &cpu0 {
cpu-supply = <&reg_dcdc3>; cpu-supply = <&reg_dcdc3>;
}; };
&de {
status = "okay";
};
&ehci0 { &ehci0 {
/* rtl8188etv wifi is connected here */ /* rtl8188etv wifi is connected here */
status = "okay"; status = "okay";
}; };
&hdmi {
status = "okay";
};
&hdmi_out {
hdmi_out_con: endpoint {
remote-endpoint = <&hdmi_con_in>;
};
};
&i2c0 { &i2c0 {
/* pull-ups and device VDDIO use AXP221 DLDO3 */ /* pull-ups and device VDDIO use AXP221 DLDO3 */
pinctrl-names = "default"; pinctrl-names = "default";
......
...@@ -53,6 +53,17 @@ chosen { ...@@ -53,6 +53,17 @@ chosen {
stdout-path = "serial0:115200n8"; stdout-path = "serial0:115200n8";
}; };
hdmi-connector {
compatible = "hdmi-connector";
type = "a";
port {
hdmi_con_in: endpoint {
remote-endpoint = <&hdmi_out_con>;
};
};
};
leds { leds {
compatible = "gpio-leds"; compatible = "gpio-leds";
pinctrl-names = "default"; pinctrl-names = "default";
...@@ -90,6 +101,10 @@ &codec { ...@@ -90,6 +101,10 @@ &codec {
status = "okay"; status = "okay";
}; };
&de {
status = "okay";
};
&ehci0 { &ehci0 {
/* USB 2.0 4 port hub IC */ /* USB 2.0 4 port hub IC */
status = "okay"; status = "okay";
...@@ -112,6 +127,16 @@ phy1: ethernet-phy@1 { ...@@ -112,6 +127,16 @@ phy1: ethernet-phy@1 {
}; };
}; };
&hdmi {
status = "okay";
};
&hdmi_out {
hdmi_out_con: endpoint {
remote-endpoint = <&hdmi_con_in>;
};
};
&ir { &ir {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&ir_pins_a>; pinctrl-0 = <&ir_pins_a>;
......
...@@ -60,6 +60,17 @@ chosen { ...@@ -60,6 +60,17 @@ chosen {
stdout-path = "serial0:115200n8"; stdout-path = "serial0:115200n8";
}; };
hdmi-connector {
compatible = "hdmi-connector";
type = "a";
port {
hdmi_con_in: endpoint {
remote-endpoint = <&hdmi_out_con>;
};
};
};
leds { leds {
compatible = "gpio-leds"; compatible = "gpio-leds";
pinctrl-names = "default"; pinctrl-names = "default";
...@@ -109,6 +120,10 @@ &cpu0 { ...@@ -109,6 +120,10 @@ &cpu0 {
cpu-supply = <&reg_dcdc2>; cpu-supply = <&reg_dcdc2>;
}; };
&de {
status = "okay";
};
&ehci0 { &ehci0 {
status = "okay"; status = "okay";
}; };
...@@ -130,6 +145,16 @@ phy1: ethernet-phy@1 { ...@@ -130,6 +145,16 @@ phy1: ethernet-phy@1 {
}; };
}; };
&hdmi {
status = "okay";
};
&hdmi_out {
hdmi_out_con: endpoint {
remote-endpoint = <&hdmi_con_in>;
};
};
&i2c0 { &i2c0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>; pinctrl-0 = <&i2c0_pins_a>;
......
...@@ -61,6 +61,17 @@ chosen { ...@@ -61,6 +61,17 @@ chosen {
stdout-path = "serial0:115200n8"; stdout-path = "serial0:115200n8";
}; };
hdmi-connector {
compatible = "hdmi-connector";
type = "a";
port {
hdmi_con_in: endpoint {
remote-endpoint = <&hdmi_out_con>;
};
};
};
leds { leds {
compatible = "gpio-leds"; compatible = "gpio-leds";
pinctrl-names = "default"; pinctrl-names = "default";
...@@ -91,6 +102,10 @@ &cpu0 { ...@@ -91,6 +102,10 @@ &cpu0 {
cpu-supply = <&reg_dcdc2>; cpu-supply = <&reg_dcdc2>;
}; };
&de {
status = "okay";
};
&ehci0 { &ehci0 {
status = "okay"; status = "okay";
}; };
...@@ -111,6 +126,16 @@ phy1: ethernet-phy@1 { ...@@ -111,6 +126,16 @@ phy1: ethernet-phy@1 {
}; };
}; };
&hdmi {
status = "okay";
};
&hdmi_out {
hdmi_out_con: endpoint {
remote-endpoint = <&hdmi_con_in>;
};
};
&i2c0 { &i2c0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>; pinctrl-0 = <&i2c0_pins_a>;
......
...@@ -61,6 +61,17 @@ chosen { ...@@ -61,6 +61,17 @@ chosen {
stdout-path = "serial0:115200n8"; stdout-path = "serial0:115200n8";
}; };
hdmi-connector {
compatible = "hdmi-connector";
type = "a";
port {
hdmi_con_in: endpoint {
remote-endpoint = <&hdmi_out_con>;
};
};
};
leds { leds {
compatible = "gpio-leds"; compatible = "gpio-leds";
pinctrl-names = "default"; pinctrl-names = "default";
...@@ -126,6 +137,10 @@ &cpu0 { ...@@ -126,6 +137,10 @@ &cpu0 {
cpu-supply = <&reg_dcdc2>; cpu-supply = <&reg_dcdc2>;
}; };
&de {
status = "okay";
};
&ehci0 { &ehci0 {
status = "okay"; status = "okay";
}; };
...@@ -146,6 +161,16 @@ phy1: ethernet-phy@1 { ...@@ -146,6 +161,16 @@ phy1: ethernet-phy@1 {
}; };
}; };
&hdmi {
status = "okay";
};
&hdmi_out {
hdmi_out_con: endpoint {
remote-endpoint = <&hdmi_con_in>;
};
};
&i2c0 { &i2c0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>; pinctrl-0 = <&i2c0_pins_a>;
......
...@@ -61,6 +61,17 @@ chosen { ...@@ -61,6 +61,17 @@ chosen {
stdout-path = "serial0:115200n8"; stdout-path = "serial0:115200n8";
}; };
hdmi-connector {
compatible = "hdmi-connector";
type = "a";
port {
hdmi_con_in: endpoint {
remote-endpoint = <&hdmi_out_con>;
};
};
};
leds { leds {
compatible = "gpio-leds"; compatible = "gpio-leds";
pinctrl-names = "default"; pinctrl-names = "default";
...@@ -98,6 +109,10 @@ &cpu0 { ...@@ -98,6 +109,10 @@ &cpu0 {
cpu-supply = <&reg_dcdc2>; cpu-supply = <&reg_dcdc2>;
}; };
&de {
status = "okay";
};
&ehci0 { &ehci0 {
status = "okay"; status = "okay";
}; };
...@@ -173,6 +188,16 @@ fixed-link { ...@@ -173,6 +188,16 @@ fixed-link {
}; };
}; };
&hdmi {
status = "okay";
};
&hdmi_out {
hdmi_out_con: endpoint {
remote-endpoint = <&hdmi_con_in>;
};
};
&i2c0 { &i2c0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>; pinctrl-0 = <&i2c0_pins_a>;
...@@ -241,6 +266,14 @@ led_pins_lamobo_r1: led_pins@0 { ...@@ -241,6 +266,14 @@ led_pins_lamobo_r1: led_pins@0 {
#include "axp209.dtsi" #include "axp209.dtsi"
&ac_power_supply {
status = "okay";
};
&battery_power_supply {
status = "okay";
};
&reg_ahci_5v { &reg_ahci_5v {
gpio = <&pio 1 3 GPIO_ACTIVE_HIGH>; /* PB3 */ gpio = <&pio 1 3 GPIO_ACTIVE_HIGH>; /* PB3 */
status = "okay"; status = "okay";
......
...@@ -62,6 +62,17 @@ chosen { ...@@ -62,6 +62,17 @@ chosen {
stdout-path = "serial0:115200n8"; stdout-path = "serial0:115200n8";
}; };
hdmi-connector {
compatible = "hdmi-connector";
type = "a";
port {
hdmi_con_in: endpoint {
remote-endpoint = <&hdmi_out_con>;
};
};
};
leds { leds {
compatible = "gpio-leds"; compatible = "gpio-leds";
pinctrl-names = "default"; pinctrl-names = "default";
...@@ -80,6 +91,10 @@ &ahci { ...@@ -80,6 +91,10 @@ &ahci {
status = "okay"; status = "okay";
}; };
&de {
status = "okay";
};
&ehci0 { &ehci0 {
status = "okay"; status = "okay";
}; };
...@@ -100,6 +115,16 @@ phy1: ethernet-phy@1 { ...@@ -100,6 +115,16 @@ phy1: ethernet-phy@1 {
}; };
}; };
&hdmi {
status = "okay";
};
&hdmi_out {
hdmi_out_con: endpoint {
remote-endpoint = <&hdmi_con_in>;
};
};
&i2c0 { &i2c0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>; pinctrl-0 = <&i2c0_pins_a>;
......
...@@ -59,6 +59,17 @@ chosen { ...@@ -59,6 +59,17 @@ chosen {
stdout-path = "serial0:115200n8"; stdout-path = "serial0:115200n8";
}; };
hdmi-connector {
compatible = "hdmi-connector";
type = "a";
port {
hdmi_con_in: endpoint {
remote-endpoint = <&hdmi_out_con>;
};
};
};
leds { leds {
compatible = "gpio-leds"; compatible = "gpio-leds";
pinctrl-names = "default"; pinctrl-names = "default";
...@@ -85,6 +96,10 @@ &ahci { ...@@ -85,6 +96,10 @@ &ahci {
status = "okay"; status = "okay";
}; };
&de {
status = "okay";
};
&ehci0 { &ehci0 {
status = "okay"; status = "okay";
}; };
...@@ -105,6 +120,16 @@ phy1: ethernet-phy@1 { ...@@ -105,6 +120,16 @@ phy1: ethernet-phy@1 {
}; };
}; };
&hdmi {
status = "okay";
};
&hdmi_out {
hdmi_out_con: endpoint {
remote-endpoint = <&hdmi_con_in>;
};
};
&i2c0 { &i2c0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>; pinctrl-0 = <&i2c0_pins_a>;
......
/*
* Copyright 2017 Olimex Ltd.
* Stefan Mavrodiev <stefan@olimex.com>
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This file is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
#include "sun7i-a20-olinuxino-micro.dts"
/ {
model = "Olimex A20-OLinuXino-MICRO-eMMC";
compatible = "olimex,a20-olinuxino-micro-emmc", "allwinner,sun7i-a20";
mmc2_pwrseq: pwrseq {
compatible = "mmc-pwrseq-emmc";
reset-gpios = <&pio 2 16 GPIO_ACTIVE_LOW>;
};
};
&mmc2 {
pinctrl-names = "default";
pinctrl-0 = <&mmc2_pins_a>;
vmmc-supply = <&reg_vcc3v3>;
bus-width = <4>;
non-removable;
mmc-pwrseq = <&mmc2_pwrseq>;
status = "okay";
emmc: emmc@0 {
reg = <0>;
compatible = "mmc-card";
broken-hpi;
};
};
...@@ -66,6 +66,17 @@ chosen { ...@@ -66,6 +66,17 @@ chosen {
stdout-path = "serial0:115200n8"; stdout-path = "serial0:115200n8";
}; };
hdmi-connector {
compatible = "hdmi-connector";
type = "a";
port {
hdmi_con_in: endpoint {
remote-endpoint = <&hdmi_out_con>;
};
};
};
leds { leds {
compatible = "gpio-leds"; compatible = "gpio-leds";
pinctrl-names = "default"; pinctrl-names = "default";
...@@ -92,6 +103,10 @@ &cpu0 { ...@@ -92,6 +103,10 @@ &cpu0 {
cpu-supply = <&reg_dcdc2>; cpu-supply = <&reg_dcdc2>;
}; };
&de {
status = "okay";
};
&ehci0 { &ehci0 {
status = "okay"; status = "okay";
}; };
...@@ -102,7 +117,7 @@ &ehci1 { ...@@ -102,7 +117,7 @@ &ehci1 {
&gmac { &gmac {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&gmac_pins_mii_a>; pinctrl-0 = <&gmac_pins_mii_a>, <&gmac_txerr>;
phy = <&phy1>; phy = <&phy1>;
phy-mode = "mii"; phy-mode = "mii";
status = "okay"; status = "okay";
...@@ -112,6 +127,16 @@ phy1: ethernet-phy@1 { ...@@ -112,6 +127,16 @@ phy1: ethernet-phy@1 {
}; };
}; };
&hdmi {
status = "okay";
};
&hdmi_out {
hdmi_out_con: endpoint {
remote-endpoint = <&hdmi_con_in>;
};
};
&i2c0 { &i2c0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&i2c0_pins_a>; pinctrl-0 = <&i2c0_pins_a>;
...@@ -229,6 +254,11 @@ &otg_sram { ...@@ -229,6 +254,11 @@ &otg_sram {
}; };
&pio { &pio {
gmac_txerr: gmac_txerr@0 {
pins = "PA17";
function = "gmac";
};
mmc3_cd_pin_olinuxinom: mmc3_cd_pin@0 { mmc3_cd_pin_olinuxinom: mmc3_cd_pin@0 {
pins = "PH11"; pins = "PH11";
function = "gpio_in"; function = "gpio_in";
...@@ -256,6 +286,14 @@ usb0_vbus_detect_pin: usb0_vbus_detect_pin@0 { ...@@ -256,6 +286,14 @@ usb0_vbus_detect_pin: usb0_vbus_detect_pin@0 {
#include "axp209.dtsi" #include "axp209.dtsi"
&ac_power_supply {
status = "okay";
};
&battery_power_supply {
status = "okay";
};
&reg_dcdc2 { &reg_dcdc2 {
regulator-always-on; regulator-always-on;
regulator-min-microvolt = <1000000>; regulator-min-microvolt = <1000000>;
...@@ -330,6 +368,10 @@ &usb_otg { ...@@ -330,6 +368,10 @@ &usb_otg {
status = "okay"; status = "okay";
}; };
&usb_power_supply {
status = "okay";
};
&usbphy { &usbphy {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&usb0_id_detect_pin>, <&usb0_vbus_detect_pin>; pinctrl-0 = <&usb0_id_detect_pin>, <&usb0_vbus_detect_pin>;
......
This diff is collapsed.
/*
* Copyright (C) 2017 Touchless Biometric Systems AG
* Tomas Novotny <tomas@novotny.cz>
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This file is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
/dts-v1/;
#include "sun8i-a83t.dtsi"
#include "sunxi-common-regulators.dtsi"
/ {
model = "TBS A711 Tablet";
compatible = "tbs-biometrics,a711", "allwinner,sun8i-a83t";
aliases {
serial0 = &uart0;
serial1 = &uart1;
};
chosen {
stdout-path = "serial0:115200n8";
};
reg_vbat: reg-vbat {
compatible = "regulator-fixed";
regulator-name = "vbat";
regulator-min-microvolt = <3700000>;
regulator-max-microvolt = <3700000>;
};
reg_vmain: reg-vmain {
compatible = "regulator-fixed";
regulator-name = "vmain";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpio = <&r_pio 0 9 GPIO_ACTIVE_HIGH>;
enable-active-high;
vin-supply = <&reg_vbat>;
};
wifi_pwrseq: wifi_pwrseq {
compatible = "mmc-pwrseq-simple";
reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 WL-PMU-EN */
/*
* This is actually Bluetooth's clock, but we have to
* hook it up somewheere
*/
clocks = <&ac100_rtc 1>;
clock-names = "ext_clock";
};
};
/*
* An USB-2 hub is connected here, which also means we don't need to
* enable the OHCI controller.
*/
&ehci0 {
status = "okay";
};
/*
* There's a modem connected here that needs to be initialised before
* being able to be enumerated.
*/
&ehci1 {
status = "okay";
};
&mmc0 {
vmmc-supply = <&reg_vcc3v3>;
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins>;
cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>;
status = "okay";
};
&mmc1 {
mmc-pwrseq = <&wifi_pwrseq>;
bus-width = <4>;
pinctrl-names = "default";
pinctrl-0 = <&mmc1_pins>;
vmmc-supply = <&reg_vcc3v3>;
vqmmc-supply = <&reg_vcc3v3>;
non-removable;
wakeup-source;
status = "okay";
brcmf: wifi@1 {
reg = <1>;
compatible = "brcm,bcm4329-fmac";
interrupt-parent = <&r_pio>;
interrupts = <0 3 IRQ_TYPE_LEVEL_LOW>; /* PL3 WL_WAKE_UP */
interrupt-names = "host-wake";
};
};
&mmc2 {
pinctrl-0 = <&mmc2_8bit_emmc_pins>;
pinctrl-names = "default";
vmmc-supply = <&reg_vcc3v3>;
vqmmc-supply = <&reg_vcc3v3>;
bus-width = <8>;
non-removable;
cap-mmc-hw-reset;
status = "okay";
};
&r_rsb {
status = "okay";
axp813: pmic@3a3 {
compatible = "x-powers,axp813";
reg = <0x3a3>;
interrupt-parent = <&r_intc>;
interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
};
ac100: codec@e89 {
compatible = "x-powers,ac100";
reg = <0xe89>;
ac100_codec: codec {
compatible = "x-powers,ac100-codec";
interrupt-parent = <&r_pio>;
interrupts = <0 12 IRQ_TYPE_LEVEL_LOW>; /* PL12 */
#clock-cells = <0>;
clock-output-names = "4M_adda";
};
ac100_rtc: rtc {
compatible = "x-powers,ac100-rtc";
interrupt-parent = <&r_intc>;
interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
clocks = <&ac100_codec>;
#clock-cells = <1>;
clock-output-names = "cko1_rtc",
"cko2_rtc",
"cko3_rtc";
};
};
};
&uart0 {
pinctrl-names = "default";
pinctrl-0 = <&uart0_pb_pins>;
status = "okay";
};
/* There's the BT part of the AP6210 connected to that UART */
&uart1 {
pinctrl-names = "default";
pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>;
status = "okay";
};
&usbphy {
usb1_vbus_supply = <&reg_vcc5v0>;
usb2_vbus_supply = <&reg_vcc5v0>;
status = "okay";
};
...@@ -54,12 +54,6 @@ / { ...@@ -54,12 +54,6 @@ / {
#address-cells = <1>; #address-cells = <1>;
#size-cells = <1>; #size-cells = <1>;
aliases {
};
chosen {
};
cpus { cpus {
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
...@@ -348,6 +342,14 @@ mmc0_pins: mmc0-pins { ...@@ -348,6 +342,14 @@ mmc0_pins: mmc0-pins {
bias-pull-up; bias-pull-up;
}; };
mmc1_pins: mmc1-pins {
pins = "PG0", "PG1", "PG2",
"PG3", "PG4", "PG5";
function = "mmc1";
drive-strength = <30>;
bias-pull-up;
};
mmc2_8bit_emmc_pins: mmc2-8bit-emmc-pins { mmc2_8bit_emmc_pins: mmc2-8bit-emmc-pins {
pins = "PC5", "PC6", "PC8", "PC9", pins = "PC5", "PC6", "PC8", "PC9",
"PC10", "PC11", "PC12", "PC13", "PC10", "PC11", "PC12", "PC13",
...@@ -371,6 +373,16 @@ uart0_pf_pins: uart0-pf-pins { ...@@ -371,6 +373,16 @@ uart0_pf_pins: uart0-pf-pins {
pins = "PF2", "PF4"; pins = "PF2", "PF4";
function = "uart0"; function = "uart0";
}; };
uart1_pins: uart1-pins {
pins = "PG6", "PG7";
function = "uart1";
};
uart1_rts_cts_pins: uart1-rts-cts-pins {
pins = "PG8", "PG9";
function = "uart1";
};
}; };
timer@1c20c00 { timer@1c20c00 {
...@@ -415,6 +427,17 @@ uart0: serial@1c28000 { ...@@ -415,6 +427,17 @@ uart0: serial@1c28000 {
status = "disabled"; status = "disabled";
}; };
uart1: serial@1c28400 {
compatible = "snps,dw-apb-uart";
reg = <0x01c28400 0x400>;
interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
reg-shift = <2>;
reg-io-width = <4>;
clocks = <&ccu CLK_BUS_UART1>;
resets = <&ccu RST_BUS_UART1>;
status = "disabled";
};
gic: interrupt-controller@1c81000 { gic: interrupt-controller@1c81000 {
compatible = "arm,cortex-a7-gic", "arm,cortex-a15-gic"; compatible = "arm,cortex-a7-gic", "arm,cortex-a15-gic";
reg = <0x01c81000 0x1000>, reg = <0x01c81000 0x1000>,
......
...@@ -63,7 +63,6 @@ chosen { ...@@ -63,7 +63,6 @@ chosen {
leds { leds {
compatible = "gpio-leds"; compatible = "gpio-leds";
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pwr_led_bpi_m2p>;
pwr_led { pwr_led {
label = "bananapi-m2-plus:red:pwr"; label = "bananapi-m2-plus:red:pwr";
...@@ -75,7 +74,6 @@ pwr_led { ...@@ -75,7 +74,6 @@ pwr_led {
gpio_keys { gpio_keys {
compatible = "gpio-keys"; compatible = "gpio-keys";
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&sw_r_bpi_m2p>;
sw4 { sw4 {
label = "power"; label = "power";
...@@ -97,7 +95,6 @@ reg_gmac_3v3: gmac-3v3 { ...@@ -97,7 +95,6 @@ reg_gmac_3v3: gmac-3v3 {
wifi_pwrseq: wifi_pwrseq { wifi_pwrseq: wifi_pwrseq {
compatible = "mmc-pwrseq-simple"; compatible = "mmc-pwrseq-simple";
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&wifi_en_bpi_m2p>;
reset-gpios = <&r_pio 0 7 GPIO_ACTIVE_LOW>; /* PL7 */ reset-gpios = <&r_pio 0 7 GPIO_ACTIVE_LOW>; /* PL7 */
}; };
}; };
...@@ -171,23 +168,6 @@ &ohci2 { ...@@ -171,23 +168,6 @@ &ohci2 {
status = "okay"; status = "okay";
}; };
&r_pio {
pwr_led_bpi_m2p: led_pins@0 {
pins = "PL10";
function = "gpio_out";
};
sw_r_bpi_m2p: key_pins@0 {
pins = "PL3";
function = "gpio_in";
};
wifi_en_bpi_m2p: wifi_en_pin {
pins = "PL7";
function = "gpio_out";
};
};
&reg_usb0_vbus { &reg_usb0_vbus {
gpio = <&pio 3 11 GPIO_ACTIVE_HIGH>; /* PD11 */ gpio = <&pio 3 11 GPIO_ACTIVE_HIGH>; /* PD11 */
status = "okay"; status = "okay";
......
...@@ -45,6 +45,17 @@ ...@@ -45,6 +45,17 @@
/ { / {
model = "FriendlyArm NanoPi M1 Plus"; model = "FriendlyArm NanoPi M1 Plus";
compatible = "friendlyarm,nanopi-m1-plus", "allwinner,sun8i-h3"; compatible = "friendlyarm,nanopi-m1-plus", "allwinner,sun8i-h3";
aliases {
serial1 = &uart3;
ethernet1 = &sdio_wifi;
};
wifi_pwrseq: wifi_pwrseq {
compatible = "mmc-pwrseq-simple";
pinctrl-names = "default";
reset-gpios = <&r_pio 0 7 GPIO_ACTIVE_LOW>; /* PL7 */
};
}; };
&ehci1 { &ehci1 {
...@@ -55,6 +66,31 @@ &ehci2 { ...@@ -55,6 +66,31 @@ &ehci2 {
status = "okay"; status = "okay";
}; };
&ir {
pinctrl-names = "default";
pinctrl-0 = <&ir_pins_a>;
status = "okay";
};
&mmc1 {
pinctrl-names = "default";
pinctrl-0 = <&mmc1_pins_a>;
vmmc-supply = <&reg_vcc3v3>;
vqmmc-supply = <&reg_vcc3v3>;
mmc-pwrseq = <&wifi_pwrseq>;
bus-width = <4>;
non-removable;
status = "okay";
sdio_wifi: sdio_wifi@1 {
reg = <1>;
compatible = "brcm,bcm4329-fmac";
interrupt-parent = <&pio>;
interrupts = <6 10 IRQ_TYPE_LEVEL_LOW>; /* PG10 / EINT10 */
interrupt-names = "host-wake";
};
};
&ohci1 { &ohci1 {
status = "okay"; status = "okay";
}; };
...@@ -62,3 +98,9 @@ &ohci1 { ...@@ -62,3 +98,9 @@ &ohci1 {
&ohci2 { &ohci2 {
status = "okay"; status = "okay";
}; };
&uart3 {
pinctrl-names = "default";
pinctrl-0 = <&uart3_pins>, <&uart3_rts_cts_pins>;
status = "okay";
};
...@@ -55,6 +55,12 @@ &ehci2 { ...@@ -55,6 +55,12 @@ &ehci2 {
status = "okay"; status = "okay";
}; };
&ir {
pinctrl-names = "default";
pinctrl-0 = <&ir_pins_a>;
status = "okay";
};
&ohci1 { &ohci1 {
status = "okay"; status = "okay";
}; };
......
...@@ -81,7 +81,7 @@ r_gpio_keys { ...@@ -81,7 +81,7 @@ r_gpio_keys {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&sw_r_npi>; pinctrl-0 = <&sw_r_npi>;
k1@0 { k1 {
label = "k1"; label = "k1";
linux,code = <KEY_POWER>; linux,code = <KEY_POWER>;
gpios = <&r_pio 0 3 GPIO_ACTIVE_LOW>; gpios = <&r_pio 0 3 GPIO_ACTIVE_LOW>;
...@@ -108,19 +108,19 @@ &ohci3 { ...@@ -108,19 +108,19 @@ &ohci3 {
}; };
&pio { &pio {
leds_npi: led_pins@0 { leds_npi: led_pins {
pins = "PA10"; pins = "PA10";
function = "gpio_out"; function = "gpio_out";
}; };
}; };
&r_pio { &r_pio {
leds_r_npi: led_pins@0 { leds_r_npi: led_pins {
pins = "PL10"; pins = "PL10";
function = "gpio_out"; function = "gpio_out";
}; };
sw_r_npi: key_pins@0 { sw_r_npi: key_pins {
pins = "PL3"; pins = "PL3";
function = "gpio_in"; function = "gpio_in";
}; };
......
...@@ -152,24 +152,24 @@ rtl8189: sdio_wifi@1 { ...@@ -152,24 +152,24 @@ rtl8189: sdio_wifi@1 {
}; };
&pio { &pio {
leds_opc: led_pins@0 { leds_opc: led_pins {
pins = "PA15"; pins = "PA15";
function = "gpio_out"; function = "gpio_out";
}; };
}; };
&r_pio { &r_pio {
leds_r_opc: led_pins@0 { leds_r_opc: led_pins {
pins = "PL10"; pins = "PL10";
function = "gpio_out"; function = "gpio_out";
}; };
sw_r_opc: key_pins@0 { sw_r_opc: key_pins {
pins = "PL3", "PL4"; pins = "PL3", "PL4";
function = "gpio_in"; function = "gpio_in";
}; };
wifi_pwrseq_pin_orangepi: wifi_pwrseq_pin@0 { wifi_pwrseq_pin_orangepi: wifi_pwrseq_pin {
pins = "PL7"; pins = "PL7";
function = "gpio_out"; function = "gpio_out";
}; };
......
...@@ -141,19 +141,19 @@ &ohci2 { ...@@ -141,19 +141,19 @@ &ohci2 {
}; };
&pio { &pio {
leds_opc: led_pins@0 { leds_opc: led_pins {
pins = "PA15"; pins = "PA15";
function = "gpio_out"; function = "gpio_out";
}; };
}; };
&r_pio { &r_pio {
leds_r_opc: led_pins@0 { leds_r_opc: led_pins {
pins = "PL10"; pins = "PL10";
function = "gpio_out"; function = "gpio_out";
}; };
sw_r_opc: key_pins@0 { sw_r_opc: key_pins {
pins = "PL3"; pins = "PL3";
function = "gpio_in"; function = "gpio_in";
}; };
......
...@@ -116,19 +116,19 @@ &ohci1 { ...@@ -116,19 +116,19 @@ &ohci1 {
}; };
&pio { &pio {
leds_opc: led_pins@0 { leds_opc: led_pins {
pins = "PA15"; pins = "PA15";
function = "gpio_out"; function = "gpio_out";
}; };
}; };
&r_pio { &r_pio {
leds_r_opc: led_pins@0 { leds_r_opc: led_pins {
pins = "PL10"; pins = "PL10";
function = "gpio_out"; function = "gpio_out";
}; };
sw_r_opc: key_pins@0 { sw_r_opc: key_pins {
pins = "PL3"; pins = "PL3";
function = "gpio_in"; function = "gpio_in";
}; };
......
...@@ -146,19 +146,19 @@ &ohci3 { ...@@ -146,19 +146,19 @@ &ohci3 {
}; };
&pio { &pio {
leds_opc: led_pins@0 { leds_opc: led_pins {
pins = "PA15"; pins = "PA15";
function = "gpio_out"; function = "gpio_out";
}; };
}; };
&r_pio { &r_pio {
leds_r_opc: led_pins@0 { leds_r_opc: led_pins {
pins = "PL10"; pins = "PL10";
function = "gpio_out"; function = "gpio_out";
}; };
sw_r_opc: key_pins@0 { sw_r_opc: key_pins {
pins = "PL3"; pins = "PL3";
function = "gpio_in"; function = "gpio_in";
}; };
......
...@@ -92,7 +92,7 @@ &mmc2_8bit_pins { ...@@ -92,7 +92,7 @@ &mmc2_8bit_pins {
}; };
&pio { &pio {
usb3_vbus_pin_a: usb3_vbus_pin@0 { usb3_vbus_pin_a: usb3_vbus_pin {
pins = "PG11"; pins = "PG11";
function = "gpio_out"; function = "gpio_out";
}; };
......
/*
* Copyright (C) 2017 Chen-Yu Tsai <wens@csie.org>
* Copyright (C) 2017 Icenowy Zheng <icenowy@aosc.io>
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This file is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
/dts-v1/;
#include "sun8i-r40.dtsi"
#include <dt-bindings/gpio/gpio.h>
/ {
model = "Banana Pi BPI-M2-Ultra";
compatible = "sinovoip,bpi-m2-ultra", "allwinner,sun8i-r40";
aliases {
serial0 = &uart0;
};
chosen {
stdout-path = "serial0:115200n8";
};
leds {
compatible = "gpio-leds";
pwr-led {
label = "bananapi:red:pwr";
gpios = <&pio 7 20 GPIO_ACTIVE_HIGH>;
default-state = "on";
};
user-led-green {
label = "bananapi:green:user";
gpios = <&pio 7 21 GPIO_ACTIVE_HIGH>;
};
user-led-blue {
label = "bananapi:blue:user";
gpios = <&pio 7 22 GPIO_ACTIVE_HIGH>;
};
};
reg_vcc5v0: vcc5v0 {
compatible = "regulator-fixed";
regulator-name = "vcc5v0";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpio = <&pio 7 23 GPIO_ACTIVE_HIGH>; /* PH23 */
enable-active-high;
};
wifi_pwrseq: wifi_pwrseq {
compatible = "mmc-pwrseq-simple";
reset-gpios = <&pio 6 10 GPIO_ACTIVE_LOW>; /* PG10 WIFI_EN */
};
};
&ehci1 {
status = "okay";
};
&ehci2 {
status = "okay";
};
&i2c0 {
status = "okay";
axp22x: pmic@34 {
compatible = "x-powers,axp221";
reg = <0x34>;
interrupt-parent = <&nmi_intc>;
interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
};
};
#include "axp22x.dtsi"
&reg_aldo3 {
regulator-always-on;
regulator-min-microvolt = <2700000>;
regulator-max-microvolt = <3300000>;
regulator-name = "avcc";
};
&reg_dcdc1 {
regulator-always-on;
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
regulator-name = "vcc-3v0";
};
&reg_dcdc2 {
regulator-always-on;
regulator-min-microvolt = <1000000>;
regulator-max-microvolt = <1300000>;
regulator-name = "vdd-cpu";
};
&reg_dcdc3 {
regulator-always-on;
regulator-min-microvolt = <1000000>;
regulator-max-microvolt = <1300000>;
regulator-name = "vdd-sys";
};
&reg_dcdc5 {
regulator-always-on;
regulator-min-microvolt = <1500000>;
regulator-max-microvolt = <1500000>;
regulator-name = "vcc-dram";
};
&reg_dldo1 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
regulator-name = "vcc-wifi-io";
};
&reg_dldo2 {
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-name = "vcc-wifi";
};
&mmc0 {
vmmc-supply = <&reg_dcdc1>;
bus-width = <4>;
cd-gpios = <&pio 7 13 GPIO_ACTIVE_HIGH>; /* PH13 */
cd-inverted;
status = "okay";
};
&mmc1 {
pinctrl-names = "default";
pinctrl-0 = <&mmc1_pg_pins>;
vmmc-supply = <&reg_dldo2>;
vqmmc-supply = <&reg_dldo1>;
mmc-pwrseq = <&wifi_pwrseq>;
bus-width = <4>;
non-removable;
status = "okay";
};
&mmc2 {
vmmc-supply = <&reg_dcdc1>;
vqmmc-supply = <&reg_dcdc1>;
bus-width = <8>;
non-removable;
status = "okay";
};
&ohci1 {
status = "okay";
};
&ohci2 {
status = "okay";
};
&uart0 {
pinctrl-names = "default";
pinctrl-0 = <&uart0_pb_pins>;
status = "okay";
};
&usbphy {
usb1_vbus-supply = <&reg_vcc5v0>;
usb2_vbus-supply = <&reg_vcc5v0>;
status = "okay";
};
This diff is collapsed.
/*
* Copyright (C) 2017 Icenowy Zheng <icenowy@aosc.io>
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This file is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
/dts-v1/;
#include "sun8i-r40.dtsi"
#include <dt-bindings/gpio/gpio.h>
/ {
model = "Banana Pi M2 Berry";
compatible = "sinovoip,bpi-m2-berry", "allwinner,sun8i-r40";
aliases {
serial0 = &uart0;
};
chosen {
stdout-path = "serial0:115200n8";
};
leds {
compatible = "gpio-leds";
pwr-led {
label = "bananapi:red:pwr";
gpios = <&pio 7 20 GPIO_ACTIVE_HIGH>;
default-state = "on";
};
user-led {
label = "bananapi:green:user";
gpios = <&pio 7 21 GPIO_ACTIVE_HIGH>;
};
};
reg_vcc5v0: vcc5v0 {
compatible = "regulator-fixed";
regulator-name = "vcc5v0";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
gpio = <&pio 7 23 GPIO_ACTIVE_HIGH>; /* PH23 */
enable-active-high;
};
wifi_pwrseq: wifi_pwrseq {
compatible = "mmc-pwrseq-simple";
reset-gpios = <&pio 6 10 GPIO_ACTIVE_LOW>; /* PG10 WIFI_EN */
};
};
&i2c0 {
status = "okay";
axp22x: pmic@68 {
compatible = "x-powers,axp221";
reg = <0x34>;
interrupt-parent = <&nmi_intc>;
interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
};
};
#include "axp22x.dtsi"
&reg_aldo3 {
regulator-always-on;
regulator-min-microvolt = <2700000>;
regulator-max-microvolt = <3300000>;
regulator-name = "avcc";
};
&reg_dcdc1 {
regulator-always-on;
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3000000>;
regulator-name = "vcc-3v0";
};
&reg_dcdc2 {
regulator-always-on;
regulator-min-microvolt = <1000000>;
regulator-max-microvolt = <1300000>;
regulator-name = "vdd-cpu";
};
&reg_dcdc3 {
regulator-always-on;
regulator-min-microvolt = <1000000>;
regulator-max-microvolt = <1300000>;
regulator-name = "vdd-sys";
};
&reg_dcdc5 {
regulator-always-on;
regulator-min-microvolt = <1500000>;
regulator-max-microvolt = <1500000>;
regulator-name = "vcc-dram";
};
&reg_dldo1 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
regulator-name = "vcc-wifi-io";
};
&reg_dldo2 {
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-name = "vcc-wifi";
};
&mmc0 {
vmmc-supply = <&reg_dcdc1>;
bus-width = <4>;
cd-gpios = <&pio 7 13 GPIO_ACTIVE_HIGH>; /* PH13 */
cd-inverted;
status = "okay";
};
&mmc1 {
pinctrl-names = "default";
pinctrl-0 = <&mmc1_pg_pins>;
vmmc-supply = <&reg_dldo2>;
vqmmc-supply = <&reg_dldo1>;
mmc-pwrseq = <&wifi_pwrseq>;
bus-width = <4>;
non-removable;
status = "okay";
};
&uart0 {
pinctrl-names = "default";
pinctrl-0 = <&uart0_pb_pins>;
status = "okay";
};
...@@ -62,8 +62,6 @@ chosen { ...@@ -62,8 +62,6 @@ chosen {
leds { leds {
compatible = "gpio-leds"; compatible = "gpio-leds";
pinctrl-names = "default";
pinctrl-0 = <&led_pins_cubieboard4>;
green { green {
label = "cubieboard4:green:usr"; label = "cubieboard4:green:usr";
...@@ -76,7 +74,7 @@ red { ...@@ -76,7 +74,7 @@ red {
}; };
}; };
wifi_pwrseq: wifi_pwrseq { wifi_pwrseq: wifi-pwrseq {
compatible = "mmc-pwrseq-simple"; compatible = "mmc-pwrseq-simple";
clocks = <&ac100_rtc 1>; clocks = <&ac100_rtc 1>;
clock-names = "ext_clock"; clock-names = "ext_clock";
...@@ -87,7 +85,7 @@ wifi_pwrseq: wifi_pwrseq { ...@@ -87,7 +85,7 @@ wifi_pwrseq: wifi_pwrseq {
&mmc0 { &mmc0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins>, <&mmc0_cd_pin_cubieboard4>; pinctrl-0 = <&mmc0_pins>;
vmmc-supply = <&reg_dcdc1>; vmmc-supply = <&reg_dcdc1>;
bus-width = <4>; bus-width = <4>;
cd-gpios = <&pio 7 18 GPIO_ACTIVE_HIGH>; /* PH18 */ cd-gpios = <&pio 7 18 GPIO_ACTIVE_HIGH>; /* PH18 */
...@@ -97,7 +95,7 @@ &mmc0 { ...@@ -97,7 +95,7 @@ &mmc0 {
&mmc1 { &mmc1 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&mmc1_pins>, <&wifi_en_pin_cubieboard4>; pinctrl-0 = <&mmc1_pins>;
vmmc-supply = <&reg_dldo1>; vmmc-supply = <&reg_dldo1>;
vqmmc-supply = <&reg_cldo3>; vqmmc-supply = <&reg_cldo3>;
mmc-pwrseq = <&wifi_pwrseq>; mmc-pwrseq = <&wifi_pwrseq>;
...@@ -130,30 +128,10 @@ &osc32k { ...@@ -130,30 +128,10 @@ &osc32k {
clocks = <&ac100_rtc 0>; clocks = <&ac100_rtc 0>;
}; };
&pio {
led_pins_cubieboard4: led-pins@0 {
pins = "PH6", "PH17";
function = "gpio_out";
};
mmc0_cd_pin_cubieboard4: mmc0_cd_pin@0 {
pins = "PH18";
function = "gpio_in";
bias-pull-up;
};
};
&r_ir { &r_ir {
status = "okay"; status = "okay";
}; };
&r_pio {
wifi_en_pin_cubieboard4: wifi_en_pin@0 {
pins = "PL2";
function = "gpio_out";
};
};
&r_rsb { &r_rsb {
status = "okay"; status = "okay";
...@@ -427,6 +405,6 @@ ac100_rtc: rtc { ...@@ -427,6 +405,6 @@ ac100_rtc: rtc {
&uart0 { &uart0 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&uart0_pins_a>; pinctrl-0 = <&uart0_ph_pins>;
status = "okay"; status = "okay";
}; };
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment