These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / arch / arm / boot / dts / sun7i-a20-olinuxino-lime2.dts
index 260dbd3..d5c796c 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
        model = "Olimex A20-OLinuXino-LIME2";
        compatible = "olimex,a20-olinuxino-lime2", "allwinner,sun7i-a20";
 
-       soc@01c00000 {
-               mmc0: mmc@01c0f000 {
-                       pinctrl-names = "default";
-                       pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin_reference_design>;
-                       vmmc-supply = <&reg_vcc3v3>;
-                       bus-width = <4>;
-                       cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
-                       cd-inverted;
-                       status = "okay";
-               };
+       aliases {
+               serial0 = &uart0;
+       };
 
-               usbphy: phy@01c13400 {
-                       usb1_vbus-supply = <&reg_usb1_vbus>;
-                       usb2_vbus-supply = <&reg_usb2_vbus>;
-                       status = "okay";
-               };
+       chosen {
+               stdout-path = "serial0:115200n8";
+       };
 
-               ehci0: usb@01c14000 {
-                       status = "okay";
-               };
+       leds {
+               compatible = "gpio-leds";
+               pinctrl-names = "default";
+               pinctrl-0 = <&led_pins_olinuxinolime>;
 
-               ohci0: usb@01c14400 {
-                       status = "okay";
+               green {
+                       label = "a20-olinuxino-lime2:green:usr";
+                       gpios = <&pio 7 2 GPIO_ACTIVE_HIGH>;
+                       default-state = "on";
                };
+       };
 
-               ahci: sata@01c18000 {
-                       target-supply = <&reg_ahci_5v>;
-                       status = "okay";
-               };
+       reg_axp_ipsout: axp_ipsout {
+               compatible = "regulator-fixed";
+               regulator-name = "axp-ipsout";
+               regulator-min-microvolt = <5000000>;
+               regulator-max-microvolt = <5000000>;
+               regulator-always-on;
+       };
+};
 
-               ehci1: usb@01c1c000 {
-                       status = "okay";
-               };
+&ahci {
+       target-supply = <&reg_ahci_5v>;
+       status = "okay";
+};
 
-               ohci1: usb@01c1c400 {
-                       status = "okay";
-               };
+&ehci0 {
+       status = "okay";
+};
 
-               pinctrl@01c20800 {
-                       ahci_pwr_pin_olinuxinolime: ahci_pwr_pin@1 {
-                               allwinner,pins = "PC3";
-                               allwinner,function = "gpio_out";
-                               allwinner,drive = <SUN4I_PINCTRL_10_MA>;
-                               allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
-                       };
+&ehci1 {
+       status = "okay";
+};
+
+&gmac {
+       pinctrl-names = "default";
+       pinctrl-0 = <&gmac_pins_rgmii_a>;
+       phy = <&phy1>;
+       phy-mode = "rgmii";
+       status = "okay";
 
-                       led_pins_olinuxinolime: led_pins@0 {
-                               allwinner,pins = "PH2";
-                               allwinner,function = "gpio_out";
-                               allwinner,drive = <SUN4I_PINCTRL_20_MA>;
-                               allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
+       phy1: ethernet-phy@1 {
+               reg = <1>;
+       };
+};
+
+&i2c0 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&i2c0_pins_a>;
+       status = "okay";
+
+       axp209: pmic@34 {
+               compatible = "x-powers,axp209";
+               reg = <0x34>;
+               interrupt-parent = <&nmi_intc>;
+               interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
+
+               interrupt-controller;
+               #interrupt-cells = <1>;
+
+               acin-supply = <&reg_axp_ipsout>;
+               vin2-supply = <&reg_axp_ipsout>;
+               vin3-supply = <&reg_axp_ipsout>;
+               ldo24in-supply = <&reg_axp_ipsout>;
+               ldo3in-supply = <&reg_axp_ipsout>;
+
+               regulators {
+                       vdd_rtc: ldo1 {
+                               regulator-min-microvolt = <1300000>;
+                               regulator-max-microvolt = <1300000>;
+                               regulator-always-on;
                        };
-               };
 
-               uart0: serial@01c28000 {
-                       pinctrl-names = "default";
-                       pinctrl-0 = <&uart0_pins_a>;
-                       status = "okay";
-               };
+                       avcc: ldo2 {
+                               regulator-min-microvolt = <1800000>;
+                               regulator-max-microvolt = <3300000>;
+                               regulator-always-on;
+                       };
 
-               i2c0: i2c@01c2ac00 {
-                       pinctrl-names = "default";
-                       pinctrl-0 = <&i2c0_pins_a>;
-                       status = "okay";
-
-                       axp209: pmic@34 {
-                               compatible = "x-powers,axp209";
-                               reg = <0x34>;
-                               interrupt-parent = <&nmi_intc>;
-                               interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
-
-                               interrupt-controller;
-                               #interrupt-cells = <1>;
-
-                               acin-supply = <&reg_axp_ipsout>;
-                               vin2-supply = <&reg_axp_ipsout>;
-                               vin3-supply = <&reg_axp_ipsout>;
-                               ldo24in-supply = <&reg_axp_ipsout>;
-                               ldo3in-supply = <&reg_axp_ipsout>;
-
-                               regulators {
-                                       vdd_rtc: ldo1 {
-                                               regulator-min-microvolt = <1300000>;
-                                               regulator-max-microvolt = <1300000>;
-                                               regulator-always-on;
-                                       };
-
-                                       avcc: ldo2 {
-                                               regulator-min-microvolt = <1800000>;
-                                               regulator-max-microvolt = <3300000>;
-                                               regulator-always-on;
-                                       };
-
-                                       vcc_csi0: ldo3 {
-                                               regulator-min-microvolt = <700000>;
-                                               regulator-max-microvolt = <3500000>;
-                                               regulator-always-on;
-                                       };
-
-                                       vcc_csi1: ldo4 {
-                                               regulator-min-microvolt = <1250000>;
-                                               regulator-max-microvolt = <3300000>;
-                                               regulator-always-on;
-                                       };
-
-                                       vdd_cpu: dcdc2 {
-                                               regulator-min-microvolt = <700000>;
-                                               regulator-max-microvolt = <2275000>;
-                                               regulator-always-on;
-                                       };
-
-                                       vdd_int: dcdc3 {
-                                               regulator-min-microvolt = <700000>;
-                                               regulator-max-microvolt = <3500000>;
-                                               regulator-always-on;
-                                       };
-                               };
+                       vcc_csi0: ldo3 {
+                               regulator-min-microvolt = <700000>;
+                               regulator-max-microvolt = <3500000>;
+                               regulator-always-on;
                        };
-               };
 
-               i2c1: i2c@01c2b000 {
-                       pinctrl-names = "default";
-                       pinctrl-0 = <&i2c1_pins_a>;
-                       status = "okay";
-               };
+                       vcc_csi1: ldo4 {
+                               regulator-min-microvolt = <1250000>;
+                               regulator-max-microvolt = <3300000>;
+                               regulator-always-on;
+                       };
 
-               gmac: ethernet@01c50000 {
-                       pinctrl-names = "default";
-                       pinctrl-0 = <&gmac_pins_rgmii_a>;
-                       phy = <&phy1>;
-                       phy-mode = "rgmii";
-                       status = "okay";
+                       vdd_cpu: dcdc2 {
+                               regulator-min-microvolt = <700000>;
+                               regulator-max-microvolt = <2275000>;
+                               regulator-always-on;
+                       };
 
-                       phy1: ethernet-phy@1 {
-                               reg = <1>;
+                       vdd_int: dcdc3 {
+                               regulator-min-microvolt = <700000>;
+                               regulator-max-microvolt = <3500000>;
+                               regulator-always-on;
                        };
                };
        };
+};
 
-       leds {
-               compatible = "gpio-leds";
-               pinctrl-names = "default";
-               pinctrl-0 = <&led_pins_olinuxinolime>;
+&i2c1 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&i2c1_pins_a>;
+       status = "okay";
 
-               green {
-                       label = "a20-olinuxino-lime2:green:usr";
-                       gpios = <&pio 7 2 GPIO_ACTIVE_HIGH>;
-                       default-state = "on";
-               };
+       eeprom: eeprom@50 {
+               compatible = "atmel,24c16";
+               reg = <0x50>;
+               pagesize = <16>;
        };
+};
 
-       reg_ahci_5v: ahci-5v {
-               pinctrl-0 = <&ahci_pwr_pin_olinuxinolime>;
-               gpio = <&pio 2 3 GPIO_ACTIVE_HIGH>;
-               status = "okay";
+&mmc0 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin_reference_design>;
+       vmmc-supply = <&reg_vcc3v3>;
+       bus-width = <4>;
+       cd-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
+       cd-inverted;
+       status = "okay";
+};
+
+&ohci0 {
+       status = "okay";
+};
+
+&ohci1 {
+       status = "okay";
+};
+
+&otg_sram {
+       status = "okay";
+};
+
+&pio {
+       ahci_pwr_pin_olinuxinolime: ahci_pwr_pin@1 {
+               allwinner,pins = "PC3";
+               allwinner,function = "gpio_out";
+               allwinner,drive = <SUN4I_PINCTRL_10_MA>;
+               allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
        };
 
-       reg_usb1_vbus: usb1-vbus {
-               status = "okay";
+       led_pins_olinuxinolime: led_pins@0 {
+               allwinner,pins = "PH2";
+               allwinner,function = "gpio_out";
+               allwinner,drive = <SUN4I_PINCTRL_20_MA>;
+               allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
        };
 
-       reg_usb2_vbus: usb2-vbus {
-               status = "okay";
+       usb0_id_detect_pin: usb0_id_detect_pin@0 {
+               allwinner,pins = "PH4";
+               allwinner,function = "gpio_in";
+               allwinner,drive = <SUN4I_PINCTRL_10_MA>;
+               allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
        };
 
-       reg_axp_ipsout: axp_ipsout {
-               compatible = "regulator-fixed";
-               regulator-name = "axp-ipsout";
-               regulator-min-microvolt = <5000000>;
-               regulator-max-microvolt = <5000000>;
-               regulator-always-on;
+       usb0_vbus_detect_pin: usb0_vbus_detect_pin@0 {
+               allwinner,pins = "PH5";
+               allwinner,function = "gpio_in";
+               allwinner,drive = <SUN4I_PINCTRL_10_MA>;
+               allwinner,pull = <SUN4I_PINCTRL_PULL_DOWN>;
+       };
+
+       usb0_vbus_pin_lime2: usb0_vbus_pin@0 {
+               allwinner,pins = "PC17";
+               allwinner,function = "gpio_out";
+               allwinner,drive = <SUN4I_PINCTRL_10_MA>;
+               allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
        };
 };
+
+&reg_ahci_5v {
+       pinctrl-0 = <&ahci_pwr_pin_olinuxinolime>;
+       gpio = <&pio 2 3 GPIO_ACTIVE_HIGH>;
+       status = "okay";
+};
+
+&reg_usb0_vbus {
+       pinctrl-0 = <&usb0_vbus_pin_lime2>;
+       gpio = <&pio 2 17 GPIO_ACTIVE_HIGH>;
+       status = "okay";
+};
+
+&reg_usb1_vbus {
+       status = "okay";
+};
+
+&reg_usb2_vbus {
+       status = "okay";
+};
+
+&uart0 {
+       pinctrl-names = "default";
+       pinctrl-0 = <&uart0_pins_a>;
+       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 7 4 GPIO_ACTIVE_HIGH>; /* PH4 */
+       usb0_vbus_det-gpio = <&pio 7 5 GPIO_ACTIVE_HIGH>; /* PH5 */
+       usb0_vbus-supply = <&reg_usb0_vbus>;
+       usb1_vbus-supply = <&reg_usb1_vbus>;
+       usb2_vbus-supply = <&reg_usb2_vbus>;
+       status = "okay";
+};