sunxi: bump kernel to 3.18 - refresh patches - add bananapro, cubietruck, mele_m9...
authorZoltan Herpai <wigyori@uid0.hu>
Fri, 9 Jan 2015 19:35:14 +0000 (19:35 +0000)
committerZoltan Herpai <wigyori@uid0.hu>
Fri, 9 Jan 2015 19:35:14 +0000 (19:35 +0000)
Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
SVN-Revision: 43900

target/linux/sunxi/Makefile
target/linux/sunxi/base-files/etc/uci-defaults/02_network
target/linux/sunxi/config-3.18
target/linux/sunxi/image/Makefile
target/linux/sunxi/patches-3.18/135-ahci-fix-threaded-interrupt-setup.patch [deleted file]
target/linux/sunxi/patches-3.18/301-add-bananapro.diff [new file with mode: 0644]
target/linux/sunxi/profiles/bananapro.mk [new file with mode: 0644]
target/linux/sunxi/profiles/cubietruck.mk [new file with mode: 0644]
target/linux/sunxi/profiles/mele_m9.mk [new file with mode: 0644]
target/linux/sunxi/profiles/pcduino.mk

index 0deb2d8..dbe85bd 100644 (file)
@@ -15,7 +15,7 @@ CPU_TYPE:=cortex-a8
 CPU_SUBTYPE:=vfpv3
 MAINTAINER:=Zoltan HERPAI <wigyori@uid0.hu>
 
-KERNEL_PATCHVER:=3.14
+KERNEL_PATCHVER:=3.18
 KERNELNAME:=zImage dtbs
 DEFAULT_PACKAGES += uboot-envtools uboot-sunxi kmod-eeprom-sunxi kmod-wdt-sunxi
 
index f0d73c0..c10d40e 100644 (file)
@@ -15,6 +15,8 @@ case "`cat /proc/device-tree/model`" in
 "Cubietech Cubieboard" |\
 "Cubietech Cubieboard2" |\
 "Lemaker bananaPi" |\
+"LeMaker Banana Pi" |\
+"LeMaker Banana Pro" |\
 "LinkSprite pcDuino" |\
 "LinkSprite pcDuino V3" |\
 "LinkSprite pcDuino3" |\
index 1c391ed..44b5d89 100644 (file)
@@ -9,18 +9,13 @@ CONFIG_ARCH_HAS_SG_CHAIN=y
 CONFIG_ARCH_HAS_TICK_BROADCAST=y
 CONFIG_ARCH_HAVE_CUSTOM_GPIO_H=y
 CONFIG_ARCH_HIBERNATION_POSSIBLE=y
-# CONFIG_ARCH_HISI is not set
-# CONFIG_ARCH_MEDIATEK is not set
-# CONFIG_ARCH_MESON is not set
 CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y
-# CONFIG_ARCH_MSM is not set
 CONFIG_ARCH_MULTIPLATFORM=y
 # CONFIG_ARCH_MULTI_CPU_AUTO is not set
 CONFIG_ARCH_MULTI_V6_V7=y
 CONFIG_ARCH_MULTI_V7=y
 # CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set
 CONFIG_ARCH_NR_GPIO=416
-# CONFIG_ARCH_QCOM is not set
 CONFIG_ARCH_REQUIRE_GPIOLIB=y
 # CONFIG_ARCH_SELECT_MEMORY_MODEL is not set
 # CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
@@ -40,7 +35,6 @@ CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y
 CONFIG_ARM_ATAG_DTB_COMPAT=y
 # CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEND is not set
 CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_FROM_BOOTLOADER=y
-# CONFIG_ARM_CCN is not set
 # CONFIG_ARM_CPU_SUSPEND is not set
 CONFIG_ARM_ERRATA_430973=y
 CONFIG_ARM_ERRATA_720789=y
@@ -61,7 +55,6 @@ CONFIG_ATAGS=y
 # CONFIG_ATA_SFF is not set
 CONFIG_AUDIT=y
 # CONFIG_AUDITSYSCALL is not set
