aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux
diff options
context:
space:
mode:
authorHauke Mehrtens <hauke@hauke-m.de>2014-04-29 21:02:05 +0000
committerHauke Mehrtens <hauke@hauke-m.de>2014-04-29 21:02:05 +0000
commitb5f9e1632bbd2b88c927543cbc0025f4d0c41165 (patch)
treeb1ad8860b6b82d3f6bc6c9e52c9bb476ac244f78 /target/linux
parentf6cd23364b022108bf565dc3ef7173719765f167 (diff)
downloadupstream-b5f9e1632bbd2b88c927543cbc0025f4d0c41165.tar.gz
upstream-b5f9e1632bbd2b88c927543cbc0025f4d0c41165.tar.bz2
upstream-b5f9e1632bbd2b88c927543cbc0025f4d0c41165.zip
at91: AT91SAM9G20-EK fixes
From 272f548fe8d0b811e0589e535f650f0507f6bccd Mon Sep 17 00:00:00 2001 From: Owen Kirby <osk@exegin.com> Date: Fri, 11 Apr 2014 17:59:55 -0700 Subject: [PATCH 2/3] [at91] AT91SAM9G20-EK fixes. While testing the 3.10 kernel update, I found that the out-of-the-box device tree for the the AT91SAM9G20EK uses a UBIFS rootfs and stores the DTB separately from the zImage. Signed-off-by: Owen Kirby <osk@exegin.com> SVN-Revision: 40597
Diffstat (limited to 'target/linux')
-rw-r--r--target/linux/at91/config-default14
-rw-r--r--target/linux/at91/image/Makefile12
-rw-r--r--target/linux/at91/image/ubinize.cfg13
3 files changed, 37 insertions, 2 deletions
diff --git a/target/linux/at91/config-default b/target/linux/at91/config-default
index 92f3893f4a..966cf9afc9 100644
--- a/target/linux/at91/config-default
+++ b/target/linux/at91/config-default
@@ -58,8 +58,10 @@ CONFIG_CPU_TLB_V4WBI=y
CONFIG_CPU_USE_DOMAINS=y
CONFIG_CRC16=y
CONFIG_CRYPTO_CRC32C=y
+CONFIG_CRYPTO_DEFLATE=y
CONFIG_CRYPTO_HASH=y
CONFIG_CRYPTO_HASH2=y
+CONFIG_CRYPTO_LZO=y
CONFIG_DEBUG_BUGVERBOSE=y
CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S"
# CONFIG_DEBUG_PINCTRL is not set
@@ -135,6 +137,8 @@ CONFIG_JBD2=y
CONFIG_JFFS2_ZLIB=y
CONFIG_KTIME_SCALAR=y
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
+CONFIG_LZO_COMPRESS=y
+CONFIG_LZO_DECOMPRESS=y
CONFIG_M25PXX_PREFER_SMALL_SECTOR_ERASE=y
CONFIG_M25PXX_USE_FAST_READ=y
CONFIG_MACB=y
@@ -156,6 +160,11 @@ CONFIG_MTD_OF_PARTS=y
CONFIG_MTD_PHYSMAP=y
CONFIG_MTD_PHYSMAP_OF=y
# CONFIG_MTD_SM_COMMON is not set
+CONFIG_MTD_UBI=y
+CONFIG_MTD_UBI_BEB_LIMIT=20
+# CONFIG_MTD_UBI_FASTMAP is not set
+# CONFIG_MTD_UBI_GLUEBI is not set
+CONFIG_MTD_UBI_WL_THRESHOLD=4096
CONFIG_MULTI_IRQ_HANDLER=y
CONFIG_NEED_DMA_MAP_STATE=y
CONFIG_NEED_KUSER_HELPERS=y
@@ -218,6 +227,11 @@ CONFIG_SPLIT_PTLOCK_CPUS=999999
# CONFIG_STAGING is not set
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
CONFIG_TICK_CPU_ACCOUNTING=y
+CONFIG_UBIFS_FS=y
+CONFIG_UBIFS_FS_ADVANCED_COMPR=y
+CONFIG_UBIFS_FS_LZO=y
+# CONFIG_UBIFS_FS_XZ is not set
+CONFIG_UBIFS_FS_ZLIB=y
CONFIG_UID16=y
CONFIG_UIDGID_CONVERTED=y
CONFIG_UNCOMPRESS_INCLUDE="mach/uncompress.h"
diff --git a/target/linux/at91/image/Makefile b/target/linux/at91/image/Makefile
index cf175ab2e2..5c2f976446 100644
--- a/target/linux/at91/image/Makefile
+++ b/target/linux/at91/image/Makefile
@@ -7,6 +7,9 @@
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/image.mk
+UBIFS_OPTS = -F -m 2048 -e 126KiB -c 2048 -U
+UBI_OPTS = -m 2048 -p 128KiB -s 512
+
define Build/Clean
$(MAKE) -C u-boot clean
endef
@@ -28,11 +31,16 @@ define MkuImageDtb
-d $(KDIR)/zImage-$(1) $(BIN_DIR)/$(IMG_PREFIX)-$(1)-uImage
endef
+define MkOftree
+ cp -u $(KDIR)/zImage $(BIN_DIR)/$(IMG_PREFIX)-zImage
+ cp $(LINUX_DIR)/arch/arm/boot/dts/$(2).dtb $(BIN_DIR)/$(IMG_PREFIX)-$(1)-oftree.dtb
+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/AT91SAM9G20EK=$(call MkOftree,9g20ek,at91sam9g20ek)
+Image/Build/Kernel/AT91SAM9G20EK-2MMC=$(call MkOftree,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)
diff --git a/target/linux/at91/image/ubinize.cfg b/target/linux/at91/image/ubinize.cfg
new file mode 100644
index 0000000000..e4149ec7d7
--- /dev/null
+++ b/target/linux/at91/image/ubinize.cfg
@@ -0,0 +1,13 @@
+[rootfs]
+# Volume mode (other option is static)
+mode=ubi
+# Source image
+image=root.ubifs
+# Volume ID in UBI image
+vol_id=0
+# Allow for dynamic resize
+vol_type=dynamic
+# Volume name
+vol_name=rootfs
+# Autoresize volume at first mount
+vol_flags=autoresize