brcm63xx: remove linux 3.14 support
[openwrt/svn-archive/archive.git] / target / linux / brcm63xx / patches-3.14 / 366-MIPS-add-support-for-vmlinux.bin-appended-DTB.patch
diff --git a/target/linux/brcm63xx/patches-3.14/366-MIPS-add-support-for-vmlinux.bin-appended-DTB.patch b/target/linux/brcm63xx/patches-3.14/366-MIPS-add-support-for-vmlinux.bin-appended-DTB.patch
deleted file mode 100644 (file)
index 900116f..0000000
+++ /dev/null
@@ -1,124 +0,0 @@
-From 318c1fce4aeef298cbb6153416c499c94ad7cda0 Mon Sep 17 00:00:00 2001
-From: Jonas Gorski <jogo@openwrt.org>
-Date: Tue, 24 Jun 2014 10:53:15 +0200
-Subject: [PATCH RFC v3] MIPS: add support for vmlinux.bin appended DTB
-
-Add support for populating initial_boot_params through a dtb
-blob appended to raw vmlinux.bin.
-
-Signed-off-by: Jonas Gorski <jogo@openwrt.org>
----
-Changes RFC v2 -> v3
-
-* fixed !smp kernels (TODO: move it to its own patch
-
-Changes RFC v1 -> v2
-
-* changed all occurences of vmlinux to vmlinux.bin
-* clarified this applies to the raw vmlinux.bin without decompressor
-* s/initial_device_params/initial_boot_params/
-
-Initial comments by me still valid:
-
-Mostly adapted from how ARM is doing it.
-
-Sent as an RFC PATCH because I am not sure if this is the right way to
-it, and whether storing the pointer in initial_boot_params is a good
-idea, or a new variable should be introduced.
-
-The reasoning for initial_boot_params is that there is no common
-MIPS interface yet, so the next best thing was using that. This also
-has the advantage of keeping the original fw_args intact.
-
-This patch works for me on bcm63xx, where the bootloader expects
-an lzma compressed kernel, so I didn't want to double compress using
-the in-kernel compressed kernel support.
-
-Completely untested on anything except MIPS32 / big endian.
-
- arch/mips/Kconfig              | 18 ++++++++++++++++++
- arch/mips/kernel/head.S        | 19 +++++++++++++++++++
- arch/mips/kernel/vmlinux.lds.S |  7 +++++++
- 3 files changed, 43 insertions(+)
-
---- a/arch/mips/Kconfig
-+++ b/arch/mips/Kconfig
-@@ -2523,6 +2523,24 @@ config RAPIDIO
- source "drivers/rapidio/Kconfig"
-+config MIPS_APPENDED_DTB
-+      bool "Use appended device tree blob to vmlinux.bin (EXPERIMENTAL)"
-+      depends on OF
-+      help
-+        With this option, the boot code will look for a device tree binary
-+        DTB) appended to raw vmlinux.bin (without decompressor).
-+        (e.g. cat vmlinux.bin <filename>.dtb > vmlinux_w_dtb).
-+
-+        This is meant as a backward compatibility convenience for those
-+        systems with a bootloader that can't be upgraded to accommodate
-+        the documented boot protocol using a device tree.
-+
-+        Beware that there is very little in terms of protection against
-+        this option being confused by leftover garbage in memory that might
-+        look like a DTB header after a reboot if no actual DTB is appended
-+        to vmlinux.bin.  Do not leave this option active in a production kernel
-+        if you don't intend to always append a DTB.
-+
- endmenu
- menu "Executable file formats"
---- a/arch/mips/kernel/head.S
-+++ b/arch/mips/kernel/head.S
-@@ -139,6 +139,22 @@ NESTED(kernel_entry, 16, sp)                      # kernel
-       mtc0    t0, CP0_STATUS
- #endif /* CONFIG_MIPS_MT_SMTC */
-+#ifdef CONFIG_MIPS_APPENDED_DTB
-+      PTR_LA          t0, __appended_dtb
-+      PTR_LI          t3, 0
-+
-+#ifdef CONFIG_CPU_BIG_ENDIAN
-+      PTR_LI          t1, 0xd00dfeed
-+#else
-+      PTR_LI          t1, 0xedfe0dd0
-+#endif
-+      LONG_L          t2, (t0)
-+      bne             t1, t2, not_found
-+
-+      PTR_LA          t3, __appended_dtb
-+
-+not_found:
-+#endif
-       PTR_LA          t0, __bss_start         # clear .bss
-       LONG_S          zero, (t0)
-       PTR_LA          t1, __bss_stop - LONGSIZE
-@@ -152,6 +168,10 @@ NESTED(kernel_entry, 16, sp)                      # kernel
-       LONG_S          a2, fw_arg2
-       LONG_S          a3, fw_arg3
-+#ifdef CONFIG_MIPS_APPENDED_DTB
-+      LONG_S          t3, initial_boot_params
-+#endif
-+
-       MTC0            zero, CP0_CONTEXT       # clear context register
-       PTR_LA          $28, init_thread_union
-       /* Set the SP after an empty pt_regs.  */
---- a/arch/mips/kernel/vmlinux.lds.S
-+++ b/arch/mips/kernel/vmlinux.lds.S
-@@ -125,8 +125,14 @@ SECTIONS
-       .exit.data : {
-               EXIT_DATA
-       }
--
-+#ifdef CONFIG_SMP
-       PERCPU_SECTION(1 << CONFIG_MIPS_L1_CACHE_SHIFT)
-+#endif
-+#ifdef CONFIG_MIPS_APPENDED_DTB
-+      __appended_dtb = .;
-+      /* leave space for appended DTB */
-+      . = . + 0x100000;
-+#endif
-       /*
-        * Align to 64K in attempt to eliminate holes before the
-        * .bss..swapper_pg_dir section at the start of .bss.  This