-# CONFIG_AUDIT_ARCH_COMPAT_GENERIC is not set
 CONFIG_AUDIT_GENERIC=y
 CONFIG_AUTO_ZRELADDR=y
 CONFIG_AVERAGE=y
@@ -89,7 +82,6 @@ CONFIG_CLONE_BACKWARDS=y
 CONFIG_CMDLINE="console=ttyS0,115200 earlyprintk rootwait root=/dev/mmcblk0p2"
 CONFIG_CMDLINE_FORCE=y
 CONFIG_COMMON_CLK=y
-# CONFIG_COMMON_CLK_PXA is not set
 CONFIG_COMPACTION=y
 CONFIG_CONFIGFS_FS=y
 CONFIG_CONNECTOR=y
@@ -135,7 +127,6 @@ CONFIG_DEBUG_BUGVERBOSE=y
 CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S"
 CONFIG_DEBUG_MEMORY_INIT=y
 # CONFIG_DEBUG_UART_8250 is not set
-# CONFIG_DEBUG_UART_BCM63XX is not set
 # CONFIG_DEBUG_UART_PL01X is not set
 # CONFIG_DEBUG_USER is not set
 CONFIG_DECOMPRESS_BZIP2=y
@@ -170,7 +161,6 @@ CONFIG_EXT4_FS=y
 CONFIG_FRAME_POINTER=y
 CONFIG_FRAME_WARN=2048
 CONFIG_FREEZER=y
-# CONFIG_FSL_EDMA is not set
 CONFIG_FS_MBCACHE=y
 CONFIG_FS_POSIX_ACL=y
 CONFIG_GARP=y
@@ -183,7 +173,6 @@ CONFIG_GENERIC_IDLE_POLL_SETUP=y
 CONFIG_GENERIC_IO=y
 CONFIG_GENERIC_IRQ_CHIP=y
 CONFIG_GENERIC_IRQ_SHOW=y
-CONFIG_GENERIC_NET_UTILS=y
 CONFIG_GENERIC_PCI_IOMAP=y
 CONFIG_GENERIC_PHY=y
 CONFIG_GENERIC_PINCONF=y
@@ -290,7 +279,7 @@ CONFIG_KERNEL_GZIP=y
 # CONFIG_KERNEL_XZ is not set
 CONFIG_KERNFS=y
 # CONFIG_KEYBOARD_GPIO is not set
-# CONFIG_KEYBOARD_SUN4I_LRADC is not set
+CONFIG_KEYBOARD_SUN4I_LRADC=y
 CONFIG_KSM=y
 CONFIG_LEDS_GPIO=y
 # CONFIG_LEDS_REGULATOR is not set
@@ -319,12 +308,13 @@ CONFIG_MIGRATION=y
 CONFIG_MMC=y
 CONFIG_MMC_BLOCK=y
 # CONFIG_MMC_BLOCK_BOUNCE is not set
+CONFIG_MMC_DEBUG=y
 CONFIG_MMC_SUNXI=y
 CONFIG_MODULES_USE_ELF_REL=y
+CONFIG_MTD_SPLIT_SUPPORT=y
 CONFIG_MULTI_IRQ_HANDLER=y
 CONFIG_MUTEX_SPIN_ON_OWNER=y
 CONFIG_NAMESPACES=y
-# CONFIG_NBPFAXI_DMA is not set
 CONFIG_NEED_DMA_MAP_STATE=y
 # CONFIG_NEON is not set
 # CONFIG_NET_CLS_CGROUP is not set
@@ -411,11 +401,8 @@ CONFIG_REGMAP_I2C=y
 CONFIG_REGMAP_IRQ=y
 CONFIG_REGULATOR=y
 CONFIG_REGULATOR_AXP20X=y
