summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--target/linux/brcm2708/Makefile2
-rw-r--r--target/linux/brcm2708/base-files/lib/preinit/79_move_config18
-rw-r--r--target/linux/brcm2708/base-files/lib/upgrade/platform.sh17
-rw-r--r--target/linux/brcm2708/image/Makefile3
4 files changed, 39 insertions, 1 deletions
diff --git a/target/linux/brcm2708/Makefile b/target/linux/brcm2708/Makefile
index 30f6e1dfa4..015aa9c2a8 100644
--- a/target/linux/brcm2708/Makefile
+++ b/target/linux/brcm2708/Makefile
@@ -19,7 +19,7 @@ SUBTARGETS:=bcm2708 bcm2709
KERNEL_PATCHVER:=3.18
include $(INCLUDE_DIR)/target.mk
-DEFAULT_PACKAGES += brcm2708-gpu-fw kmod-usb-hid kmod-sound-core kmod-sound-arm-bcm2835
+DEFAULT_PACKAGES += brcm2708-gpu-fw kmod-usb-hid kmod-sound-core kmod-sound-arm-bcm2835 kmod-fs-vfat kmod-nls-cp437 kmod-nls-iso8859-1
define Target/Description
Build firmware image for Broadcom BCM2708/BCM2709 SoC devices.
diff --git a/target/linux/brcm2708/base-files/lib/preinit/79_move_config b/target/linux/brcm2708/base-files/lib/preinit/79_move_config
new file mode 100644
index 0000000000..7bcea7bf6f
--- /dev/null
+++ b/target/linux/brcm2708/base-files/lib/preinit/79_move_config
@@ -0,0 +1,18 @@
+#!/bin/sh
+# Copyright (C) 2015 OpenWrt.org
+
+BOOTPART=/dev/mmcblk0p1
+
+move_config() {
+ if [ -b $BOOTPART ]; then
+ insmod nls_cp437
+ insmod nls_iso8859-1
+ insmod fat
+ insmod vfat
+ mount -t vfat -o rw,noatime $BOOTPART /mnt
+ [ -f /mnt/sysupgrade.tgz ] && mv -f /mnt/sysupgrade.tgz /
+ umount /mnt
+ fi
+}
+
+boot_hook_add preinit_mount_root move_config
diff --git a/target/linux/brcm2708/base-files/lib/upgrade/platform.sh b/target/linux/brcm2708/base-files/lib/upgrade/platform.sh
new file mode 100644
index 0000000000..3e1ee0067c
--- /dev/null
+++ b/target/linux/brcm2708/base-files/lib/upgrade/platform.sh
@@ -0,0 +1,17 @@
+platform_check_image() {
+ # i know no way to verify the image
+ return 0;
+}
+
+platform_do_upgrade() {
+ sync
+ get_image "$1" | dd of=/dev/mmcblk0 bs=2M conv=fsync
+ sleep 1
+}
+
+platform_copy_config() {
+ mount -t vfat -o rw,noatime /dev/mmcblk0p1 /mnt
+ cp -af "$CONF_TAR" /mnt/
+ sync
+ umount /mnt
+}
diff --git a/target/linux/brcm2708/image/Makefile b/target/linux/brcm2708/image/Makefile
index 10ecfdaef0..53716e0d77 100644
--- a/target/linux/brcm2708/image/Makefile
+++ b/target/linux/brcm2708/image/Makefile
@@ -40,6 +40,9 @@ endef
define Build/sdcard-img
./gen_rpi_sdcard_img.sh $@ $@.boot $(word 2,$^) \
$(CONFIG_BRCM2708_SD_BOOT_PARTSIZE) $(CONFIG_TARGET_ROOTFS_PARTSIZE)
+ ifneq ($(CONFIG_TARGET_IMAGES_GZIP),)
+ gzip -k -f9 $(BIN_DIR)/$(IMG_PREFIX)-sdcard-vfat-$(1).img
+ endif
endef
### Device macros ###