diff --git a/target/linux/sunxi/Makefile b/target/linux/sunxi/Makefile index c340d86b8d..18425111a8 100644 --- a/target/linux/sunxi/Makefile +++ b/target/linux/sunxi/Makefile @@ -17,7 +17,7 @@ MAINTAINER:=Zoltan HERPAI LINUX_VERSION:=3.12.5 KERNELNAME:="zImage dtbs" -DEFAULT_PACKAGES += uboot-envtools uboot-sunxi kmod-eeprom-sunxi +DEFAULT_PACKAGES += uboot-envtools uboot-sunxi kmod-eeprom-sunxi kmod-wdt-sunxi # A10: Cortex-A8 # A13: Cortex-A8 diff --git a/target/linux/sunxi/files/arch/arm/boot/dts/sun7i-a20-cubietruck.dts b/target/linux/sunxi/files/arch/arm/boot/dts/sun7i-a20-cubietruck.dts new file mode 100644 index 0000000000..4ef28fd725 --- /dev/null +++ b/target/linux/sunxi/files/arch/arm/boot/dts/sun7i-a20-cubietruck.dts @@ -0,0 +1,152 @@ +/* + * Copyright 2013 Oliver Schinagl + * + * Oliver Schinagl + * + * 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/ "sun7i-a20.dtsi" + +/ { + model = "Cubietech Cubietruck"; + compatible = "cubietech,cubietruck", "allwinner,sun7i-a20"; + + soc@01c00000 { + sdc0: sdc@01c0f000 { + pinctrl-names = "default"; + pinctrl-0 = <&sdc0_pins_a>; + pinctrl-1 = <&mmc0_cd_pin_cubietruck>; + cd-gpios = <&pio 7 1 0>; /* PH1 */ + cd-mode = <1>; + status = "okay"; + }; + + ehci0: ehci0@0x01c14000 { + vbus-supply = <®_usb1_vbus>; + status = "okay"; + }; + + sata: ahci@01c18000 { + pwr-supply = <®_ahci_5v>; + status = "okay"; + }; + + ehci1: ehci1@0x01c1c000 { + vbus-supply = <®_usb2_vbus>; + status = "okay"; + }; + + pinctrl@01c20800 { + mmc0_cd_pin_cubietruck: mmc0_cd_pin@0 { + allwinner,pins = "PH1"; + allwinner,function = "gpio_in"; + allwinner,drive = <0>; + allwinner,pull = <0>; + }; + + ahci_pwr_pin_cubietruck: ahci_pwr_pin@0 { + allwinner,pins = "PH12"; + allwinner,function = "gpio_out"; + allwinner,drive = <0>; + allwinner,pull = <0>; + }; + + led_pins_cubietruck: led_pins@0 { + allwinner,pins = "PH7", "PH11", "PH20", "PH21"; + allwinner,function = "gpio_out"; + allwinner,drive = <0>; + 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"; + }; + }; + + leds { + compatible = "gpio-leds"; + pinctrl-names = "default"; + pinctrl-0 = <&led_pins_cubietruck>; + + blue { + label = "cubietruck:blue:usr"; + gpios = <&pio 7 21 0>; + }; + + orange { + label = "cubietruck:orange:usr"; + gpios = <&pio 7 20 0>; + }; + + white { + label = "cubietruck:white:usr"; + gpios = <&pio 7 11 0>; + }; + + green { + label = "cubietruck:green:usr"; + gpios = <&pio 7 7 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_cubietruck>; + gpio = <&pio 7 12 0>; + enable-active-high; + }; + + 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>; + }; + }; +}; diff --git a/target/linux/sunxi/image/Makefile b/target/linux/sunxi/image/Makefile index 0a3a96603a..f199043639 100644 --- a/target/linux/sunxi/image/Makefile +++ b/target/linux/sunxi/image/Makefile @@ -8,12 +8,13 @@ include $(TOPDIR)/rules.mk include $(INCLUDE_DIR)/image.mk BOARDS:= \ - sun4i-a10-pcduino \ sun4i-a10-cubieboard \ sun4i-a10-olinuxino-lime \ + sun4i-a10-pcduino \ sun5i-a13-olinuxino \ - sun7i-a20-olinuxino-micro \ - sun7i-a20-cubieboard2 + sun7i-a20-cubieboard2 \ + sun7i-a20-cubietruck \ + sun7i-a20-olinuxino-micro define Image/BuildKernel mkimage -A arm -O linux -T kernel -C none \ diff --git a/target/linux/sunxi/patches-3.12/137-4-dt-sun5i-update-hstimer-entry.patch b/target/linux/sunxi/patches-3.12/137-4-dt-sun5i-update-hstimer-entry.patch new file mode 100644 index 0000000000..df36274190 --- /dev/null +++ b/target/linux/sunxi/patches-3.12/137-4-dt-sun5i-update-hstimer-entry.patch @@ -0,0 +1,29 @@ +From cdb1e9d50ad353833902214035a71ce08d86072a Mon Sep 17 00:00:00 2001 +From: Zoltan HERPAI +Date: Sun, 12 Jan 2014 16:48:01 +0100 +Subject: [PATCH] ARM: sun5i: dt: update hstimer entry + +Rename the hstimer DT entry to make naming consistent with the +A20 dtsi. Also to avoid confusion when switching clocksources. + +Signed-off-by: Zoltan HERPAI +--- + arch/arm/boot/dts/sun5i-a13.dtsi | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/arch/arm/boot/dts/sun5i-a13.dtsi b/arch/arm/boot/dts/sun5i-a13.dtsi +index 21900c6..e0a5cdd 100644 +--- a/arch/arm/boot/dts/sun5i-a13.dtsi ++++ b/arch/arm/boot/dts/sun5i-a13.dtsi +@@ -427,7 +427,7 @@ + status = "disabled"; + }; + +- timer@01c60000 { ++ hstimer@01c60000 { + compatible = "allwinner,sun5i-a13-hstimer"; + reg = <0x01c60000 0x1000>; + interrupts = <82>, <83>; +-- +1.7.0.4 + diff --git a/target/linux/sunxi/patches-3.12/232-dt-add-cubietruck.patch b/target/linux/sunxi/patches-3.12/232-dt-add-cubietruck.patch new file mode 100644 index 0000000000..662d17d051 --- /dev/null +++ b/target/linux/sunxi/patches-3.12/232-dt-add-cubietruck.patch @@ -0,0 +1,10 @@ +--- a/arch/arm/boot/dts/Makefile ++++ b/arch/arm/boot/dts/Makefile +@@ -235,6 +235,7 @@ dtb-$(CONFIG_ARCH_SUNXI) += \ + sun5i-a13-olinuxino.dtb \ + sun6i-a31-colombus.dtb \ + sun7i-a20-cubieboard2.dtb \ ++ sun7i-a20-cubietruck.dtb \ + sun7i-a20-olinuxino-micro.dtb + dtb-$(CONFIG_ARCH_TEGRA) += tegra20-harmony.dtb \ + tegra20-iris-512.dtb \ diff --git a/target/linux/sunxi/profiles/a10-olinuxino.mk b/target/linux/sunxi/profiles/a10-olinuxino.mk index a178e5ff11..0c2e0eef9e 100644 --- a/target/linux/sunxi/profiles/a10-olinuxino.mk +++ b/target/linux/sunxi/profiles/a10-olinuxino.mk @@ -8,7 +8,7 @@ define Profile/A10-OLinuXino-Lime NAME:=A10 OLinuXino LIME PACKAGES:=\ - uboot-sunxi-A10-OLinuXino-Lime kmod-ata-sunxi kmod-sun4i-emac + uboot-sunxi-A10-OLinuXino-Lime kmod-ata-sunxi kmod-sun4i-emac kmod-rtc-sunxi endef define Profile/A10-OLinuXino-Lime/Description diff --git a/target/linux/sunxi/profiles/a20-olinuxino.mk b/target/linux/sunxi/profiles/a20-olinuxino.mk index 576417184b..86d1af8f00 100644 --- a/target/linux/sunxi/profiles/a20-olinuxino.mk +++ b/target/linux/sunxi/profiles/a20-olinuxino.mk @@ -8,7 +8,7 @@ define Profile/A20-OLinuXino_MICRO NAME:=A20 OLinuXino Micro PACKAGES:=\ - uboot-sunxi-A20-OLinuXino_MICRO kmod-ata-sunxi kmod-sun4i-emac + uboot-sunxi-A20-OLinuXino_MICRO kmod-ata-sunxi kmod-sun4i-emac kmod-rtc-sunxi endef define Profile/A20-OLinuXino_MICRO/Description diff --git a/target/linux/sunxi/profiles/cubieboard.mk b/target/linux/sunxi/profiles/cubieboard.mk index 27db74f2cb..6ae2e37e9b 100644 --- a/target/linux/sunxi/profiles/cubieboard.mk +++ b/target/linux/sunxi/profiles/cubieboard.mk @@ -8,7 +8,7 @@ define Profile/Cubieboard NAME:=Cubieboard PACKAGES:=\ - uboot-sunxi-Cubieboard kmod-ata-sunxi kmod-sun4i-emac + uboot-sunxi-Cubieboard kmod-ata-sunxi kmod-sun4i-emac kmod-rtc-sunxi endef define Profile/Cubieboard/Description diff --git a/target/linux/sunxi/profiles/cubieboard2.mk b/target/linux/sunxi/profiles/cubieboard2.mk index 13c29a36be..0843e9e206 100644 --- a/target/linux/sunxi/profiles/cubieboard2.mk +++ b/target/linux/sunxi/profiles/cubieboard2.mk @@ -8,7 +8,7 @@ define Profile/Cubieboard2 NAME:=Cubieboard2 PACKAGES:=\ - uboot-sunxi-Cubieboard2 kmod-ata-sunxi kmod-sun4i-emac + uboot-sunxi-Cubieboard2 kmod-ata-sunxi kmod-sun4i-emac kmod-rtc-sunxi endef define Profile/Cubieboard2/Description diff --git a/target/linux/sunxi/profiles/pcduino.mk b/target/linux/sunxi/profiles/pcduino.mk index 2be185a2dd..6ad0b341d4 100644 --- a/target/linux/sunxi/profiles/pcduino.mk +++ b/target/linux/sunxi/profiles/pcduino.mk @@ -8,7 +8,7 @@ define Profile/pcDuino NAME:=pcDuino PACKAGES:=\ - uboot-sunxi-pcDuino kmod-sun4i-emac + uboot-sunxi-pcDuino kmod-sun4i-emac kmod-rtc-sunxi endef define Profile/pcDuino/Description