-# CONFIG_REGULATOR_DA9211 is not set
 # CONFIG_REGULATOR_DEBUG is not set
 CONFIG_REGULATOR_FIXED_VOLTAGE=y
-# CONFIG_REGULATOR_ISL9305 is not set
-# CONFIG_REGULATOR_LTC3589 is not set
 # CONFIG_REGULATOR_PWM is not set
 # CONFIG_REGULATOR_USERSPACE_CONSUMER is not set
 CONFIG_RELAY=y
@@ -429,12 +416,12 @@ CONFIG_RWSEM_XCHGADD_ALGORITHM=y
 CONFIG_SATA_AHCI_PLATFORM=y
 CONFIG_SCHED_HRTICK=y
 CONFIG_SCSI=y
+CONFIG_SDIO_UART=y
 CONFIG_SECURITYFS=y
 # CONFIG_SENSORS_PWM_FAN is not set
 CONFIG_SERIAL_8250_DW=y
 CONFIG_SERIAL_8250_NR_UARTS=8
 CONFIG_SERIAL_8250_RUNTIME_UARTS=8
-CONFIG_SERIAL_EARLYCON=y
 CONFIG_SERIO=y
 # CONFIG_SERIO_APBPS2 is not set
 CONFIG_SERIO_SERPORT=y
@@ -522,6 +509,10 @@ CONFIG_XPS=y
 CONFIG_XZ_DEC_ARM=y
 CONFIG_XZ_DEC_ARMTHUMB=y
 CONFIG_XZ_DEC_BCJ=y
+CONFIG_XZ_DEC_IA64=y
+CONFIG_XZ_DEC_POWERPC=y
+CONFIG_XZ_DEC_SPARC=y
+CONFIG_XZ_DEC_X86=y
 CONFIG_ZBOOT_ROM_BSS=0
 CONFIG_ZBOOT_ROM_TEXT=0
 CONFIG_ZLIB_INFLATE=y
index 1343470..3fb41c1 100644 (file)
@@ -17,7 +17,9 @@ BOARDS:= \
        sun4i-a10-pcduino \
        sun5i-a13-olinuxino \
        sun6i-a31-colombus \
+       sun6i-a31-m9 \
        sun7i-a20-bananapi \
+       sun7i-a20-bananapro \
        sun7i-a20-cubieboard2 \
        sun7i-a20-cubietruck \
        sun7i-a20-olinuxino-lime \
@@ -49,7 +51,7 @@ define Image/Build/SDCard
        rm -f $(KDIR)/boot.img
        mkdosfs $(KDIR)/boot.img -C $(FAT32_BLOCKS)
        
-       mcopy -i $(KDIR)/boot.img $(BIN_DIR)/uboot-sunxi-$(PROFILE)/openwrt-sunxi-$(PROFILE)-uEnv.txt ::uEnv.txt
+       mcopy -i $(KDIR)/boot.img $(BIN_DIR)/uboot-sunxi-$(PROFILE)/openwrt-sunxi-$(PROFILE)-boot.scr ::boot.scr
        mcopy -i $(KDIR)/boot.img $(BIN_DIR)/$(2).dtb ::dtb
        mcopy -i $(KDIR)/boot.img $(BIN_DIR)/$(IMG_PREFIX)-uImage ::uImage
        
@@ -82,6 +84,10 @@ define Image/Build/Profile/Bananapi
        $(call Image/Build/SDCard,$(1),sun7i-a20-bananapi)
 endef
 
+define Image/Build/Profile/Bananapro
+       $(call Image/Build/SDCard,$(1),sun7i-a20-bananapro)
+endef
+
 define Image/Build/Profile/Cubieboard
        $(call Image/Build/SDCard,$(1),sun4i-a10-cubieboard)
 endef
@@ -90,11 +96,19 @@ define Image/Build/Profile/Cubieboard2
        $(call Image/Build/SDCard,$(1),sun7i-a20-cubieboard2)
 endef
 
