diff options
-rw-r--r-- | target/linux/sunxi/Makefile | 2 | ||||
-rw-r--r-- | target/linux/sunxi/base-files/etc/uci-defaults/02_network | 2 | ||||
-rw-r--r-- | target/linux/sunxi/config-3.18 | 25 | ||||
-rw-r--r-- | target/linux/sunxi/image/Makefile | 18 | ||||
-rw-r--r-- | target/linux/sunxi/patches-3.18/135-ahci-fix-threaded-interrupt-setup.patch | 97 | ||||
-rw-r--r-- | target/linux/sunxi/patches-3.18/301-add-bananapro.diff | 247 | ||||
-rw-r--r-- | target/linux/sunxi/profiles/bananapro.mk | 18 | ||||
-rw-r--r-- | target/linux/sunxi/profiles/cubietruck.mk | 18 | ||||
-rw-r--r-- | target/linux/sunxi/profiles/mele_m9.mk | 18 | ||||
-rw-r--r-- | target/linux/sunxi/profiles/pcduino.mk | 12 |
10 files changed, 334 insertions, 123 deletions
diff --git a/target/linux/sunxi/Makefile b/target/linux/sunxi/Makefile index 0deb2d8f27..dbe85bd9ea 100644 --- a/target/linux/sunxi/Makefile +++ b/target/linux/sunxi/Makefile @@ -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 diff --git a/target/linux/sunxi/base-files/etc/uci-defaults/02_network b/target/linux/sunxi/base-files/etc/uci-defaults/02_network index f0d73c090b..c10d40e524 100644 --- a/target/linux/sunxi/base-files/etc/uci-defaults/02_network +++ b/target/linux/sunxi/base-files/etc/uci-defaults/02_network @@ -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" |\ diff --git a/target/linux/sunxi/config-3.18 b/target/linux/sunxi/config-3.18 index 1c391edb06..44b5d89800 100644 --- a/target/linux/sunxi/config-3.18 +++ b/target/linux/sunxi/config-3.18 @@ -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 diff --git a/target/linux/sunxi/image/Makefile b/target/linux/sunxi/image/Makefile index 1343470db1..3fb41c1599 100644 --- a/target/linux/sunxi/image/Makefile +++ b/target/linux/sunxi/image/Makefile @@ -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 index 6d316c2053..0000000000 --- a/target/linux/sunxi/patches-3.18/135-ahci-fix-threaded-interrupt-setup.patch +++ /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 index 0000000000..47454e974e --- /dev/null +++ b/target/linux/sunxi/patches-3.18/301-add-bananapro.diff @@ -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 = <®_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 = <®_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 = <®_usb1_vbus>; ++ usb2_vbus-supply = <®_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 = <®_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 index 0000000000..c3e2b74473 --- /dev/null +++ b/target/linux/sunxi/profiles/bananapro.mk @@ -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 index 0000000000..cf8c6e7692 --- /dev/null +++ b/target/linux/sunxi/profiles/cubietruck.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/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 index 0000000000..1313da4ce7 --- /dev/null +++ b/target/linux/sunxi/profiles/mele_m9.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/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)) diff --git a/target/linux/sunxi/profiles/pcduino.mk b/target/linux/sunxi/profiles/pcduino.mk index b3e3b1a0ce..3a4202d303 100644 --- a/target/linux/sunxi/profiles/pcduino.mk +++ b/target/linux/sunxi/profiles/pcduino.mk @@ -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)) |