From 1ae42098e9aaaf04b096d595f9a5525fa741c4ea Mon Sep 17 00:00:00 2001 From: Zoltan Herpai Date: Sat, 11 Jan 2014 17:19:04 +0000 Subject: [PATCH] sunxi: add support for Olinuxino A10 LIME Signed-off-by: Zalan Blenessy Signed-off-by: Zoltan HERPAI SVN-Revision: 39222 --- .../arm/boot/dts/sun4i-a10-olinuxino-lime.dts | 168 ++++++++++++++++++ target/linux/sunxi/image/Makefile | 1 + .../231-add-a10-olinuxino-lime.patch | 12 ++ target/linux/sunxi/profiles/a10-olinuxino.mk | 18 ++ 4 files changed, 199 insertions(+) create mode 100644 target/linux/sunxi/files/arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts create mode 100644 target/linux/sunxi/patches-3.12/231-add-a10-olinuxino-lime.patch create mode 100644 target/linux/sunxi/profiles/a10-olinuxino.mk diff --git a/target/linux/sunxi/files/arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts b/target/linux/sunxi/files/arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts new file mode 100644 index 0000000000..fa5ebbdc76 --- /dev/null +++ b/target/linux/sunxi/files/arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts @@ -0,0 +1,168 @@ +/* + * Copyright 2012 Stefan Roese + * Stefan Roese + * + * The code contained herein is licensed under the GNU General Public + * License. You may obtain a copy of the GNU General Public License + * Version 2 or later at the following locations: + * + * http://www.opensource.org/licenses/gpl-license.html + * http://www.gnu.org/copyleft/gpl.html + */ + +/dts-v1/; +/include/ "sun4i-a10.dtsi" + +/ { + model = "Olimex A10-Olinuxino LIME"; + compatible = "olimex,a10-olinuxino-lime", "allwinner,sun4i-a10"; + + soc@01c00000 { + emac: ethernet@01c0b000 { + pinctrl-names = "default"; + pinctrl-0 = <&emac_pins_a>; + phy = <&phy1>; + status = "okay"; + }; + + mdio@01c0b080 { + status = "okay"; + + phy1: ethernet-phy@1 { + reg = <1>; + }; + }; + + sdc0: sdc@01c0f000 { + pinctrl-names = "default"; + pinctrl-0 = <&sdc0_pins_a>; + pinctrl-1 = <&mmc0_cd_pin_olinuxino>; + cd-gpios = <&pio 7 1 0>; /* PH1 */ + cd-mode = <1>; + status = "okay"; + }; + + sata: ahci@01c18000 { + pwr-supply = <®_ahci_5v>; + status = "okay"; + }; + + pinctrl@01c20800 { + ahci_pwr_pin: ahci_pwr_pin@0 { + allwinner,pins = "PC3"; + allwinner,function = "gpio_out"; + allwinner,drive = <0>; + allwinner,pull = <0>; + }; + + mmc0_cd_pin_olinuxino: mmc0_cd_pin@0 { + allwinner,pins = "PH1"; + allwinner,function = "gpio_in"; + allwinner,drive = <0>; + allwinner,pull = <0>; + }; + + led_pins_olinuxino: led_pins@0 { + allwinner,pins = "PH2"; + allwinner,function = "gpio_out"; + allwinner,drive = <1>; + allwinner,pull = <0>; + }; + + usb1_vbus_pin: usb1_vbus_pin@0 { + allwinner,pins = "PH6"; + allwinner,function = "gpio_out"; + allwinner,drive = <0>; + allwinner,pull = <2>; + }; + + usb2_vbus_pin: usb2_vbus_pin@0 { + allwinner,pins = "PH3"; + allwinner,function = "gpio_out"; + allwinner,drive = <0>; + allwinner,pull = <2>; + }; + }; + + uart0: serial@01c28000 { + pinctrl-names = "default"; + pinctrl-0 = <&uart0_pins_a>; + status = "okay"; + }; + + i2c0: i2c@01c2ac00 { + pinctrl-names = "default"; + pinctrl-0 = <&i2c0_pins_a>; + status = "okay"; + }; + + i2c1: i2c@01c2b000 { + pinctrl-names = "default"; + pinctrl-0 = <&i2c1_pins_a>; + status = "okay"; + }; + + ehci0: ehci0@0x01c14000 { + vbus-supply = <®_usb1_vbus>; + status = "okay"; + }; + + ehci1: ehci1@0x01c1c000 { + vbus-supply = <®_usb2_vbus>; + status = "okay"; + }; + }; + + leds { + compatible = "gpio-leds"; + pinctrl-names = "default"; + pinctrl-0 = <&led_pins_olinuxino>; + + green { + label = "a10-olinuxino-lime:green:usr"; + gpios = <&pio 7 2 0>; + default-state = "on"; + }; + }; + + regulators { + compatible = "simple-bus"; + + reg_usb1_vbus: usb1-vbus { + compatible = "regulator-fixed"; + pinctrl-names = "default"; + pinctrl-0 = <&usb1_vbus_pin>; + regulator-name = "usb1-vbus"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + enable-active-high; + gpio = <&pio 7 6 0>; + }; + + reg_usb2_vbus: usb2-vbus { + compatible = "regulator-fixed"; + pinctrl-names = "default"; + pinctrl-0 = <&usb2_vbus_pin>; + regulator-name = "usb2-vbus"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + enable-active-high; + gpio = <&pio 7 3 0>; + }; + }; + + regulators { + compatible = "simple-bus"; + pinctrl-names = "default"; + + reg_ahci_5v: ahci-5v { + compatible = "regulator-fixed"; + regulator-name = "ahci-5v"; + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5000000>; + pinctrl-0 = <&ahci_pwr_pin>; + gpio = <&pio 2 3 0>; + enable-active-high; + }; + }; +}; diff --git a/target/linux/sunxi/image/Makefile b/target/linux/sunxi/image/Makefile index d77aff059b..0a3a96603a 100644 --- a/target/linux/sunxi/image/Makefile +++ b/target/linux/sunxi/image/Makefile @@ -10,6 +10,7 @@ include $(INCLUDE_DIR)/image.mk BOARDS:= \ sun4i-a10-pcduino \ sun4i-a10-cubieboard \ + sun4i-a10-olinuxino-lime \ sun5i-a13-olinuxino \ sun7i-a20-olinuxino-micro \ sun7i-a20-cubieboard2 diff --git a/target/linux/sunxi/patches-3.12/231-add-a10-olinuxino-lime.patch b/target/linux/sunxi/patches-3.12/231-add-a10-olinuxino-lime.patch new file mode 100644 index 0000000000..1c7a15c7aa --- /dev/null +++ b/target/linux/sunxi/patches-3.12/231-add-a10-olinuxino-lime.patch @@ -0,0 +1,12 @@ +Index: linux-3.12.5/arch/arm/boot/dts/Makefile +=================================================================== +--- linux-3.12.5.orig/arch/arm/boot/dts/Makefile 2014-01-07 20:20:35.112013217 +0100 ++++ linux-3.12.5/arch/arm/boot/dts/Makefile 2014-01-07 20:20:35.124013454 +0100 +@@ -232,6 +232,7 @@ + sun4i-a10-mini-xplus.dtb \ + sun4i-a10-hackberry.dtb \ + sun4i-a10-pcduino.dtb \ ++ sun4i-a10-olinuxino-lime.dtb \ + sun5i-a10s-olinuxino-micro.dtb \ + sun5i-a13-olinuxino.dtb \ + sun5i-a13-olinuxino-micro.dtb \ diff --git a/target/linux/sunxi/profiles/a10-olinuxino.mk b/target/linux/sunxi/profiles/a10-olinuxino.mk new file mode 100644 index 0000000000..a178e5ff11 --- /dev/null +++ b/target/linux/sunxi/profiles/a10-olinuxino.mk @@ -0,0 +1,18 @@ +# +# Copyright (C) 2013 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +define Profile/A10-OLinuXino-Lime + NAME:=A10 OLinuXino LIME + PACKAGES:=\ + uboot-sunxi-A10-OLinuXino-Lime kmod-ata-sunxi kmod-sun4i-emac +endef + +define Profile/A10-OLinuXino-Lime/Description + Package set optimized for the Olimex A10 OLinuXino LIME +endef + +$(eval $(call Profile,A10-OLinuXino-Lime)) -- 2.25.1