+define Image/Build/Profile/Cubietruck
+       $(call Image/Build/SDCard,$(1),sun7i-a20-cubietruck)
+endef
+
 define Image/Build/Profile/OLIMEX-A13-SOM
        $(call Image/Build/SDCard,$(1),sun5i-a13-olinuxino)
 endef
 
-define Image/Build/Profile/pcDuino
+define Image/Build/Profile/Mele_M9
+       $(call Image/Build/SDCard,$(1),sun6i-a31-hummingbird)
+endef
+
+define Image/Build/Profile/Linksprite_pcDuino
        $(call Image/Build/SDCard,$(1),sun4i-a10-pcduino)
 endef
 
diff --git a/target/linux/sunxi/patches-3.18/135-ahci-fix-threaded-interrupt-setup.patch b/target/linux/sunxi/patches-3.18/135-ahci-fix-threaded-interrupt-setup.patch
deleted file mode 100644 (file)
index 6d316c2..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-From 4bfd40ed0046299e4a5ffba31bfbbcc39cf74e03 Mon Sep 17 00:00:00 2001
-From: Marc Zyngier <marc.zyngier@arm.com>
-Date: Thu, 23 Oct 2014 17:49:30 +0100
-Subject: [PATCH] AHCI: Fix threaded interrupt setup
-
-Commit 18dcf433f3de (AHCI: Optimize single IRQ interrupt processing)
-switched the single IRQ case of the AHCI driver to use threaded
-threaded interrupts.
-
-During this conversion, only the IRQF_SHARED flag was provided. The net
-effect of this in the presence of level interrupts is that the
-interrupt will not be masked during the execution of the treaded
-handler, leading to a screaming interrupt if the thread is not
-scheduled quickly enough, specially in error conditions:
-
-[    2.728051] ahci-sunxi 1c18000.sata: controller can't do PMP, turning off CAP_PMP
-[    2.735578] ahci-sunxi 1c18000.sata: SSS flag set, parallel bus scan disabled
-[    2.742792] ahci-sunxi 1c18000.sata: AHCI 0001.0100 32 slots 1 ports 3 Gbps 0x1 impl platform mode
-[    2.751789] ahci-sunxi 1c18000.sata: flags: ncq sntf stag pm led clo only pio slum part ccc
-[    2.761539] scsi host0: ahci_platform
-[    2.765754] ata1: SATA max UDMA/133 mmio [mem 0x01c18000-0x01c18fff] port 0x100 irq 88
-[...]
-[    3.127977] ata1: SATA link down (SStatus 0 SControl 300)
-[...]
-[    3.162035] Waiting for root device /dev/sda1...
-[    3.163700] random: nonblocking pool is initialized
-[    3.326593] irq 88: nobody cared (try booting with the "irqpoll" option)
-[    3.333296] CPU: 0 PID: 0 Comm: swapper/0 Not tainted 3.18.0-rc1+ #3077
-[    3.339936] [<c002b318>] (unwind_backtrace) from [<c0026980>] (show_stack+0x20/0x24)
-[    3.347681] [<c0026980>] (show_stack) from [<c067dd18>] (dump_stack+0x9c/0xd4)
-[    3.354904] [<c067dd18>] (dump_stack) from [<c007ac08>] (__report_bad_irq+0x38/0xd4)
-[    3.362643] [<c007ac08>] (__report_bad_irq) from [<c007b1dc>] (note_interrupt+0x280/0x2d0)
-[    3.370903] [<c007b1dc>] (note_interrupt) from [<c0078a70>] (handle_irq_event_percpu+0x210/0x27c)
-[    3.379771] [<c0078a70>] (handle_irq_event_percpu) from [<c0078b28>] (handle_irq_event+0x4c/0x6c)
-[    3.388636] [<c0078b28>] (handle_irq_event) from [<c007b860>] (handle_fasteoi_irq+0xbc/0x1a0)
-[    3.397156] [<c007b860>] (handle_fasteoi_irq) from [<c0077f5c>] (generic_handle_irq+0x3c/0x4c)
-[    3.405764] [<c0077f5c>] (generic_handle_irq) from [<c0078220>] (__handle_domain_irq+0x6c/0xb4)
-[    3.414456] [<c0078220>] (__handle_domain_irq) from [<c0008754>] (gic_handle_irq+0x34/0x6c)
-[    3.422802] [<c0008754>] (gic_handle_irq) from [<c0027540>] (__irq_svc+0x40/0x74)
-[    3.430274] Exception stack(0xc09c1df8 to 0xc09c1e40)
-[    3.435321] 1de0:                                                       00000001 c0a27ec0
-[    3.443491] 1e00: 00000000 00000000 c09c0028 0000001e 00000282 00000000 ee00c400 c0a239f8
-[    3.451660] 1e20: c09c0000 c09c1ea4 c0a27ec0 c09c1e40 00200000 c003c7cc 20000113 ffffffff
-[    3.459835] [<c0027540>] (__irq_svc) from [<c003c7cc>] (__do_softirq+0xbc/0x34c)
-[    3.467229] [<c003c7cc>] (__do_softirq) from [<c003cd44>] (irq_exit+0xbc/0x104)
-[    3.474536] [<c003cd44>] (irq_exit) from [<c0078224>] (__handle_domain_irq+0x70/0xb4)
-[    3.482362] [<c0078224>] (__handle_domain_irq) from [<c0008754>] (gic_handle_x74)
-[    3.498169] Exception stack(0xc09c1f10 to 0xc09c1f58)
-[    3.503216] 1f00:                                     ee7ca310 00000000 00000ab4 c0035560
-[    3.511386] 1f20: c09c0000 00000000 c0a23f84 c09c8474 c09c84bc c09c0000 c0688bf8 c09c1f64
-[    3.519554] 1f40: c09c1f68 c09c1f58 c00235d8 c00235dc 60000113 ffffffff
-[    3.526165] [<c0027540>] (__irq_svc) from [<c00235dc>] (arch_cpu_idle+0x48/0x4c)
-[    3.533557] [<c00235dc>] (arch_cpu_idle) from [<c00701fc>] (cpu_startup_entry+0x13c/0x27c)
-[    3.541816] [<c00701fc>] (cpu_startup_entry) from [<c067af1c>] (rest_init+0x94/0x98)
-[    3.549557] [<c067af1c>] (rest_init) from [<c093dd38>] (start_kernel+0x3f0/0x3fc)
-[    3.557036] [<c093dd38>] (start_kernel) from [<40008084>] (0x40008084)
-[    3.563555] handlers:
-[    3.565830] [<c03a1a80>] ahci_single_irq_intr threaded [<c03a223c>] ahci_thread_fn
-[    3.573415] Disabling IRQ #88
-[    3.576532] ata1: exception Emask 0x10 SAct 0x0 SErr 0x4050002 action 0xe frozen
-[    3.583977] ata1: irq_stat 0x00400040, connection status changed
-[    3.590006] ata1: SError: { RecovComm PHYRdyChg CommWake DevExch }
-[    3.596209] ata1: hard resetting link
-[...]
-
-Not good. The culprit is a missing IRQF_ONESHOT flag, which addition
-solves the problem entierly. The number of interrupts drops radically:
-
-[Booting Debian Jessie to a prompt]
-Before fix:
- 88:       3562          0       GIC  88  ahci-sunxi
-After fix:
- 88:       1992          0       GIC  88  ahci-sunxi
-
-Tested on a A20 board (ahci-sunxi).
-
-Cc: Alexander Gordeev <agordeev@redhat.com>
-Cc: Tejun Heo <tj@kernel.org>
-Cc: linux-ide@vger.kernel.org
-Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
----
- drivers/ata/libahci.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/drivers/ata/libahci.c b/drivers/ata/libahci.c
-index 5eb61c9..49c649f 100644
---- a/drivers/ata/libahci.c
-+++ b/drivers/ata/libahci.c
-@@ -2492,7 +2492,7 @@ static int ahci_host_activate_single_irq(struct ata_host *host, int irq,
-               return rc;
-       rc = devm_request_threaded_irq(host->dev, irq, ahci_single_irq_intr,
--                                     ahci_thread_fn, IRQF_SHARED,
-+                                     ahci_thread_fn, IRQF_SHARED | IRQF_ONESHOT,
-                                      dev_driver_string(host->dev), host);
-       if (rc)
-               return rc;
diff --git a/target/linux/sunxi/patches-3.18/301-add-bananapro.diff b/target/linux/sunxi/patches-3.18/301-add-bananapro.diff
new file mode 100644 (file)
index 0000000..47454e9
--- /dev/null
@@ -0,0 +1,247 @@
+diff -ruN old/arch/arm/boot/dts/Makefile new/arch/arm/boot/dts/Makefile
+--- old/arch/arm/boot/dts/Makefile     2015-01-06 09:29:23.612462619 +0100
++++ new/arch/arm/boot/dts/Makefile     2015-01-06 09:29:36.316254352 +0100
+@@ -436,6 +436,7 @@
+       sun6i-a31-m9.dtb
+ dtb-$(CONFIG_MACH_SUN7I) += \
+       sun7i-a20-bananapi.dtb \
++      sun7i-a20-bananapro.dtb \
+       sun7i-a20-cubieboard2.dtb \
+       sun7i-a20-cubietruck.dtb \
+       sun7i-a20-hummingbird.dtb \
+diff -ruN old/arch/arm/boot/dts/sun7i-a20-bananapro.dts new/arch/arm/boot/dts/sun7i-a20-bananapro.dts
+--- old/arch/arm/boot/dts/sun7i-a20-bananapro.dts      1970-01-01 01:00:00.000000000 +0100
++++ new/arch/arm/boot/dts/sun7i-a20-bananapro.dts      2015-01-06 09:31:18.290582574 +0100
+@@ -0,0 +1,232 @@
++/*
++ * Copyright 2014 Zoltan HERPAI <wigyori@uid0.hu>
++ *
++ * This file is dual-licensed: you can use it either under the terms
++ * of the GPL or the X11 license, at your option. Note that this dual
++ * licensing only applies to this file, and not this project as a
++ * whole.
++ *
++ *  a) This library is free software; you can redistribute it and/or
++ *     modify it under the terms of the GNU General Public License as
++ *     published by the Free Software Foundation; either version 2 of the
++ *     License, or (at your option) any later version.
++ *
++ *     This library is distributed in the hope that it will be useful,
++ *     but WITHOUT ANY WARRANTY; without even the implied warranty of
++ *     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 library; 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
++ *     obtaining a copy of this software and associated documentation
++ *     files (the "Software"), to deal in the Software without
++ *     restriction, including without limitation the rights to use,
++ *     copy, modify, merge, publish, distribute, sublicense, and/or
++ *     sell copies of the Software, and to permit persons to whom the
++ *     Software is furnished to do so, subject to the following
++ *     conditions:
++ *
++ *     The above copyright notice and this permission notice shall be
++ *     included in all copies or substantial portions of the Software.
++ *
++ *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
++ *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
++ *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
++ *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
++ *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
++ *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
++ *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
++ *     OTHER DEALINGS IN THE SOFTWARE.
++ */
++
++/dts-v1/;
++/include/ "sun7i-a20.dtsi"
++/include/ "sunxi-common-regulators.dtsi"
++
++/ {
++      model = "LeMaker Banana Pro";
++      compatible = "lemaker,bananapro", "allwinner,sun7i-a20";
++
++      soc@01c00000 {
++              spi0: spi@01c05000 {
++                      pinctrl-names = "default";
++                      pinctrl-0 = <&spi0_pins_a>;
++                      status = "okay";
++              };
++
++              mmc0: mmc@01c0f000 {
++                      pinctrl-names = "default";
++                      pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin_bananapro>;
++                      vmmc-supply = <&reg_vcc3v3>;
++                      bus-width = <4>;
++                      cd-gpios = <&pio 7 10 0>; /* PH10 */
++                      cd-inverted;
++                      status = "okay";
++              };
++
++              mmc3: mmc@01c12000 {
++                      #address-cells = <1>;
++                      #size-cells = <0>;
++
++                      pinctrl-names = "default";
++                      pinctrl-0 = <&mmc3_pins_a>
++                      vmmc-supply = <&reg_vmmc3>;
++                      bus-width = <4>;
++                      non-removable;
++                      status = "okay";
++
++                      brcmf: bcrmf@1 {
++                              reg = <1>;
++                              ccompatible = "brcm,bcm4329-fmac";
++                              interrupt-parent = <&pio>;
++                              interrupts = <10 8>; /* PH10 / EINT10 * taken from https://github.com/Bananian/fex/blob/master/BananaPro/BananaPro.fex.otg-off */
++                              interrupt-names = "host-wake";
++                      };
++              };
++
++              usbphy: phy@01c13400 {
++                      usb1_vbus-supply = <&reg_usb1_vbus>;
++                      usb2_vbus-supply = <&reg_usb2_vbus>;
++                      status = "okay";
++              };
++
++              ehci0: usb@01c14000 {
++                      status = "okay";
++              };
++
++              ohci0: usb@01c14400 {
++                      status = "okay";
++              };
++
++              ahci: sata@01c18000 {
++                      status = "okay";
++              };
++
++              ehci1: usb@01c1c000 {
++                      status = "okay";
++              };
++
++              ohci1: usb@01c1c400 {
++                      status = "okay";
++              };
++
++              pinctrl@01c20800 {
++                      mmc0_cd_pin_bananapro: mmc0_cd_pin@0 {
++                              allwinner,pins = "PH10";
++                              allwinner,function = "gpio_in";
++                              allwinner,drive = <0>;
++                              allwinner,pull = <1>;
++                      };
++
++                      gmac_power_pin_bananapro: gmac_power_pin@0 {
++                              allwinner,pins = "PH23";
++                              allwinner,function = "gpio_out";
++                              allwinner,drive = <0>;
++                              allwinner,pull = <0>;
++                      };
++
++                      led_pins_bananapro: led_pins@0 {
++                              allwinner,pins = "PH24";
++                              allwinner,function = "gpio_out";
++                              allwinner,drive = <0>;
++                              allwinner,pull = <0>;
++                      };
++              };
++
++              ir0: ir@01c21800 {
++                      pinctrl-names = "default";
++                      pinctrl-0 = <&ir0_pins_a>;
++                      status = "okay";
++              };
++
++              uart0: serial@01c28000 {
++                      pinctrl-names = "default";
++                      pinctrl-0 = <&uart0_pins_a>;
++                      status = "okay";
++              };
++
++              uart3: serial@01c28c00 {
++                      pinctrl-names = "default";
++                      pinctrl-0 = <&uart3_pins_b>;
++                      status = "okay";
++              };
++
++              uart7: serial@01c29c00 {
++                      pinctrl-names = "default";
++                      pinctrl-0 = <&uart7_pins_a>;
++                      status = "okay";
++              };
++
++              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 8>;
++
++                              interrupt-controller;
++                              #interrupt-cells = <1>;
++                      };
++              };
++
++              i2c2: i2c@01c2b400 {
++                      pinctrl-names = "default";
++                      pinctrl-0 = <&i2c2_pins_a>;
++                      status = "okay";
++              };
++
++              gmac: ethernet@01c50000 {
++                      pinctrl-names = "default";
++                      pinctrl-0 = <&gmac_pins_rgmii_a>;
++                      phy = <&phy1>;
++                      phy-mode = "rgmii";
++                      phy-supply = <&reg_gmac_3v3>;
++                      status = "okay";
++
++                      phy1: ethernet-phy@1 {
++                              reg = <1>;
++                      };
++              };
++      };
++
++      leds {
++              compatible = "gpio-leds";
++              pinctrl-names = "default";
++              pinctrl-0 = <&led_pins_bananapro>;
++
++              green {
++                      label = "bananapro:green:usr";
++                      gpios = <&pio 7 24 0>;
++              };
++      };
++
++      reg_usb1_vbus: usb1-vbus {
++              status = "okay";
++      };
++
++      reg_usb2_vbus: usb2-vbus {
++              status = "okay";
++      };
++
++      reg_gmac_3v3: gmac-3v3 {
++              compatible = "regulator-fixed";
++              pinctrl-names = "default";
++              pinctrl-0 = <&gmac_power_pin_bananapro>;
++              regulator-name = "gmac-3v3";
++              regulator-min-microvolt = <3300000>;
++              regulator-max-microvolt = <3300000>;
++              startup-delay-us = <50000>;
++              enable-active-high;
++              gpio = <&pio 7 23 0>;
++      };
++};
diff --git a/target/linux/sunxi/profiles/bananapro.mk b/target/linux/sunxi/profiles/bananapro.mk
new file mode 100644 (file)
index 0000000..c3e2b74
--- /dev/null
@@ -0,0 +1,18 @@
+#
+# Copyright (C) 2015 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+define Profile/Bananapro
+       NAME:=Bananapro
+       PACKAGES:=\
+               uboot-sunxi-Bananapro kmod-rtc-sunxi
+endef
+
+define Profile/Bananapro/Description
+       Package set optimized for the Bananapro
+endef
+
+$(eval $(call Profile,Bananapro))
diff --git a/target/linux/sunxi/profiles/cubietruck.mk b/target/linux/sunxi/profiles/cubietruck.mk
new file mode 100644 (file)
index 0000000..cf8c6e7
--- /dev/null
@@ -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/Cubietruck
+       NAME:=Cubietruck
+       PACKAGES:=\
+               uboot-sunxi-Cubietruck kmod-ata-sunxi kmod-rtc-sunxi kmod-brcmfmac
+endef
+
+define Profile/Cubietruck/Description
+       Package set optimized for the Cubietruck
+endef
+
+$(eval $(call Profile,Cubietruck))
diff --git a/target/linux/sunxi/profiles/mele_m9.mk b/target/linux/sunxi/profiles/mele_m9.mk
new file mode 100644 (file)
index 0000000..1313da4
--- /dev/null
@@ -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/Mele_M9
+       NAME:=Mele_M9
+       PACKAGES:=\
+               uboot-sunxi-Mele_M9 kmod-sun4i-emac kmod-rtc-sunxi kmod-rtl8192cu
+endef
+
+define Profile/Mele_M9/Description
+       Package set optimized for the Mele M9
+endef
+
+$(eval $(call Profile,Mele_M9))
index b3e3b1a..3a4202d 100644 (file)
@@ -5,14 +5,14 @@
 # See /LICENSE for more information.
 #
 
-define Profile/pcDuino
-       NAME:=pcDuino
+define Profile/Linksprite_pcDuino
+       NAME:=Linksprite_pcDuino
        PACKAGES:=\
-               uboot-sunxi-pcDuino kmod-sun4i-emac kmod-rtc-sunxi kmod-rtl8192cu
+               uboot-sunxi-Linksprite_pcDuino kmod-sun4i-emac kmod-rtc-sunxi kmod-rtl8192cu
 endef
 
-define Profile/pcDuino/Description
-       Package set optimized for the pcDuino
+define Profile/Linksprite_pcDuino/Description
+       Package set optimized for the Linksprite pcDuino
 endef
 
-$(eval $(call Profile,pcDuino))
+$(eval $(call Profile,Linksprite_pcDuino))