arm: dts: ls1028a: add lpuart nodes
[oweals/u-boot.git] / arch / arm / dts / sun5i-a13-olinuxino-micro.dts
index 4a00bcee9272ac3d4d70d545256a756e78467f9e..aa4b34fd912697ebaa4f69ca50e2c60374295c34 100644 (file)
  *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  *     GNU General Public License for more details.
  *
- *     You should have received a copy of the GNU General Public
- *     License along with this file; if not, write to the Free
- *     Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
- *     MA 02110-1301 USA
- *
  * Or, alternatively,
  *
  *  b) Permission is hereby granted, free of charge, to any person
@@ -51,7 +46,6 @@
 #include "sunxi-common-regulators.dtsi"
 
 #include <dt-bindings/gpio/gpio.h>
-#include <dt-bindings/pinctrl/sun4i-a10.h>
 
 / {
        model = "Olimex A13-Olinuxino Micro";
        pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin_olinuxinom>;
        vmmc-supply = <&reg_vcc3v3>;
        bus-width = <4>;
-       cd-gpios = <&pio 6 0 GPIO_ACTIVE_HIGH>; /* PG0 */
-       cd-inverted;
+       cd-gpios = <&pio 6 0 GPIO_ACTIVE_LOW>; /* PG0 */
        status = "okay";
 };
 
        status = "okay";
 };
 
+&otg_sram {
+       status = "okay";
+};
+
 &pio {
        mmc0_cd_pin_olinuxinom: mmc0_cd_pin@0 {
-               allwinner,pins = "PG0";
-               allwinner,function = "gpio_in";
-               allwinner,drive = <SUN4I_PINCTRL_10_MA>;
-               allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
+               pins = "PG0";
+               function = "gpio_in";
+               bias-pull-up;
        };
 
        led_pins_olinuxinom: led_pins@0 {
-               allwinner,pins = "PG9";
-               allwinner,function = "gpio_out";
-               allwinner,drive = <SUN4I_PINCTRL_20_MA>;
-               allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
+               pins = "PG9";
+               function = "gpio_out";
+               drive-strength = <20>;
+       };
+
+       usb0_id_detect_pin: usb0_id_detect_pin@0 {
+               pins = "PG2";
+               function = "gpio_in";
+               bias-pull-up;
+       };
+
+       usb0_vbus_detect_pin: usb0_vbus_detect_pin@0 {
+               pins = "PG1";
+               function = "gpio_in";
+               bias-pull-down;
+       };
+
+       usb0_vbus_pin_olinuxinom: usb0_vbus_pin@0 {
+               pins = "PG12";
+               function = "gpio_out";
        };
 
        usb1_vbus_pin_olinuxinom: usb1_vbus_pin@0 {
-               allwinner,pins = "PG11";
-               allwinner,function = "gpio_out";
-               allwinner,drive = <SUN4I_PINCTRL_10_MA>;
-               allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
+               pins = "PG11";
+               function = "gpio_out";
        };
 };
 
+&reg_usb0_vbus {
+       pinctrl-0 = <&usb0_vbus_pin_olinuxinom>;
+       gpio = <&pio 6 12 GPIO_ACTIVE_HIGH>;
+       status = "okay";
+};
+
 &reg_usb1_vbus {
        pinctrl-0 = <&usb1_vbus_pin_olinuxinom>;
        gpio = <&pio 6 11 GPIO_ACTIVE_HIGH>;
        status = "okay";
 };
 
+&usb_otg {
+       dr_mode = "otg";
+       status = "okay";
+};
+
 &usbphy {
+       pinctrl-names = "default";
+       pinctrl-0 = <&usb0_id_detect_pin>, <&usb0_vbus_detect_pin>;
+       usb0_id_det-gpio = <&pio 6 2 GPIO_ACTIVE_HIGH>; /* PG2 */
+       usb0_vbus_det-gpio = <&pio 6 1 GPIO_ACTIVE_HIGH>; /* PG1 */
+       usb0_vbus-supply = <&reg_usb0_vbus>;
        usb1_vbus-supply = <&reg_usb1_vbus>;
        status = "okay";
 };