-diff -rupN devicetree.orig/pcw.dtsi devicetree/pcw.dtsi
---- devicetree.orig/pcw.dtsi	2017-09-08 12:58:34.581635894 +0200
-+++ devicetree/pcw.dtsi	2017-09-08 12:58:34.581635894 +0200
+diff -rupN devicetree.old/pcw.dtsi devicetree/pcw.dtsi
+--- devicetree.old/pcw.dtsi
++++ devicetree/pcw.dtsi
 @@ -13,9 +13,11 @@
  	};
  };

 };
 &uart0 {
 	device_type = "serial";
@@ -62,7 +74,7 @@
 };
 &usb0 {
 	dr_mode = "host";
-	phy_type = "ulpi";
+	usb-phy = <&usb_phy0>;
 	status = "okay";
 };
 &clkc {
diff -rupN devicetree.orig/system-top.dts devicetree/system-top.dts
--- devicetree.orig/system-top.dts	2017-09-08 12:58:34.581635894 +0200
+++ devicetree/system-top.dts	2017-09-08 12:58:34.581635894 +0200
@@ -14,6 +14,13 @@
 		bootargs = "console=ttyPS0,115200 root=/dev/mmcblk0p2 ro rootfstype=ext4 earlyprintk rootwait earlycon";
 		stdout-path = "serial0:115200n8";
 	};
+	usb_phy0: phy0 {
+		#phy-cells = <0>;
+		compatible = "ulpi-phy";
+		reg = <0xe0002000 0x1000>;
+		view-port = <0x0170>;
+		drv-vbus;
+	};
 	aliases {
 		ethernet0 = &gem0;
 		serial0 = &uart0;
@@ -23,8 +30,21 @@
 	};
 	memory {
 		device_type = "memory";

+		phy0: ethernet-phy@3 {
+			compatible = "micrel,ksz9031";
+			device_type = "ethernet-phy";
+			rxc-skew-ps = <1860>;
+			rxdv-skew-ps = <420>;
+			txc-skew-ps = <1860>;
+			txen-skew-ps = <420>;
+			reg = <3>;
+		};
+	};
