summaryrefslogtreecommitdiff
path: root/target/linux/at91/image
diff options
context:
space:
mode:
authorGabor Juhos <juhosg@openwrt.org>2013-04-26 16:55:40 +0000
committerGabor Juhos <juhosg@openwrt.org>2013-04-26 16:55:40 +0000
commit988ae9cbf8efbb2050a34e61b5518d93f41cb606 (patch)
tree9882e6361a7022fdcbda24f4587b0a423a53397d /target/linux/at91/image
parentc63bb1a18e04c1b72f18bf0b77491933818d08d0 (diff)
downloadmtk-20170518-988ae9cbf8efbb2050a34e61b5518d93f41cb606.zip
mtk-20170518-988ae9cbf8efbb2050a34e61b5518d93f41cb606.tar.gz
mtk-20170518-988ae9cbf8efbb2050a34e61b5518d93f41cb606.tar.bz2
at91: upgrade to kernel 3.8.7 and use devicetree
This upgrades the AT91 target to 3.8.7, and migrates to device tree. This allows a single kernel to be built for most at91 variants which simplifies things quite a bit. The immediate result is that all subtargets are nuked, and any boards without dts files are no longer supported, though the target now includes more boards than before. The adc driver was also nuked as 3.8.7 includes a new one under the IIO subsystem. Signed-off-by: Adam Porter <porter.adam@gmail.com> Signed-off-by: Gabor Juhos <juhosg@openwrt.org> SVN-Revision: 36452
Diffstat (limited to 'target/linux/at91/image')
-rw-r--r--target/linux/at91/image/Makefile61
1 files changed, 55 insertions, 6 deletions
diff --git a/target/linux/at91/image/Makefile b/target/linux/at91/image/Makefile
index 97723bb..cf175ab 100644
--- a/target/linux/at91/image/Makefile
+++ b/target/linux/at91/image/Makefile
@@ -1,5 +1,5 @@
#
-# Copyright (C) 2006-2010 OpenWrt.org
+# Copyright (C) 2006-2013 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
@@ -18,20 +18,69 @@ define Build/Compile
endef
define Image/Prepare
+ cp $(LINUX_DIR)/arch/arm/boot/zImage $(KDIR)/zImage
+endef
+
+define MkuImageDtb
+ cat $(KDIR)/zImage $(LINUX_DIR)/arch/arm/boot/dts/$(2).dtb > $(KDIR)/zImage-$(1)
+ mkimage -A arm -T kernel -C none -a 0x20008000 -e 0x20008000 \
+ -n "OpenWrt ARM $(LINUX_VERSION)" \
+ -d $(KDIR)/zImage-$(1) $(BIN_DIR)/$(IMG_PREFIX)-$(1)-uImage
+endef
+
+# Atmel
+Image/Build/Kernel/AT91SAM9263EK=$(call MkuImageDtb,9263ek,at91sam9263ek)
+Image/Build/Kernel/AT91SAM9G15EK=$(call MkuImageDtb,9g15ek,at91sam9g15ek)
+Image/Build/Kernel/AT91SAM9G20EK=$(call MkuImageDtb,9g20ek,at91sam9g20ek)
+Image/Build/Kernel/AT91SAM9G20EK-2MMC=$(call MkuImageDtb,9g20ek_2mmc,at91sam9g20ek_2mmc)
+Image/Build/Kernel/AT91SAM9G25EK=$(call MkuImageDtb,9g25ek,at91sam9g25ek)
+Image/Build/Kernel/AT91SAM9G35EK=$(call MkuImageDtb,9g35ek,at91sam9g35ek)
+Image/Build/Kernel/AT91SAM9M10G45EK=$(call MkuImageDtb,9m10g45ek,at91sam9m10g45ek)
+Image/Build/Kernel/AT91SAM9X25EK=$(call MkuImageDtb,9x25ek,at91sam9x25ek)
+Image/Build/Kernel/AT91SAM9X35EK=$(call MkuImageDtb,9x35ek,at91sam9x35ek)
+# CalAmp
+Image/Build/Kernel/LMU5000=$(call MkuImageDtb,lmu5000,lmu5000)
+# Caloa
+Image/Build/Kernel/TNYA9260=$(call MkuImageDtb,tny_a9260,tny_a9260)
+Image/Build/Kernel/TNYA9263=$(call MkuImageDtb,tny_a9263,tny_a9263)
+Image/Build/Kernel/TNYA9G20=$(call MkuImageDtb,tny_a9g20,tny_a9g20)
+Image/Build/Kernel/USBA9260=$(call MkuImageDtb,usb_a9260,usb_a9260)
+Image/Build/Kernel/USBA9263=$(call MkuImageDtb,usb_a9263,usb_a9263)
+Image/Build/Kernel/USBA9G20=$(call MkuImageDtb,usb_a9g20,usb_a9g20)
+# Ethernut
+Image/Build/Kernel/ETHERNUT5=$(call MkuImageDtb,ethernut5,ethernut5)
+
+define Image/Build/Kernel/Default
+ $(call Image/Build/Kernel/AT91SAM9263EK)
+ $(call Image/Build/Kernel/AT91SAM9G15EK)
+ $(call Image/Build/Kernel/AT91SAM9G20EK)
+ $(call Image/Build/Kernel/AT91SAM9G20EK-2MMC)
+ $(call Image/Build/Kernel/AT91SAM9G25EK)
+ $(call Image/Build/Kernel/AT91SAM9G35EK)
+ $(call Image/Build/Kernel/AT91SAM9M10G45EK)
+ $(call Image/Build/Kernel/AT91SAM9X25EK)
+ $(call Image/Build/Kernel/AT91SAM9X35EK)
+ $(call Image/Build/Kernel/LMU5000)
+ $(call Image/Build/Kernel/TNYA9260)
+ $(call Image/Build/Kernel/TNYA9263)
+ $(call Image/Build/Kernel/TNYA9G20)
+ $(call Image/Build/Kernel/USBA9260)
+ $(call Image/Build/Kernel/USBA9263)
+ $(call Image/Build/Kernel/USBA9G20)
+ $(call Image/Build/Kernel/ETHERNUT5)
endef
define Image/BuildKernel
- mkdir -p $(BIN_DIR)
mkimage -A arm -T kernel -C none -a 0x20008000 -e 0x20008000 -n linux-2.6 \
- -d $(LINUX_DIR)/arch/arm/boot/Image $(BIN_DIR)/$(IMG_PREFIX)-uImage
+ -d $(LINUX_DIR)/arch/arm/boot/Image $(BIN_DIR)/uImage
if [ $(CONFIG_FLEXIBITY_ROOT) ]; then \
- $(INSTALL_BIN) $(BIN_DIR)/$(IMG_PREFIX)-uImage $(TARGET_DIR)/uImage ; \
+ $(INSTALL_BIN) $(BIN_DIR)/uImage $(TARGET_DIR)/uImage ; \
fi
+ $(call Image/Build/Kernel/$(PROFILE))
endef
define Image/Build
- $(call Image/Build/$(1),$(1))
- mkdir -p $(BIN_DIR)
+ $(call Image/Build/$(1))
cp $(KDIR)/root.$(1) $(BIN_DIR)/$(IMG_PREFIX)-root.$(1)
endef